QGC上是可以对PX4进行在线调参的,也就是在无人机飞的时候修改PID参数,实时观察效果。

QGC上是可以对PX4进行在线调参的,也就是在无人机飞的时候修改PID参数,实时观察效果。

2021.4.24  现在知道QGC也可以滑动调参!!!

 

之前不是觉得平衡小车之家的PID在线调参很不错么,其实原来PX4已经可以了。

https://blog.csdn.net/sinat_16643223/article/details/109039222

### 无人机行控制器 PID 参数调试方法与技巧 #### 初始化阶段 在开始调整 PID 参数之前,确保硬件连接无误,并完成必要的初始化工作。这包括但不限于设置初始的比例 (KP)、积分 (KI) 和微分 (KD) 增益值[^3]。 对于初次调参,推荐采用保守策略,即设定较小的 KP, KI 及 KD 数值来逐步逼近最优解。具体数值可以根据经验值选取,例如比例增益(KP)=1.0;积分增益(KI)=0.1;微分增益(KD)=0.05作为起始点。 #### 单轴独立调节 针对每个控制轴(俯仰 Pitch、横滚 Roll 或偏航 Yaw),分别单独进行参数优化。每次只改变其中一个方向上的参数组合,在其他条件保持不变的情况下观察响应特性变化情况。这种做法有助于更清晰地理解各个参数对整体性能的影响机制[^2]。 #### 迭代式精细调整 当单个轴向基本稳定后,则可以尝试同时修改多个相关联的方向上对应的PID系数来进行综合考量下的全局最优化处理。此过程中需注意记录下每一次改动所带来的效果差异以便后续分析总结规律性特征。 #### 实验验证与反馈修正 利用实际行测试获取数据样本集用于评估当前配置方案的有效性和可靠性水平。如果发现存在振荡现象或其他异常状况,则适当降低相应项权重直至恢复正常为止。反之亦然,若表现良好则可考虑进一步提高灵敏度以追求更高精度的操作体验[^1]。 ```c // 示例代码片段展示如何更新PWM信号给定至各电机 void updateMotors(float pitchError, float rollError, float yawError){ // 计算误差输入到PID函数中得到输出量 int motorOutput[4]; // 对应于四个角位置处安装有不同编号ID号马达设备对象实例化指针变量声明部分省略... // 更新每台发动机所接收到来自中央处理器发出指令的具体细节逻辑实现如下所示: for(int i=0;i<4;i++){ motorOutput[i]=basePwm+(pitchPid.compute(pitchError)+rollPid.compute(rollError)+yawPid.compute(yawError))/4; // 确保最终发送出去的数据范围处于安全区间内 if(motorOutput[i]>MAX_PWM)motorOutput[i]=MAX_PWM; else if(motorOutput[i]<MIN_PWM)motorOutput[i]=MIN_PWM; motors[i]->setPWM(motorOutput[i]); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诗筱涵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值