PID在线调参这个方法不错!!!!!这可以让PID调参方便很多啊!!!!!!!而且可以很方便看到各个参数变化造成的影响!!!!!!!

33 篇文章 25 订阅
23 篇文章 18 订阅

 

这可以让PID调参方便很多啊!!!!!!!而且可以很方便看到各个参数变化造成的影响!!!!!!!

不用改一次烧录一次!!!!!!!

我发觉平衡小车之家的这个主意太棒了!!!!!

让本来害怕PID调参的可以变得喜欢上PID调参!!!!!我感觉还可以用在无人机上面!!!!!

我现在都想去重新做做平衡车,倒立摆这种基础实验。

 

这样你可以很快试完几乎所有参数,找到效果最好的!!!!!

 

不过当初校赛智能车可以按键调参,也不错。不用重新烧录,你当初做平衡车真的,改一次参数烧录一次。

 

想想这种在线修改参数怎么实现的?存在flash里面了么?

 

能让人真正地参与到调参当中。

 

我感觉ADRC也可以如此!!!!

你看下面APP里的几个参数不正是平衡车的几个参数么。

 

平衡小车之家的无人机也支持APP在线调参。

 

2021.2.23

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

  • 3
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
以下是一个简单的基于Arduino的智能车PID调速代码,供参考: ``` #define ENA 5 // 电机A使能引脚 #define IN1 6 // 电机A控制引脚1 #define IN2 7 // 电机A控制引脚2 #define ENB 10 // 电机B使能引脚 #define IN3 11 // 电机B控制引脚1 #define IN4 12 // 电机B控制引脚2 #define Kp 1 // 比例系数 #define Ki 0.2 // 积分系数 #define Kd 0.1 // 微分系数 int Vtarget = 20; // 期望速度 int Vactual = 0; // 当前速度 int e = 0; // 速度误差 int e_prev = 0; // 上一次速度误差 int integral = 0; // 误差积分项 int derivative = 0; // 误差微分项 int u = 0; // PID输出值 void setup() { pinMode(ENA, OUTPUT); pinMode(IN1, OUTPUT); pinMode(IN2, OUTPUT); pinMode(ENB, OUTPUT); pinMode(IN3, OUTPUT); pinMode(IN4, OUTPUT); } void loop() { Vactual = readSpeed(); // 读取当前速度 e = Vtarget - Vactual; // 计算速度误差 integral = integral + e; // 计算误差积分项 derivative = e - e_prev; // 计算误差微分项 u = Kp * e + Ki * integral + Kd * derivative; // 计算PID输出值 e_prev = e; // 保存上一次速度误差 if (u > 0) { // 控制电机A转速 analogWrite(ENA, u); digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); } else { analogWrite(ENA, -u); digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); } if (u > 0) { // 控制电机B转速 analogWrite(ENB, u); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW); } else { analogWrite(ENB, -u); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH); } delay(50); // 等待50ms } int readSpeed() { // 读取速度传感器的输出值,并根据传感器的特性将其转换为速度值 // 这里只是一个示例,具体实现需要根据具体的传感器进行调整 int sensorValue = analogRead(A0); int speed = map(sensorValue, 0, 1023, 0, 100); return speed; } ``` 该代码基于Arduino平台,使用PID控制器控制两个电机的转速,以达到期望速度。需要注意的是,该代码仅供参考,具体实现需要根据具体的智能车硬件和传感器进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值