2024/08/26 各章を個別ページ化
未来を操れ!ロボット、ドローンの世界は3次元、姿勢計測を学ぼう!
目 次
- 第0章 使用するもの
- 第1章 Arduinoを使おう
- Arduinoとは
- Arduinoを使って見よう!① – 基板LED点灯プログラムの実行
- Arduinoを使って見よう!② – 端子に接続したLEDを点灯させる
- 第2章 モーションセンサを使おう
- モーションセンサとは
- モーションセンサの出力を見てみよう!
- モーションセンサの出力を利用しよう!
- モーションセンサの出力を滑らかにしてみよう!
第1章 Arduinoを使おう
Arduinoとは
出典:Arduino.cc
マイコンと入出力ポートを備えたシングルボードコンピュータ(ハードウェア)で、専用の開発環境(ソフトウェア)も用意され、シンプルな繰り返し動作を行うものづくりに適している。そのため、初学者でも取り組みやすく、簡単に各種センサなどを使ったものづくりが体験できる。世界中で利用されているため、事例が豊富にあり、インターネットがあれば自分で調べて進められる。
大学では、授業で学んだ内容を簡単に試すことができるため、授業や研究の一部で利用している。
*機械実験「コールドガスジェットの推力計測」
<参考>
arduino:https://ja.wikipedia.org/wiki/Arduino
本授業では互換機を使用する。
*arduinoの回路図は公開され、個人でも部品を集めて作ることができる。
Arduinoを使って見よう!① – 基板LED点灯プログラムの実行
Arduinoの基本的な使い方を習得することを目的として、
Arduinoボード上の”L”と書かれている小さいLEDを点滅させるプログラムを実行する。
まずはPCと接続する。計算機室のPCでは後ろ側のUSBポートに接続する。(この方が挙動が安定する。)
メニューから以下のサンプルプログラムを開く。
ファイル -> スケッチ例 -> 01.Basics -> Blink
メニューのツールから、ボードとポートの設定を確認してから、左上の右向きの矢印(→)ボタンを押すと、プログラムがArduinoにアップロードされる。
アップロード後、自動的にプログラムが実行される。
“L”と書かれている小さいLEDが点滅しているか確認してみよう。
点滅が確認できれば使い方を習得したということです。
応用:時間がある人は次のようにプログラムを書き換えてどうなるか試してみよう。
“delay(1000)”と書かれているところの括弧中の数字を変えて再アップロードし、LEDの点滅速度を変えてみよう。
・1000を5000に変えるとどのように変わりましたか?
・1000を500に変えるとどのように変わりましたか?
・それでは、1000を10に変えるとどのようになるか考えて見ましょう。
・実際に10として試して見ましょう。結果は予想の通りでしか?
Arduinoを使って見よう!② – 端子に接続したLEDを点灯させる
次は、Arduinoの基本的な使い方を習得することを目的として、
Arduinoの端子に繋いだLEDを点滅させるプログラムを実行する。
まずはLEDをArduinoの端子に接続する。
LEDの足の短い方(K: カソード(陰極))→ GND
LEDの足の長い方(A: アノード(陽極))→ 12番
「Arduinoを使って見よう!① – 基板LED点灯プログラムの実行」で開いたプログラムの端子番号をLEDを繋いだ12番に変更する。
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
「LED_BUILTIN」を「12」に書き換える。
void setup() {
pinMode(12, OUTPUT);
}
void loop() {
digitalWrite(12, HIGH);
delay(1000);
digitalWrite(12, LOW);
delay(1000);
}
左上の右向きの矢印(→)ボタンを押すと、プログラムがArduinoにアップロードされる。
アップロード後、自動的にプログラムが実行される。
12番の端子に接続したLEDが点滅しているか確認してみよう。
このように、コンピュータに何かを繋いだときには、繋いだ端子(ポート)をコンピュータに教えてあげる必要があります。
ちなみに、digitalWriteという命令は、デジタル信号を出力しなさいと命令しています。
digitalWrite(12, HIGH); は、デジタル信号を12番にHIGHと出力しなさい という命令になります。
*デジタル信号:2つの状態(0か1、LOWかHIGHなど)で作る信号
点滅が確認できれば端子に繋いだ電子部品の使い方を習得したことになります。
<参考>
・ArduinoとPCを接続してみよう