APP下载

基于Labview 的智能小车远程监控系统设计

2022-05-08张珍珍刘吉轩王国平刘云韬陆佐伟王麒豪

现代工业经济和信息化 2022年3期
关键词:控件测距串口

张珍珍,刘吉轩,王国平,张 琛,刘云韬,陆佐伟,王麒豪

(1.西安交通大学城市学院,机械工程系,陕西 西安 710054;2.西安交通大学城市学院机械工程系机器人研究所,陕西 西安 710054;3.陕西省示范实验室机械工程系实验室,陕西 西安 710054)

引言

近年来,巡检机器人的应用越来越广泛,实用价值也越来越高。巡检机器人作为一种可移动的机器人基础平台,可以使人类从一些较为危险工作解放出来,亦可代替人类从事一些繁杂、重复的机械工作[1]。随着巡检机器人的广泛使用,不仅保障了人生安全,避免了工作环境对使用者的造成的健康伤害;而且提高了巡检效率,保证了巡检可靠性。因此,保证巡检机器人正常工作是巡检机器人的核心,智能小车是巡检机器人的基础研究,因此,监控小车的运行状态是保证机器人正常运行的重要手段。

Labview 是一款以数据流为基础的图形化编程软件,具有软件与硬件两种协议,通过协议,信息发送方与接收方就能在缓存即将存满时,进行相互通报,这样发送方就能及时地停止数据的发送,直到接收方清空缓存并做好接收新数据的准备后,再次发送消息,这样能够有效解决上下位机之间的时序冲突问题,且在人机交互过程中具有一定的优势[2]。因此,使用Labview软件作为监控系统的开发平台。综上,本文将以Labview 软件为基础进行编程,设计人机交互界面,实现远程实时监控巡检机器人,保障机器人的正常运行。

1 智能小车远程监控系统设计方案

1.1 监控系统总方案设计

由于智能小车的快速发展,其多传感器的融合,复杂的工作环境、适应范围广泛等特点对远程监控系统的实时性、可控性提出了新的要求。单片机具有成本较低、功能强大的特点,以单片机作为下位机接收、处理数据;计算机具有很好的人机交互功能,所以作为监控系统的上位机;上位机与下位机的通讯,即:计算机与单片机,两者之间的数据交流采用蓝牙通信的模式。

智能小车监控系统首先需下位机进行数据接收,收集完成后,通过蓝牙模块,进行数据的无线传输,上位机确认接收到数据后,利用Labview 环境将数据进行解析,设计监控界面。使用Labview环境内部函数处理数据后的将有效数据显示在监控界面上,达到实时监控智能小车的目的。

监控系统包括硬件系统与软件平台。硬件系统包含GPS 模块、超声波测距模块和蓝牙通讯模块;软件平台为Labview虚拟仪器操作平台。

1.2 硬件系统搭建

硬件系统主要包含三个模块,分别为GPS 模块、超声波测距模块和蓝牙模块。超声波实现测量障碍物距离,GPS 模块实现定位,蓝牙模块实现通信。

GPS 模块为维特智能GPS+BD 双模定位模块,型号为WTGPS+BD。超声波测距模块为HC-sr04 型超声波测距模块,它以便于应用的封装提供出色的非接触领域检测,具有低误差和稳定的读数,模块上具备超声波发射器和接收器模块。

蓝牙通讯模块为HC-08 蓝牙串口通信模块,目的是将有线传输变为无线传输。

1.3 软件平台设计

上位机利用Labview 软件进行开发,其开发环境由前面板和程序框图组成。前面板:根据使用者的需求选择对应的控件进行创建面板,同时可以改变背景,字体及大小等,在当前界面完成监控系统界面的设计,使得前面板具备人机交互界面的功能。程序框图:根据建立目的对前面板使用的控件进行相应的函数循环结构并连线通讯,编程完成后运行程序,运行无误后完成程序框图的建立。一般情况下先在前面板选取控件后在程序框图内依据功能进行连线通讯。在本次设计中,使用Labview 环境内的VISA函数进行数据处理,经过属性节点的选择,截取需要的数据段,创建显示控件,将处理过后的数据显示在监控界面上,达到实时监控智能小车的目的。软件平台设计具体步骤为:创建VISA 配置串口→串口写入控件添加输入→串口读写控件添加读写字节数增加循环结构→增加条件结构→完成前面板布局。

2 远程监控系统设计

2.1 基于Labview的GPS 信息采集系统设计

上位机的软件系统是在Labview 环境下设计GPS 信息采集系统,利用GPS 模块产生的GNRMC数据进行处理,显示小车具体经纬度信息[3]。通过使用Labview 环境内的VISA 函数,创建数据接收串口,使用VISA 读取和VISA 写入将接收到的数据进行处理,使用数值显示控件将处理过的数据显示在监控面板上,达到实时监控小车运行情况的目的。

1)串口读取程序设计。将VISA 串口配置函数与硬件匹配,可以在监控界面内显示匹配节点,例如设置波特率,串口名称(COM 口)等。当数据接收正常,数据段进入VISA 串口读取单元,完成了发送数据和接收数据的功能后,进行连续读取循环。数据从VISA 函数内不断刷新,显示面板内会同时更新每一行数据,通过反馈节点将每一段数据进行保存,显示面板内的数据为历史数据,经过反馈节点进行保存。

2)筛选数据段。串口读取的GPS 数据传送至Labview 环境中,利用NMEA 协议筛选出需要的数据段,即:GNRMC,需要对其进行筛选。GPS 模块产生的GNRMC 数据当中,第十六字段符为有效验证符,字母A 为正确效验符号,只有在验证字母A 为正确效验符号后,才可以进行下一步的运行。在主程序中,当检测到定位数据有效(A)时,进入时间转换函数子VI。

GPS 模块输出的数据段中,首先使用时间数据段,时间数据段中的数据表示的是UTC 时间(Coordinated Universal Time 世界标准时间),而我们需要的是北京时间。北京在东八区,时间线上以东边为正,西边为负,东八区的时间节点比UTC 时间节点早八小时。因此,需要在UTC 时间数据段加八小时为北京时间数据段,若时间超过二十四小时,则减去二十四小时,并在日期加一天。由于提取出来的数据为字符串格式,在监控界面内显示时间之前,需要在数组中提取1-2,3-4,5-6 三组字符串分别为时、分和秒。将数据段格式强制转换后,在小时处加八,这样,获取到的数据为GPS 模块发出的北京时间数据[4]。

3)设计数据显示格式。GPS 模块产生的纬度数据段样式是2478.17233,截取前两位数字作为纬度显示,三四位作为纬分显示,在进行秒显示是,将0.17233 纬分先行计算,更改单位为秒,因为字符串函数库有整形功能,数据在显示前进行简化,因为在提取到17 233 后,乘以60,提取计算后在前四位作为纬秒显示。

使用Labview 设计的人机交互界面,VISA 资源名称设置与串口设置显示位置在图片左半边,右上部分是从GPS 模块接收到的数据,转换成UTC 时间、北京时间和经纬度信息。

2.2 超声波测距系统设计

超声波测距单元正常工作下,通过与单片机的连接,使用单片机上的蓝牙通讯模块,发送至Labview环境下的测距显示面板,间隔200 ms 进行一次数据刷新,这样,就在人机交互界面内实时观察小车运行情况。使用Labview设计的测距显示界面,经过单片机串口发送至Labview 开发平台。监控系统显示界面如图1 所示。

图1 监控系统显示界面

3 实验验证

本章将进行智能小车远程监控系统验证,利用蓝牙模块,将数据从下位机传输至上位机后,验证Labview程序的可实施性,达到实时监控智能小车运行状态的目的。本实验选择蓝牙适配器和HC-08 蓝牙模块通,波特率为9 600 B/s,完成VISA 串口的设置,进行读写虚拟仪器节点,刷新串口选择,即可将可使用的串口、监控数据在人机交互界面显示[5]。

监控界面的左边为设置串口调节,更改波特率和数据位等,数据的读取与显示在图片的中间。小车运行实验在操场进行,操场南端的监控界面如图2所示,实验时间于下午一点进行,小车的经度显示为E108°86'46",纬度显示为N34°37'59",在小车前方有一面墙体,作为障碍物阻碍小车运行,测得小车距墙体距离为56.2 cm。

图2 操场南端小车监控界面显示

操场南端的监控界面如图3 所示,实验时间于下午一点进行,小车的经度显示为E108°86'43",纬度显示为N34°37'75",在小车前方有一面墙体,作为障碍物阻碍小车运行,测得小车距墙体距离为76.5 cm。

图3 操场北端小车监控界面显示

4 结论

智能小车上安装的GPS 模块,对GPS 终端发送的NMEA 协议格式做出了分析,通过协议获取计算方式,利用Labview 环境里的函数运算,计算并显示从GPS 终端获取的数据集。

超声波测距单元主要目的是测距并显示在人机交互界面上,通过人机交互界面,使得使用者可以及时的监控小车运行时,障碍物离小车还有多少距离。

本文通过蓝牙模块完成了GPS 模块和超声波避障模块与计算机之间的无线通信,达到了使用者可以在PC 端进行实时监控智能小车的目的。

Labview 的G 语言(图形编程语言)开发环境为GPS 模块和超声波避障模块的数据采集、解析、显示提供了绝佳的操作平台,通过Labview 平台将数据进行了展示,基于VISA 的串口操作及结构化的编程方法,保证了程序的可视化。

猜你喜欢

控件测距串口
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
浅谈AB PLC串口跟RFID传感器的通讯应用
基于.net的用户定义验证控件的应用分析
类星体的精准测距
关于.net控件数组的探讨
船舶电子设备串口数据的软件共享方法
浅谈超声波测距
串口技术的实物调试和虚拟仿真联合教学模式
基于PSOC超声测距系统设计
相对差分单项测距△DOR