找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 13648|回复: 1
打印 上一主题 下一主题
收起左侧

蓝牙控制小车设计与调试

[复制链接]
跳转到指定楼层
#
ID:328014 发表于 2019-1-25 02:51 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
1 总体设计方案
本设计的研究内容包括小车的工作原理、单片机系统的软件和硬件、电机驱动系统、蓝牙通信系统,Android手机APP设计,。本设计需要达到的目标如下:
(1) 可以通过Android手机客户端操作界面实现小车的前进、后退、右转弯、左转弯、倒车右转、倒车左转等功能;
(2) 结合Android系统开源特点、蓝牙短距离无线传输的优势以及单片机操作的简便,实现手机的基本控制功能;
(3) 可以在小车行走过程中通过Android手机客户端利用APP界面的“按钮”、重力、语音分别改变小车运动状态;
(4) 在超出蓝牙控制范围时,小车能够自动停止运动。
1.1 上位机软件设计
上位机开发使用的是由IBM提出的Eclipse开发环境,该开发环境功能完善、比较成熟。而Android是一个多任务操作系统,在执行一个应用程序时,可以把这个应用程序放在后台,然后另外又执行其他的应用程序。但每多执行一个程序,就会多耗费一些系统内存,如果同时执行的任务过多或者没有释放之前执行任务的内存,Android系统运行起来就会变慢,甚至变得不稳定。
1.2 下位机软件设计
下位机(单片机简称下位机)软件开发环境使用的是Keil μVision 4开发环境,根据主控制器的要求选择Keil μVision 4的Keil C51开发环境对整个下位机软件进行开发,其开发语言使用的是C语言。  
2 设计方案特点及扩展说明
本设计主要是将单片机电子技术、蓝牙通信技术和计算机软件技术等相关技术进行融会贯通,设计了该智能小车系统。
在主控芯片选择时,选取功能俱全、价格低廉的芯片,通信方式上,选用最新的蓝牙4.0技术,同时结合了移动智能终端来控制小车。设计方案的特色如下:
(1) 小车的主控芯片选用宏晶公司的STC89C52,其具有8 kB的FLASH,3个定时器,软件编程难度适宜,且芯片资源足够本系统使用。
(2) 通信方式采用串口通信,利用蓝牙技术实现对小车的控制。短距离通信方式主要有:Bluetooth,ZigBee,WiFi,UWB和NFC,相比这五种无线短距离通信,蓝牙在移动智能终端的成本是最低的,同时在车载音响设备中已经有了应用,因此本方案选择蓝牙作为通信方式。
(3) 近几年移动智能终端发展得越来越快、越来越好,手机、平板等都已进入了智能家居中,且这些设备都具备蓝牙功能,在小车控制端选择Android手机作为控制平台是时代的潮流。
3 方案难点及关键技术
该方案难点在于: Android手机客户端的APP编程。因为小车控制有虚拟按键、重力、语音三种控制方式,这样在上位机编程上有很大的技术难点;蓝牙模块与下位机的串口通信和与上位机的无线通信。为了避免通信故障,在确定通信协议上有一定的难度;小车四个驱动电机的供电、主控芯片的供电和蓝牙模块的供电。
关键技术有:制定通信协议;设计Android手机APP;整个小车的供电系统。
4 系统仿真与结果分析
4.1 蓝牙控制小车整体外观
蓝牙控制智能小车整体实物图如图1所示,图1为小车的侧视图。整个小车有上位机和下位机两部分组成,小车控制器部分主要包括直流电机控制,蓝牙通信,电池供电等。
4.2 系统整体调试
蓝牙控制智能小车最终实现的功能有:可以通过Android手机客户端操作界面实现小车的前进、后退、右转弯、左转弯、倒车右转、倒车左转等功能;可在小车行走过程中通过手机客户端利用APP界面的“按钮”、重力、语音分别控制改变小车运动状态;在超出蓝牙控制范围时,小车能够自动停止运动。主要调试内容如下:
(1) 蓝牙通信测试。用APP按键控制小车的前进后退,小车可以进行相应的转向操作,证明通信系统没有问题,然后测试重力感应和语音控制,小车均正常工作。
(2) 小车运动测试。当小车收到手机APP发送的前进后退指令后,单片机会解析其指令并控制四个直流电机做相应的“动作”。“按键”、重力、语音三种控制方式,在软件设计时采用了一定的技巧,单片机解析命令时不需要解析其是三种控制方式的哪一种,只需要解析前进、后退、左转、右转和停止五个命令。
5 结 语
通过多次反复调试和修改代码,成功实现了蓝牙小车预设的所有功能,在10 m范围内通信稳定,控制可靠灵活。只是在上位机与下位机联调的过程中遇到过一些麻烦,经过不断的优化代码最终实现了通信、控制“无障碍”。方案的意义在于将单片机电子技术,蓝牙通信技术和智能终端设备有效的结合,深化了车联网的概念,为车载电子的无线通信设计提供了一定的参考价值,本方案可推广到车载蓝牙系统,智能家居等领域。


附录:
  •          智能小车效果图
图一
二、智能小车各模块功能介绍
   1、小车底盘
小车底盘是机器人最重要的载体,相当于人体的躯干,ZK—4WD小车平台采用差速转弯,非常灵活,可以实现原地打转。小车平台大小刚好,可以承载一些如驱动器,控制器,电池,传感器等
             图二
2、驱动模块
我采用ST公司原装全新的L298N芯片及高质量铝电解电容,使电路稳定工作。小车直流电机工作电流一般是200—400mA,有些更大。如果一个小车是两个轮子,那么总的电流在400--800 mA左右,这些电机轮子都是要接受单片机指令执行相应动作,而市面有的单片机IO口一般只能提供5--10 mA的电流,直接驱动不了单片机,所以就需要一个驱动模块,就好像人的心脏功能。
                    图三
3、控制模块
我采用的控制器主控芯片是STC89C52属于标准的51核的单片机,STC12C5A60S2内带PWM,AD,1T运行速度(主流),集成USB转串可以直接用USB下载程序。集成数码管,舵机,红外蔽障,12864,1602,无线模块等接口,板载输入按钮
             图四
4、小车所需的能源
可以用普通的AA5号电池,我采用低内阻的充电电磁套装,这是小车的动力之源,对外供电为7.2V。
         图五
这四部分都是必备的,有这四样东西,就可以让小车走起来,至于要怎么走,这个时候传感器就开始大发神威了!

5、小车需要的各种传感器

SG90舵机:里面有一个信号调制芯片,主要通过控制信号获得直流偏置电压,电压差的正负输出到电机的驱动芯片,决定电机的正反转。当电压差为0时,电机停止转动。舵机内带反馈装置,又名伺服电机,由于有反馈,所以很容易控制,与我们的超声波模块组成,那就是绝配。

     蓝牙无线传感器:可以用Android智能手机控制小车运行,Android手机用内置蓝牙与蓝牙无线模块配对,手机发出指令,无线蓝牙模块接收指令。当单片机接收到蓝牙无线模块发出的指令后,执行相应的解码动作,从而控制小车。


完整的Word格式文档51黑下载地址:
第四组蓝牙控制小车.doc (1.18 MB, 下载次数: 72)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

楼主
ID:730609 发表于 2020-4-16 15:26 | 只看该作者
这个文件是什么内容啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表