一、云台硬件配置

云台采用storm32bgc无刷三轴云台,该云台支持通过飞控控制与WBUS多通道接收机控制。这里我们采用通过pixhawk4飞控进行控制。

  • pwm控制模式
    采用三条3pin杜邦线将飞控辅助通道AUX1~3连接至云台的pitch、roll、yaw三个通道。
  • mavlink串口控制模式
    采用一条一端是3pin杜邦线另一端是6pin gh1.25自锁扣,将飞控的serial4端口连接至云台的硬件串口,需要自行焊接90度直角排针。

二、飞控云台参数配置

Ardupilot固件参考如下链接进行云台功能设置:

STorM32 Gimbal Controller - Copter documentation

飞控云台支持PWM信号输入与mavlink串口信号输入

PWM信号控制和mavlink串口信号控制均支持通过机载电脑发送mavlink指令实现云台自动控制。

Storm32云台固件目前不支持Gimbal Protocol v2,因此参数MNT_MODE_OUT需要设置为MAVLink gimbal protocol v1,详情参考如下链接:

Gimbal manager supporting Gimbal Protocol v2

PX4固件参考如下说明进行云台功能设置:

英文版

Gimbal (Mount) Control Setup

中文版

PX4-user_guide/gimbal_control.md at master · PX4/PX4-user_guide

总结:

如果是飞控AUX控制的话,设置参数MNT_MODE_IN = AUTO,MNT_MODE_OUT = AUX直接就相当于用了默认的混控器文件,四个AUX端口已经映射为默认(AUX1:PITCH,AUX2:ROLL,AUX3:YAW)

先配置MNT_MODE_IN参数后重启飞控才能继续配置下面的参数,注意看参数的解释部分,如果参数值为RC,则接收机必须连接对应的通道至AUX辅助通道,并通过MNT_MAN_*参数设置pitch/roll/yaw对应的AUX通道(遥控器摇杆 → 接收机通道输出 → 飞控AUX通道输入 → AUX通道输出至云台);如果参数值为MAVLINK_ROI,则可以通过mavlink命令实现控制;如果参数值为AUTO,则控制方式取决于上一次控制的模式。

MNT_MODE_IN输入使能后,MNT_MODE_OUT参数设置为AUX后会默认占用AUX端口14,此时通过AUX通道14输出PWM控制信号至云台,对应的RC通道映射功能失效。MNT_MODE_OUT参数设置为MAVLINK则通过MAVLINK信号控制云台,不影响AUX通道的RC通道映射功能。

以上控制逻辑可以构成的云台控制组合方式有:

  • RC控制输入 → mavlink云台控制输出
  • mavlink云台控制输入 → mavlink云台控制输出
  • RC控制输入 → PWM云台控制输出
    (相当于RC的三个通道直通至AUX46辅助通道,此时这三个AUX通道为信号输入通道,信号输出通道为AUX13默认通道)
    配置方法:MNT_MODE_IN配置为AUTO或RC,MNT_MODE_OUT配置为AUX,MNT_MAN_PITCH、MNT_MAN_ROLL、MNT_MAN_YAW分别对应AUX4、AUX5、AUX6,RC_MAP_AUX4~6分别对应RC的空余三个控制channel。
  • mavlink云台控制输入 → PWM云台控制输出
    配置方法:MNT_MODE_IN配置为AUTO或MAVLINK,MNT_MODE_OUT配置为AUX,MNT_MAN_PITCH、MNT_MAN_ROLL、MNT_MAN_YAW恢复默认设置,RC_MAP_AUX1~6恢复默认设置。

云台mavlink控制调试方法详见Ardupilot wiki部分

注:

PX4固件的云台控制和Ardupilot固件的云台控制界面不一样。

PX4的固件在MP地面站上面云台控制界面为灰色,在QGC界面上面显示的只有相机快门触发方式。

SBUS/PPM接收机在地面站上面只有前八个通道可以控制

订阅云台实际角度:/mavros/mount_control/orientation

发布云台控制角度:/mavros/mount_control/command

三、mavros控制云台

云台控制功能包位于mavros_extras功能包中

offboard模式下云台控制例程

Offboard gimbal control using MAVROS for object tracking

云台控制插件是mount_control,运行mavros启动文件的时候需要注意该插件是否正常启动,如下图所示的情况说明该插件未能正常启动,需要在px4_pluginlists.yaml配置文件中将mount_control从blacklisted中移除后才可启动。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐