(作成:江澤良孝) stem du arduinoyyhome/arduino/stem_du_arduino.pdf · 3...
TRANSCRIPT
1
(作成:江澤良孝)
STEM DU と Arduino
(1)Stem DU
埼玉大学が開発したマイコンボードである.
http://www.stem-edulab.org/htdocs/index.php?page_id=38
https://sites.google.com/site/japanrobotech2/RDC
https://github.com/tairo/STEMDu_ArduinoIDE
https://github.com/tairo/STEMDu_Scratch14
以下の説明は,上記のサイトから引用
STEM Duのキットには次の4タイプがある.
• 【Type 0】ブレッドボードなどでも簡単に作れる安価なコントローラを使ったキット。コ
ントローラ部分だけなら部品代は 500円程度です。ハンダ付けなしでもコントローラの組
み立てから,自律型ロボットの製作までできることを目指したキットです。
• 【Type I】「なのぼ〜ど AG2モーター」仕様のボード,「RDC-102」を使ったキット。ス
クラッチを使って2つのモーターまで動かすことができ,LEGO WeDoと同等の活動を安価
にできます。常にパソコンと接続して使います。
• 【Type II】「RDC-102」において液晶パネルを装備し,ボード上のボタンとスライダーを
使ってプログラミングができる機能を実現しました。パソコンがなくても,プログラミン
グや制御の基礎を勉強できます。
• 【Type III】Arduino IDEを使ってプログラミングをし,PCから独立して動く自律型ロボ
ットを作ることができるキット。プログラミングには ArduBlockなどグラフィカルなツー
ルを使うこともできます。小学生でも取り組むことができるキットです。
CPUに ATmega32U4を採用し,Arduino Leonardo, Sparkfun PicoMicroボードを参考にデ
ザイン株式会社ジャパンロボテックと共同開発
o RoboDesigner+ RDC-103
o RoboDesigner+ RDC-104
https://sites.google.com/site/japanrobotech2/RDC 開発環境として次のものを利用
o Arduino IDE + ArduBlock
o Scratch with 2 motors
最新ソフトウェア 1. Arduino IDE with Ardublock for STEM Du
https://github.com/tairo/STEMDu_ArduinoIDE 2. Scratch 1.4 for STEM Du
https://github.com/tairo/STEMDu_Scratch14
プログラム環境
(パソコンからマイクロ USB ケーブルでダウンロードします。) Arduino IDE(C 言語)
ArduBlock(ビジュアルプログラミング言語)
Scratch(ビジュアルプログラミング言語、常時 USB 接続)
(参考)
Scratch を Arduino 用に修正したソフトには,S4A(Scratch for Arduino)というものがある.
http://s4a.cat/
2
ボードのピンアサインの例(基板によって異なる)
RDC-104R4 の場合
ピン
明るさセンサ A2
スライダー A3
音センサ A4
ミノムシクリップ端子 A5
ボタン 12
白色 LED 13
赤外線 LED 11
超音波センサソケット 11
加速度/ジャイロ -
ブザー -
M1:モータ1 4 9 6 (PWM) 0.5A 程度
M2:モータ2 7 8 5 (PWM) 0.5A 程度
M3:モータ3 0 1 11 (PWN) 0.5A 程度
M4:モータ4 10 12 13 (PWN) 0.5A 程度
LCD:液晶表示 12C
2-SDA
3-SCL
3
(2)ドライバーの更新について
STEM Du を USB ケーブルで接続
→デバイスを接続した時に,ドライバがインストールされていないと
(a) 「デバイスをインストールしています」の画面が表示された場合は
→「デバイスをインストールしています」の画面が終了するまで待つ
→「コントロールパネル」→「デバイスマネージャー」を開く
→「ほかのデバイス」
→ハザードマーク(黄色のビックリマーク)のついた Arduino のデバイス
が見つかります。これを選択します。
→「ドライバーの更新」をクリック
→「コンピュータを参照してドライバーソフトウェアを検索します」を選択
→「参照」をクリック
→Arduino 開発環境のインストールで,インストールし,展開したフォルダーを
選択し.「OK」をクリック
→「サブフォルダーも検索する」のチェックはつけたまま,「次へ」をクリック.
→「ドライバーソフトウェアが正常に更新されました」→「閉じる」
(b)「新しいハードウェアの検索ウィザードの開始」が始まった場合は
→ Windows Update に接続しますか →「いいえ,今回は接続しません」を選択
→「一覧または特定の場所からインストールする」を選択
→「参照」をクリック
→Arduino 開発環境のインストールで,インストールし,展開したフォルダーを
選択し.「OK」をクリック
→「サブフォルダーも検索する」のチェックはつけたまま,「次へ」をクリック.
→「ドライバーソフトウェアが正常に更新されました」→「閉じる」
(参考:Arduino 用 Scratch ソフト S4A の場合)
S4A はパソコンと Arduino の間で常に通信します.この通信をするために,S4A の通信用
のファームウェアを Arduino 上で実行するようにします.そのために Arduino に S4A 用のファ
ームウェアをインストールしておきます.
まず,S4A をパソコンにインストールします.そのつぎにファームウェアを Arduino にイ
ンストールします. http://s4a.cat/
4
(3)Arduino IDE
Arduino IDE は Arduino 用開発環境です
ダウンロードは https://www.arduino.cc/en/Main/Software
STEM Du 用は https://github.com/tairo/STEMDu_ArduinoIDE
(a)Arduino IDE を起動
(b)起動中の画面
(c) Arduino IDE の起動後の画面
5
(d)「ツール」→「ボード情報を取得」→「マイコンボード」→ 接続したボードを指定
すでに選択されている場合は,ボード名を確認.
接続したボードを指定できない時は,Arduino ドライバーを再度インストールして再起動.
(e)「ツール」→「シリアルポート」→「COM○」を指定(○部分は数字)
すでに選択されている場合は認識されているポートがどれかを確認.
7
(ii) ArduBlock でプログラム作成
例:LED の点滅
(iii)マイコンボードを USB コードで接続(マイコンボード,シリアルポートの設定確認)
(iv)「Arduino にアップロード」をクリック
8
<ArduBlock を使わないで Blinkのプログラムを強制アップロードする場合>
(i)プログラムを作成
(ii)マイコンボードを USB コードで接続(マイコンボード,シリアルポートの設定確認)
(iii)Arduino を起動
(iv)Blink を起動
「ファイル」→「スケッチ例」→「01.Basics」→「Blink」
(iii)「マイコンボードに書く込む」ボタンをクリック
9
ちなみに,「ファイル」→「スケッチ例」→「basics」→「Blink」
に出てくるスケッチ例は
/*
Blink
Turns an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your Arduino
model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
modified 8 May 2014
by Scott Fitzgerald
modified 2 Sep 2016
by Arturo Guadalupi
modified 8 Sep 2016
by Colby Newman
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/Blink
*/
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
<アップロードできない場合>1, 2)
①ボード番号,シリアルポートの確認をする
②USBケーブルの差し込み口を変える
③コンパイルが終わった瞬間に,STEM Duのリセットボタンを2回押す
④Arduinoを再起動する
⑤Blinkのプログラムを③を使って強制アップロードする
⑥USBケーブルを変えてみる
補足:⑤の手順は
1.Arduinoの小さい画面の
「ファイル」→「スケッチの例」→「01. Basics」→「Blink」
2.スケッチの画面(小さい画面)の左上の矢印ボタンでアップロード
3.アップロード開始直後にリセットボタンを2回押して強制アップロード
35
ArduBlock のプログラム例1,2)
(1)LEDを点滅させる一番簡単なプログラム
(2)デジタル値をポート(ピン)に設定する場合
Arduino言語だと
void setup(){
pinMode(13,OUTPUT);
}
void loop(){
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}
(3)モーターの回転,停止を繰り返す
38
参考文献
1)埼玉大学,STEM Du 関連資料
2)埼玉大学,富士見☆研究室,富士見市ロボットと未来研究会,STEM Du 関連資料
3)http://www.stem-edulab.org/htdocs/index.php?page_id=38
4)https://sites.google.com/site/japanrobotech2/RDC
5)https://github.com/tairo/STEMDu_ArduinoIDE
6)https://github.com/tairo/STEMDu_Scratch14
7)福田 和宏著,これ 1 冊でできる!Arduino ではじめる電子工作 超入門 改訂第 3 版
ソーテック社(2018/6/16)
8)Massimo Banzi 他著,Arduino をはじめよう 第 3 版 (Make:PROJECTS)
(2015/11/28)
9)https://sites.google.com/site/japanrobotech2/program