蓝牙控制51单片机智能小车
发布时间:2025-05-16 02:37:51 发布人:远客网络
一、蓝牙控制51单片机智能小车
1、我简单说一下原理吧,芯片需要慢慢来挑选,这个你可以自己去找,有很多;
2、首先需要解决的是单片机控制小车的问题,要想解决这个问题,首先需要解决智能小车的操作和功能;小车必须要有前后左右控制功能、加速、减速、刹车、左转向、又转向和倒车功能,有了这几种功能之后小车才能行动自如;
3、解决小车的问题,就要将小车的控制功能转于到单片机来实现(一般小车内部也会有单片机),实现了这一步,下面就需要做蓝牙的通信;
4、蓝牙通信IC非常多,速率从几十KB~几MB不等,根据数据流的需求来选择一款蓝牙IC,进行IC-IC的通信,一般IC的DATASHEET里面都会详细的说明该器件的使用方法以及相关软件配置和操作步骤等;重点在于调试,硬件电路搭建完成之后,最重要的是软件调试;
5、蓝牙通信方式是串行数据无线发送/接收,我们一般使用的控制位一般是多位的,那么你需要自己写一个小的并串转换程序;当然现在的蓝牙IC也有8BIT并行数据接口,如果选用类似的芯片,则更便于操作;
6、用蓝牙控制小车,重点还是在于用单片机控制小车,只要实现了这一步,通信方面就比较简单了;
二、用手机蓝牙控制万物:HC-06从机蓝牙模块介绍和使用
1、现如今,每个人的手机都配有蓝牙功能,我们可以用蓝牙传输数据,连接耳机以及控制一些自带蓝牙功能的电子设备。我们也可以使用蓝牙模块配上单片机就可以轻松实现手机控制LED灯,电机,智能小车,机器人等各种设备。让我们的创作实现无线控制。
2、下面我们就来介绍一种性价比极高的蓝牙模块:HC-06从机蓝牙模块。
3、 BLE蓝牙的角色有以下几种:广播者(Advertise)、扫描者(Scanner)、从设备(Slave)、主设备(Master)、发起者(Initiator),其中主设备是由发起者、扫描者转化而来,从设备则是由广播者转化而来;蓝牙模块通信是指两个蓝牙模块或蓝牙设备之间进行通信,进行数据通信的双方一个是主机,一个是从机。
4、主模式与从模式的区别:主机是指能够搜索别人并主动建立连接的一方,从机则不能主动建立连接,只能等别人连接自己。
5、 HC-05是主从一体化的蓝牙串口模块,主从可指令切换,指令丰富齐全。
6、 HC-06是主从一体化的蓝牙串口模块,主从可指令切换,指令少于HC-05,使用简单。
7、这次使用的是蓝牙HC-06是从模块,也就是从机模块,我们的手机就是主模块。主机可以与从机配对,从机不能和从机配对。如果要两个单片机通信,那就至少一个是有主机功能的,要是两个都是从机是通信不了的。
8、下面我们就用一台手机控制一个点阵屏的亮暗和不同图案显示。
9、将点阵模块的DIN、CS、CLK分别连到Arduino10/11/12数字引脚上,连接电源和接地线;蓝牙模块的TXD:连接ArduinoRXD接收端;RXD连接ArduinoTXD发送端,连接电源和接地线。
10、下面是实物图;图中Arduino模块增加了扩展板,方便接线。
11、在进行控制之前,我们需要在手机端安装蓝牙调试工具。在手机应用商店里搜索“蓝牙调试器”。我选择的是这款工具,体积小,操作简单,功能强大。
12、安装APP后,蓝牙连接HC-06模块;
13、我们选择按钮控制模式;将其中四个按键名词改为:关闭,打开,,笑脸;并将按下按键的发送代码分别改为:0,1,2,3。
14、现在大功告成,分别按下:关闭、打开、、笑脸,点阵屏就会按照对应的方式显示:
15、只要我们在加上不同的执行器,就可以用手机蓝牙控制步进电机,舵机,灯等等,实现各种功能了。一起来试试吧。
三、避障小车原理
控制前面两个轮子的转动方向就可以控制整个机器人行进的方向:
1、左右两个前轮都向前转,则机器人向“正前方”直线前进;
2、左右两个前轮都向后转,则机器人向“正后方”直线倒退;
3、左前轮向后转,右前轮向前转,则机器人将以后轮为轴心逆时针转动,即实现向“右后方”转弯倒退;
4、左前轮向前转,右前轮向后转,则机器人将以后轮为轴心顺时针转动,即实现向“左后方”转弯倒退。
在机器人的头部用钢丝做两根触须,一左一右各连接到一个碰撞开关,分别控制两个前轮的旋转方向。
特别注意,左右触须与对应控制的电机是交叉过来的,即:左边的触须连接右边的碰撞开关,控制右边的电机;右边的触须连接左边的碰撞开关,控制左边的电机。
当前方都没有障碍物,左右两个轮子都向前正转,则机器人向“前方”直线前进。
当左前方有障碍物,在左边触须碰到障碍物时,控制右边的轮子反转,则机器人向“左后方”倒退并转弯,即方向转向了障碍物的右边,从而避开了左边的障碍物。
向后倒退转弯会持续一会,在完成转弯之后,左边触须不再碰到障碍物,则两个轮子都正转,机器人继续向新的没有障碍物的“前方”直线前进。
当右前方有障碍物,在右边触须碰到障碍物时,控制左边的轮子反转,则机器人向“右后方”倒退并转弯,即方向转向了障碍物的左边,从而避开了右边的障碍物。
向后倒退转弯会持续一会,在完成转弯之后,右边触须不再碰到障碍物,则两个轮子都正转,机器人继续向新的没有障碍物的“前方”直线前进。
当正前方有障碍物,左右两边的触须都会碰到障碍物,控制左右两边的轮子都反转,则机器人向“正后方”倒退,从而避开障碍物。
在直线倒退持续了一会后,左右两边的触须都不再碰到障碍物,则两个轮子都正转又变成直线前进;然后又会遇到正前方的障碍物又会直线倒退,再直线前进……如此反复变成一个死循环。
机器人头部有两根钢丝作的触须,触须分别连接在两个碰撞开关上(注意两根钢丝对应的碰撞开关是交叉的,即:“左—右”钢丝,对应“右—左”碰撞开关)。
(1)没有障碍物时,触须没有被挤压,不触发碰撞开关,碰撞开关默认的通路,给电机供给一个“正方向”的电流,电机于是“顺时针方向”旋转。
(2)有障碍物时,触须被挤压,触发碰撞开关,碰撞开关断开默认通路,连接另外的一组通路,给电机供一个“反方向”的电流,电机于是“逆时针方向”旋转。