English
登录
加入联盟
找回密码
航空人生
新一代连飞客户端下载
空管人生
中国航空运动协会推荐
WEFLY
模拟飞行玩家聊天工具
门户
文章
商城
原创商城
官方淘宝
二手市场
学院
云课堂
考试
资料下载
论坛
模拟飞行
低空飞行
太空探索
航圈
联机
航空人生(连飞)
飞行人生(虚航)
空管人生(虚管)
空战人生(对战)
工具
联飞地图
航路查询
航图查询
气象报文
资源
插件库
素材库
云网盘
企业
飞行者联盟
»
论坛
›
【模拟飞行】
›
FlightGear
›
问答专区
›
PX4软件入门教程-混控器与执行器(1)
返回列表
发新帖
查看:
1080
|
回复:
0
PX4软件入门教程-混控器与执行器(1)
[复制链接]
mikate
mikate
当前离线
UID
4838
注册时间
2014-4-8
在线时间
小时
最后登录
1970-1-1
精华
阅读权限
40
听众
收听
雷达卡
发表于 2024-5-14 20:37:35
|
显示全部楼层
|
阅读模式
混控器作用
PX4 的系统构架可确保不需要在核心控制器中对不同的机身布局进行任何特殊的处理。混合意味着接收力的指令(比如:向右转),然后将这些指令转换成实际的执行器指令来控制电机或者舵机。对于一个每片副翼都有一个舵机的飞机而言这就意味着控制这两个舵机一个向上偏转,一个向下偏转。这也适用于多旋翼:向前俯仰需要改变所有电机的转速。将混控逻辑与实际的姿态控制器分离开来大大提高了程序的可复用性。
控制通道
特定的控制器发送一个特定的归一化的力或力矩指令(缩放至 -1..+1)给混控器,混控器则相应地去设置每个单独的执行器。控制量输出驱动程序(比如:UART, UAVCAN 或者 PWM)则将混控器的输出缩放为执行器实际运行时的原生单位, 例如输出一个值为 1300 的 PWM 指令。
控制组
PX4 系统中使用控制组(输入)和输出组。从概念上讲这两个东西非常简单:一个控制组可以是核心飞行控制器的姿态,也可以是载荷的云台。一个输出组则是一个物理上的总线,例如飞控上最开始的8个PWM舵机输出口。每一个组都有8个单位化(-1..+1)的指令端口,这些端口可以通过混控器进行映射和缩放。混控器定义了这8个控制信号如何连接至8个输出口。对于一个简单的飞机来说control 0(滚转)直接与 output 0(副翼)相连接。对于多旋翼而言事情要稍有不同:control 0(滚转)与全部四个电机相连接,并会被整合至油门指令中。
控制组 #0 (Flight Control)
1:pitch (-1..1)
2:yaw (-1..1)
3:throttle (正常范围为 0..1,变距螺旋桨和反推动力情况下范围为 -1..1)
4:flaps (-1..1)
5:spoilers (-1..1)
6:airbrakes (-1..1)
7:landing gear (-1..1)
控制组 #1 (Flight Control VTOL/Alternate)
0:roll ALT (-1..1)
1:pitch ALT (-1..1)
2:yaw ALT (-1..1)
3:throttle ALT (正常范围为 0..1,变距螺旋桨和反推动力情况下范围为 -1..1)
4:保留 / aux0
5:reserved / aux1
6:保留 / aux2
7:保留 / aux3
控制组 #2 (Gimbal)
0:gimbal roll
1:gimbal pitch
2: gimbal yaw
3: gimbal shutter
4:保留
5:保留
6:保留
7:保留 (降落伞, -1..1)
控制组 #3 (Manual Passthrough)
1: RC pitch
2: RC yaw
3: RC throttle
4: RC mode switch
5: RC aux1
6: RC aux2
7: RC aux3
注解:
这个组仅用于在正常操作期间定义RC输入到特定输出的映射(参见quad_x.main.mix,例如AUX2在混合器中缩放的例子)。在手动IO故障安全覆盖的情况下(如果PX4FMU停止与PX4IO板通信),只使用由控制组0输入定义的映射/混合,用于滚转,俯仰,偏航和油门(其他映射被忽略)。
控制组 #6 (First Payload)
0: function 0 (默认:降落伞)
1: function 1
2: function 2
3: function 3
4: function 4
5: function 5
6: function 6
7: function 7
虚拟控制组虚拟控制组只与创建VTOL代码的开发人员相关。它们不应该用在混合器中,只是为了“完整性”而提供。这些组不是混频器输入,而是作为元通道将固定翼和多旋翼控制器输出输入到VTOL调速器模块。
控制组 #4 (Flight Control MC VIRTUAL)
1:pitch ALT (-1..1)
2:yaw ALT (-1..1)
3: throttle ALT (正常范围为 0..1,变距螺旋桨和反推动力情况下范围为 -1..1)
4:保留 / aux0
5:保留 / aux1
6:保留 / aux2
7:保留 / aux3
控制组 #5 (Flight Control FW VIRTUAL)
1: pitch ALT (-1..1)
2: yaw ALT (-1..1)
3: throttle ALT (正常范围为 0..1,变距螺旋桨和反推动力情况下范围为 -1..1)
4:保留 / aux0
5:保留 / aux1
6:保留 / aux2
7:保留 / aux3
映射
因为有多个控制组(例如飞行控制、有效载荷等)。和多个输出组(总线) ,一个控制组可以向多个输出组发送命令。混频器文件没有显式地定义应用输出的实际输出组(物理总线)。相反,混频器的目的(例如控制MAIN或AUX输出)是从混频器文件名推断出来的,并映射到系统启动脚本中适当的物理总线(特别是在rc.interface(打开新窗口)中)。
这种方法是必要的,因为用于主输出的物理总线并不总是相同的;这取决于飞行控制器是否有IO板(见PX4参考飞行控制器设计>主/IO功能分解)或使用UAVCAN进行电机控制。启动脚本使用“设备”的抽象,将混合器文件加载到板的适当设备驱动程序中。如果uavcan启用,则主混频器加载到设备/dev/uavcan/esc (uavcan)中,否则加载到/dev/pwm_output0(该设备映射到带有I/O板的控制器上的IO驱动程序,以及不带I/O板的板上的FMU驱动程序)。aux混频器文件被加载到设备/dev/pwm_output1中,它映射到具有I/O板的Pixhawk控制器上的FMU驱动程序。由于存在多个控制组(如飞行控制、有效载荷等)和多个输出组(总线),因此一个控制组可以向多个输出组发送命令。
实际上,启动脚本只将mixers加载到单个设备(输出组)中。这是一种配置限制,而不是技术限制;你可以将主混频器加载到多个驱动器中,例如,在UAVCAN和主引脚上都有相同的信号。
往期推荐 ·
[油管搬运]PX4_2022年开发者峰会视频
[油管搬运]基于Simulink机器人竞技场教程
[油管搬运]基于Simulink的机器人仿真系列教程
[油管搬运]自主导航系列教程
工业小说家
微信号|Byzeal_LEO
哔哩哔哩|工业小说家
入门教程
,
混控设置
,
PX4
,
软件
,
混控
相关帖子
•
为什么用回放软件看落地接地感觉和实际的不一致??
•
vega creator软件 购买渠道和价格
•
Vega Prime入门教程12.02:基本开发流程
•
去国外用什么地图软件比较好呢?
•
vs2012和vega prime软件接口问题! 希望有了解的高手 或者 对VC无所不...
•
求教swift连飞软件CLS映射问题
•
关于swift连飞软件安装问题的求助
•
飞行模拟外设mmjoy2软件设置
•
上海航芯x博联科技,一站式BMS方案(完整硬件+软件算法)
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入联盟
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表