Px4飞控src源码的学习思路(2)

第二部分主要是modules目录
二modules目录核心模块详解与协作流程
飞行控制的核心逻辑主要在modules目录中以下几个关键模块中实现,它们构成了一个典型的级联控制回路。
1. commander(指令器)
o 角色:系统状态的决策者。
o 功能:
▪ 处理来自遥控器、地面站或机载计算机的高阶指令,如解锁、上锁、切换飞行模式(自稳、定高、定点、任务等)。
▪ 监控系统健康状态(如电池电量、传感器状态、GPS信号质量)。
▪ 根据指令和系统状态,决策出当前系统的主状态(vehicle_status) 和控制模式(vehicle_control_mode)。
2. navigator(导航器)
o 角色:自动飞行时的路径规划师。
o 功能:
▪ 在自动模式(如任务模式、返航模式、降落模式)下,根据预设的任务或指令,规划出期望的飞行轨迹。
▪ 输出位置设定点,即飞行器在接下来某个时刻应该到达的目标位置、速度或航向。
3. 位置控制器(如 mc_pos_control – 多旋翼位置控制)
o 角色:控制回路中的外环控制器。
o 功能:
▪ 接收来自navigator的位置设定点和来自状态估计器(如EKF)的实际位置/速度。
▪ 通过PID等控制算法,计算出为跟踪目标位置所需要的目标姿态(特别是目标俯仰角和滚转角)和目标推力。
▪ 其输出是姿态设定点。
4. 姿态控制器(如 mc_att_control – 多旋翼姿态控制)
o 角色:控制回路中的内环控制器。
o 功能:
▪ 接收来自位置控制器的姿态设定点和来自状态估计器的实际姿态。
▪ 通过控制算法(如PID或更高级的算法),计算出为跟踪目标姿态所需要的电机力矩。
▪ 其输出是未经混控的执行机构控制量。
#飞控 #算法 #研究生 #导航 #无人机 #低空经济
二modules目录核心模块详解与协作流程
飞行控制的核心逻辑主要在modules目录中以下几个关键模块中实现,它们构成了一个典型的级联控制回路。
1. commander(指令器)
o 角色:系统状态的决策者。
o 功能:
▪ 处理来自遥控器、地面站或机载计算机的高阶指令,如解锁、上锁、切换飞行模式(自稳、定高、定点、任务等)。
▪ 监控系统健康状态(如电池电量、传感器状态、GPS信号质量)。
▪ 根据指令和系统状态,决策出当前系统的主状态(vehicle_status) 和控制模式(vehicle_control_mode)。
2. navigator(导航器)
o 角色:自动飞行时的路径规划师。
o 功能:
▪ 在自动模式(如任务模式、返航模式、降落模式)下,根据预设的任务或指令,规划出期望的飞行轨迹。
▪ 输出位置设定点,即飞行器在接下来某个时刻应该到达的目标位置、速度或航向。
3. 位置控制器(如 mc_pos_control – 多旋翼位置控制)
o 角色:控制回路中的外环控制器。
o 功能:
▪ 接收来自navigator的位置设定点和来自状态估计器(如EKF)的实际位置/速度。
▪ 通过PID等控制算法,计算出为跟踪目标位置所需要的目标姿态(特别是目标俯仰角和滚转角)和目标推力。
▪ 其输出是姿态设定点。
4. 姿态控制器(如 mc_att_control – 多旋翼姿态控制)
o 角色:控制回路中的内环控制器。
o 功能:
▪ 接收来自位置控制器的姿态设定点和来自状态估计器的实际姿态。
▪ 通过控制算法(如PID或更高级的算法),计算出为跟踪目标姿态所需要的电机力矩。
▪ 其输出是未经混控的执行机构控制量。
#飞控 #算法 #研究生 #导航 #无人机 #低空经济
夜雨聆风
