速记
PwM输出模块、RGB_LED模块在底层都是通过uORB消息的读写来实现的。
PX4自驾仪对uORB的教程:.html
PX4自驾仪对mavlink的教程:.html
通过MAVLink协议与外部设备进行数据交换,并解码成为自定义的uORB消息。
官方控制器中的代码,既访问了PWM硬件接口,又将计算得到的PWM值发布到uORB消息池中(用于HIL或其他进程的订阅),该消息名称为:actuator_outputs
如何用设计好的姿态控制器和位置控制器进行半自主控制器设计:
注意:姿态控制器和位置控制器设计好之后,可结合遥控器的PWM输入,将3者结合设计成半自主控制器,分别有三种模式,自稳定高和定点(hold、altitude、position),注意,遥控器的哥哥通道的pWM值分别对应不同的期望值,一般地,偏航通道摇杆对应偏航角速率期望值,油门摇杆对应垂直速度期望值,水平摇杆对应姿态期望值。
半自主控制模式设计
三种模式使用不同的传感器,
- 自稳模式(GPS、高度传感器失效或没有时)
- 定高模式:当油门和偏航摇杆不在死区内,摇杆的PWM值表示期望垂直速度和偏航速度,当摇杆进入死区,摇杆的PWM值判定为无效,此时控制器的高度和偏航角期望值为摇杆进入死区那一时刻的状态估计器估计出的当前飞机的高度和偏航值。
- 定点模式:与上定高模式同理。
飞控中的解锁与上锁(arm、disarm)、安全开关SAFETY
向飞控发送一条MAV_CMD_COMPONENT_ARM_DISARM 消息(MAVLink消息)可以解锁。
ReflySim屏蔽官方控制器后,包括位置、姿态和控制分配器都无法正常工作。并且,在官方控制器基础上工作的所谓自稳、定高、定点模式也会失效。这些都可以自行在自己的设计控制器上进行设计,更多请参考书上的半自主控制模式设计。
模型线性化、欧拉角与机体角速度的关系。
欧拉角与角速度的关系:
欧拉角的导数不等于机体轴的角速度
d_theta = T * w
当欧拉角有小角度时,T约等于单位阵,即此时欧拉角的导数约等于机体角速度w
被编译的Simulink程序中,不同采样频率的信号之间要用Rate Transition 进行连接
速记
PwM输出模块、RGB_LED模块在底层都是通过uORB消息的读写来实现的。
PX4自驾仪对uORB的教程:.html
PX4自驾仪对mavlink的教程:.html
通过MAVLink协议与外部设备进行数据交换,并解码成为自定义的uORB消息。
官方控制器中的代码,既访问了PWM硬件接口,又将计算得到的PWM值发布到uORB消息池中(用于HIL或其他进程的订阅),该消息名称为:actuator_outputs
如何用设计好的姿态控制器和位置控制器进行半自主控制器设计:
注意:姿态控制器和位置控制器设计好之后,可结合遥控器的PWM输入,将3者结合设计成半自主控制器,分别有三种模式,自稳定高和定点(hold、altitude、position),注意,遥控器的哥哥通道的pWM值分别对应不同的期望值,一般地,偏航通道摇杆对应偏航角速率期望值,油门摇杆对应垂直速度期望值,水平摇杆对应姿态期望值。
半自主控制模式设计
三种模式使用不同的传感器,
- 自稳模式(GPS、高度传感器失效或没有时)
- 定高模式:当油门和偏航摇杆不在死区内,摇杆的PWM值表示期望垂直速度和偏航速度,当摇杆进入死区,摇杆的PWM值判定为无效,此时控制器的高度和偏航角期望值为摇杆进入死区那一时刻的状态估计器估计出的当前飞机的高度和偏航值。
- 定点模式:与上定高模式同理。
飞控中的解锁与上锁(arm、disarm)、安全开关SAFETY
向飞控发送一条MAV_CMD_COMPONENT_ARM_DISARM 消息(MAVLink消息)可以解锁。
ReflySim屏蔽官方控制器后,包括位置、姿态和控制分配器都无法正常工作。并且,在官方控制器基础上工作的所谓自稳、定高、定点模式也会失效。这些都可以自行在自己的设计控制器上进行设计,更多请参考书上的半自主控制模式设计。
模型线性化、欧拉角与机体角速度的关系。
欧拉角与角速度的关系:
欧拉角的导数不等于机体轴的角速度
d_theta = T * w
当欧拉角有小角度时,T约等于单位阵,即此时欧拉角的导数约等于机体角速度w