「アプリケーションラボ」は、Digi-Key社のご協力をいただいて、Digi-Key社が公開している新製品や技術情報を日本語でご紹介するWebページです。基礎技術から最新技術まで有益な情報を公開していますので、是非ご活用ください。
今回は、IoT機器において動作を止めずにファームウェアの更新を行う必要性とそれを実現するためにMicrochip Technology社のPIC32MZマイコンを活用する方法について解説した記事をご紹介します。
■ファームウェアの実行と更新を同時に行う方法
最近のIoT機器の急速な増加に伴って、機器のメンテナンスや機能の改善を頻繁に行う必要が出てきました。具体的には、コード内のバグの修正、機能の追加と向上、システムセキュリティの調整、ファームウェアのさらなる効率化などです。
そのためにはファームウェアの書き換えが必要になりますが、できるだけIoT機器の動作を止めずに遠隔で作業をすることが求められています。現場で更新できるシステムにするには、2つの処理を同時に行うことができて、アプリケーション用のメモリが2倍必要になりますが、Microchip社のPIC32MZマイコンはこの要求に対応することができます。
< PIC32MZ 32ビットMCU >
PIC32MZは、Microchip社のPICマイコンのラインナップの中で最上位機種になります。PICマイコンはRISCに近い命令体系をしていますが、本来コントローラとして生まれた経緯があります。それに対し、PIC32MZはRISCの本流と言えるMIPSコアを採用し、浮動小数点ユニットやDSP機能も搭載した高性能な32ビットマイコンです。
【アプリケーションラボ】で紹介されているPIC32MZ2048EFHには、2Mバイトのプログラムフラッシュメモリと512KバイトのSRAMが内蔵されています。また、160Kバイトのブートフラッシュメモリも備えています。コアは、-40℃~+85℃の温度範囲では252MHz、-40℃~+125℃の温度範囲では180MHzで動作します。動作電圧は、2.1V~3.6Vです。
PIC32MZ2048EFHには、PFM Bank 1とPFM Bank 2という1Mバイトのプログラムフラッシュメモリ(PFM)バンクが2個あり、各PFMにはBFM Bank 1とBFM Bank 2という専用のブートフラッシュメモリ(BFM)があります。デュアルブートをサポートしているため、起動時にどちらのPFMバンクからでもブートさせることができます。これにより、PIC32MZ2048EFHを用いると2つの異なるシステムを構成することが可能になります。すなわち、一方のPFMバンクからファームウェアを実行すると同時に他方のPFMバンクでファームウェアを更新できるようになります。Microchip社は、これをLive-Updateまたはランタイムセルフプログラミング(RTSP)と呼んでいます。
< PIC32MZスタータキット >
ここで解説されているデバイスは、マルツオンラインのウェブサイトで購入できますので、是非参考にしてください。
PIC32MZ 32ビットMCU 【PIC32MZ2048EFH144T-I/PH】 1,616.67円 |
|
PIC32MZスタータキット 【DM320007】 15,798円 |
|
下記の2本の解説記事も同時に公開しました。合わせて参考にしてください。
■IO-Link 1.1とその用途 IO-Linkは、IEC61131-9で制定されているアクチュエータやセンサを接続するための国際規格です。ここでは、産業用シリアルインターフェースIO-Linkの概要とバージョン1.0から1.1への変更点、使用上の制限事項などを解説します。
■サーミスタを使用して正確に温度を検出する方法 サーミスタは温度測定で最も一般的なセンサの一つですが、直線性がやや劣っており、多くの場合ユニットごとに較正が必要になります。ここでは、サーミスタの利点や問題点、選択する際のトレードオフなどについて説明します。
|