いろいろ種類が増えすぎたArduino系マイコンボード。僕がよく使うものを中心にチョイス。(かなり偏ったチョイスです。)
- Arduino UNO : 最初の1台に。リファレンス用に。
- GR-SAKURA : 実戦むき。UNOサイズの高性能ボード。
- Arduino Pro Mini : ちっちゃいものに。サブマイコンに。
- GR-CITRUS : ちっちゃくて高性能な欲張りボード。
- ESP32 : 流行りのIoT(笑)に。WiFi+Bluetoothマイコン。
(1) Arduino UNO : 最初の1台に。リファレンス用に。
言わずと知れたArduino UNO。もっともスタンダードで、もっともメジャーで、もっとも情報が多く、もっとも敷居が低いArduinoです。最初の1台はとりあえずUNOがよかろうと思います。僕も最初はUNOから入りましたが、今ではあまり使いません。スペックとサイズの面で使いにくいと感じるからです。ただし、他のボードでうまく動かないときなどのリファレンス用に使うことがあります。
ちなみに安いUNO互換ボードもいろいろ出回っていますが、僕は3つの理由で本家のUNOを推奨します。
- よけいな落とし穴を避けるため
- 本家への敬意を払うため
- インスタ映えのため
互換ボードの中には微妙にクセのあるものもあります。よけいな落とし穴のあるボードは最初の一台としてもリファレンス用としてもふさわしくありません。また、いかにオープンソースとはいえデッドコピーを安売りする商売は好ましいものではないと思っています。それと、写真に撮ったときに安物の互換ボードはダサいです。いっぽうで、Staduinoに代表されるような特長ある個性的な互換ボードはおおいに良いと思います。
(2) GR-SAKURA : 実戦むき。UNOサイズの高性能ボード。
GR-SAKURAはArduino UNOと同サイズのボードですが、はるかに高性能なマイコンを搭載しています。またUNOより多くのI/Oピンを使うことができます。そのため、より本格的なプロダクトに使用できる実戦むきのボードです。また浮動小数点演算命令を持っているので、float型をためらわずに使えます。
ただし、GR-SAKURA は通常のArduino IDEではなく、IDE for GRという特殊な開発環境で開発します。特殊といってもArduino IDEをベースにしており、大きな違いと言えば色がピンクなことくらいですが。そのほかオンラインで使えるWebコンパイラもありますが、僕は使いません。
ピンク色の特殊なボードを敬遠するのであれば、Arduino DUEをおすすめします。こちらはUNOより大型のボードです。世間では同サイズのArduino MEGAのほうが有名です。UNOよりピン数もメモリ容量も多く実用的な用途に向くので、よく3Dプリンタやロボットなどのキットに使われています。DUEはメモリ容量も処理速度もMEGAよりはるかに上なので、ラクができます。おしむらくは浮動小数点演算命令を持たないことです。
ボード | MCU | Clock | ROM | RAM | IOピン数 |
---|---|---|---|---|---|
Arduino UNO | ATmega328P(8bit) | 16MHz | 32kB | 2kB | 20 |
Arduino MEGA | ATmega2560(8bit) | 16MHz | 256kB | 8kB | 70 |
Arduino DUE | SAM3X8E(ARM Cortex-M3)(32bit) | 84MHz | 512kB | 96kB | 70 |
GR-SAKURA | RX63N(32bit) | 96MHz | 1MB | 128kB(I)/256kB(II) | 61 |
(3) Arduino Pro Mini : ちっちゃいものに。サブマイコンに。
Arduino Pro MiniはArduino UNOをちっちゃくしたようなボードです。2列ピンのモジュールタイプであり、小型の機器に組み込んだり、メインマイコンに代わってちょっとした処理をするサブマイコンとして使ったりするのに適しています。また、最小限の部品で構成されており、価格が低く抑えられています。その反面、書き込みにもUSBシリアル変換アダプタが必要になるという不便さもあります。それが嫌なら後述するArduino MicroやArduino Nanoなどを選ぶとよいでしょう。
どういうわけか、モジュール型のArduinoは似たようなものが乱立しています。しかも、まったく名が体を表していません。ふつうに考えれば、Mini > Micro > Nanoとなりそうですが、まったくそうではないのです。これは出自がおのおの異なるためです。5V品と3.3V品とがあることにも注意してください。
(4) GR-CITRUS : ちっちゃくて高性能な欲張りボード。
GR-CITRUSは、Arduino Pro Miniとピン互換で高性能なマイコンを搭載したボードです。Pro MiniとGR-CITRUSの関係は、UNOとGR-SAKURAの関係と相似だといえます。GR-CITRUSはGR-SAKURAと同様にIDE for GRで開発します。Webコンパイラもありますが僕は使いません。
GR-CITRUSはもともとRubyで開発できるボードというコンセプトであり、Rubyの開発環境も提供されています。というよりRubyのほうが本筋という扱いです。ただ個人的にはRubyで開発できることに魅力を感じないのでもっぱらIDE for GRのほうを使っています。
ボード | MCU | Clock | ROM | RAM | IOピン数 |
---|---|---|---|---|---|
Arduino Pro Mini | ATmega328P(8bit) | 16MHz(5V)/8MHz(3.3V) | 32kB | 2kB | 18+4 |
GR-CITRUS | RX631(32bit) | 96MHz | 2MB | 256kB | 20 |
(5) ESP32 : 流行りのIoT(笑)に。WiFi+Bluetoothマイコン。
今まで挙げたボードとは異なり、ESP32(正確にはESP32-WROOM-32)は、汎用マイコンボードではなくWiFi+Bluetoothの無線モジュールです。ただし、高性能なマイコンを内蔵しており、Arduino環境でプログラムできます。また、モジュールのままではプロトタイピングや電子工作では使いにくいので、周辺回路を実装した開発ボードが出ています。代表的なものはESP32-DevKitCです。
無線がWiFiのみで、IOピンの数も少ないESP8266という製品もあります。また、ESP32-WROOM-32はデュアルコアですが、シングルコア版のESP32-SOLO-1もでています。
その他のUNOサイズボード
UNOサイズのボードは数えきれないくらいたくさんあります。
- Arduino M0 : ARM Cortex-M0搭載。悪くないボードだったがディスコン。
- Arduino/Genuino 101 : BLE搭載。短命に終わりディスコン。
- Arduino UNO WiFi (未発売) : WiFi搭載UNOというかんじ。発売まだかな?
- GR-PEACH : 変態的に超高性能なマイコンが載っててカメラとか扱えるらしい。
- Netduino : C#で開発できる。つまりArduinoではない。
- Nucleoシリーズ : STM32マイコンのボード。Arduino環境でも開発できる。
まとめ
うのさくら ぷろみにしとらす いーえすぴー (字余り)