基于GNSS的自主巡航四足机器人及远程监测系统设计

2018-11-20 05:51吴子岳宋彦良吴志峰刘善民
全球定位系统 2018年5期
关键词:上位北斗远程

吴子岳,宋彦良,吴志峰,刘善民

(上海海洋大学 工程学院,上海 201306)

0 引 言

随着对未知领域和复杂环境的不断探索,人类更加迫切地需要使用微型探测机器人进行地形地貌勘测以及环境参数的自主检测.其中,四足爬行机器人因其优越的运动性能和良好的稳定性,加之配备摄像头模块和各种传感器模块,被广泛应用于环境探测领域中,成为了国内外研究的热点[1].惠州学院黄宏越等人曾通过使用超声波避障和陀螺仪转向,实现自主路径规划[2].韩洁琼等人设计了一种基于STC89C52的智能移动机器人巡航系统,该系统安装有红外传感器等模块实现智能循迹、自主导航[3].但是,由于机器人控制系统及结构存在误差和不稳定性,使得机器人容易偏离探测路径,导致对环境和地形的探测不准确、不全面.因此需要对该机器人进行目标定位服务,以实时准确获取机器人的位置信息,并对其进行远程控制.

其中,对探测机器人进行实时定位和导航成为了整个系统设计最重要的部分[4].为实现远程监测四足爬行机器人的实时位置并发送控制指令,系统采用了全球卫星导航系统(GNSS).GNSS是个多系统、多层面、多模式的复杂组合系统,包括全球的、区域的、增强的卫星导航系统,涵盖了GPS、GLONASS、GALILEO、BDS等系统.由于该系统可在近地空间的任何地点或地球表面为用户提供全天候的三维坐标、速度和时间信息的独特功能,并且可以实现高精度定位、导航服务,一直被视作环境探测机器人定位系统中不可或缺的一部分.使用该系统不仅可以采集到机器人的经纬度,还可以检测到高度信息,更加安全可靠[5-6].同时增加实时显示、路线调整、远程遥控等功能.

本文设计了一种基于GNSS的拥有自主巡航功能的四足爬行机器人,并设计了相应的远程监测系统,该系统能够实现对机器人精准定位,并将位置信息和运动轨迹准确传输到上位机,通过远程遥控对机器人运动轨迹进行调整和控制.同时,机器人获取的环境和地理数据参数通过GPRS无线传输技术传送到上位机显示界面,实现了机器人精准探测和数据的实时显示,减少了由于运动轨迹偏差而带来的探测误差,提高探测准确性.

1 四足机器人系统和结构设计

本文设计的拥有自主巡航功能的四足爬行机器人采用智能化体系架构、模块化结构设计,具有体积小、灵活性好和稳定性强的优点.该机器人包括主体、执行系统、数据采集系统、能源系统、控制系统.执行系统包含四条机械腿,可以很好地解决传统履带式探测机器人的越障困难和体积、质量较大的问题.机器人结构如图1所示.

2 监测系统硬件设计

本系统是一款基于全球卫星导航系统,并结合无线通讯技术、单片机控制技术、对环境、地理参数及机器人实时位置信息采集和处理的实时监测系统.该监测系统由四个部分组成,包括环境参数采集端、GPS/北斗定位模块、无线通讯模块和中央处理器,系统框图如图2所示.

该系统实现的功能如下:

1)卫星定位,自主巡航:通过GPS/北斗定位模块,对机器人的实时位置、方向、速度等信息进行跟踪,并传送给远程监控中心,上位机可发送已设定探测区域指令让机器人按照指定区域路线自主前行;

2)远程通信:利用GPRS无线通讯技术实现与远程监控中心的信息交流;

3)自动调节:通过GPS/北斗定位模块向远程监控中心发送的机器人实时位置与上位机向机器人发送的指定区域路线进行比较,完成运动路线的自动调整,同时也可通过手动发送运动指令调整.

监测系统的工作流程如图3所示.

2.1 卫星定位端硬件设计

本文所设计的定位模块用来实现对机器人在环境探测中的实时坐标、速度和方向等参数的采集,通过定位模块请求连接卫星信号,并将接收到的机器人坐标信息传送到中央处理器,由中央处理对当前的位置信息,包括经纬度进行解析.同时,中央处理器接收模块接收来自远程监控中心发送的机器人规划区域路线、速度、时间等指令,并将当前实际经纬度与远程监控中心发来的已设定位置数据进行对比,如果偏离路线,机器人自动修正或者通过手动发送指令调整路线,向设定路线区域靠拢并进行环境参数采集,实现机器人的精准探测.

由于需要实现该机器人及系统的微型化和便捷化设计,所以选用了由SkyTraq公司生产的型号为ATK-S1216F8-BD的GPS/北斗定位模块,该模块使用S1216F8-BD模组,特性如下:

1)体积小巧,性能优异,测量输出频率最大可达20 Hz,模块通过串口进行各种参数设置并保存在内部flash中,方便使用;

2) 模块接口为TTL电平,兼容3.3V/5V电压,TXD/RXD阻抗为120 Ω,更加便于连接多种单片机系统;

3) 包含167个通道,支持QZSS、WAAS、MSAS、EGNOS、GAGAN.冷启动灵敏度为-148 dBm,捕获追踪灵敏度为-165 dBm;

4)该模块支持NMEA-0183 V3.01/SkyTraq binary协议.工作温度范围为-40~ 85℃,可靠度高、适应性强;

5)该模块拥有可充电备用电池,可实现断电后保存数据的功能(断开主电源后,备用电池可持续半小时左右的定位数据保存);

6) 通过ATK-S1216F8-BD GPS/北斗定位模块,任何微控制器(3.3 V/5 V电源)都可以非常方便地实现卫星定位,也可以连接电脑,利用软件实现定位功能.定位模块ATK-S1216F8-BD的工作电路如图4所示.

2.2 数据采集端硬件设计

本文所设计的数据采集模块主要是为了实现对探测区域的环境温度、湿度等数据参数的检测和采集,由多种传感A/D转换器和外围电路组成.该采集端将采集到的环境温、湿度和风速等信息传送到中央处理器,由处理器进行接收和分析,再通过无线通讯模块传输到远程监控中心,监控客户端对数据库中的数据进行读取和显示,完成对环境数据的实时监测.

2.3 机器人控制端硬件设计

整个机器人采用嵌入式STM32F429IGT6单片机作为控制系统的核心,主要实现数据收发、计算处理等功能.该芯片采用Arm Cortex-M4内核,具有高达256 KB的SRAM,支持SDRAM,包含140个GPIO口,其运行频率最高可达180 MHz.拥有更快的A/D转换速度和更低的ADC/DAC工作电压[7].选择STM32F429IGT6单片机,一方面负责将数据采集模块收集的环境数据参数进行解读、分析并发送给远程服务器,由服务器接收解析后存入数据库,监控客户端对数据库进行读取和显示;另一方面接收ATK-S1216F8-BD定位模块采集的机器人实时位置,同时接收远程监控中心发送的指令对机器人实现运动控制.使用该芯片可以加快数据的接收、处理和发送,加快工作效率.

2.4 无线通讯硬件设计

无线通讯作为实现上位机与控制端的数据交换、指令收发的桥梁,是该监测系统中最重要的环节之一.本文所设计的无线通信采用4G网络和北斗短报文通讯模块.北斗短报文通信是北斗一代的特有功能[8],在没有移动通讯信号的情况下,利用北斗短报文通讯功能便可以实现北斗卫星、地面服务中心、北斗定位终端的双向通信.4G网络是第四代移动通信技术,其传输速度值范围为20 Mbps-100 Mbps,覆盖面积大,十分适合应用在大面积的环境探测中.

本文选用由SKyTop公司生产的LH-MK04A作为北斗短报文通信模块,该模块集成了RDSS射频收发芯片、功放芯片、基带电路等,模块内置RNSS/GPS模块.该模块具有集成度高、功耗低、兼容接收RDSS/RNSS卫星导航信号等优点,能够实现机动载体的实时高精度定位、测速等,非常适用于区域探测.

该模块负责完成数据的收发功能.首先,短报文信息发送方把含有信息接收方通讯内容和ID的通讯信号加密后再通过卫星转发到地面中心站,然后,经过先解密和再加密后加入持续广播的出站电文中,由卫星发送给用户终端设备.最后,由接收方接收出站信号,解调解密出站电文[9],完成一次远程通讯.

3 系统软件设计

3.1 单片机软件设计

整个监测系统采用模块化设计,STM32F429IGT6单片机系统程序全部使用C语言在Keil uVision5开发环境下进行编程、调试.结合Thumb-2指令集,无需模式转换,并自带STM32CubeF4固件包,可以找到任一外设的对应例程从而进行快速移植.

单片机通电后,先对串口UART、定时器、GPIO口和HAL库等进行初始化,并对环境数据采集端的传感器模块、A/D和北斗定位模块进行配置和初始化,采用单总线操作时序来读取温度、湿度等传感器的数值.进入主程序之后,通过循环调用函数来获取实时位置、环境参数值,并对其进行分析解读后通过无线传输模块传送至远程监控中心移动客户端显示界面.

3.2 监控中心上位机软件设计

图5为上位机软件功能开发流程图.上位机软件主要实现对数据的接收、解读和显示,并根据实际情况发送相应的操作指令.使用Microsoft基础类库(MFC)和Visual C++,结合C语言进行上位机软件界面开发.单片机将数据发送给上位机接收后,上位机进行数据读取和显示.在上位机软件设计过程中使用卡尔曼滤波器对数据进行过滤处理,以提高定位精度[10].本着人机友好、操作简单的设计原则,本系统设计的上位机软件功能如下:

1)实时监测:在上位机软件界面上实时显示由GPS/北斗定位模块采集到的机器人当前位置信息、运动方向和速度;

2)报警提示:当机器人的实际位置和规划的路径出现偏差时,上位机会报警提示;

3)远程遥控:根据不同情况,可以通过上位机发送相应指令,实现对四足机器人的运动控制.

4 系统运行和测试

对所设计的机器人及远程监测系统进行实验测试.选取学校一处天台作为测试场地,机器人启动后,通过上位机软件向其发送规划路径指令,机器人沿着指定的路径进行运动.如图6所示,卫星对机器人定位的当前位置信息:(121.534078E,30.5333.88N),速度2.30 km/h.到达指定区域后开始环境参数的采集并实时传送到上位机显示界面,如图7所示,温度34℃,湿度68.2%,风速1.7 m/s.通过GPS/北斗定位模块传达的定位信息与指定路径发生偏差时,上位机自动报警且实时调整位置.

在中途不同的监测点处记录上位机显示的机器人实时位置和已设定位置,如表1所示,机器人探测路径与规划路径相差较小.经测试,机器人系统以及监测系统运行状况良好,可以满足自主巡航、自主探测和自动修正路线的功能.

表1 不同监测点机器人实时位置和规划位置

5 结束语

本文设计了一款基于全球导航卫星系统定位技术、GPRS无线传输技术、单片机控制技术、拥有自主巡航和自动修正路线功能的环境探测机器人及远程监测系统.通过GPS/北斗定位模块,很好地完成了对机器人实时位置的获取;数据采集模块实现了对环境温度等数据的采集;北斗短报文通讯模块完成了与远程监控中心的实时通信.整套系统以STM32F429IGT6作为主控芯片,结合GPS/北斗模块和通信模块,实现了机器人的自主巡航探测和报警提示并及时调整运动轨迹的功能.贴合探测人员实际使用情况,提高了探测精准性.解决了人工探测困难、成本较高和传统探测机器人容易偏离路线的问题.

猜你喜欢
上位北斗远程
北斗时钟盘
远程求助
远程工作狂综合征
“北斗”离我们有多远
远程诈骗
特斯拉 风云之老阿姨上位
基于ZigBee和VC上位机的教室智能监测管理系统
首个北斗全球“厘米级”定位系统开建
中国的北斗 世界的北斗
基于VC的PLC数据采集管理系统