APP下载

一种小型水质监测无人船控制系统设计

2019-10-15刘瑞胡亚伟李铭盛吴顺达

软件导刊 2019年8期
关键词:树莓派控制系统

刘瑞 丁 浩 胡亚伟 李铭盛 吴顺达

摘 要:无人船在水质检测、采样、巡逻等方面有着广阔的应用前景。针对无人船传输数据实时性差的问题,利用4G网络结合数据传输模块进行无人船与控制中心之间的数据传输;针对具有自主能力的无人船造价昂贵的问题,以树莓派为控制中心设计无人船控制系统,实现无人船的自动巡航;针对无人船无法自动处理突发情况的问题,采用移动端、遥控器、服务器端多端控制的方法;针对无人船适应环境能力较差的问题,采用PID算法进行无人船的航向控制。实验结果表明,该算法可实现无人船的多端控制、数据实时传输与自动巡航功能。

关键词:无人船;树莓派;多端控制;控制系统

DOI:10. 11907/rjdk. 182846 开放科学(资源服务)标识码(OSID):

中图分类号:TP319文献标识码:A 文章编号:1672-7800(2019)008-0119-04

Design of a Small Water Quality Monitoring Unmanned Ship Control System

LIU Rui1,DING Hao1,2,HU Ya-wei1,LI Ming-sheng1,WU Shun-da1

(1. School of Computer Science and Technology, Nantong University;

2. Nantong Research Institute for Advanced Communication Technologies, Nantong 226019,China)

Abstract:Unmanned boat has broad application prospects in water quality testing, sampling and patrol. In view of the problem that the unmanned ship with autonomy is expensive, the unmanned ship control system is designed with the Raspberry Pi as the control center, and the unmanned ship's autonomous obstacle avoidance is adopted by the angle potential field method. In the case that the situation cannot be handled automatically, the mobile terminal, the remote controller, and the server-side multi-end control method are adopted. For the problem that the unmanned ship is resistant to environmental problems, the PID algorithm is used for the heading control of the unmanned ship. The problem of poor real-time data is to use 4G network combined with data transmission module for data transmission between unmanned ship and control center. The actual experiments show that the above algorithm can realize the multi-end control, real-time data transmission and automatic cruise function of the unmanned ship.

Key Words: unmanned boat; Raspberry Pi; multi-end control; control system

基金項目:苏州市前瞻性应用研究项目(SYG201837);南通市应用基础研究计划项目(GY12016015);南通大学—南通智能信息技术联合研究中心开放课题项目(KFKT2017A06)

作者简介:刘瑞(1994-),男,南通大学计算机科学与技术学院硕士研究生,研究方向为计算机应用;丁浩(1980-),男,硕士,南通大学计算机科学与技术学院讲师,研究方向为计算机应用技术。

0 引言

无人艇的发展起源于第二次世界大战,最初被作为一次性制导武器应用于战场,之后开始逐渐应用于各个领域[1]。无人船相比于传统由船员控制的船只,具有航程长、载重多、维护费用低,且更适合行驶于危险复杂水域的优势,因此有着广阔的应用前景[2-4]。

目前无人船技术尚未完全成熟,尤其是单无人船控制系统设计及多无人船自动化系统设计一直是一个难点和挑战[1]。针对无人船的控制系统问题,国内外研究者开展了各种研究[5-8]。美国圣克拉拉大学(SCU)和蒙特利湾水族馆研究所(MBARI)在2009年研制出SeaWASP用于环境监测[9]。该船配备12V与24V电源总线,由6个12V密封铅酸电池供电;2015年7月,云洲智能自主研发了“方洲号”全自动测绘测量无人船[10],该无人船能够搭载单波束、多波束、ADCP等多种测绘测量设备,并能自动化地精确开展河流流速及流量测量、水文测绘、水库库容勘测、水深测量等多种任务;2018年1月,广东华中科技大学工业技术研究院研发了HUSTER-12S无人艇,该无人艇配置了差分GPS、惯导、水质监测仪、摄像头等传感器,可完成水质监测、巡逻、多无人船协同巡逻等任务。然而,上述无人船均存在造价昂贵的问题。

本文实现了一种基于树莓派的小型水质监测无人船控制系统,可以实现复杂环境下的自主巡航与避障,还可以进行船体的多端实时控制,以及船体状态、监测数据的实时传输等功能。

1 无人船控制系统设计

本文设计的小型无人船长1.2m,宽0.5m,并配备了水循环冷却系统。电池采用太阳能电池,续航可达5h以上,速度可达15km/h。

1.1 控制系统硬件设计

控制系统采用太阳能电池作为供电电源,以树莓派控制器为核心,通过串口与数据传输单元、惯性测量单元连接。电机通过控制螺旋桨旋转,控制无人船行进;舵机控制螺旋桨转向以控制无人船航向;电调根据输入的PWM信号控制电机方向和速度;树莓派开发板是整个系统的核心,可对传感器进行控制;DTU为数据传输单元(Data Transfer Unit,DTU),用于无人船与数据中心的通信;IMU为惯性测量单元(Inertial Measurement Units,IMU),用于获取无人船航向及位置信息;激光雷达用于探测周围障碍物信息;12V电源用于为无人船的动力系统(电调、电机和舵机)供电;12V转5V变压器用于将12V电源转换为5V,为树莓派、DTU、IMU及激光雷达供电。无人船硬件组成及连线如图1所示。

图1 无人船硬件组成及连线

1.2 控制系统软件设计

系统软件部分分为树莓派、Web API、桌面程序与Android程序。树莓派接收服务器端命令与传感器数据对船体进行控制;桌面程序和Android程序通过Web API对无人船进行远程控制;Web API接收控制请求并发送至树莓派,同时监听并处理树莓派传回的数据。4个模块之间的信息流动如图2所示。

2 硬件控制

2.1 PWM波

PWM(Paulse-Width Modulation)是一种将信息编码为脉冲信号的调制方法,目前PWM主要用于控制电器设备的功率输出,尤其是惯性荷载,如电动机等[11]。PWM波有两个重要属性:频率与占空比。频率是指PWM波在1s内重复的次数,单位为Hz;占空比是指在每个周期内,高电平时间占周期时间的百分比。目前业内惯用的电机控制方式为PWM方式,频率一般是固定的,输入占空比越大,电机转速越快。PWM波既可以采用硬件进行实现,也可以用软件模拟输出[12-13]。

对电机与舵机的控制都是以频率为64Hz、占空比为9.5%的PWM信号为中心。对于舵机而言,占空比在9.5%-12.8%之间时向左转,占空比在6.25%-9.5%之间时向右转,且占空比偏离9.5%越多,则转的越多;对于电机而言,占空比在9.5%-12.8%之间时反转,占空比在6.25%-9.5%之间时正转,占空比偏离9.5%越多,则转的越快。

本文使用软件模拟方式输出指定频率与占空比的PMW波。模拟的基本思路是首先分别计算单位周期内输出高电平与输出低电平的时间,然后按照高低电平时间不断将其循环输出即可。详细流程如图3所示。

图3 模拟输出PWM波流程

2.2 电机与舵机控制

舵机有3个引脚,分别是VCC、GND和SIG。VCC引脚连接12V电源正极,GND引脚连接电源负极,SIG引脚则连接树莓派开发板的GPIO.0引脚。为了减少控制信号干扰,GND引脚需要连接树莓派的GND引脚。

与控制舵机不同,树莓派并不是直接控制电机,而是通过输出PWM方波给电调(ESC),从而间接控制电机的转动方向与转动速度。电调与舵机类似,同样有3个引脚,分别是VCC、GND和SIG。VCC引脚连接12V电源正极,GND引脚连接电源负极,SIG引脚则连接树莓派开发板的GPIO.0引脚。同样,为了减少干扰,GND引脚需要连接树莓派的GND引脚。

2.3 激光雷达

自20世纪60年代左右激光出现后,激光雷达得到了迅速发展。时至今日,激光雷达相比于其它同类传感器,具有经济、可靠的优势[14]。本文采用的激光雷达是砝石公司FaseLase 最新研制的一款小型,且较为经济的二维激光扫描雷达,其可以探测周边360°范围10m内的环境信息。

该激光雷达通信方式为UART_TTL串口,比特率为230 400bps,其二进制输出为4字节一组,包含距离值和角度值,角度精度为1/16度。

3 数据处理与导航控制

3.1 DTU配置与使用

DTU是将串口数据转换为IP数据或将IP数据转换为串口数据,并通过4G通信网络进行传送的无线终端设备,可以大大增加无人船通信范围,并在任何地方都保持与服务器的无线通信。本文采用的DTU主要有8个引脚,主要包括VCC、GND,两个RS232串口(TX,RX)和一个485串口(A+,B)。该DTU能接受的电压范围为3V~12V,所以将DTU的VCC和GND引脚直接连接至12V电源的正负极,连接好DTU后插入SIM卡,最后配置DTU连接的服务器IP地址和端口号。

3.2 信息采集

IMU通过测量其三轴方向上的加速度、角速率和磁场[15],可以获知IMU当前的三维姿态,也可以用于追踪3D运动[16]。本文采用集成AHRS与GPS功能的IMU采集位置信息及航向信息。IMU通过USB与树莓派连接,通信方式为UART_TTL全双工串口,115 200bps,8 位数据位,1 位停止位,无校验。IMU上电启动准备完成后,等收到START 报文才开始按固定频率自动发送数据包,直至收到STOP报文后停止;然后根据数据包格式,不断读取串口;最后将接收到的数据整理成数据包并进行校验,检验通过则读取数据包,获得传感器返回位置与航向等信息。具体信息收集流程如图4所示。

3.3 自动导航

航向控制是无人船自动导航中必须解决的问题之一,本文采用PID对无人船进行航向控制。PID(Proportion Integration Differentiation)控制器作为最早实用化的控制器,已有近百年历史。其简单易懂,使用中不需精确的系统模型等先决条件,因而成为应用最為广泛的控制器之一[17-18]。

自动导航的硬件基础是树莓派,树莓派是一款经济的、支持完全自定义与编程的微型电脑[19]。在树莓派上可以安装Linux操作系统,并通过Python等程序设计语言很方便地实现对硬件的控制与交互[20]。在自动导航时,树莓派通过IMU收集船体位置与航向数据,计算无人船的下一步航向角度,当船体需要左转或右转时,控制舵机完成相应动作。

3.4 远程控制

自动导航是无人船的基础功能,而在开发自动导航过程中,无人船不可避免地会出现各种意外情况,如失控、碰撞等。为了妥善处理这种情况,本文设计用户可通过Android端或桌面端远程控制无人船,且其优先级高于自动导航,以方便用户在自动导航出现异常或意外时迅速接管无人船的控制权。

当用户在任意终端发出远程控制请求时,都会向服务器端的Web API发送相应请求。Web API接收到请求后,根据相应参数向DTU写入指令。同时在无人船上,树莓派开发板中始终有一个进程在监听DTU的通信,当收到Web API发送的指令时,树莓派将终止自动导航程序并执行相应的远程控制指令,从而实现人工远程控制。

4 实验结果与分析

实验测试在南通大学的中心湖中进行,首先在水域上设定起始点与目标点区域(直径1m的圆),无人船通过自动导航依次到达每个目标点。实验场景如图5所示。

图5 实验场景

将无人船姿态数据实时传输到服务器进行保存,首先依次设定环形轨迹、Z字形轨迹,得到GPS轨迹如图6、图7所示。

图6 自动导航环形航行

图7 自动导航Z字型航行

其中空心圆为目标点区域,图6中黑色点表示无人船航行位置,图7中箭头为无人船航行点以及航行方向。从图中可以看出,无人船较为平稳地航向各目标点区域,并且在航行至目标点区域后,迅速转向下一目标点,直至到达最终目标点。实验证明了本文系统的可行性及稳定性。

5 总结与展望

本文采用树莓派进行中枢控制,DTU进行数据传输,IMU进行无人船姿态获取,并采用PID算法进行航向控制,从而实现了多目标点航行、多端随时随地控制、数据实时传输等功能,具有价格低廉、控制方便快捷等优点。但在实际环境中,会存在如礁石、海藻等障碍物,所以接下来需要在巡航过程中加入避障功能,以实现真正意义上的自动巡航。

参考文献:

[1] LIU Z, ZHANG Y, YU X, et al. Unmanned surface vehicles: an overview of developments and challenges[J]. Annual Reviews in Control, 2016, 41: 71-93.

[2] CACCIA M, BIBULI M, BONO R, et al. Unmanned surface vehicle for coastal and protected waters applications: the charlie project[J]. Marine Technology Society Journal, 2007, 41(2):62-71.

[3] 天鹰. 从无人水面艇的军事应用看中国海军无人水面艇的发展前景[J]. 舰载武器, 2012(2):28-34.

[4] 金久才, 张杰, 邵峰,等. 一种海洋环境监测无人船系统及其海洋应用[J]. 海岸工程, 2015, 34(3):87-92.

[5] MOUSAZADEH H,JAFARBIGLU H,ABDOLMALEKI H,et al. Developing a navigation, guidance and obstacle avoidance algorithm for an unmanned surface vehicle (USV) by algorithms fusion[J]. Ocean Engineering, 2018, 159:56-65.

[6] SHARMA S K,NAEEM W, SUTTON R. An autopilot based on a local control network design for an unmanned surface vehicle[J]. The Journal of Navigation, 2012, 65(2):21.

[7] 张浩昱,刘涛. 一种微小型无人船控制系统设计及航向控制方法研究[J]. 计算机测量与控制, 2017, 25(1):88-90.

[8] 谢朔,柳晨光,初秀民,等. 基于混合式体系结构的无人船控制系统设计[J]. 船海工程, 2016, 45(3):39-42.

[9] BECK E,KIRKWOOD W,CARESS D,et al. SeaWASP: a small waterplane area twin hull autonomous platform for shallow water mapping[C].Autonomous Underwater Vehicles, IEEE, 2009.

[10] 付明亮.无人船在水下地形测量中的应用与探讨[J].城市地理,2017 (20):59-60.

[11] 张相军,陈伯时. 无刷直流电机控制系统中PWM调制方式对换相转矩脉动的影响[J]. 电机与控制学报, 2003, 7(2):87-91.

[12] 冯浩明. 水面无人船航行控制器开发研究[D]. 哈尔濱: 哈尔滨工程大学,2013.

[13] 张国骞. 基于Zigbee远程湿地监控系统的无人船运动系统设计[D].保定:河北大学,2014.

[14] MOLEBNY V,MCMANAMON P F,STEINVALL O,et al. Laser radar: historical prospective—from the east to the west[J]. Optical Engineering, 2016, 56(3): 031220.

[15] SEEL T, RAISCH J, SCHAUER T. IMU-based joint angle measurement for gait analysis[J]. Sensors, 2014, 14(4): 6891-6909.

[16] HESCH J A,KOTTAS D G,BOWMAN S L,et al. Camera- IMU-based localization: observability analysis and consistency improvement[J]. The International Journal of Robotics Research, 2014, 33(1): 182-201.

[17] TANG K S,MAN K F,CHEN G,et al. An optimal fuzzy PID controller[J]. IEEE Transactions on Industrial Electronics, 2001, 48(4):757-765.

[18] 喬大雷, 侯娇, 薛锋. 基于物联网技术的无人船智能航行控制系统设计与实现[J]. 舰船科学技术, 2017(23):149-152.

[19] VUJOVI? V, MAKSIMOVI? M. Raspberry Pi as a sensor web node for home automation[J]. Computers & Electrical Engineering, 2015,44:153-171.

[20] 冯晓晨,张铁成,段家兴. 基于树莓派开发板的F1吉祥物机器人设计[J]. 科技创新与应用, 2017(30):32.

(责任编辑:黄 健)

猜你喜欢

树莓派控制系统
基于PLC的自动切蛋糕机的控制方案
智能安全防盗探测小车
基于嵌入式技术的农村医疗系统设计