Arduinoはイタリア生まれのマイコンボードです。イタリア語ではアルドゥイーノといいますが、一般的にアルディーノで通用します。
Arduinoの説明
Wikiを参照してください。
本コースの概要
初心者から始めて、次第に高度なプロジェクトを進めていける内容にしています。各月で、基礎的な知識を習得しながら、実際に手を動かして学んでいく形式です。
1月: はじめてのArduinoとセットアップ
- 1回目: Arduinoの紹介、開発環境のインストール、基本的な構成
- Arduino IDEのインストール方法
- Arduinoボードの基本構造と役割
- LED点灯プログラム(”Blink”)を動かしてみよう
- 2回目: 基本的なプログラミングの理解
- 「デジタル出力」とは
- 複数のLEDを点灯させる(パターン制御)
- プログラムのフローを理解(delay、loop関数の活用)
2月: センサーと入力デバイスの使用
- 1回目: ボタンを使ってLEDを点灯/消灯
- ボタンを接続し、スイッチ操作でLEDの点灯・消灯
- デジタル入力とデジタル出力
- 2回目: 直感的なセンサー入力を扱う
- ポテンショメータ(可変抵抗)の使用
- アナログ入力の基礎(map関数を使ってLEDの明るさを調整)
3月: 基本的な制御構造を学ぼう
- 1回目: if文とelse文を使った制御
- ボタンの状態に応じてLEDを点灯させる
- 2回目: forループとwhileループの使い方
- LEDの点滅パターンを変える(速度調整)
4月: センサーの応用(温度センサー、距離センサー)
- 1回目: 温度センサー(LM35)を使って温度計を作る
- アナログセンサーの使い方
- 温度の読み取りとディスプレイ表示
- 2回目: 超音波センサー(HC-SR04)を使って距離測定
- 超音波センサーの使い方
- 距離に応じてLEDの明るさを変化させる
5月: 複数のデバイスの連携
- 1回目: 複数のセンサーを連携させた簡単なシステム
- ボタン+温度センサーの組み合わせ
- 入力に応じて動作を変更する
- 2回目: モーターを使った制御(DCモーター、サーボモーター)
- サーボモーターで角度調整
6月: ディスプレイと外部モジュールの活用
- 1回目: LCDディスプレイにデータ表示
- 基本的なLCDの使い方
- 温度やボタンの状態を表示
- 2回目: サウンド出力(ブザーやスピーカーの使用)
- 音を鳴らすプログラムを作成
- サウンドとタイミングを組み合わせる
7月: プロジェクト(基本的なロボットを作成)
- 1回目: モーターを使ったロボットの基礎
- ロボットを動かすためのシステム(モータードライバの使用)
- 2回目: センサーで自動運転ロボットを作る
- 距離センサーを使って障害物を避けるロボット
8月: Wi-Fiとインターネットの活用
- 1回目: ESP8266を使ってWi-Fi接続
- ArduinoからWi-Fi接続し、データを送信
- HTTP通信の基本
- 2回目: Webページでデバイスを制御
- Wi-Fi経由でLEDの点灯/消灯をウェブブラウザで操作
9月: Bluetoothを使った制御
- 1回目: Bluetoothモジュール(HC-05)を使った制御
- Arduinoとスマホ間のBluetooth通信
- 2回目: スマホアプリを使ってArduinoを制御
- スマホからのボタン操作でLEDを制御
10月: センサーとクラウドの連携
- 1回目: センサーのデータをインターネットに送信
- 温度や湿度データをクラウドにアップロード(ThingSpeakやBlynkを利用)
- 2回目: クラウドでデータを可視化
- クラウドでデータを表示し、リアルタイムで監視
11月: より高度なロボット制御
- 1回目: モーターを使ったPID制御
- ロボットのスムーズな動きのためのPID制御
- 2回目: センサーによる自律移動ロボット
- 赤外線センサーを使った自律走行
12月: 年末プロジェクト発表
- 1回目: 最終プロジェクトの作成
- これまで学んだ内容を組み合わせて自由にプロジェクトを作成
- ロボットやセンサーを使った面白いプロジェクト
- 2回目: 発表とフィードバック
- 参加者全員が自分のプロジェクトを発表
- 他の人の作品を見て学ぶ
総合的な学習ポイント:
- Arduinoの基本的なプログラミング(C言語の基礎)
- センサー、モーター、ディスプレイなどのハードウェア制御
- IoT(インターネットオブシングス)や無線通信(Wi-Fi、Bluetooth)を使ったデバイス制御
- 実際のプロジェクトで学んだ技術を活用する