【无人船】Ardupilot(apm)安装调试
序言
说起无人船这个概念,想必还是停留在遥控快艇那种东西上,对于一个和无人机一样的无人设备,当前并没有一个详尽的说明和指导,鄙人目前就读于某985海洋专业,希望留下一些记录,踩过的坑我想给大家填上,让大家快快乐乐调参。
无人船安装
水密
首先,开篇,别的不说,你船漏水就是扯淡,开出去过一会就沉了,所以呢朋友们,工欲善其事,必先利其器,透明胶条、热熔胶、502这些东西没有水密!没有水密!没!有!水!密!
在安装穿过船的东西,比如排水孔、轴、线束的时候,请使用防水航空插头和防水密封胶(比如卡夫特的704防水密封胶)等用来水密的东西。
如果觉得不过瘾可以使用环氧树脂,粘上去一辈子掉不下来。
同时,可以在船内的前部放一下泡沫等低密度物体,即使你船进水了也不至于沉了;
再有就是稍大的船要设置水密舱,将动力系统和控制系统分离开,控制系统放在一个水密盒里更保险,但是会有散热问题需要解决。
动力系统
无人船动力系统主要分三种,轴系推进、泵喷式(或者叫喷泵式)以及涵道式水下推进器,一般使用无刷电机和无刷电调驱动,以下是相关介绍:
轴系(小心打手)
轴系即电机通过一根轴传动驱动船体外螺旋桨转动,轴系根据传动轴特点分为软轴系和硬轴系;
泵喷
泵喷推进器是将轴系内置化,直接将高速水流喷出
涵道推进器
冷却系统
无人船不同于无人机,没有天然的气动冷却,这就使得无人船舱内的密闭空间对电子设备的散热产生影响,图传的码流量高,发热量最大,最好使用水冷散热,如没有水冷条件,应安装较大功率风扇散热,同时要注意飞控也需要防止过热,否则会导致磁罗盘失灵等等。以下介绍几种水冷方案:
水泵抽吸
在船底打孔使用水泵直接将水抽入,通过一系列水冷片后从船侧或船尾高于水位线地方排出,水泵的主动抽水比泵喷的被动吸水更有好处,因为在停船时也能进水,而泵喷只有在船行进过程中才有效果。
泵喷冷却
泵喷式推进器一般自带冷却水口,但是注意,泵喷推进器上的冷却水口是排水口,要在船底开进水口,泵喷在喷出高速水流时,会在管壁上的冷却水口是排水口处造成负压,产生吸力,因而能够将冷却水抽出。
控制系统
天线安装注意事项
数传通常使用915MHz,遥控器使用2.4GHz,图传使用5.8GHz,不同频段的天线不能混用,否则会导致信号质量迅速衰减。天线应使用SMA延长线伸出船外。
灯光系统
无人船航灯规范同样遵循船舶航灯规范;航行灯包括:桅灯、舷灯、尾灯、拖带灯、环照灯、环照黄色闪光灯、操纵号灯以及闪光灯(不包括白昼信号灯)。
1、“桅灯”是指安置的船首尾中心线上方的白灯。
2、“舷灯”是指右舷的绿灯和左舷的红灯。
3、“尾灯”是指安置在尽可能接近船尾的白灯。
4、“拖带灯”是指具有与本条3款所述“尾灯”有相同特性的黄灯。
5、“环照灯”是指在360度的水平弧内显示不间断灯光的号灯。
6、“闪光灯”是指每隔一定时间以每分钟频率120闪次或120以上闪次的闪光的号灯。
无人船基本设置
本次测试使用雷迅X7+飞控,使用missionplanner(mp)地面站ArduRover模型,版本V4.5.4
经测试,V4.5.5有BUG,无舵机信号输出,我没搞懂,所以用V4.5.4
固件刷写
打开missionplanner
选择初始设置
注意此时不要点击连接
点击安装固件,选择底下的All Options Bootloader
然后选择你使用的设备名、版本号、选择固件、机型,注意机型要选择ardurover.apj文件,选择完成后点击Upload Firmware上传固件。
地面站会跳出弹窗提示插拔数据线和点击OK,根据弹窗要求动作即可。
基本设置
加速度计校准
在此校准中,需要分别将船的6个面静止放置校准,以及水平校准。
指南针校准
指南针一般有两个,分别有内置和外置罗盘(外置在GPS中),通常飞控放置在船内,金属船壳对磁罗盘有影响(如果是塑料壳就不干扰可以都启用),本实验使用铝镁合金船体因而将内置磁罗盘关闭,仅使用GPS上罗盘。
校准时将船抱起来,每个轴转360度直到完成全部校准。如果船不大建议飞控不要拿出校准。
遥控器校准
点击校准遥控器,遥控器摇杆和拨杆360库库转,校准上下界。
PWM信号输出设置
选择Servo Output,1~16对应16个通道,通常船舵(Yaw偏航控制)在1和2通道,如果是单舵就使用1,如果是双舵就插1和2,同时功能Function选择GroundSteering(地面转向),如果发现船舵反向,就点击小方框Reverse。
电机(油门)一般设置在3通道功能选择为Throttle(节流阀),值得注意的是,通常船的动力分为轴系和泵喷式推进,在电调中有单向和双向电机模式,轴系推进可以使用双向推进,而泵喷只能使用单向模式,具体校准情况请参考电调说明书,本实验使用FlyMonster,修改电机转向模式须进入电调编程模式,详见说明书;
下图为FlyMonster的编程介绍,在编程完成后须进行行程量较准以匹配控制器和电调。
校准步骤如下:
1.给飞控供电,电调 不上电(桨一定要卸掉了)
2.确保飞控上电后是手动飞行模式
3.禁用安全开关(如果安装)
4.遥控器解锁/设置成自动解锁电机
5.将遥控器上的油门杆移至最大
6.给电机上电
7.ESC /马达应该发出哔哔两声,表明它处于ESC校准模式。
8.两秒之内将油门打到最低
9.ESC应该发出哔声,表示已经接受了新的校准范围
10.ESC自检提示声
11.缓慢提高油门,检查电机是否正确响应
飞行模式设定
根据提示在对应通道上设置飞行模式开关,Manual为手动模式,Auto为自动模式执行Mission任务。一般一个三段开关只能切换3种模式。(3个开关只能切换出3种PWM值),可以通过混控的方式混出6种模式,在设置完成后点击保存模式
第一次下水
Mission任务规划
PID
由于无人船行驶在水这种粘性液体中(相对于空气),无人船处于欠驱动状态,无人船具有很大惯性,在转弯时会侧滑漂移,难以行驶出理想的航线,为了解决这种问题,需要调整无人船的控制PID,包括航向PID以及油门PID。
航向控制PID调参
点击配置调试,在基本参数中第一栏调整航向Yaw的PID。
调整方法如下,首先将I和D置于0,将P设置为0.2,规划一个简单任务,跑一跑看效果;
油门PID
多船链接地面站
当使用一对一数传时,希望多船同时连接地面站,此时需要更改参数SYSID THISMAV:
将船进行编号,从1~225号区别编号,不同船编号不能相同,然后使用USB HUB集线器,将数传接入电脑,选择AUTO自动识别串口;
等待逐个建立通讯完成连接;如下图所示,三个设备已与地面站链接。