stem du とarduino のプログラム例yyhome/arduino/ardublock_program.pdf1...
Post on 11-Mar-2020
10 Views
Preview:
TRANSCRIPT
1
(作成:江澤良孝)
STEM DU と Arduino のプログラム例
ボードのピンアサインの例(基板によって異なる)
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
RDC-104TYPE II
2
3
ArduBlock のプログラム例1,2)
(1)LEDを点滅させる一番簡単なプログラム
Stem Duの C言語だと
#include <STEMDu.h>
STEMDu _STEMDU_robot = STEMDu();
void setup()
{
_STEMDU_robot.init();
}
void loop()
{
_STEMDU_robot.led((bool)HIGH);
delay( 1000 );
_STEMDU_robot.led((bool)LOW);
delay( 1000 );
}
(2)デジタル値をポート(ピン)に設定する場合
Arduino C言語だと
void setup(){
pinMode(13,OUTPUT);
}
void loop(){
digitalWrite(13,HIGH);
delay(1000);
digitalWrite(13,LOW);
delay(1000);
}
Stem DU C言語だと
void __ardublockDigitalWrite(int pinNumber, boolean status)
{
pinMode(pinNumber, OUTPUT);
digitalWrite(pinNumber, status);
4
}
void setup()
{
}
void loop()
{
__ardublockDigitalWrite(13, HIGH);
delay( 1000 );
__ardublockDigitalWrite(13, LOW);
delay( 1000 );
}
Arduino:1.8.9 (Windows 10), ボード:"Arduino/Genuino Uno"
エラーメッセージ:
最大 32256バイトのフラッシュメモリのうち、スケッチが 962バイト(2%)を使っています。
最大 2048バイトの RAMのうち、グローバル変数が 9バイト(0%)を使っていて、ローカル変数
で 2039バイト使うことができます。
シリアルポートが選択されていません。
「ファイル」メニューの「環境設定」から
「より詳細な情報を表示する:コンパイル」を有効にするとより詳しい情報が表示されます。
(3)モーターの回転,停止を繰り返す
STEM DU の C 言語だと
#include <STEMDu.h>
STEMDu _STEMDU_robot = STEMDu();
void setup()
{
_STEMDU_robot.init();
}
void loop()
{
_STEMDU_robot.forwardM1M2(200);
delay( 3000 );
_STEMDU_robot.stopM1M2();
delay( 2000 );
}
エラーメッセージ
Arduino:1.8.9 (Windows 10), ボード:"Arduino/Genuino Uno"
sketch_jul14a:1:20: error: STEMDu.h: No such file or directory
compilation terminated.
exit status 1
STEMDu.h: No such file or directory
5
「ファイル」メニューの「環境設定」から
「より詳細な情報を表示する:コンパイル」を有効にすると
より詳しい情報が表示されます。
M1,M2 コネクタに接続したモータを回転させるArduino Cの例は10)
/*
DC motor control sample for RDC.
6.2018 Atsushi Hasegawa
Modified by Yoshitaka Ezawa
Connect the motor to the M1/M2 socket
Motor driver setting H:HIGH L:LOW
IN1 IN2 PWM
H H H/L short brake
L H H CCW(counterclockwise) /PWM = L short brake
H L H CW(clockwise) /PWM = L short brake
L L H stop
*/
// Motor driver pin assign for RDC-104 M1/M2.
int M1_1 = 4;
int M1_2 = 9;
int M1_PWM = 6;
int M2_1 = 7;
int M2_2 = 8;
int M2_PWM = 5;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(M1_1, OUTPUT);
pinMode(M1_2, OUTPUT);
pinMode(M1_PWM, OUTPUT);
pinMode(M2_1, OUTPUT);
pinMode(M2_2, OUTPUT);
pinMode(M2_PWM, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(M1_1, HIGH);
digitalWrite(M1_2, LOW);
analogWrite(M1_PWM, 200); // PWM 0~255
digitalWrite(M2_1, HIGH);
digitalWrite(M2_2, LOW);
analogWrite(M2_PWM, 200); // PWM 0~255
delay(3000);
digitalWrite(M1_1, LOW);
digitalWrite(M1_2, LOW);
analogWrite(M1_PWM, 0); // PWM 0~255
digitalWrite(M2_1, LOW);
digitalWrite(M2_2, LOW);
analogWrite(M2_PWM, 0); // PWM 0~255
delay(2000);
}
6
(4)モーターの回転を逆回転させたりする
(5)いろんなコマンドで動かしてみたら
7
(6)音を測定
測定結果は,
「ツール」→「シリアルモニタ」
で表示される.
(7)音が鳴ったらモーターが動く
参考文献
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
10)Japan Robotech Ltd. RoboDesigner User’s Guide ver4.03
top related