ArduPilot无人船(车)常用参数调试
这个控制器的FF、P、I和D增益都保持在分别 是 ATC _ STR _ RAT _ FF 、 ATC _ STR _ RAT _ P 、 ATC _ STR _RAT_I 和 ATC _STR _RAT_D 参数。此控制器的P、I和D增益保持在分别是 ATC _ SPEED _ P , ATC_ SPEed _ I 和 ATC_ STEED _ D 参数, ATC 的 STEEP _ FF 应设
一、“停止转向”参数
本节介绍如何调整差速转向的车(或船)上的“停止转向”功能。
“停止转向”是指无人船(车)减速或停止,转向目的地,然后继续行驶。这些转弯仅在AUTO、 GUIDED、RTL或SMARTRTL模式下触发,并且仅在无人船(车)首次驶向下一个航路点时触发。
参数设置
- WP _ PIVOT _ ANGLE 误差超过该角度将触发“停止转向”功能。例如,当设置为默认值“60”时,如果无人船(车)的航向与下一个航路点至少有60度的偏差,“停止转向”将被触发。此参数通常不应设置为低于30,除非您希望禁用“停止转向”,这可以通过将此参数设置为0来实现。当无人船(车)的航向与目的地的航向保持在 10 度以内时,无人船(车)将开始驶向下一个航点
- WP_PIVOT_RATE 在“停止转向”时保持无人船(车)的最大转弯速率(以每秒度数为单位)。
- ATC _ STR _ ANG _ P 无人船(车)的航向外环比例控制参数。更高的值会使转弯更快。
- ATC _ STR _ RAT _ MAX 限制了无人船(车)在所有模式下的最大转弯速率(以每秒度数为单位),包括“停止转向”期间。
- ATC _ STR _ ACC _ MAX 在所有模式下无人船(车)的最大旋转加速度(以度/秒/秒为单位)。数值越大,无人船(车)越快达到最大转速。
二、偏航角速率环PID
本节描述如何调整车的偏航角速率环PID。为了实现良好的转向控制,这是最重要的控制器。
1、转弯速率PID整定
转弯速率控制器尝试使用PID控制器来达到所需的转弯速率。除HOLD和 MANUAL模式外,所有模式都使用此控制器。
这个控制器的FF、P、I和D增益都保持在分别 是 ATC _ STR _ RAT _ FF 、 ATC _ STR _ RAT _ P 、 ATC _ STR _RAT_I 和 ATC _STR _RAT_D 参数。
调整此控制器的建议步骤是:
在手动模式下以控制无人船(车)以中速进行非常急的转弯,将 ACRO _ TURN _ RATE 设置为陀螺仪Z轴最高值稍低一点。请注意,显示的值可能以0.01度/秒为单位,因此其值应除以100以匹配参数的度/秒。
- 在Acro模式中速操控无人船(车),做各种宽转弯和急转弯,并比较不同的转弯效果。
- 首先调整FF前馈增益。该增益将所需的转换率直接转换为转向伺服或电机输出。如果无人船(车)的转弯速度响应缓慢,则应增加此参数。如果无人船(车)不断超过其期望的转弯速度,那么这个参数应该减少。
- P增益校正了短期误差。如果FF值设置得好,它通常可以设置为一个较低的值(例如FF的20%)。如果设置过高,转速可能会振荡。这个P增益应该总是低于FF增益。
- I增益校正了长期误差。通常可以将其设置为与p相同的值。如果无人船(车)与期望的转弯速率存在稳态误差,则应该增加该参数。如果无人船(车)的转弯速度缓慢振荡,那么这个参数应该减少。这个I增益应该总是低于FF增益。
- D增益是为了通过对抗短期的周转率变化来稳定产出。这个增益通常可以保持为零。
最后,将 ATC _ STR _ RAT _ MAX 设置为 ACRO _ Turn _ Rate 值,并选择性地降低ACRON _ RATE。这两个参数的区别是:
- ACRO _ TURN _ RATE 影响操纵输入在 Acro 模式下如何转换为所需的转弯率。这个参数可以减少,使得在 Acro 模式下的转弯更加温顺。
- ATC _ STR _ RAT _ MAX 是无人船(车)在任何模式下都将尝试的最大转弯率。这通常应保持在接近无人船(车)的性能极限,使无人船(车)保持灵活。
三、速度PID参数
本节描述了如何调整无人船(车)的速度和油门控制。一般来说,最好在偏航角速率控制器之前先调整这个控制器。
此控制器的P、I和D增益保持在分别是 ATC _ SPEED _ P , ATC_ SPEed _ I 和 ATC_ STEED _ D 参数, ATC 的 STEEP _ FF 应设为零。
调整此控制器的建议步骤是:
- P 增益是最重要的,应该首先调整。如果无人船(车)的速度是不稳定的和不稳定的,那么这个参数应该减少。如果无人船(车)起步慢,则应增加这一参数。
- I 增益是对稳态误差的修正,如果无人船(车)始终没有达到所需的速度,那么这个参数应该增加。如果无人船(车)的速度在过快和过慢之间缓慢地摆动,则应降低这一参数。正常情况下应该低于P。
- D 增益是为了通过对抗速度的短期变化来稳定输出。这个可以保持为零。
FF 增益应该保持在零。
3、最大加速度
虽然不像其他调整值那么重要,但是ATC _ ACCEL _ MAX 和 ATC_DECEL _ MAX 参数的设置应该与无人船(车)的物理极限相匹配。这有助于速度控制器避免尝试不可能的加速度,并减少超调。
- 使用地面站实时查看前后加速度(又名X轴)。如果使用任务计划数打开飞行数据屏幕,选中“调整”复选框(底部中间),双击图形并选择“轴”。要注意的是,数值以cm/s 所以它们应该除以100得到m/s。
- 在手动模式下操控无人船(车),使用全油门从停止加速到全速。
- 根据日志中的加速度来设置 ATC_ ACCEL _ MAX 和 ATC_DECEL _ MAX 参数。请注意,显示的值可能以cm/s为单位,而参数则以m/s为单位。如果无人船(车)加速和减速相似, ATC _ DECEL _ MAX 可以设为零。
- 在Acro模式下操控无人船(车),测试无人船(车)的加速度是否平稳,减速是否过于滞后。
四、视频
自动巡航
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)