1.环境描述
ardupilot固件版本:V4.2.2
BL电调上位机:BLHeliSuite32.exe 版本:32.9.0.5
电调:F55A PROⅡ 6S 4IN1
目的:想通过飞控直通连接电调,然后设置电调参数
2.操作步骤
① 设置飞控参数
Ⅰ参照官方文档进行设置:
将SERVO_BLH_AUTO设置为 1
现象和Ⅱ方法一样,可以连上飞控,但是读不出电调信息。
Ⅱ参考这位博主的设置方法 点击进入进行如下参数设置:
SERVO_BLH_DEBUG = 1
SERVO_BLH_MASK = 15
这里我用的是四合一电调,MOTOR1-4对应四合一电调的四个信号输入1-4,所以SERVO_BLH_MASK 设置为15。
② 重启飞控,用飞控的USB_SLCAN和Missionplaner连接查看调试信息,用USB_MAVLINK口和BLHeliSuite32.exe相连
打开Missionplaner连接到飞控的虚拟串口SLCAN口,然后用BLHeliSuite32.exe连接飞控的MAVLINK口,点连接后MP打印如下信息:
2022/12/30 16:00:53 : ESC: Unlocked UART
2022/12/30 16:00:51 : ESC: OutB(9) 0x3F ack=0x00
2022/12/30 16:00:51 : ESC: cmd_InterfaceSetMode(4)
2022/12/30 16:00:51 : ESC: BLHeli cmd 0x3F len=1
2022/12/30 16:00:51 : ESC: OutB(10) 0x33 ack=0x00
2022/12/30 16:00:51 : ESC: cmd_InterfaceGetVersion
2022/12/30 16:00:51 : ESC: BLHeli cmd 0x33 len=1
2022/12/30 16:00:51 : ESC: OutB(13) 0x32 ack=0x00
2022/12/30 16:00:51 : ESC: cmd_InterfaceGetName
2022/12/30 16:00:51 : ESC: BLHeli cmd 0x32 len=1
2022/12/30 16:00:51 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:00:51 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:00:51 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:00:51 : ESC: escMode=255 portIndex=0 num_motors=6
2022/12/30 16:00:51 : ESC: MSP_SET_PASSTHROUGH
2022/12/30 16:00:51 : ESC: MSP cmd 245 len=0
2022/12/30 16:00:51 : ESC: MOTOR 5 val: 0
2022/12/30 16:00:51 : ESC: MOTOR 4 val: 0
2022/12/30 16:00:51 : ESC: MOTOR 3 val: 1000
2022/12/30 16:00:51 : ESC: MOTOR 2 val: 1000
2022/12/30 16:00:51 : ESC: MOTOR 1 val: 1000
2022/12/30 16:00:51 : ESC: MOTOR 0 val: 1000
2022/12/30 16:00:51 : ESC: MSP_MOTOR
2022/12/30 16:00:51 : ESC: MSP cmd 104 len=0
2022/12/30 16:00:51 : ESC: MSP_MOTOR_CONFIG
2022/12/30 16:00:51 : ESC: MSP cmd 131 len=0
2022/12/30 16:00:51 : ESC: MSP_MOTOR_3D_CONFIG
2022/12/30 16:00:51 : ESC: MSP cmd 124 len=0
2022/12/30 16:00:51 : ESC: MSP_STATUS
2022/12/30 16:00:51 : ESC: MSP cmd 101 len=0
2022/12/30 16:00:51 : ESC: MSP_FEATURE_CONFIG
2022/12/30 16:00:51 : ESC: MSP cmd 36 len=0
2022/12/30 16:00:51 : ESC: MSP_ADVANCED_CONFIG
2022/12/30 16:00:51 : ESC: MSP cmd 90 len=0
2022/12/30 16:00:51 : ESC: MSP_BUILD_INFO
2022/12/30 16:00:51 : ESC: MSP cmd 5 len=0
2022/12/30 16:00:51 : ESC: MSP_BOARD_INFO
2022/12/30 16:00:51 : ESC: MSP cmd 4 len=0
2022/12/30 16:00:51 : ESC: MSP_FC_VERSION
2022/12/30 16:00:51 : ESC: MSP cmd 3 len=0
2022/12/30 16:00:51 : ESC: MSP_FC_VARIANT
2022/12/30 16:00:51 : ESC: MSP cmd 2 len=0
2022/12/30 16:00:51 : ESC: MSP_API_VERSION
2022/12/30 16:00:51 : ESC: MSP cmd 1 len=0
2022/12/30 16:00:51 : ESC: MSP_API_VERSION
2022/12/30 16:00:51 : ESC: MSP cmd 1 len=0
然后用BLHeliSuite32.exe,点击Read setup,MP打印如下信息:
2022/12/30 16:07:21 : ESC: Unlocked UART
2022/12/30 16:07:20 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:20 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:20 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:16 : ESC: Unlocked UART
2022/12/30 16:07:15 : Internal Errors 4000020
2022/12/30 16:07:15 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:15 : ESC: BL_ConnectEx 5/6 at 5
2022/12/30 16:07:15 : ESC: cmd_DeviceInitFlash(5)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_DeviceReset(5)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:15 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:15 : ESC: short read
2022/12/30 16:07:15 : ESC: BL_ReadBuf 8 -> 0
2022/12/30 16:07:15 : ESC: BL_ConnectEx 4/6 at 4
2022/12/30 16:07:15 : ESC: cmd_DeviceInitFlash(4)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_DeviceReset(4)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:15 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:15 : ESC: short read
2022/12/30 16:07:15 : ESC: BL_ReadBuf 8 -> 0
2022/12/30 16:07:15 : ESC: BL_ConnectEx 3/6 at 3
2022/12/30 16:07:15 : ESC: cmd_DeviceInitFlash(3)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_DeviceReset(3)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:15 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:15 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:15 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:15 : ESC: short read
2022/12/30 16:07:15 : ESC: BL_ReadBuf 8 -> 0
2022/12/30 16:07:15 : ESC: BL_ConnectEx 2/6 at 2
2022/12/30 16:07:15 : ESC: cmd_DeviceInitFlash(2)
2022/12/30 16:07:15 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:14 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:14 : ESC: cmd_DeviceReset(2)
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:14 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:14 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:14 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:14 : ESC: short read
2022/12/30 16:07:14 : ESC: BL_ReadBuf 8 -> 0
2022/12/30 16:07:14 : ESC: BL_ConnectEx 1/6 at 1
2022/12/30 16:07:14 : ESC: cmd_DeviceInitFlash(1)
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:14 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:14 : ESC: cmd_DeviceReset(1)
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:14 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:14 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x31 len=1
2022/12/30 16:07:14 : ESC: OutB(12) 0x37 ack=0x0F
2022/12/30 16:07:14 : ESC: short read
2022/12/30 16:07:14 : ESC: BL_ReadBuf 8 -> 0
2022/12/30 16:07:14 : ESC: BL_ConnectEx 0/6 at 0
2022/12/30 16:07:14 : ESC: cmd_DeviceInitFlash(0)
2022/12/30 16:07:14 : ESC: BLHeli cmd 0x37 len=1
2022/12/30 16:07:14 : ESC: OutB(9) 0x35 ack=0x00
2022/12/30 16:07:13 : Initialising ArduPilot
2022/12/30 16:07:13 : ESC: cmd_DeviceReset(0)
2022/12/30 16:07:13 : ESC: BLHeli cmd 0x35 len=1
2022/12/30 16:07:13 : ESC: OutB(9) 0x31 ack=0x00
2022/12/30 16:07:13 : ESC: cmd_ProtocolGetVersion
2022/12/30 16:07:13 : ESC: BLHeli cmd 0x31 len=1
且BLHeliSuite32.exe提示没有找到电调:
③ 尝试过几次,目前还未找到具体原因
哪位大佬知道,请在下方评论,小弟不胜感激,膜拜。