Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
PID控制算法
RT-Robot机器人框架_小车_机械臂_无人机
智能小车_平衡车
狂暴战车 直流电机转速闭环,pid调试过程
发布于 2019-08-01 10:32:43 浏览:4636
订阅该版
当我们给小车设定速度时,自然是希望它能够按照预设的速度运行,但因为外界阻力,显然轮子的转速会受到影响,达不到预设值或变的不稳定。 这个时候就需要闭环控制了,来使车轮的转速在受到一定的干扰时也能稳定在预设值上下。 谈到闭环控制算法,最经典的当然是PID了,rt-robot 中提供了PID的算法,其中有增量式PID和位置式PID,对于电机的控制,增量式PID更为合适。 在PID调试过程中, 观察波形是很有必要的。 可以显示波形的工具有很多, 在这里,我使用的是 ANO_TC匿名科创地面站, 它不仅可以图形化显示数据,而且还有调参接口,支持串口、UDP等通信方式。 ANO_TC 上位机有一套自己的协议,下位机(小车)需要实现这部分,才能够使用它。  在与上位机通信对接完成后,就可以开搞了。调参过程中,增量式与位置式略有不同, 增量式先加大 Ki. !: 所用电机不太好。同时因为IO口不够用,没能使用MCU定时器的编码器接口(硬件),只好用软件包中的提供的编码器接口(软件)。 测速稍有影响,明显的可以看到在相互干扰,所以在看以下调试过程中的波形时,不要太过苛刻啊。  以下是具体的调参过程,仅供参考 (ps:两驱小车,使用同一套PID参数) 1.0: 首先设置KP=0,KD=0,KI=0.1。观察波形,可以看到稳定过慢,值太小  1.1: 保持Kp、Kd不变,设置Ki为1.0。观察波形,稳定加快。  1.2: 保持Kp、Kd不变, 设置Ki为2.0。观察波形,有振荡的趋势  1.3: 保持Kp、Kd不变,设置`Ki=4.0`。观察波形,振荡趋势更加明显  1.4: 保持Kp、Kd不变,设置`Ki=8.0`。观察波形,在有规律的振幅渐小的振荡  1.5: 保持Kp、Kd不变,设置`Ki=16.0`。观察波形,来回大幅度振荡,此时Ki已经过大了  **经过 1 过程后,暂定Ki为8.0** 2.0: 设置`Kp=0.1、Ki=8.0、Kd=0.0`。观察波形,几乎没有什么影响  2.1: 保持Ki、Kd不变,设置`Kp=1.0`。观察波形,变化不大  2.2: 保持Ki、Kd不变,设置`Kp=2.0`。观察波形,振荡有被消减  2.3: 保持Ki、Kd不变,设置`Kp=4.0`。观察波形,变化不大  2.4: 保持Ki、Kd不变,设置`Kp=8.0`。观察波形,振荡明显减弱  2.5: 保持Ki、Kd不变,设置`Kp=16.0`。观察波形,新的振荡出现,此时Kp已经过大了  **经过 2 过程后,暂定Kp为8.0** 3.0: 设置`Kp=8.0、Ki=8.0、Kd=0.1`。观察波形。看不出变化  3.1: 保持Kp、Ki不变,设置`Kd=1.0`。观察波形,超调幅度被消弱  3.2: 保持Kp、Ki不变,设置`Kd=2.0`。观察波形,无明显变化  3.3: `Kd=6.0`。观察波形,超调幅度继续消弱  3.4 `Kd=8.0`。观察波形,超调幅度无明显变化,且有要振荡的趋势  3.5: `Kd=16.0`。观察波形,大幅振荡,此时Kd已经过大了  经过 3 过程后,暂定Kd为8.0。 至此,已经得到了一套PID参数,之后就是基于这套参数,反复调节,寻找更优的参数。 PID的参数并不是彼此孤立的,并不是确定了一个参数后,就一直不变,对于调一个参数时需要改动其它参数的情况是很常见的。 以上只是方便展示,希望大家看过后,不要有误解。 上述过程只是为了大致确定参数的数量级和敏感度。 n: 最后选定的参数是:`Kp=6.6、Ki=6.5、Kd=7.6`。效果如下 
查看更多
4
个回答
默认排序
按发布时间排序
whj467467222
认证专家
2019-08-01
开源,分享,交流,共同进步
PID整定参数的选择之试凑法
Carry
2019-12-02
这家伙很懒,什么也没写!
博主能分享一下你的 ”ANO_TC匿名科创地面站” 软件吗? 我最近调通了这个robot框架的电机闭环,发现框架内有现成的传参函数。 你的这个版本在匿名网站上找不到了,谢谢啦。
sogw
2019-12-05
这家伙很懒,什么也没写!
>博主能分享一下你的 ”ANO_TC匿名科创地面站” 软件吗? 我最近调通了这个robot框架的电机闭环,发现框架 ... https://pan.baidu.com/s/1Zbvmzr8Mbt9Mytft31IcCw
等风来
2021-04-24
这家伙很懒,什么也没写!
博主你这个麦伦小车的控制精度怎么样 看你的代码加了IMU这个
撰写答案
登录
注册新账号
关注者
0
被浏览
4.6k
关于作者
sogw
这家伙很懒,什么也没写!
提问
17
回答
33
被采纳
0
关注TA
发私信
相关问题
1
RTT软件包做的平衡小车,请教各位大神看看
2
三轮差速智能小车 开发记录
3
[一起DIY智能战车]硬件选择
4
rt-thread智能小车软件环境搭建
5
狂暴战车 使用 rt-robots 软件包 “组装” car
6
还在为做平衡小车而烦恼吗? EV来了
7
还在为做平衡小车而烦恼吗? EV 来了
8
狂暴战车 开发环境搭建
9
汇总:狂暴战车 开发记录
10
智能战车遥控方案概览
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
RT-Thread CI编译产物artifacts自动上传功能介绍
2
STM32G030移植RT-Thread
3
CubeMX & RT-Thread Studio 联合开发说明
4
RT-Thread动态模块
5
RT-Thread项目助手v0.3 | Ubuntu与MacOS平台的RT-Thread Env
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
I2C_IIC
ESP8266
UART
cubemx
WIZnet_W5500
ota在线升级
PWM
BSP
flash
freemodbus
packages_软件包
潘多拉开发板_Pandora
GD32
定时器
ADC
flashDB
编译报错
socket
中断
rt_mq_消息队列_msg_queue
keil_MDK
Debug
ulog
SFUD
msh
C++_cpp
MicroPython
本月问答贡献
lchnu
3
个答案
2
次被采纳
张世争
1
个答案
2
次被采纳
a1012112796
9
个答案
1
次被采纳
三世执戟
8
个答案
1
次被采纳
聚散无由
5
个答案
1
次被采纳
本月文章贡献
jinchanchan
10
篇文章
13
次点赞
ssdd45555
3
篇文章
2
次点赞
聚散无由
1
篇文章
4
次点赞
RTT_逍遥
1
篇文章
3
次点赞
hywing
1
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部