基于Android手机控制的智能小车的设计与实现

2017-04-26 20:30邢静龚启智李春梅
科技资讯 2017年6期
关键词:智能小车手机app

邢静+龚启智+李春梅

摘 要:该设计以小车为控制对象,以Android手机APP为控制平台,通过蓝牙通信协议,设计和实现对小车的实时运动控制,其中移动小车由控制器,电机驱动模块,蓝牙通信模块等硬件电路组成,手机APP以基于Android系统的APP Inventor在线平台进行开发设计;该系统通过软硬件调试结果表明:小车可以接收手机APP的遥控信号并实时响应前进、后退、左转、右转或停止命令,而且还有避障功能,为未来智能控制提供了一定的参考依据。

关键词:Android 手机APP 蓝牙通信 智能小车

中图分类号:TP242.6 文献标识码:A 文章编号:1672-3791(2017)02(c)-0027-02

随着移动互联网的快速崛起,手机客户端应用软件(Application,简称APP)为代表的智能终端应用的快速普及,给人们的工作和生活带来了更多的便捷,也加快了物联网的发展步伐[1]。Android系统作为手机的主流操作系统,由于其操作性和开源性,为手机应用程序控制系统的开发提供了很大的优势,并将各类控制系统融为一体提供了可能[2]。该文以Android手机应用程序APP为客户端,借助蓝牙无线通信技术,移动小车作为服务器端接收手机的控制信号并驱动直流电机灵活做出命令动作,小车遇到前方障碍物时,自动测量离障碍物的距离,并将实时距离值上传手机APP显示,当和障碍物的距离达到一定值时小车停车等待指令,具有自动避障功能。该设计为智能控制方式提供一种新的设计思路。

1 总体方案设计

该设计主要由小车和手机控制平台组成,小车由控制器部分,直流电机模块,超声波测距模块,蓝牙通信模块,电源模块及相应的硬件电路组成,手机控制平台是开发该控制系统的APP软件,安装在Android手机上,两者的通信采用无线蓝牙技术,系统结构框图如图1所示;系统操作流程:首先启动手机APP控制端,由手机和移动小车上的蓝牙模块建立通信链接,链接成功后触碰手机端的动作按钮发出前进,后退,左右转弯命令,移动小车接收到指令并进行分析,驱动直流电机进行相应动作,在行进过程中由超声波模块自动检测前方是否有障碍物,当前方有障碍物时将测得障碍物的距离数值通过蓝牙模块上传至手机APP端实时显示,距离值超过20 cm时,移动小车停车等待手机指令,做到自动避障。为了保证小车的稳定性,采用四轮驱动,系统的控制范围在0~10 m之间。

2 硬件电路设计

移动小车硬件电路主要单片机最小系统电路,电机驱动电路,蓝牙模块电路,超声波测距电路和电源电路组成;单片机最小系统电路包括控制芯片,时钟电路,复位电路,控制器采用STC89C52芯片,STC89C52是STC公司生产的一种低功耗,高性能的COMS8位微控制器,8K字节FLASH,512字节RAM,32位I/O口,3个定时器/计数器,4个外部中断,全双工串行口,满足系统需求;时钟采用内部时钟,晶振规格为11.0592 MHz,机器周期为1μs;复位电路采用手动按键复位,将各元器件各引脚数值恢复到初始状态[3-4]。

2.1 电机驱动电路

该系统采用4WD电机驱动,采用双L298N芯片驱动,双L298N由两个大功率的L298N芯片组成,能提供8路最大2 A的电流输出,供电电压0~24 V,能够独立驱动4个直流电机,采用标准TTL逻辑电平信号控制;具有四个使能控制端和四组逻辑控制输入端,分别控制四个电机的转动;采用6 V电源为该电路供电,值得注意的是驱动电路的GND端要和单片机的GND共地。

2.2 超声波测距模块

该模块利用超声波的发射到接收的时间差来检测障碍物和计算障碍物距离,超声波测距模块选用HC-SR04芯片,探测距离2~450 cm,感应角度不大于15°,测距精度可达高到3 mm;模块包括超声波发射器、接收器与控制电路。芯片TRIG端口加上大于10 us高电平来触发测距功能,然后在ECHO端口等待高电平出现,一有输出开定时器计时,当ECHO端口变为低电平时读取定时器的值,该值就是由开始发送超声波到接收到返回超声波时间之和。故可以得到距离=高电平持续时间×声速/2 ,如此不断测量前方障碍物距离。

2.3 蓝牙通信模块

该模块的主要功能是完成手机APP和控制器之间数据和命令的传输,手机内置的蓝牙为主机,移动小车的蓝牙模块作为从机,主机发起呼叫,寻找附近藍牙设备,和从机配对成功后,主机从两端可以传输数据。

蓝牙模块选用HC-06芯片,该芯片的RXD,TXD端口为接收和发送端,其中RXD端口负责接收外来数据,芯片接口电平3.3 V,可以与控制器STC89C52的TXD端口直接相连,通过该接口STC89C52将需要发的数据传给HC-06;通路芯片的TXD端口可以和STC89C52的RXD相连接,负责向控制器传递数据。

2.4 电源部分

系统电源采用干电池供电,小车单片机外接3节1.5 V的干电池供电,由于蓝牙模块配对后的电流约为8 mA,超声波模块的静态电流大约为2 mA,不大于单片机允许的最大电流,该电源可同时为蓝牙模块和超声波模块供电;电机驱动部分外接4节1.5 V干电池供电。

3 软件设计

3.1 主控程序设计

主控程序采用C语言针对单片机开发,首先程序参数初始化,触发超声波模块开始工作,检测蓝牙模块相连接的串口是否有命令输入,如有进行命令解析,跳转到不同的子程序驱动电机动作,否则一直在循环检测,运行中超声波模块检测到前方有障碍物,程序计算距离值并发送至串口,如果距离值小于20 cm,触发中断,调用停车程序,等待用户指令输入[5]。

3.2 手机APP程序设计

手机APP的开发采用APP Inventor在线开发平台,APP Inventor是由谷歌公司和一些程序爱好者联合开发的一款完全开放源代码的在线开发的Android编程环境,使用逻辑模块和界面设计就能完成用户Android程式针对控制要求,操作性强易开发[6-7]。该设计手机APP主要任务是:(1)界面设计;(2)蓝牙通信和后台逻辑程序设计。

首先在开发平台上“新建项目”,填写项目名称,系统会自动建立一个应用工程,在Screen工作面板添加相应的控件并进行布局,其中五个按钮分别为前进、后退、左转、右转和停止按钮,一个列表选择框用来显示附件蓝牙设备地址,两个标签显示障碍物距离值和连接状态,并添加蓝牙客户端控件。蓝牙客户端的通信协议和HC06的通信协议设置一致, “搜索设备”按钮搜索手机附近已开启的蓝牙设备,配对成功后,五个运动按钮可用,同时蓝牙客户端将接受的数据在距离标签中显示。

4 实验测试和结果分析

(1)在开阔平整的场地,给小车上电,启动手机APP,点击“搜索设备”按钮,程序显示可匹配的设备的地址,选择HC06蓝牙地址,进行配对,配对成功后触碰命令按钮,小车按照命令正常行驶,小车前方障碍物距离值实时更新显示,小车运行图和手机APP控制界面如图2所示。

(2)小车前方范围内放置障礙物,当小车运行接近障碍物距离至20 cm左右时,小车停车,手机APP上只有“后退、左转、右转”按钮可用。

(3)受到制作工艺和环境等因素影响,小车测距存在4 cm左右的误差,小车遇到避障物停车时的距离值的误差在4~6 cm之间。

5 结语

该设计基于Android手机APP,通过蓝牙通信技术,控制移动小车的运动以及实现避障功能的软硬件设计。实验结果表明,小车可以接收手机APP命令并灵活地实现前进、后退、左右转弯功能,小车检测前方障碍物并实时发送与障碍物距离值,做到了自动避障,达到了预期的设计效果,为智能控制方式提供了一个范例,并为智能家居控制以及物联网的应用提供了一定的依据。

参考文献

[1] 刘敏.智能手机APP应用前景及发展瓶颈探析[J].电子技术与软件工程,2015(10):69.

[2] 聂茹.基于Android 手机蓝牙控制的智能小车设计与实现[J].微型电脑应用,2015,31(9):68-69,74.

[3] 张毅刚,彭喜元,彭宇.单片机原理及应用[M].北京:高等教育出版社,2010.

[4] 何立民.单片机应用系统设计[M].北京:北京航天航空大学出版社,2009.

[5] 谭浩强.C程序设计[M].北京:清华大学出版社,2009.

[6] 瞿绍军.App Inventor移动应用开发标准教程[M].人民邮电出版社,2016.

[7] 韩超,梁泉.Android系统原理及开发要点详解[M].北京:电子工业出版社,2010

猜你喜欢
智能小车手机app
“指尖上的党校”在大学生党建工作中的应用
基于STC89C51智能小车的移动家居平台的设计
基于HC—SR04超声波传感器的智能避障小车设计
互联网+背景下的手机APP安全性测试研究
智能安全防盗探测小车
智能手机APP支持下的大学英语听力教学
网络虚拟仿真实验中心建设研究与实践