BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Raspberry Picoマイクロコントローラの実現する多様性と小型ファクタ

Raspberry Picoマイクロコントローラの実現する多様性と小型ファクタ

原文(投稿日:2021/01/27)へのリンク

Raspberry Pi Foundationは先頃、独自に設計したPR2040チップをベースとする、小型で(21mm x 51mm)安価な(4ドル)マイクロコントローラボードのRaspberry Pi Picoをリリースした。USBを通じて、CおよびMicroPythonでプログラムすることができる。PR2040はクロック133MHzの2つのARMコア、264KBの内蔵SRAMを持ち、外部メモリとして2MBのQSPI Flashを接続できる。Picoは、幅広く柔軟なI/Oオプション(I2C、SPI、PWM、独自の周辺機器をサポート可能な8つのプログラマブルI/Oステートマシン)を提供しており、さまざまな分野での使用が可能である。

Raspberry PI Foundationは、新しいPicoを次のように説明している。

Raspberry Pi Picoは、英国Raspberry Piの設計による、全く新しいマイクロコントローラであるRP2040を使用した、小型で、高速で、多目的なボードです。

Picoはその名のとおり、21mm x 51mmという小ささだ。また、4ドルという価格で、幅広い応用範囲を持った安価なパッケージであることを目指している。マイクロコントローラのRP2040は、デュアルコアARM Cortex-M0+プロセッサを備え、クロックは最大133MHzに達する。

ボードの多用途性を担保しているのが、幅広いI/Oオプションだ。Picoは、RP2040の持つ30個のGPIOピンのうち26個をエクスポートしている。GPIO0とGPIO22はディジタル専用で、GPIO 26~28はディジタルGPIOとADC入力のいずれにも使用できる。RP2040は2つのUART、2つのSPIコントローラ、2つのI2Cコントローラ、16のPWMチャネル、1つのUSB 1.1コントローラ、8つのプログラマブルI/O(PIO)ステートマシンを備える。

通信プロトコルを幅広くサポートすることによって、さまざまなセンサやアクチュエータとのインターフェースを取ることが可能になっている。例えばSPIは、RFIDカードリーダモジュールや2.4GHz無線トランスミッタ/レシーバなどで一般的に使用される。I2C(Inter-Integrated Circuit Communications)は、温度センサや加速度計、磁力計などで使用することができる。PWM<(Pule Width Modulation)はサーボモータのようなアナログデバイスのコントロールに使用することが可能だ。さらにプログラマブルステートマシンでは、CPUを介さずに独自の通信プロトコルを実装することが可能になる。

Pi製品ラインとの差別化ポイントとしてのPicoの設計上の多用途性の重要性について、James Adams氏は次のように強調している。

私たちがお気に入りのたくさんのプロジェクトが [...] Raspberry Piを現実世界に結び付けています — Raspberry Piで動作するソフトウェアは、センサを読み取り、計算処理を行い、ネットワーク通信し、アクチュエータをドライブします。[…]
ただし、制限があります — Raspberry Pi Zeroの最低のパワーモードであっても、100ミリワット単位の電力を消費します。Raspberry Pi自体では、アナログ入力をサポートしていません。さらに、Raspberry Pi上で"ベアメタル"ソフトウェアを実行することは可能ですが、Linuxのような汎用目的にオペレーティングシステム下で動作するソフトウェアは、個々のI/Oピンを低レイテンシでコントロールする目的に最適なものではないのです。

Pico FlashのプログラミングはUSBを使って行うことができる。特別な'.uf2'ファイルをディスク上にドラッグすることで、このファイルがFlashに書き込まれ、Picoがリスタートする。専用のSPI、DSPI、QSPIインターフェースを経由して、外部メモリからコードを直接実行することも可能だ。キャッシュは少量だが、一般的なアプリケーションのパフォーマンス向上に寄与する。Serial Wire Debug (SWD) ポートを使えば、RP2040上で動作するコードをインタラクティブにデバッグすることができる。

PicoはCまたはMicroPython(C99で記述されている)でプログラム可能だ。Raspberry Pi Foundationが、C/C++ SDK公式のMicroPythonの移植版を提供している。さらにPicoには、オンチップクロック、温度センサ、LED1点が組み込まれている。

多用途、小型、安価というPicoの特徴は、組み込みIoTアプリケーションにおいて有用性の高いものとなる。IoTデバイスを製造するHardwarioの創業者であるTomas Morava氏は以前、産業IoTアプリケーションで使用される安価なコンピューティングデバイスの実例を提供していた。低価格マイクロコントローラを活用したアプリケーションを扱うModdableの共同創設者であるPeter Hoodie氏は、InfoQのインタビューで次のように説明している。

ローエンドコンピュータを重視する当社の視点は、プロダクトオーナ重視の観点のひとつです。私たちはすべてのデバイスに対して、優れたソフトウェア — セキュアで、信頼性が高く、使いやすいソフトウェアを必要としています。ソフトウェアを実行するために数百ドルを必要とするようなプロダクトでは、それを実現することは不可能です。

Raspvberry Piは、教育機関や発展途上国におけるコンピュータ科学の基礎教育の促進を目的として、Raspberry Pi Foundationが英国で開発した、小型シングルボードコンピュータのシリーズである。

この記事に星をつける

おすすめ度
スタイル

BT