Arduino

Last-modified: 2020-08-19 (水) 22:29:34

イタリア発のオープンソースなマイコンボード。
部活では2018年より本格的に導入しています。

 

Arduinoとは

公式ページ : Arduino home

 

USBインターフェース、電源回路が一つのボードに載っている*1ので簡単に使うことができます。
マイコンにあらかじめファームウェアを書き込まれているので、専用の書き込み機か無くてもプログラミングできます。

 

ハード、ソフト共にオープンソースです。そのため、各社から様々な互換品が販売されていたり*2、多様なライブラリを使用することができます。

開発環境

  • Arduino IDE
    • 公式の開発環境
 

派生版(一部のみ)

  • Visual Studio CodeにArduino拡張機能を入れる
    • Arduino IDEより便利らしい
  • SoapBox
    • PLCのようにラダー図でプログラムできます。
  • iArduino
    • インタプリタ

ボードの種類

派生版も含めればとてつもない数になるので、代表的なものだけ挙げます。

  • Arduino Uno
    • Arduinoといえばこれ。最もポピュラーなボード。
  • Arduino Mega
  • 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 書き込み回路、ピンヘッダ付なので簡単に開発できます。
  • Nucleo
    • STM32搭載。mbed対応。

シールド

Arduino本体に載せて機能を拡張できるボードのことを亀に見立ててシールドと言います。
ハードウェアのライブラリのようなイメージです。

 

注意点

  • 何故かデジタルピンの7と8の間が半ピッチだけずれているので、自作する場合に注意。
  • Mega等、多ピンのマイコンボードに接続する場合は気をつけて作業しましょう。簡単に抜けなくなります

プログラム(スケッチ)

C/C++をベースとしたArduino言語と呼ばれるプログラミング言語を使用します。

  • 主な特徴
    • setup(),loop()関数
    • プロトタイプ宣言がいらない(ただしバージョンによりバグあり)
    • ポートなどの大部分のハードウェアを意識せずに使用可能
 

Arduino言語リファレンス

プログラミングtips

  • PWM周波数の変更
  • 外部割り込みを任意のピンでする

ライブラリ

オープンソースなためライブラリの開発も盛んに行われており、機能の追加が大抵簡単にできます。

 

ライブラリの追加方法
詳細 : Installing Additional Arduino Libraries

  • ライブラリマネージャから追加
    • 「ツール→ライブラリを管理」
  • ファイルから追加
    • zip形式、フォルダの両方に対応しています

今までに使用した外部ライブラリ


*1 proなど例外あり
*2 Arduinoという名称は使えないので、大体はArduinoをもじった名前で出しています