我有 Dronekit 与 SITL sim 一起正常工作,但是对于我的项目,我希望能够控制直升机的姿态。显然我可以在 ALT_HOLD 模式下通过 RC override 来做到这一点,但是我不喜欢这种方法。
我一直在尝试使用 Mavlink 消息 SET_ATTITUDE_TARGET (#82),但是当我将消息发送到 sim 时,没有任何反应。我已经能够设置速度和位置,并且工作正常。
这是我的功能:
def att_msg_mode():
print "=========== Building Message"
veh1.mode = VehicleMode("ALT_HOLD")
msg = veh1.message_factory.set_attitude_target_encode(
0,
0, #target system
0, #target component
0b11100010, #type mask
[.9438,0,0,.17364], #q
0, #body roll rate
0, #body pitch rate
0, #body yaw rate
0) #thrust
time.sleep(1)
veh1.send_mavlink(msg)
veh1.flush()
print "=========== Message Sent"
有人可以帮我吗?