このページでは、Arduinoで電子工作する方法やサンプルプログラム(ソースコード)を入門者向けに解説しています。
【Arduinoとは】環境構築
Arduinoとは、「組み込み系に詳しくない人でも簡単に電子機器を制御できる」プラットフォームです。
– | Arduinoの基本構成 |
---|---|
① | AVRマイコン |
② | I/O(入出力)ポートを備えた基板 |
③ | スケッチと呼ばれるC++風の言語による統合開発環境 |
Arduinoを使ってモーターを動かしたり音を鳴らしたりすることができます。
また、赤外線センサー、温度センサー、超音波距離センサーなどを繋いで観測をおこなうこともできます。
観測したデータを、無線通信(Bluetooth、wifi)や有線通信(USB)で 他の電子機器(ノートPCなど)に送ることもできます。
Arduino以外のマイコン(PICなど)でも同様のことは出来ますが、Arduinoが優れているのは簡単にできるという点です。
うまく利用すれば、ロボットや、百葉箱のような本格的な観測機器を作成することができます。
– | 環境構築編 |
---|---|
Arduino IDEの導入 | WindowsやMacにArduino IDEをインストールし、Arduinoを操作できる環境を構築する方法を解説します。 |
点灯制御 | ArduinoのI/OピンでLEDを点灯させて動作確認します。 |
シミュレーション | Tinkercadと呼ばれる無料サービスでArduinoを使った電気回路のシミュレーションを行います。Webアプリなので特別なソフトが不要で簡単に利用できます。 |
【センシング】温度、湿度、距離、光、Pm2.5計測など
記事リンク | 項目 |
---|---|
気温測定 | 温度センサ(LM35DZ)とArduinoで室温を測定します。 |
PM2.5測定 | ダストセンサ(Groveコネクタ)でPM2.5の濃度を計測します。 |
距離測定(赤外線センサ) | 赤外線センサ(GP2Y0A21)とArduinoで距離計測を行います。 |
超音波センサ(SEEED) | 超音波センサ(SEEED製)とArduinoで距離計測を行います。 |
超音波センサ(HC-SR04) | 超音波センサ(HC-SR04)とArduinoで距離計測を行います。 |
人検知 | 焦電センサ:AKE-1とArduinoで物体検知を行います。 |
光量測定 | CdsセンサとArduinoで自然光測定を行います。 |
傾斜角の測定 | 加速度センサ(KXM-52)とArduinoで傾斜角度の測定を行います。 |
圧力測定 | 圧力センサ(FSR-402)とArduinoで圧力測定を行います。 |
測定精度の向上 | 各種センサの測定精度を上げるためのポイントを解説します。 |
圧電スピーカ | 圧電スピーカーで音を鳴らしてみます。 |
参考 | ■気圧・気温から標高(高度)を計算 |
注意 | ■I/OピンをGNDへ接続(故障原因) |
【制御】DCモータ、RCサーボモータ、電流リレーなど
– | 項目 |
---|---|
DCモーター制御 | DCモータの回転制御を行います。 |
RCサーボ制御 | RCサーボの回転角度を制御します。 |
電流リレー | 電流リレー(KY-019)を使って、電流をON/OFF制御します。 |
【通信】シリアル、SPI、CANなど
– | 項目 |
---|---|
シリアル通信 | シリアル通信でArduinoとPCの間でデータをやり取りします。 |
LCD | LCDに文字を表示させます。 |
【データ処理】ビット演算、文字列処理
項目 | 概要 |
---|---|
ビット演算 | ビット演算(2進数)を行うための関数について解説します。 |
区切り文字で分割 | 区切り文字で文字列を分割します。 |
【応用】パソコン、ラズベリーパイとの接続
「パソコン」や「ラズベリーパイ」と「Arduino」をUSB接続すれば、シリアル通信により相互にデータをやり取りしたりできます。
– | パソコン(Python)とArduinoで連携 |
---|---|
はじめに | ■LED制御(1文字) ■LED制御(文字列) |
気温 | ■気温測定① ■気温測定② ■気温測定(リアルタイムグラフ) |
傾斜角 | ■傾斜角測定(リアルタイムグラフ) |
サーボモータ | ■サーボモータ制御 |
赤外線距離センサ | ■簡易レーダー |
超音波距離センサ | ■距離・SN比を表示 |
シリアル通信(Processing) | パソコン(Processing)とArduinoでシリアル通信し、データのやり取りや遠隔制御を行います。 |
– | ラズベリーパイ(Python)とArduinoで連携 |
---|---|
初期設定 | ■シリアル通信の有効化 ■接続ポート確認① ■接続ポート確認② ■送信 ■受信 |
LED制御 | ■1文字 ■文字列 ■複数LED制御 |
超音波センサ | ■S/N比の計算 |
【その他】Arduinoの特殊関数や便利ツール
– | 項目 |
---|---|
タイマー関数 | ■割込処理 |
パルス関数 | ■pulseIn |
Fritzing | ■HC-SR04追加 |
モータードライバー | ■G2ハイパワーモータードライバ 24v21 |
参考サイト | ■Computer Radio RF Tech |
コメント