智能车制作

标题: PID控制量的输出问题 [打印本页]

作者: matlinsas    时间: 2011-2-26 11:10
标题: PID控制量的输出问题
我是刚接触PID的新手,看了很多PID的理论知识,有一点不明白。但是不明白PID控制的输出控制量是什么.。
输入量是速度的偏差,假如我设定转速时5m/s,实际转速是4m/s,那么偏差就是1m/s ,把这个偏差当做输入量送到PID控制器并进过计算的输出控制量与PWM如何对应,那个输出我怎么处理,难道直接就送给电机?PID运算出的控制量需经过映射到实际控制量从而实现对系统的调节,速度的偏差如何映射成PWM?
作者: pang123hui    时间: 2011-2-26 13:01
你输入输出的不是实际速度,而是编码器的脉冲数好吧
作者: pang123hui    时间: 2011-2-26 13:01
你输入输出的不是实际速度,而是编码器的脉冲数好吧
作者: pang123hui    时间: 2011-2-26 13:01
你输入输出的不是实际速度,而是编码器的脉冲数好吧
作者: pang123hui    时间: 2011-2-26 13:02
不好意思,网速卡,点多了,抱歉
作者: 道明似也    时间: 2011-3-6 15:15
速度的偏差 转化成电机的占空比 进行调节就行了
作者: pangyuo    时间: 2011-3-28 18:07
一样茫然中,求解
作者: 诗雨依然    时间: 2011-4-23 17:52

作者: andyliji    时间: 2011-5-7 14:31
//位置式 PID 控制设计
unsigned int LocPIDCalc(int NextPoint)
{
    register int  iError,dError;
  
  iError = sptr->SetPoint - NextPoint;       //偏差
  sptr->SumError += iError;       //积分
  dError = iError - sptr->LastError;     //微分
  sptr->LastError = iError;
      
  return(sptr->Proportion * iError            //比例项
           + sptr->Integral * sptr->SumError   //积分项
           + sptr->Derivative * dError);        //微分项
}

第一:以上的是位置式PID 算法,输入的是从CCD中读取过来的黑线的中点,setpoint的值是舵机位置。按照凌阳公司的PID解说,好像这个函数的返回值是具体的位置,而不是增量。其实PID的程序,比如说要偏差啦,积分了,微分了,这些设置我是懂的,我也看了好多大学的报告,也包括他们的程序,程序也很少。感觉还是有点云里雾里的。这个返回值到底是什么东西,是舵机角度的增量吗??还是PWM的增量,还是直接是具体位置(比如采集40个点,正中是20)?我知道增量式PID算出来是增量的,最后要实现控制的话还得加上原来的PWM数值。这个位置式是什么情况。
看过whut_wj的一个回答,输出的是PWM的增量。但是,他回答的是增量式的,而不是位置式的。  

可以直接给,但是有个问题要考虑,就是PWM的分频系数那,如果时钟太大,那么为了保证1.5MS的高平时间,这样给的数就是比较大,带来3个参数的值比较大,所以,你要协调好,这个参数的整定是需要花很长的实验时间来确定的
作者: 纪园园    时间: 2011-5-9 09:48

作者: wanglong-1258    时间: 2011-5-9 10:24

作者: 1091424    时间: 2011-5-16 08:36
光电式的调节谁懂啊?
作者: taomo    时间: 2011-6-2 09:17

作者: 坚持每一次123    时间: 2011-11-9 19:29
绝对要顶
作者: 在所不辞    时间: 2011-12-25 15:29
茫然
作者: sunabeng    时间: 2011-12-25 18:39
受教了,谢谢9#
作者: welterstar    时间: 2012-2-24 22:24
PID都没一个说得明白的,最好能写个程序出来,参数是什么具体值这样
作者: 东皇太一    时间: 2015-11-2 21:07
PID不能直接返回位置,感觉舵机还是要占空比调节
作者: 649463811    时间: 2015-11-7 19:34
  计算的偏差为1,然后就通过PID调节呀,现在实际的速度比给定的小,所以PID调节后会改变占空比,让占空比变大一点,   达到5的速度,  
作者: YMH_smartcar    时间: 2015-11-9 19:25
道明似也 发表于 2011-3-6 15:15
速度的偏差 转化成电机的占空比 进行调节就行了

请问怎么转化呢??新手求指教

作者: 颩。。。    时间: 2016-5-15 09:29
一脸懵





欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2