基于蓝牙和虚拟仪器的智能车信息采集与处理

2014-12-11 14:38赫玉莹边疆王贯安李志华
科技创新导报 2014年16期
关键词:无线通信蓝牙监控

赫玉莹++边疆++王贯安++李志华

摘 要:针对无人驾驶车的信息采集与处理,在模拟实验过程中设计了一种基于蓝牙和虚拟仪器LabVIEW的综合监控平台。能够实时地检测并直观显示出智能车的行驶姿态和路况,便于程序和算法的调试验证,并具备可靠性、灵活性、便捷性。

关键词:蓝牙 LabVIEW 无线通信 监控

中图分类号:TN92 文献标识码:A 文章编号:1674-098X(2014)06(a)-0041-04

The information acquisition and processing of Smartcar based on bluetooth and Virtual instrument

HE Yu-ying, BIAN Jiang, WANG Guan-an, LI Zhi-hua

(Department of Information Science and Engineering, Central South University, Changsha,410083,China)

Abstract:In the process of simulation experiments,a comprehensive monitoring based in bluetooth and LabVIEW was designed under the demand of smartcars information acqiusition and processing.The design can monitor and display driving posture and road conditions of smart car in real time,which is conductive to debugging program and algorithm validation.In addition,it owns the reliability,flexibility and convenience.

Keywords:bluetooth;LabVIEW;wireless communication;monitoring

随着电子技术和计算机领域的飞速发展,计算机控制在汽车行业占据着举足轻重的作用[1]。给汽车装上“大脑”,让汽车学会“思考”,这是汽车行业发展的必然趋势,也面临着很大的发展空间。

对智能车的信息监测控制有以下3种方式:①采用串口线与电脑相连,在PC机上显示。②在智能车行驶过程中,先将信息存储在车载SD卡中,再将SD卡中的内容导入计算机。③利用无线传输,将数据传送到接收端,进行实时监控。显然,前两种方法对于整个行驶状态不具有普遍性,无法显示车辆高速行驶过程中的实时状况。因此,开发上位机对车辆信息采集处理实现监控,已成为一种必然的选择。

目前比较成熟的短距离无线传输网络的技术有:蓝牙、wifi、超带宽技术、Zigbee技术等。蓝牙技术可提供低成本、低功耗的无线接入方式,被认为是近年来无线数据通信领域重大的进展之一[2]。而LabVIEW是由NI公司在1986年推出的一种高效的图形化软件开发环境,支持与多种总线接口系统的通信连接,提供数据采集、一起控制、数据分析和数据显示等于虚拟仪器系统集成相关的多种功能,具有强大的图形化用户界面和User Interface库,是目前应用最广、发展最快、功能最强的图形化软件开发集成环境。本设计将采用FBT06系列蓝牙模块进行短距离的无线通信,利用LabVIEW软件制作上位机虚拟仪器,进行人机交互,实现智能车的数据监控和处理。

1 系统总体结构

智能车在行驶过程中,通过摄像头采集图像信息,同时,针对路况,应能够给出相应的舵机打角,以及相应占空比的PWM波控制电机以实现加速、减速、过弯、避障等,使智能车的运行趋于稳定、可靠。同时,也可通过信息采集,记录经过的道路情况,如弯道、直道、十字交叉路口等等,应用于赛道记忆算法,以便于智能车的提速。整合以上所有需监控状态,通过蓝牙技术,由无线串口蓝牙模块(从机)传送给蓝牙模块(主机),再通过PL2303串口转USB,将信息传送给PC机,最后通过LabVIEW上位机将采集到的数据进行处理和显示。系统硬件结构图如图1所示。

2 蓝牙实现

基于蓝牙技术的独特优点,本设计采用蓝牙实现短距离的无线通信,最远距离可以达到100 m。蓝牙技术工作在全球通用的2.4 GHz ISM频段,数据传输速度为1 Mbit/s[3]。其采用了快速确认和调频方案,从而使得蓝牙具有良好的抗干扰能力和系统稳定性。下面对其通信的实现原理进行详细说明。

在下位机设置一定的采样周期,对串口进行初始化,接收数据信息,当采样周期到达时,单片机就将需要发送的数据打包,以固定的格式发送出去。当接收中断到来时,下位机读取数据并进行解读,然后进行相应的数据修改,实现对智能车的控制。

对于串口接收状态,可用如下转移图进行描述,如图2所示。

其为基于有限状态机的帧同步方法[4]。该方法的实现过程是将数据帧的接收过程分为若干个状态,在接受完一个数据帧或其他异常帧时,需要将状态机设置为HEAD1,否则将会影响下一帧的数据接收,然后解析数据,得到相应的功能码,校验成功后将会更新主程序中的控制码。

本设计中采用FBT06系列小尺寸2.1+EDR蓝牙模块,其集成了蓝牙天线、专用各种串行线缆替代方案。其波特率最高可达到1.384Mbps,有多达35条方便灵活地AT指令集,支持WIOMODE,可通过蓝牙无线端设置AT命令。需要特别说明的是,由于FBT06采用CMOS电平设计,与PC机(RS232电平)电平不同,所以不能进行直接连接,需要进行电平转换。在使用蓝牙模块之前,需对它进行配置,进行蓝牙模块初始化、选择流控制方式等。endprint

在蓝牙模块的使用过程中,需要注意的是:① 其波特率的设置,要使系统稳定,尽量少地受到外界干扰。一般设置波特率不超过115200bps。②由于要求较大的传输距离,对百米蓝牙模块采用两级供电。包括VCC和PAVCC,在使用过程中,给两者均供电3.3V。

3 上位机设计

采用LabVIEW虚拟仪器软件进行本设计的开发,编程使用图形化编辑语言G,简单直观,不需要很深的编程基础也能实现设计。通过对程序框图的编写,实现了本监控系统的主要模块设计,并能够很好地应用于图像显示和智能车调试中。

在进行设计之前,加装虚拟仪器软件架构VASA驱动,它可以与大多数仪器总线连接,通过该串口进行数据传输。在LabVIEW中,程序的执行顺序是沿着数据流动的方向运行的。在进行串口的配置之后,配置好的串口数据要留到设置好的缓冲区中,再通过“串口读取”将缓冲区中的数据读出来,即实现数据接收。如图3所示,体现在程序框图中。

而对于图像显示,由于上位机接收到的数据是机器语言字符串,要将其还原成图像数据,那么通讯协议就发挥作用了。在发送图像时,设置固定的标志字符,比如:picture,图片伴随该字符发送,当上位机软件接收到字符串后,将其与“picture”进行比对,识别出发送数据的内容。该部分的具体编程实现就体现在通讯协议的编写过程中了,当然,通讯协议的内容并不局限于此,还有其他更为复杂的操作和应用,在此不再进行详细阐述。转换为图像数据之后,通过字符串显示控件将其显示出来。实现步骤如下[5-6]:

①将图像数据字符串转换为“无符号字节数组”,并调整数组维数为二维。

②平化像素图并绘制。编程面板:编程->图形与声音->图形格式->绘制平化像素图。

编程->簇/类与变体->按名称捆绑。

③接入图片控件。

而对于整个数据采集处理及显示过程,通过设置while结构让其一直循环,进行实时监控。

图像采集和处理部分,在前面板上显示出采集到的原本道路信息,以及进行滤波去噪、二值化等处理后的图像,并排显示,方便比对和对算法的分析。

与此同时,前面板的设计,还主要有舵机打角显示,电机驱动占空比,小车行驶速度显示,以及路况显示等。为了更好地直观性表现出车辆运行状态,并进行控制算法的验证,以方便调试,在前面板加放坐标系显示,利用顺序结构从一组数据中求取相应变量,将一段时间内该变量的状态接收点作为纵坐标,时间作为横坐标,绘制曲线,查看其运行动态。由于舵机打角和电机输出是算法控制的两大模块,必然要直观地显示出其当前值和变化率,有关该模块,在程序框图中的实现如图4所示。

最后进行数据存储,在整个调试过程中的采集数据一方面送到虚拟面板上显示出来,另一方面,要把它存储起来,以供查询浏览,也方便对道路信息的数据进行仿真分析,从而更好地控制车辆的运行姿态。此处的数据存储有两种方案,一种是按照上文所述,将采集到的数据在上位机部分同步存储;另一种方案是在模拟车上安放SD卡,通过车辆的主控芯片将数据存放进SD卡中。将两种方案进行对比,采用第二种方案更有利于数据的准确性,但如果几乎没有数据丢包,采用第一种方式依然能够保证数据的准确性、有效性而且更为简便经济。

如图5所示,为本设计的监控平台前面板图。

在设计过程中还遇到了一些问题,比如:数据的丢包;程序的运行速度以及上位机的参数自适应等,通过对通讯协议和上位机程序的不断完善,已将遇到的问题逐一解决。由于本设计是针对无人驾驶车调试而设计,还存在着一些不足,略显简陋,但针对实际的应用环境和被控对象的特性,可在此基础上进行改进和完善。

4 结语

根据实际需求,采用蓝牙FBT06系列和K60主控芯片为主要模块搭建硬件平台,并基于LabVIEW和蓝牙通信技术,在一定的规范协议下编写程序,实现了无线通讯传输和监控,更有利于智能车的调试,提高了调试效率和进度。该项技术不仅在智能车调试方面,还可将其应用于工业控制、医疗设备等领域,并将发挥其独特的优势和效果,值得推广。

参考文献

[1] 张秀彬,应俊豪.汽车智能化技术原理[M].上海交通大学出版社,2011.

[2] 程良明.ZIGBEE无线串口通信设备在高速公路站级电子显示屏上的应用[J].中国交通信息化,2012(2):109-111.

[3] 张群,杨絮,张正言,等.蓝牙模块串口通信的设计与实现[J].实验室研究与探索,2012(3):79-82.

[4] 朱慧芬,沈连丰,张宏泽,等.蓝牙智能车载卡的软件实现[J].电子工程师,2004(3):38-40.

[5] 陈锡辉,张银鸿.LabVIEW 8.20程序设计从入门到精通[M].北京:清华大学出版社,2007:55-68.

[6] 杨乐平,李海涛,赵勇,等.LabVIEW高级程序设计[M].北京:清华大学出版社,2003:9-19.endprint

在蓝牙模块的使用过程中,需要注意的是:① 其波特率的设置,要使系统稳定,尽量少地受到外界干扰。一般设置波特率不超过115200bps。②由于要求较大的传输距离,对百米蓝牙模块采用两级供电。包括VCC和PAVCC,在使用过程中,给两者均供电3.3V。

3 上位机设计

采用LabVIEW虚拟仪器软件进行本设计的开发,编程使用图形化编辑语言G,简单直观,不需要很深的编程基础也能实现设计。通过对程序框图的编写,实现了本监控系统的主要模块设计,并能够很好地应用于图像显示和智能车调试中。

在进行设计之前,加装虚拟仪器软件架构VASA驱动,它可以与大多数仪器总线连接,通过该串口进行数据传输。在LabVIEW中,程序的执行顺序是沿着数据流动的方向运行的。在进行串口的配置之后,配置好的串口数据要留到设置好的缓冲区中,再通过“串口读取”将缓冲区中的数据读出来,即实现数据接收。如图3所示,体现在程序框图中。

而对于图像显示,由于上位机接收到的数据是机器语言字符串,要将其还原成图像数据,那么通讯协议就发挥作用了。在发送图像时,设置固定的标志字符,比如:picture,图片伴随该字符发送,当上位机软件接收到字符串后,将其与“picture”进行比对,识别出发送数据的内容。该部分的具体编程实现就体现在通讯协议的编写过程中了,当然,通讯协议的内容并不局限于此,还有其他更为复杂的操作和应用,在此不再进行详细阐述。转换为图像数据之后,通过字符串显示控件将其显示出来。实现步骤如下[5-6]:

①将图像数据字符串转换为“无符号字节数组”,并调整数组维数为二维。

②平化像素图并绘制。编程面板:编程->图形与声音->图形格式->绘制平化像素图。

编程->簇/类与变体->按名称捆绑。

③接入图片控件。

而对于整个数据采集处理及显示过程,通过设置while结构让其一直循环,进行实时监控。

图像采集和处理部分,在前面板上显示出采集到的原本道路信息,以及进行滤波去噪、二值化等处理后的图像,并排显示,方便比对和对算法的分析。

与此同时,前面板的设计,还主要有舵机打角显示,电机驱动占空比,小车行驶速度显示,以及路况显示等。为了更好地直观性表现出车辆运行状态,并进行控制算法的验证,以方便调试,在前面板加放坐标系显示,利用顺序结构从一组数据中求取相应变量,将一段时间内该变量的状态接收点作为纵坐标,时间作为横坐标,绘制曲线,查看其运行动态。由于舵机打角和电机输出是算法控制的两大模块,必然要直观地显示出其当前值和变化率,有关该模块,在程序框图中的实现如图4所示。

最后进行数据存储,在整个调试过程中的采集数据一方面送到虚拟面板上显示出来,另一方面,要把它存储起来,以供查询浏览,也方便对道路信息的数据进行仿真分析,从而更好地控制车辆的运行姿态。此处的数据存储有两种方案,一种是按照上文所述,将采集到的数据在上位机部分同步存储;另一种方案是在模拟车上安放SD卡,通过车辆的主控芯片将数据存放进SD卡中。将两种方案进行对比,采用第二种方案更有利于数据的准确性,但如果几乎没有数据丢包,采用第一种方式依然能够保证数据的准确性、有效性而且更为简便经济。

如图5所示,为本设计的监控平台前面板图。

在设计过程中还遇到了一些问题,比如:数据的丢包;程序的运行速度以及上位机的参数自适应等,通过对通讯协议和上位机程序的不断完善,已将遇到的问题逐一解决。由于本设计是针对无人驾驶车调试而设计,还存在着一些不足,略显简陋,但针对实际的应用环境和被控对象的特性,可在此基础上进行改进和完善。

4 结语

根据实际需求,采用蓝牙FBT06系列和K60主控芯片为主要模块搭建硬件平台,并基于LabVIEW和蓝牙通信技术,在一定的规范协议下编写程序,实现了无线通讯传输和监控,更有利于智能车的调试,提高了调试效率和进度。该项技术不仅在智能车调试方面,还可将其应用于工业控制、医疗设备等领域,并将发挥其独特的优势和效果,值得推广。

参考文献

[1] 张秀彬,应俊豪.汽车智能化技术原理[M].上海交通大学出版社,2011.

[2] 程良明.ZIGBEE无线串口通信设备在高速公路站级电子显示屏上的应用[J].中国交通信息化,2012(2):109-111.

[3] 张群,杨絮,张正言,等.蓝牙模块串口通信的设计与实现[J].实验室研究与探索,2012(3):79-82.

[4] 朱慧芬,沈连丰,张宏泽,等.蓝牙智能车载卡的软件实现[J].电子工程师,2004(3):38-40.

[5] 陈锡辉,张银鸿.LabVIEW 8.20程序设计从入门到精通[M].北京:清华大学出版社,2007:55-68.

[6] 杨乐平,李海涛,赵勇,等.LabVIEW高级程序设计[M].北京:清华大学出版社,2003:9-19.endprint

在蓝牙模块的使用过程中,需要注意的是:① 其波特率的设置,要使系统稳定,尽量少地受到外界干扰。一般设置波特率不超过115200bps。②由于要求较大的传输距离,对百米蓝牙模块采用两级供电。包括VCC和PAVCC,在使用过程中,给两者均供电3.3V。

3 上位机设计

采用LabVIEW虚拟仪器软件进行本设计的开发,编程使用图形化编辑语言G,简单直观,不需要很深的编程基础也能实现设计。通过对程序框图的编写,实现了本监控系统的主要模块设计,并能够很好地应用于图像显示和智能车调试中。

在进行设计之前,加装虚拟仪器软件架构VASA驱动,它可以与大多数仪器总线连接,通过该串口进行数据传输。在LabVIEW中,程序的执行顺序是沿着数据流动的方向运行的。在进行串口的配置之后,配置好的串口数据要留到设置好的缓冲区中,再通过“串口读取”将缓冲区中的数据读出来,即实现数据接收。如图3所示,体现在程序框图中。

而对于图像显示,由于上位机接收到的数据是机器语言字符串,要将其还原成图像数据,那么通讯协议就发挥作用了。在发送图像时,设置固定的标志字符,比如:picture,图片伴随该字符发送,当上位机软件接收到字符串后,将其与“picture”进行比对,识别出发送数据的内容。该部分的具体编程实现就体现在通讯协议的编写过程中了,当然,通讯协议的内容并不局限于此,还有其他更为复杂的操作和应用,在此不再进行详细阐述。转换为图像数据之后,通过字符串显示控件将其显示出来。实现步骤如下[5-6]:

①将图像数据字符串转换为“无符号字节数组”,并调整数组维数为二维。

②平化像素图并绘制。编程面板:编程->图形与声音->图形格式->绘制平化像素图。

编程->簇/类与变体->按名称捆绑。

③接入图片控件。

而对于整个数据采集处理及显示过程,通过设置while结构让其一直循环,进行实时监控。

图像采集和处理部分,在前面板上显示出采集到的原本道路信息,以及进行滤波去噪、二值化等处理后的图像,并排显示,方便比对和对算法的分析。

与此同时,前面板的设计,还主要有舵机打角显示,电机驱动占空比,小车行驶速度显示,以及路况显示等。为了更好地直观性表现出车辆运行状态,并进行控制算法的验证,以方便调试,在前面板加放坐标系显示,利用顺序结构从一组数据中求取相应变量,将一段时间内该变量的状态接收点作为纵坐标,时间作为横坐标,绘制曲线,查看其运行动态。由于舵机打角和电机输出是算法控制的两大模块,必然要直观地显示出其当前值和变化率,有关该模块,在程序框图中的实现如图4所示。

最后进行数据存储,在整个调试过程中的采集数据一方面送到虚拟面板上显示出来,另一方面,要把它存储起来,以供查询浏览,也方便对道路信息的数据进行仿真分析,从而更好地控制车辆的运行姿态。此处的数据存储有两种方案,一种是按照上文所述,将采集到的数据在上位机部分同步存储;另一种方案是在模拟车上安放SD卡,通过车辆的主控芯片将数据存放进SD卡中。将两种方案进行对比,采用第二种方案更有利于数据的准确性,但如果几乎没有数据丢包,采用第一种方式依然能够保证数据的准确性、有效性而且更为简便经济。

如图5所示,为本设计的监控平台前面板图。

在设计过程中还遇到了一些问题,比如:数据的丢包;程序的运行速度以及上位机的参数自适应等,通过对通讯协议和上位机程序的不断完善,已将遇到的问题逐一解决。由于本设计是针对无人驾驶车调试而设计,还存在着一些不足,略显简陋,但针对实际的应用环境和被控对象的特性,可在此基础上进行改进和完善。

4 结语

根据实际需求,采用蓝牙FBT06系列和K60主控芯片为主要模块搭建硬件平台,并基于LabVIEW和蓝牙通信技术,在一定的规范协议下编写程序,实现了无线通讯传输和监控,更有利于智能车的调试,提高了调试效率和进度。该项技术不仅在智能车调试方面,还可将其应用于工业控制、医疗设备等领域,并将发挥其独特的优势和效果,值得推广。

参考文献

[1] 张秀彬,应俊豪.汽车智能化技术原理[M].上海交通大学出版社,2011.

[2] 程良明.ZIGBEE无线串口通信设备在高速公路站级电子显示屏上的应用[J].中国交通信息化,2012(2):109-111.

[3] 张群,杨絮,张正言,等.蓝牙模块串口通信的设计与实现[J].实验室研究与探索,2012(3):79-82.

[4] 朱慧芬,沈连丰,张宏泽,等.蓝牙智能车载卡的软件实现[J].电子工程师,2004(3):38-40.

[5] 陈锡辉,张银鸿.LabVIEW 8.20程序设计从入门到精通[M].北京:清华大学出版社,2007:55-68.

[6] 杨乐平,李海涛,赵勇,等.LabVIEW高级程序设计[M].北京:清华大学出版社,2003:9-19.endprint

猜你喜欢
无线通信蓝牙监控
蓝牙音箱的直线之美
The Great Barrier Reef shows coral comeback
你被监控了吗?
Zabbix在ATS系统集中监控中的应用
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
紧急:蓝牙指尖陀螺自燃!安全隐患频出
无线通信技术在测绘工程中的应用分析
PDCA循环法在多重耐药菌感染监控中的应用