Arduino 蓝牙小车 第二天简易蓝牙小车1.0正式上线
简介
上一章说到了接入蓝牙,实现手机和Arduino 开发板的通信,今天为大家带来蓝牙驱动电机并组装完成建议版本差速转向。
接线
源码
#include <AFMotor.h>//引入驱动电机库
AF_DCMotor motor1(1, MOTOR12_64KHZ);//左前轮
AF_DCMotor motor2(2, MOTOR12_64KHZ);//左后轮
AF_DCMotor motor3(3, MOTOR34_64KHZ);//右后轮
AF_DCMotor motor4(4, MOTOR34_64KHZ);//右前轮
void setup() {//初始化蓝牙频率
Serial.begin(9600);
}
void loop() {
if (Serial.available()>0){
char val = Serial.read();
Serial.println(val);
switch(val){
case 'w'://前进
motor1.setSpeed(255);//设置转速
motor2.setSpeed(255);
motor3.setSpeed(255);
motor4.setSpeed(255);
motor1.run(FORWARD);
motor2.run(FORWARD);
motor3.run(FORWARD);
motor4.run(FORWARD);
delay(500);//延迟
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
break;
case 's'://后退
motor1.setSpeed(255);
motor2.setSpeed(255);
motor3.setSpeed(255);
motor4.setSpeed(255);
motor1.run(BACKWARD);
motor2.run(BACKWARD);
motor3.run(BACKWARD);
motor4.run(BACKWARD);
delay(500);
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
break;
case 'l'://左转
motor1.setSpeed(255);
motor2.setSpeed(255);
motor3.setSpeed(0);
motor4.setSpeed(0);
motor1.run(FORWARD);
motor2.run(FORWARD);
motor3.run(RELEASE);
motor4.run(RELEASE);
delay(500);
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
break;
case 'r'://右转
motor1.setSpeed(0);
motor2.setSpeed(0);
motor3.setSpeed(255);
motor4.setSpeed(255);
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(FORWARD);
motor4.run(FORWARD);
delay(500);
motor1.run(RELEASE);
motor2.run(RELEASE);
motor3.run(RELEASE);
motor4.run(RELEASE);
break;
default:
motor1.setSpeed(0);
Serial.println("stop"); //输出状态
motor1.run(RELEASE);
}
}
}
上传程序
拔出蓝牙3.3V接口否则上传会失败,原因未知。上传代码到开发版教程第一天有
成品展示
总结
- 蓝牙HC-05 延迟高 大概在1-2秒左右。实际应用有些困难后期换成WiFi 通信模块
- 第一次抱着学习的态度做, 车辆转向只能是差速转向 。 什么是差速转向建议百度我也解释不了
- 后期持续集成更新,加入摄像头接入网站就把小车变成了监控小车啦。技术方面还在学习,有感兴趣的小伙伴可以私信我,也欢迎大神在技术方面指导
评论区