前提・実現したいこと
arduinoUNOR3(elegoo)でお掃除ロボットを制作したいです。
タミヤのシングルギアモーター、ダブルギアモーターをマイコン制御したいです。(基本的な文法的なのも知りたい。←調べてもでてこなかった。)
超音波センサーを使って壁に近づくと90度方向転換するものが欲しいと考えている。←ダブルギアモーター
肝心の掃除部分のためにシングルギアモーターを一定時間同じ速度で作動するようにしたい。
発生している問題・エラーメッセージ
実行してもモーターが動作しない。
該当のソースコード
arduino IDE
int echoPin=6; int trigPin=7; double Duration = 0; double Distance = 0; #define ENABLE 5 #define DIRA 3 #define DIRB 4 int i; void setup() { Serial.begin( 9600 ); pinMode( echoPin, INPUT ); pinMode( trigPin, OUTPUT ); pinMode(ENABLE,OUTPUT); pinMode(DIRA,OUTPUT); pinMode(DIRB,OUTPUT); } void loop() { digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite( trigPin, HIGH ); delayMicroseconds( 10 ); digitalWrite( trigPin, LOW ); Duration = pulseIn( echoPin, HIGH ); if (Duration > 0){ Duration = Duration/2; Distance = Duration*340*100/1000000; Serial.print("Distance:"); Serial.print(Distance); Serial.println(" cm"); delay(500); } if(Distance>10){ digitalWrite(DIRA,HIGH); digitalWrite(DIRB,LOW); } else{ digitalWrite(DIRA,LOW); digitalWrite(DIRB,HIGH); } }
arduino IDE
#define ENABLE 5 #define DIRA 3 #define DIRB 4 int i; void setup() { pinMode(ENABLE,OUTPUT); pinMode(DIRA,OUTPUT); pinMode(DIRB,OUTPUT); } void loop() { digitalWrite(ENABLE,HIGH); for (i=0;i<5;i++) { digitalWrite(DIRA,HIGH); digitalWrite(DIRB,LOW); delay(10000); digitalWrite(DIRA,LOW); digitalWrite(DIRB,HIGH); delay(10000); } }
試したこと
一応コンパイルはできるので回路などのハード的な問題かなとは考えました。しかしサンプルプログラムでその通り動いたので考えにくいです。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。