基于单片机的蓝牙遥控小车(单片机大作业)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机大作业
“基于单片机的蓝牙遥控小车”
基于单片机的蓝牙遥控小车
目录
第一章绪论 (1)
1.1研究背景和意义 (1)
第二章系统框架及软硬件结构设计 (2)
2.1 系统要求 (2)
2.2 系统整体算法流程 (2)
2.3 总体任务设计 (3)
2.4 整体硬件结构设计 (4)
2.5 整体软件结构设计 (4)
第三章模块的详细设计 (5)
3.1 L293D电机驱动模块 (5)
3.1.1模块介绍 (5)
3.1.2 PWM脉冲控制原理 (6)
3.1.3 脉冲控制代码 (6)
3.2 HC05蓝牙模块 (7)
3.2.1 模块简介 (7)
3.2.2 蓝牙串口程序说明 (8)
3.2.3 模块引脚说明 (8)
3.3 USB转TTL模块 (9)
第四章系统功能设计与实现 (11)
4.1 安卓手机蓝牙遥控的设计与实现 (11)
4.1.1 设计基本思路 (11)
4.1.2 遥控任务分配 (11)
4.2.3 蓝牙遥控操作流程 (12)
第五章软硬件调试 (14)
5.1 硬件调试 (14)
5.2 软件调试 (14)
第一章绪论
1.1 研究背景和意义
智能化无处不在。各种智能化设备在不同的领域中发挥着自己的特长,而在家用方面的智能有着相当重要的意义。
本次所设计的智能小车系统包含着对周围环境的检测、舵机控制以及短距离无线遥控等的功能,它需要实现微控制器、多传感器技术、蓝牙遥控、机械结构原理、数字逻辑、自动控制等各学科技术内容的渗透融合。智能小车通过其上部搭载的89C52芯片作为核心控制器,通过多种传感器来获取周围环境信息并将采集到的信息输送给CPU,然后由CPU来给各个部分下达相对应的指令。智能小车不仅价格低廉,而且甚至能够担任人类难以从事的任务,它在工业、农业以及社会生产生活等许多领域都起到了重要作用。本次课题设计中所采用到的短距离无线遥控、单片机控制原理、多传感器技术、自动避障技术等等。现在在工业制造、农业生产、国家安全、军事武器,医疗保健、太空探测等许多领域都日益发挥着其作用,在军事侦察、反恐、防暴、防核化等高危任务方面、环境污染检测方面和在恶劣环境中均有着非常好的发展前景,从这些方面可知本课题研究意义非凡。
第二章系统框架及软硬件结构设计
2.1 系统要求
在综合考量了单片机的使用性能、成本和时间等问题,本次课题主要旨在实现以下性能指标:
1)根据力学结构完成小车整体框架的搭建,稳固其整体重心;
2)完成底层运动系统的搭建,保证小车能够正常行进;
3)完成小车自主避障功能,能够在简单地形避开障碍物;
4)完成小车的简单路径规划;
5)完成手机遥控功能,通过手机控制底层小车的工作方式。
整体小车车身采用深圳欧鹏公司设计生产的金属框架,通过自己的设计和搭建,完成底层硬件系统的搭载,再通过上层安卓手机APP遥控,通过无线蓝牙通信协议,实现小车能够遵从指令实现在室内的自主避障的巡航功能与手机遥控功能,整体电路图如图所示
图2-1 系统整体电路设计
2.2 系统整体算法流程
整个系统的算法结构具体流程如图2-1所示。
图2-2 系统整体算法流程图2.3 总体任务设计
小车总体任务分配如下图2-2所示。
图2-3 小车任务分配
2.4 整体硬件结构设计
智能小车系统整体硬件结构以89C51单片机为中心主要分为以下几个部分:
1)运动结构,即舵机模块是整个系统的基础,通过对舵机性能参数的测定对舵机进行标定、控速;
2)供电结构,采用分压式供电。由于各,模块对电压的要求不同,所以需要通过分压以适应不同模块对电压的需求。其中舵机需要8v电压的供应,而单片机、传感器、蓝牙等模块则需要较低一点的电压5v供电;
3)无线通信结构,通过对蓝牙模块与单片机通信电路的设计与单片机串口功能的调试,做到小车与手机的无线通信。
小车实物图如下图2-3所示。
图2-4 小车实物图
2.5 整体软件结构设计
当启动电源系统初始化完成后,小车进入等待的任务模式,等待上层安卓终端手机的APP客户端发送任务指令。小车接收到上层手机发送的小车行进方向的指令后相对应的前进(forward)、后退(backward)、左转(left)、右转(right)、停止(stop)等。
第三章模块的详细设计
3.1 L293D电机驱动模块
3.1.1模块介绍
L293D采用16引脚DIP封装,其内部集成了双极型H-桥电路,所有的开量都做成n型。这种双极型脉冲调宽方式具有很多优点,如电流连续;电机可四角限运行;电机停止时有微振电流,起到“动力润滑”作用,消除正反向时的静摩擦死区:低速平稳性好等。L293D通过内部逻辑生成使能信号。H-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(PWM)。另外,L293D 将2个H-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。每1个电机需要3个控制信号EN12、IN1、IN2,其中EN12是使能信号,IN1、IN2为电机转动方向控制信号,IN1、IN2分别为1,0时,电机正转,反之,电机反转。选用一路PWM连接EN12引脚,通过调整PWM的占空比可以调整电机的转速。选择一路I/O口,经反向器74HC14分别接IN1和IN2引脚,控制电机的正反转。实物图如下图3-1所示。
图3-1 模块实物图
3.1.2 PWM脉冲控制原理
所谓PWM就是脉宽调制器,通过调制器给电机提供一个具有一定频率的脉冲宽度可调的脉冲电。脉冲宽度越大即占空比越大,提供给电机的平均电压越大,电机转速就高。反之脉冲宽度越小,则占空比越越小。提供给电机的平均电压越小,电机转速就低。
PWM不管是高电平还是低电平时电机都是转动的,电机的转速取决于平均电压。
3.1.3 脉冲控制代码
void T0_time() interrupt 1 //定时器1中断程序
{
PWMCnt1++;
PWMCnt2++;
if(PWMCnt1 >= 200)
{
PWMCnt1 = 1;
}
if(PWMCnt1 <= cntPWM1) //230
{
PWM1 = 1;
}
else
{
PWM1 = 0;
}
if(PWMCnt2 >= 200)