功能介绍
用超声波作为距离检测装置,舵机作为前方扫描器,实现一个可自动蔽障小车。
STEP1:组装小车
参照安装说明。
注意事项: 按照切诺基的安装说明组装小车,完成到第3步的时候,找到套件中的Romeo BLE板子的固定孔,将Romeo BLE固定到小车底板上。如下图所示。
完成组装后,先不要急着把上面的扩展板固定上去,接下去我们进行第二步调试电机。
STEP2:调试电机
1. 连接电机控制引脚
在STEP1中,我们已经把四个电机(马达)固定到底板上了,想让RoMeo BLE控制小车,还需要连接到控制器上。
注意主控板D4、D5、D6、D7需要使用杜邦线连接到小车底板上的D4、D5、D6、D7
2. 下载电机调试代码
int speedPin_M1 = 5; //M1 Speed Control
int speedPin_M2 = 6; //M2 Speed Control
int directionPin_M1 = 4; //M1 Direction Control
int directionPin_M2 = 7; //M1 Direction Control
void setup(){
}
void loop(){
carAdvance(100,100);
delay(1000);
carBack(100,100);
delay(1000);
carTurnLeft(250,250);
delay(1000);
carTurnRight(250,250);
delay(1000);
}
void carStop(){ // Motor Stop
digitalWrite(speedPin_M2,0);
digitalWrite(directionPin_M2,LOW);
digitalWrite(speedPin_M1,0);
digitalWrite(directionPin_M1,LOW);
}
void carAdvance(int leftSpeed,int rightSpeed){ //Move FORkward
analogWrite (speedPin_M2,leftSpeed); //PWM Speed Control
digitalWrite(directionPin_M2,LOW);
analogWrite (speedPin_M1,rightSpeed);
digitalWrite(directionPin_M1,HIGH);
}
void carBack(int leftSpeed,int rightSpeed){ //Move BACKrward
analogWrite (speedPin_M2,leftSpeed);
digitalWrite(directionPin_M2,HIGH);
analogWrite (speedPin_M1,rightSpeed);
digitalWrite(directionPin_M1,LOW);
}
void carTurnLeft(int leftSpeed,int rightSpeed){ //Turn Left
analogWrite (speedPin_M2,leftSpeed);
digitalWrite(directionPin_M2,HIGH);
analogWrite (speedPin_M1,rightSpeed);
digitalWrite(directionPin_M1,HIGH);
}
void carTurnRight(int leftSpeed,int rightSpeed){ //Turn Right
analogWrite (speedPin_M2,leftSpeed);
digitalWrite(directionPin_M2,LOW);
analogWrite (speedPin_M1,rightSpeed);
digitalWrite(directionPin_M1,LOW);
}
3. 装上电池
所需材料:DC母头 x 1
因为RoMeo BLE不带DC接口。
上电后发现,如果发现效果与代码不匹配,可以对代码做一下微调整。直到匹配为止。