ardupilot loiter 控制算法 说明.pdf

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ardupilot loiter 控制算法 ardupilot 实现悬停控制核心思想: 1. 采集操作者操作的遥控器输入值(输入信号)进而转换成目标角度; 2. 通过目标角度计算出期望加速度; 3. 通过期望加速度计算得到期望速度; 4. 期望速度积分得到目标位置; 5. 目标位置计算目标速度; 6. 然后通过期望目标速度计算出期望目标加速度; 7. 期望目标加速度转换成姿态控制器的目标角度。 把期望目标加速度传递到姿态控制器,结合实际的无人机位置信息、速度信 息、姿态信息、姿态角速度信息通过PID 控制器实现无人机的定点控制。 定点控制开始 遥控控制 输入数据 期望角度 期望 期望加速度前馈 加速度 期望 速度 期望速度前馈 + + 目标 目标 + 目标姿态 + 目标位置  P 目标速度  PID 低通滤波  PID  PID 无人机 − − 加速度 姿态角 − 角速度 − 实际 传感器 姿态角速度 实际姿态角 实际速度 实际位置 1. ardupilot 留待模式初始化 留待模式初始化,主要实现采集操作者操作的遥控器输入值(输入信号)转 换成期望角度;期望角度转换成期望加速度。 设定飞行器的目标加速度,同时初始化悬停位置和速度等信息。 bool Copter::ModeLoiter::init(bool ignore_checks) { //定位信息OK,ignore_checks= 1才可以设置,这是没有解锁的情况下 if (copter.position_ok() || ignore_checks) { //遥控器信号没有丢失 if (!copter.failsafe.radio) { float target_roll, target_pitch; // 申请简单模式传递到飞行输入 update_simple_mode(); //转换飞行员目标输入到倾斜角度 get_pilot_desired_lean_angles(target_roll, target_pitch, loiter_nav->get_angle_max_cd(), attitude_control->get_althold_lean_angle_max()); //处理飞行员的横滚,俯仰输入 loiter_nav->set_pilot_desired_acceleration(target_roll, target_pitch, G_Dt); } else {

您可能关注的文档

文档评论(0)

haerqige + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档