APP下载

无线遥控智能小车的运动模拟及轨迹绘制*

2015-12-05马丹萍梁勤欧

关键词:图标遥控蓝牙

马丹萍, 李 勇, 梁勤欧

(1.浙江师范大学地理与环境科学学院,浙江金华 321004;2.桂林电子科技大学电子工程与自动化学院,广西桂林 541000)

无线遥控智能小车的运动模拟及轨迹绘制*

马丹萍1, 李 勇2, 梁勤欧1

(1.浙江师范大学地理与环境科学学院,浙江金华 321004;2.桂林电子科技大学电子工程与自动化学院,广西桂林 541000)

为实现智能小车的全方位控制,以Atmega16A单片机为系统控制核心、安卓智能手机为遥控平台、HC-06为车载蓝牙模块,设计了一款智能小车.利用LabVIEW制作人机交互界面,通过无线方式采集小车的运动状态数据来判断小车的速度和方向.根据小车的状态数据,在人机交互界面中模拟小车的运动.结果表明:该系统能监测小车的运动状态,实现运动模拟及轨迹绘制,可为后期地质灾害监测应用的研究奠定基础.

地质灾害监测;Atmega16;Android;蓝牙;LabVIEW;运动模拟;智能小车

0 前言

无线遥控将是未来遥控领域的发展趋势.市场上智能车的遥控器看似多种多样,实际多为红外遥控和无线电遥控.其中红外遥控不能穿透障碍物,必须是直视距离;而无线电遥控容易干扰周围电气设备或被周围所干扰.鉴于蓝牙具有设备体积小、功耗低、通过调频技术可消除其他无线设备的干扰建立临时性的对等连接速度快等优点[1],开发用于智能车遥控的APK(Android Package),可以使遥控器的使用更加方便可靠.

对物体进行运动状态的模拟及运动轨迹的绘制在地理信息系统(Geographical Information Systerm,GIS)中有重要应用.尽管现今的遥感技术能做到对泥石流、山体滑坡等地质灾害的实时监测,但是得到的遥感图像会伴随海量数据的分析.并且遥感技术的软硬件设施要求相对较高[2],不利于广大民众实时了解地质灾害的状况.通过传感器测量运动状态的数据,凭借蓝牙无线传递给PC机终端,模拟出运动物体的运动状态,实现共享监测数据.对于泥石流、山体滑坡、洪水淹没等地质灾害的监测,减少人员的伤亡和财产的损失等方面都有积极的作用.此外,通过蓝牙无线传递的数据,可加快GIS数据库的建立.

1 系统总体设计

智能小车系统以Atmega16A单片机为处理核心[3],通过蓝牙进行了无线遥控小车的前进、加速、减速等运动.通过LabVIEW无线采集小车的速度,建立数学模型,在人机交互界面中模拟小车的运动,系统的整体框图如图1所示.

图1 系统整体框图

2 系统硬件设计

1)蓝牙通信模块采用HC-06,其有4个引脚,即:VCC,GND,TXD和RXD,输出端为TTL电平,将外界的蓝牙通信转换为单片机的串口通信;显示模块采用LCD1602,第1行显示小车速度,第2行显示前方障碍物距离.超声波测距模块采用HC-SR04,其有4个引脚,即:VCC,TRIG,ECHO和GND,单片机PB7口接HC-SR04的控制使能端TRIG,PD6口连接ECHO端.由于ECHO高电平持续时间就是超声波从发送到返回的时间,则测量距离公式表示为

式(1)中:S表示测量距离;声速为340 m/s.

电机驱动芯片采用L298N,产生PWM的PD7口同时接入L298N的ENA和ENB口;PD2,PD3, PD4和 PD5分别接 L298N的 IN1,IN2,IN3和IN4,控制小车加速、减速、前进、左拐等动作.

2)测速电路.当码盘透光孔通过时,电压比较器 LM393A的1引脚会输出高电平;否则LM393A的1引脚输出低电平.电路图如图2所示.通过检测LM393A的1引脚高电平出现的次数实现对小车速度的测量,系统使用的测速码盘一圈共包括20条透光孔.

图2 测速电路

3 软件设计

软件设计包括ICCAVR编程,Android编程和LabVIEW编程.

总体程序结构如图3所示.

图3 总体程序结构

3.1 ICCAVR编程

Atmega16A单片机的程序流程图如图4所示.

图4 Atmega16A单片机程序流程

3.2 Android编程

遥控器界面设计.在Android编程中,Activity表示一个应用程序的组件,代表用来和用户交互的界面[4].在布局文件中添加所需的前进、倒车、加速、减速等按钮,整体布局如图5所示.然后通过5个编程步骤实现Android蓝牙的通信:1)开启蓝牙;2)搜索可用设备;3)创建蓝牙socket,获取输入输出流;4)读取和写入设备;5)断开连接关闭蓝牙[5].最后将布局文件中的控件通过调用findViewById()方法实现实例化.对按钮添加监听,当发生按键事件时发送相应的控制信号,实现对小车运动的控制.

图5 遥控器界面布局

图6 运动模拟及轨迹绘制程序结构

3.3 LabVIEW编程

3.3.1 LabVIEW程序中的线程

LabVIEW是自动多线程语言,只要VI的代码可以并行执行,LabVIEW就会将它们分配到多个执行线程内同时执行[6].所以,在编程时那些可以并行运行的模块就并排摆放.运动模拟及轨迹绘制程序结构框图如图6所示.

3.3.2 运动模拟的数学模型

采用二维图标的运动表示实物的运动,用二维图中绘制的直线表示轨迹,建立相关的数学模型.设置750×1 000的二维图片,图片原点坐标在左上顶角.小车的图标为50×30的圆角矩形.设小车图标在图片中的中心点坐标为(X0,Y0),则小车图标垂直放置时,在图片中的任一位置可以表示成(L,R,T,B),其中L表示水平坐标左边界,R表示水平坐标右边界,T表示垂直坐标顶边界,B表示垂直坐标底部边界.在图片中小车图标有4种运动方向:垂直向上、垂直向下、水平向左和水平向右,如图7所示.

图7 运动模拟数学模型

3.3.3 运动模拟相关算法

设(500,750)为模拟运动起始坐标.垂直方向上的图标运动可以表示为

同理,水平方向上图标的运动可以表示为

式(2)~式(3)中:v表示与实际小车运动速度成比例的模拟运动速度;t为时间;vt的单位是像素.

在二维图片中绘制直线,模拟小车的运动轨迹,直线起点坐标为小车图标在某一位置时的中心点坐标,即(X0,Y0),设终点坐标为(Xt,Yt).当在垂直方向运动时终点坐标可以用下式表示

当沿水平方向运动时终点坐标可以用下式表示:

将模拟运动的4个状态连接起来实现对实际小车的运动模拟,连接的节点为小车在改变运动状态时小车图标中心点的坐标值(X0,Y0).综上,连续运动的小车在LabVIEW人机交互界面中能够实现小车运动模拟和路径的绘制,效果如图8所示.

图8 小车运动状态的模拟

3.3.4 数据存储

数据库采用Microsoft Access系统,由于Lab-VIEW本身并不具备数据库访问功能,因此用到LabSQL工具包.LabSQL利用Microsoft ADO对象和SQL语言来完成对数据库的访问[6],将复杂的底层ADO及SQL操作封装成一系列的LabSQL VIs.图8所对应的部分数据存储信息见表1.

表1 数据存储

4 结论与展望

本文介绍了无线遥控智能小车的运动模拟及轨迹绘制的软、硬件设计,实现了对智能小车全方位立体控制.在PC机模拟阶段,小车各个运动状态间任意转换的同时,伴随着相关数据的传递.在软件编程阶段,通过数学模型确立模拟运动的算法,保证模拟运动的连贯性.

位移监测是山体滑坡和泥石流等地质灾害的常规监测技术之一[7].本系统PC机端模拟的是运动小车的轨迹,然而,在未来研究中可以将智能小车转换为运动传感器,以实现山体滑坡和泥石流灾害的动态监测.其实际应用表现在:将运动传感器固定在易发生泥石流或山体滑坡的危险地带,以无线方式传递运动传感器滚动速度和方向的相关数据,在终端,系统模拟泥石流等地质灾害的动态,结合GIS系统可以实时快速监测灾害状况[8].同时,凭借蓝牙技术可实现监测数据的共享,方便周边民众对灾害状况的了解.GIS技术和无线蓝牙通讯的结合,对地质灾害的监测有深远积极的影响.

[1]严紫建,刘元安.蓝牙技术[M].北京:北京邮电大学出版社,2001:1-5.

[2]张占睦,芮杰.遥感技术基础[M].北京:科学出版社,2007:5-12;74-76.

[3]周兴华.AVR单片机C语言高级编程设计[M].北京:中国电力出版社,2011.

[4]王小科,冠长梅.Android入门经典[M].北京:机械工业出版社,2013:158-174.

[5]薛显亮.Android SDK[M].北京:中国铁道出版社,2012:205-216.

[6]雷振山,肖成勇.LabVIEW高级编程与虚拟器工程应用[M].北京:中国铁道出版社,2013:61-69;101-110.

[7]仝兴华,薛世峰,单新建.山体滑坡和泥石流灾害动态监测技术研究[J].油气储运,2006,25(10):7-10.

[8]Longley P A,Goodchild M F,Maguire D J,et al.地理信息系统:下卷管理与应用[M].唐中实,贾海峰,辛宇,等,译.北京:电子工业出版社,2004:383-390.

(责任编辑 杜利民)

Motion simulation and trajectory drawing of the intelligent vehicle with wireless remote control

MA Danping1, LI Yong2, LIANG Qin'ou1

(1.College of Geography and Environment Sciences,Zhejiang Normal University,Jinhua Zhejiang 321004,China;2.College of Electronic Engineering and Automation,Guilin University of Electronic Technology,Guilin Guangxi541000,China)

An intelligent vehicle was designed with Atmega16A single chip as the control core,with Android smart mobile phone as the remote control platform,using HC-06 as the Bluetooth module.A human-computer interaction interface was made by LabVIEW,collected the intelligent vehicle's movement state data to judge the speed and direction of its motion by wireless way.According to the state data of the vehicle,it was simulated the motion of the vehicle in the human-computer interaction interface.The experimental results showed that the system could monitor the motion state of the vehicle,realized the motion simulation and trajectory mapping,and laid a foundation for the later research of geological disastermonitoring application.

geological disaster monitoring;Atmega16;Android;Bluetooth;LabVIEW;motion simulation; intelligent vehicle

TP29

A

1001-5051(2015)01-0116-05

�:2014-06-20;

2014-09-17

国家自然科学基金资助项目(70773089)

马丹萍(1990-),女,河南义马人,硕士研究生.研究方向:地理信息系统与遥感应用.

梁勤欧.E-mail:qoliang@sina.com

10.16218/j.issn.1001-5051.2015.01.019

猜你喜欢

图标遥控蓝牙
蓝牙音箱的直线之美
“遥控”老师
他是如何遥控引爆的
Android手机上那些好看的第三方图标包
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
图标
中国风图标设计
有意思的厕所图标
遥控赛车