在直流电机调速中增量式PID控制算法的输出是怎么与PWM建立关系

huweiping8603 2010-04-24 10:51:10
各位大侠:我是菜鸟,最近我用单片机做一个PWM直流电机调速的实验,我用的是增量式PID控制算法,我有个问题不是很明白:那就是在这个系统中是怎样通过增量式PID控制算法的输出来控制PWM的,增量式PID控制算法的输出是怎么与PWM建立关系的,假设增量式PID控制算法输出a那么PWM应该是多少呢,啥关系呢? 还有就是在增量式PID控制算法中 P与电机速度的关系什么,反映的什么?
...全文
2200 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
huanlei412 2011-05-04
  • 打赏
  • 举报
回复
楼主,可以把你的程序给我发一份么?我正在做这个毕设。邮箱 :530757864@qq.com
谢谢!!!!!!!!!!!!
baiju1839 2010-05-04
  • 打赏
  • 举报
回复
支持的
solomon_大卫 2010-05-04
  • 打赏
  • 举报
回复
pid
算法是很简单,就是你寻找输出pwn的脉宽多大 能达到你想要速度的稳定值 的过程。寻到到以后就保持这个稳定状态的过程
victorwool 2010-04-30
  • 打赏
  • 举报
回复
学习学习
mingmingkk 2010-04-29
  • 打赏
  • 举报
回复
int PIDCal(PID *pp, int ThisError)
{

//增量式PID算法(需要控制的不是控制量的绝对值,而是控制量的增量)

int pError,dError,iError;
double data0=0;
pError = ThisError-pp->LastError;
iError = ThisError;
dError = ThisError-2*(pp->LastError)+pp->PreError;
//增量计算
data0=pp->Proportion*pError + pp->Integral*iError+pp->Derivative*dError; //增量
pp->YnBuffer[1]=pp->YnBuffer[0]+data0;
pp->YnBuffer[0]=pp->YnBuffer[1];
//存储误差用于下次运算
pp->PreError = pp->LastError;
pp->LastError = ThisError;

return ((int)pp->YnBuffer[1]);
}
mingmingkk 2010-04-29
  • 打赏
  • 举报
回复
增量PID算法是求每2次之间的变化量,基本上算法都是一样的,网上很多,需要自己调的就是参数系数,包括(比例系数,积分系数,微分系数)系数决定响应调节的速度快慢,调节的幅度等
xidianzhe 2010-04-29
  • 打赏
  • 举报
回复
学习学习
huweiping8603 2010-04-26
  • 打赏
  • 举报
回复
请问各位:基于PID算法的有刷直流电机PWM调速系统中对有刷直流电机调速用到的算法是模拟 PID控制原理还是增量式PID控制或者别的PID控制原理?能否将PID算法式子告诉我?谢谢各位了!!QQ:286410824
sikinzen 2010-04-24
  • 打赏
  • 举报
回复
整理下:在本例中
1. PWM 主要告诉你:速度能由电源的脉宽来决定;
2. PID算法告诉你:用怎么样的脉宽曲线才能最好地控制速度。

另外,PWM 和 PID都可以用在别的场合,我这边只是以本例来做说明。
sikinzen 2010-04-24
  • 打赏
  • 举报
回复
2. 当电机从0开始增速到最终稳定于指定速度f这段时间中,它的速度曲线其实是有很多种可能性的,有可能是类似正弦曲线,有可能是。。。。,这主要取决于于你给它提供的电压的曲线,而电压的曲线根据我们刚刚的PWM理论,又取决于5v所占宽度(即脉宽)的大小。
也就是说,速度的曲线决定于脉宽的曲线,PID算法就是研究一种控制脉宽的方法,使得速度能既快又稳地稳定在指定速度上。
sikinzen 2010-04-24
  • 打赏
  • 举报
回复
1. 首先,请楼主画一条电压U对时间的曲线,这两曲线只有两种值:要么电压为Vcc(假设5v),要么电压为0.我们可以知道:Vcc那段区间越大,整条曲线的平均电压大,也即是说 电压U的大小与Vcc的宽度有一个类似正比的关系,这就是 脉宽调制原理,简称 PWM。
举个例子,Vcc=5v,我想得到一个平均电压为3v的电压,那么,我可以控制Vcc区间占总电压区间的 60%。

6,125

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧