基于STM32的无人船控制系统设计与实现

针对现有水面无人船自主导航问题,设计了一种基于STM32单片机的无人船运动控制系统:

  1. 该系统以STM32F103芯片做为主控板核心芯片,采用了双 MCU(微控制单元)架 构,集成了无人船的直流电机、电源显示、信息采集等模块的工做,通 过CAN 总线形式实现数据采集板与运动控制板之间的通讯;
  2. 经过卡尔曼滤波算法实现全球定位系统 (GPS) 和捷联惯导系统(SINS)对无人船定位信息的数据处理,使无人船的定位更加准确;
  3. 经过自抗扰控制算法实现无人船对航向角的闭环控制,以达到路径跟踪的目的;
  4. 采用4G网络通讯方式,同时设计了基于Java开发的上位机软件(手机软件)实现无人船的远程操控功能;

硬件设计

QQ图片20200412071515.png

  • 系统使用了两个 STM32F103控 制 芯片,左边的主要用来读取数据,而且会对 GPS及IMU 的数据进行相关处理;右边的主要用来控制无人船 运 动,可 通 过 CAN 总线控制电机驱动;4G模块能够上网,实现无人船的远程操控功能;其 他 硬 件 如指示灯等能够显示无人船的各类状态。

GPS/IMU组合导航模块

  • GPS模块的型号为GYGPSV1-7M,IMU 模块型号为 MiniIMU AHRS。GPS和IMU 模块都是经过串口链接到数据采集 板 上。将 数 据 获 取 后,STM32 便会进一步解算数据,使无人船的定位信息更加准确,以后再将该信息经过CAN 总线发送给运动控制板,以便进行下一步操做

电机驱动模块

4G通讯模块

供电部分

软件设计

GPS/IMU的数据融合

采用松组合方式来实现 GPS与IMU 的 数 据 融合。将GPS和IMU 分别测出的位置或速度信息经过卡尔曼滤波器实现数据融合,而且融合后的信息还会反馈回IMU,以达到消除捷联惯导系统累积偏差的目的算法

无人船路径跟踪

  • 主要经过控制船只的航向来实现无人船路径跟踪目的,故设计合理的航向控制器相当重要
  • 自抗扰 控 制 器是一种不依赖被控对象精确模型的、可以替代 PID控制技术的新型实用数 字 控 制 技 术。该控制器能够很好地控制无人船航向,经过规划好的路径与实际船舶位置的对比能够获得无人船的指望航向,将指望航向做为输入,实际测量航向做为输出,通过控制器的做用使无人船实现路径跟踪的目的。

上位机监控软件设计

无人船上位机软件是基于 Android系 统 采 用Java语 言
开发的,这款 App适用于 Android5.0以上的手机,稳定性好,包括6部分信息。网络

感触:会不会像昨天的无人机培训同样,控制系统啥的都找好了,不如先看例子吧spa