イタリア発のオープンソースなマイコンボード。
部活では2018年より本格的に導入しています。
Arduinoとは
公式ページ : Arduino home
USBインターフェース、電源回路が一つのボードに載っている*1ので簡単に使うことができます。
マイコンにあらかじめファームウェアを書き込まれているので、専用の書き込み機か無くてもプログラミングできます。
ハード、ソフト共にオープンソースです。そのため、各社から様々な互換品が販売されていたり*2、多様なライブラリを使用することができます。
開発環境
- Arduino IDE
- 公式の開発環境
派生版(一部のみ)
- Visual Studio CodeにArduino拡張機能を入れる
- Arduino IDEより便利らしい
- SoapBox
- PLCのようにラダー図でプログラムできます。
- iArduino
- インタプリタ
ボードの種類
派生版も含めればとてつもない数になるので、代表的なものだけ挙げます。
- Arduino Uno
- Arduinoといえばこれ。最もポピュラーなボード。
- Arduino Mega
- I/Oポート、タイマー、メモリが沢山ある。課題ロボットで使用。
- Arduino Nano
- 小型。互換品が安い(約500円/個~)。ブレッドボードに直接挿せる。何故かUnoよりアナログ入力が2つ多い。
- Lilypad
- e-ソーイングと呼ばれる、電子部品を布に縫い付けて配線する電子工作ができる。
- 家庭クラブと合同でやったら?
- Arduino Due
- ARMマイコン搭載。Megaと同形状。I/Oが3.3Vなので注意。
その他Arduino化できるもの
ファームウェアを書き換えるとArduino IDEから書き込みできるようになります。
代表的なもののみ。
- ESP-WROOM-02
- Wi-Fi搭載、安価(秋月電子通商で2020-08-19現在250円!)。
- ESP-WROOM-32
- WiFi、Bluetooth(classic,BLE)搭載、安価(秋月電子通商で2020-08-19現在550円!)。
- ESP-WROOM-32 モジュール。基板に直接実装もできる。
- ESP32-DevKitC 書き込み回路、ピンヘッダ付なので簡単に開発できます。
- WiFi、Bluetooth(classic,BLE)搭載、安価(秋月電子通商で2020-08-19現在550円!)。
- Nucleo
- STM32搭載。mbed対応。
シールド
Arduino本体に載せて機能を拡張できるボードのことを亀に見立ててシールドと言います。
ハードウェアのライブラリのようなイメージです。
注意点
- 何故かデジタルピンの7と8の間が半ピッチだけずれているので、自作する場合に注意。
- Mega等、多ピンのマイコンボードに接続する場合は気をつけて作業しましょう。簡単に抜けなくなります。
プログラム(スケッチ)
C/C++をベースとしたArduino言語と呼ばれるプログラミング言語を使用します。
- 主な特徴
- setup(),loop()関数
- プロトタイプ宣言がいらない(ただしバージョンによりバグあり)
- ポートなどの大部分のハードウェアを意識せずに使用可能
Arduino言語リファレンス
- Language Reference - Arduino公式リファレンス、翻訳版で載っていない機能の解説もある
- Arduino 日本語リファレンス - 有志による翻訳
プログラミングtips
- PWM周波数の変更
- 外部割り込みを任意のピンでする
ライブラリ
オープンソースなためライブラリの開発も盛んに行われており、機能の追加が大抵簡単にできます。
ライブラリの追加方法
詳細 : Installing Additional Arduino Libraries
- ライブラリマネージャから追加
- 「ツール→ライブラリを管理」
- ファイルから追加
- zip形式、フォルダの両方に対応しています
今までに使用した外部ライブラリ
- ps2x
- PCA9685
- 使い方はこちら
- KanaLiquidCrystal
- キャラクタLCDにカタカナを表示しやすくなる
- キャラクタLCDにカタカナを表示しやすくなる
