请输入
菜单

相机快门配置和热靴反馈

舵机控制连接与配置

将飞控的一个 PWM 输出(也称为舵机输出)连接到相机或接收 PWM 输入的相机控制线缆。

如舵机维基页面所述,部分飞控对可使用的 PWM 输出有特定限制:

  • 带有 IOMCU 的飞控(例如标注有 MAIN OUT 和 AUX OUT 输出接口),建议使用 AUX OUT 1 至 6。
  • 无 IOMCU 的飞控,可使用任意输出接口。

通过以下参数配置飞控:

  1. 设置 SERVOx_FUNCTION = 10(CameraTrigger),其中“x”是连接相机的 PWM 输出通道。
  2. 设置 CAM1_TYPE = 1(Servo),然后重启飞控。
  3. 设置 CAM1_SERVO_ON 为触发拍照时输出的 PWM 值(例如 1300)。
  4. 设置 CAM1_SERVO_OFF 为不拍照时输出的 PWM 值(例如 1100)。
  5. 设置 CAM1_DURATION 为 PWM 值保持高电平的时间(以秒为单位,例如 0.1)。

继电器控制连接与配置

警告
该功能依托 GPIO 实现,电流承载能力有限。

将飞控的一个 GPIO 引脚连接到相机或接收高低电平输入的相机控制线缆。

如继电器维基页面所述,飞控的舵机/电机输出通常可用于此功能,此外部分飞控还配备有专门用于继电器/GPIO 的引脚。

通过以下参数配置飞控:

  • 若使用 4.5 及更早版本,仅可使用第一个继电器,因此需将 RELAY_PIN 设置为所用的 GPIO 引脚。
  • 若使用 4.6 及更高版本,可使用任意继电器。以下是使用第一个继电器时的设置:
    1. 设置 RELAY1_FUNCTION = 4(Camera)。
    2. 设置 RELAY1_PIN 为所用的 GPIO 引脚。
    3. 设置 SERVOx_FUNCTION = -1(GPIO),其中“x”是所用的舵机输出通道。若使用飞控的专用 GPIO 引脚(这种情况较少见),则无需此步骤。
    4. 设置 CAM1_DURATION 为继电器保持高电平的时间(以秒为单位)。
    5. 设置 CAM1_RELAY_ON = 0 可切换继电器电压。例如,GPIO 输出默认将为高电平,触发相机快门时变为低电平。

快门触发的方式

  1. 用遥控器通道触发
    如遥控器输入6通道触发快门设置RC6_OPTION=9

注意
飞控的安全开关需要在解除锁定状态伺服通道才会有输出,可以长按ONEGNSS的安全开关至常亮状态或者修改参数brd_safety_deflt为1,重启飞控。

  1. 地面站触发
    地面站动作里选择【trigger_camera】点执行动作即触发一次,方式1和2适合地面测试验证。

相机快门反馈日志

当飞控触发相机时,飞控会记录 TRIG 消息。

若相机提供 GPIO 输出(例如相机闪光灯热靴),可利用该输出在拍照的精确时刻记录 CAM 消息。

将相机的 GPIO 输出连接到飞控的一个 GPIO 引脚(例如 AUX OUT)。如前所述,部分引脚的使用存在限制。

设置以下参数:

  1. 设置 SERVOx_FUNCTION = -1(GPIO),其中“x”是所用的舵机输出通道。
  2. 设置 CAM1_FEEDBAK_PIN 为连接热靴的引脚编号。
  3. 若拍照时热靴电压变为低电平,设置 CAM1_FEEDBAK_POL = 0;若电压变为高电平,设置为 1。

参考文档:https://ardupilot.org/copter/docs/common-camera-shutter-with-servo.html#camera-shutter-configuration

上一个
多旋翼航线命令注解
下一个
常规4+1垂起固定翼基础教程
最近修改: 2025-11-11Powered by