首先要感谢蜗牛大神的讲课,博客里面的流程图是蜗牛大神PPT里面的图,看了这个PPT我才把之前看过的一些代码理出来一点头绪~
以guided模式中guided_pos_control_run()模式为例
- 函数的调用
fast_loop();—update_flight_mode();若检测到遥控器5通道相应信号,执行guided模式的guided_run();函数。 guided_run();函数中以guided_pos_control_run();函数为例分析。
导航制导部分的控制流程图如下:
分析如下(电脑画太麻烦了~手画的比较low,大家见谅~):
图中(1)期望加速度(2)期望速度_vel_desired (3)期望位置_pos_target (4)计算目标速度时的前馈项 (5)目标速度_vel_target (6)姿态融合算得的位置_curr_pos (7)姿态融合算得的速度_vel_curr (8)计算目标加速度时的前馈项_accel_feedforward (9)目标加速度_accel_targ