APP下载

基于嵌入式处理器和LabVIEW的小型无人艇控制系统设计与实验研究

2020-03-27阚亚雄

机械工程师 2020年3期
关键词:岸基航速航向

阚亚雄

(镇江高等专科学校现代装备制造学院,江苏镇江212028)

0 引 言

小型无人艇是一种智能小型船舶,可用于海洋电缆铺设、近海巡逻及海上侦查、救援等领域。具有较强自主控制能力和较低维护制造费用等特点[1]。目前国内相关小型无人艇的研究已初步展开,例如黄茹楠[2]提出了一种基于改进PID神经网络算法的无人艇垂直面控制算法。文献[3]中国外相关无人艇设计人员设计更能适应海洋环境的双体无人艇,并基于神经网络和视线规划算法设计了避碰系统。以上文献的研究在小型无人艇运动控制算法和数学模型的建立过程为本文的研究提供了有益的参考,但是文献中小型无人艇控制系统的集成度不高,关于小型无人艇控制系统中控制器元件的电路设计和半实物仿真较少涉及。因此,目前需要研究一种基于嵌入式处理器的新型小型无人艇控制系统。

本文以某小型无人艇实物为研究对象,提出一种基于STM32F103T8U6嵌入式处理器和LabVIEW仿真软件的小型无人艇控制系统的设计方案、数学模型、软硬件设计,在运动控制算法和半实物仿真中验证设计的可行性和可靠性。

1 某小型无人艇控制系统总体框架设计

图1所示为小型无人艇硬件结构图,小型无人艇控制系统由无人艇的运动控制平台、上位岸基控制系统双系统组合而成,通过运动控制平台和岸基控制系统之间的信息传输、子母程序调用,获取无人艇上多传感器数据进行故障诊断,最终完成无人艇的集成控制。其中上位岸基控制系统能够实时监控无人艇的航向航速状态和艇载设备的状态,还具备收发控制指令、多屏显示采集数据和无人艇全局规划能力。小型无人艇运动控制平台以STM32F103T8U6微处理器为核心芯片,芯片拥有多达80个I/O接口、UART、PWM和PCA等接口,通过EMIF接口与岸基控制系统实现串口通信,通过PWM驱动无人艇上的舵机和主推电动机,通过PCA接口与搭载的众多传感器连接,获取小型无人艇的实时状态信息。

2 某小型无人艇动力学模型构建

为了描述小型无人艇在水中的运动,采用国际水池会议(ITTC)推荐的坐标系方法建立了固定坐标系E-ξηζ和运动坐标系O-xyz。设定φ、θ、Ψ为小型无人艇的3个姿态(横摇、纵摇和艏摇)的欧拉角;ξ、η、ζ是质心在运动坐标系中的坐标位置;线速度向量v1=[u v w]T和角速度向量v2=[p q r]T定义在运动坐标系中,其中运动坐标系相对固定坐标系O-xyz沿3个轴运动的分量为纵荡速度u、横荡速度v、垂荡速度w,无人艇绕3个轴运动的分量分别为横摇角速度p、纵摇角速度q、艏摇角速度r。由文献[4]、[5]可知无人艇六自由度一般运动学方程和一般六自由度动力学方程。文中将六自由度的运动学方程和动力学方程简化为水平面三自由度模型和垂直面三自由度模型。其中水平面内的三自由度运动方程为:

无人艇垂直平面内三自由度的运动方程(忽略v、p、r)为:

式中:m为小型无人艇的负载总质量;FC、NC、MC分别为无人艇执行机构在纵荡、纵摇和横摇方向上的控制输入力(力矩);Iy、Iz为无人艇的转动惯量,Xu˙、Zw˙、Mq˙、Xu等为无人艇的水动力系数。

由上式可以得出,小型无人艇动力学模型由6个独立的控制通道和6个状态变量组成。解耦后得到的运动控制模型为下文小型无人艇控制算法的设计奠定基础。

3 某小型无人艇半实物仿真平台设计

3.1 上位岸基控制系统设计

上位岸基控制系统界面如图2所示。上位机程序设计主要在虚拟仪器开发环境LabVIEW中完成。为了在一个显示界面上同时实现航行和任务监控操作,上位机程序设计界面主要分为手动/自动控制、参数监控、通信3个模块。

标签和状态综合显示栏位于岸基控制系统界面的上方位置,分为3个子标签栏。可在主窗口、电池管理系统及历史数据记录系统中进行切换。首先,手动/自动控制模块位于界面的右下角,通过按钮实时切换,当切换到手动控制时,岸基操作员同时可通过点击向上、向下、向左、向右等方向键按钮控制小型无人艇的运动轨迹。当切换到自主航行时,无人艇控制系统会自动规划航行轨迹,将需要的无人艇实时航向和航速传送至升降舵、方向舵舵机和主推电动机,使得其按照指定航线行驶。其次,通信模块位于界面的左上角,其采用Modbus通信协议,上位机程序作为客户端,打开上位机的时候主动发出连接请求。最后,参数监控模块位于主界面的正下方,使用仪表盘式显示插件,直观地显示小型无人艇实时状态信息,包括小型无人艇的航行目标、实际航迹坐标、航向角、俯仰角、横滚角、剩余电量、深度和漏水点信息等。

3.2 小型无人艇控制系统硬件架构设计

图3所示为文中所述小型无人艇控制系统硬件电路图。根据系统要求的实际功能,按照分层化、模块化的设计思想将控制系统的硬件电路分为传感器采样模块、通信模块、电源模块、电动机驱动模块四个子模块。所有模块集成在一块PCB电路板中。相关子模块工作电路设计简述如下。

传感器采样模块中,小型无人艇搭载的微惯导传感器和磁航向仪通过PB6和PB7接口与主控芯片相连实现通信。它能将小型无人艇的实时姿态角和航速传输给主控芯片,主控制器实时接收到采集的数据后能够通过姿态解算,将解算后的电动机控制指令传送给电动机驱动模块。通信模块选用NRF24L01无线收发模块,通过PA7接口与主控芯片相连。小型无人艇的升降舵电动机、方向舵电动机和主推电动机通过相应的步进电动机驱动器或直流无刷电动机控制器与主控芯片的I/O口PA0、PA1和PA2相连。电动机驱动模块是小型无人艇底层控制的核心,主要通过PWM脉冲频率的输出控制并驱动舵机及主推电动机,执行主控芯片STM32F103T8U6的各项驱动操作。

3.3 小型无人艇控制系统软件程序设计

在上文中,对小型无人艇非线性数学模型进行了线性化处理,小型无人艇的控制可以解耦成航向、速度和位置等通道[6]。小型无人艇控制系统采用PID控制算法分别对这三个通道进行控制,控制器软件流程如图4所示。

首先,在控制系统上电之后进行各I/O口、定时器及其它功能外设初始化,输入无人艇的目标位置,然后判断小型无人艇的控制模式。通过上位岸基控制系统向无人艇控制系统传送运动控制指令,控制指令分为自动模式和手动模式。艇上控制系统控制相应的电动机执行机动动作,等待微惯导传感器向主控芯片反馈无人艇姿态和航速信息,通过反馈的航向角、航速等数据与任务目标进行对比,最后根据期望的航向、速度或位置控制量对小型无人艇进行控制。其中,模式判断周期为3 ms,航向角度控制周期为5 ms,航行速度控制周期为20 ms,航迹位置控制周期为50 ms。在无人艇航向角控制模式中,外环为角度控制,内环为速度控制,外环的输出作为内环的输入;在航迹位置控制模式中,外环为位置控制,内环为速度控制,速度控制器的输出量为位置控制的输入。最终调整小型无人艇姿态、航行角及目标航速,达到任务目标位置,完成任务。

4 仿真及实物实验结果与分析

4.1 运动控制仿真实验

首先在Matlab/Simulink中完成小型无人艇动力学模型、航向角和航速双闭环控制器的搭建,对无人艇在航行中的航向角、速度控制和航行位置控制进行仿真控制验证。

仿真实验中同时设计了单级闭环航向航速控制器和航向航速双闭环控制器。对比两种控制策略的抗干扰能力,设置仿真条件为:向无人艇下达“航速5 m/s和航向角20 s时转舵25°”的指令,并且当t=10 s时添加幅值为1的阶跃干扰信号,仿真实验结果如图5、图6所示。

通过图5、图6可以分析出小型无人艇航行控制器采用的双闭环控制系统控制航向角、航速时,上升速度更快,超调量更小,收敛时间更短,能更有效地抵抗外界的干扰,使无人艇航行更加稳定,提高小型无人艇环境适应性。

4.2 小型无人艇半实物仿真平台搭建与实验

由于实际航行时与软件仿真之间还是存在一定差异的,为了验证该双闭环控制系统的可能性,通过PC工控机与PCB电路板实物组成半实物仿真系统进行模拟航向角和航速的控制实验。为了模拟实际的无人艇控制系统,单板控制器和无人艇动力学模型之间采用数据采集卡来进行模拟传感器数据交换,PC工控机和数据采集卡之间通过RS232串口连接方式进行连接[7]。LabVIEW在每个仿真步长内,接收数据采集卡传递的传感器信号,通过Matlab/Simulink中动力学模型的模拟运算,把运算结果再传送给单板控制器形成一个闭环控制回路。通过一个周期的仿真实验,可以验证无人艇控制器运动控制算法和半实物仿真平台的可行性,可以对无人艇航行状况进行分析。

5 结 语

本文针对小型无人艇样艇控制系统的集成度和自主航行能力等问题,提出了一种基于STM32F103T8U6核心芯片并搭载双闭环算法的小型无人艇控制系统,对该系统进行了框架设计、动力学建模、硬件电路设计、软件设计,以及运动控制和半实物仿真试验。研究表明:双闭环控制算法能够平稳控制小型无人艇,控制效果优于单级闭环控制算法,且有一定的抗干扰能力。

本文设计的小型无人艇控制系统,核心芯片性能可靠,远程控制界面友好,实时性高,能实时接收艇上各传感器的各项数据。在实际应用中很好地解决了以往小型无人艇自动化程度低、功能单一的问题,有一定推广应用价值。

猜你喜欢

岸基航速航向
风浪干扰条件下舰船航向保持非线性控制系统
提升全回转港作拖轮航速的有效途径
知坐标,明航向
水下拖曳航行器水动力和拖缆姿态仿真分析
考虑几何限制的航向道模式设计
基于有理函数模型的GNSS?R岸基海面风速反演算法
低速水面目标航速精度分析及精确解算
浅谈广东省海洋观测网体系建设
基于干扰观测器的船舶系统航向Backstepping 控制
海底观测网岸基站供配电系统设计