簡易探討運動控制三大控制模式的差異 点击:9637 | 回复:393



笨鳥慢飛

    
  • 精华:3帖
  • 求助:3帖
  • 帖子:15帖 | 2548回
  • 年度积分:0
  • 历史总积分:4928
  • 注册:2005年10月16日
发表于:2013-08-16 23:12:20
楼主

位置環與速度環其實都是運動控制的兩種控制模式 其控制的結果就是"定位"

 在早期的伺服驅動有分為 位置型(日系)與速度型(歐系)的驅動器 當然其上位控制器也分為兩種 

大約10多年前 日系將兩種控制模式合併 提供上位控制器做為選用所要的模式 至今所有通用伺服也都是延續此模式 但運動控制仍然壁壘分明

位置環在確認編碼器回授位置確認 速度環修正位置偏差(這是動態的偵測修正)

問題一  為何運動控制其位置環及速度環仍壁壘分明

問題二 位置還大家望文興義就知跟定位有關 但速度環怎麼也跟定位有關 究竟速度環是甚麼樣的環?

問題三 環的定義是什麼?

希望透過此文 能讓大家知道 什麼是運動控制 什麼是PLC 什麼是伺服

 




刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 09:39:18
281楼

引用 PLC酷客 的回复内容: 

……

一些控制系统把数个PID控制器串联起来,或是连成网络。这样的话,一个主控制器可能会为其他控制输出结果。一个常见的例子是马达的控制。控制系统会需要马达有一个受控的速度,最后停在一个确定的位置。可由一个子控制器用来管理速度,但是这个子控制器的速度是由控制马达位置的主控制器来管理的。

……


1、 “一个常见的例子是马达的控制。控制系统会需要马达有一个受控的速度,最后停在一个确定的位置。可由一个子控制器用来管理速度,但是这个子控制器的速度是由控制马达位置的主控制器来管理的。”,这句话本身是对的,但是认为是“把数个PID控制器串联起来”就是错误的;

2、变量的控制器,不一定都是PID控制的,不一定都能PID控制,哪还有什么控制方式?

3、还有更广泛的控制方式,就是开关控制方式;

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 09:57:16
282楼

4、例如家里用的冰箱,用温控开关启动或关闭压缩机,使冰箱温度控制在一个范围内,就是开关控制模式;如果用PID控制方式,必须使制冷量与系统外热量导入相平衡,这个就很难做到PID控制:

1)如果打开冰箱门时,热量会大量涌入,需要很大的等数值的制冷量,冰箱的压缩机显得很小,很难满足:

2)如果冰箱连续长时间关闭,系统外热量导入很少,需要等值的制冷量,冰箱的压缩机就显得很大,也很难做到;

3)所以,冰箱大多采用开关控制模式,如果采用变频控制,只能是在一个很小的温度范围内实现PID控制的效果“恒温”,一旦冰箱门打开,这个PID控制就会被打破!闭环控制处于饱和,失去控制!

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 10:10:20
283楼

5、现在说“马达的控制”:

1)“马达”可以通过“PID控制器”输出的“电信号”控制电压或者频率实现马达速度或者电流的PID控制;

2)由于“马达”的负载增大时,速度下降、电流增大,所以速度闭环与电流闭环级联时,内环输入没有偏差形成而不起调节作用,内环只能在外环饱和失控时,起到电流限制保护的电流作用;

3)也就是说“马达”PID控制的速度或者电流也是有条件的,只能在允许的条件下;

 

 

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 10:26:47
284楼

4)“这个子控制器的速度是由控制马达位置的主控制器来管理的。”:

a、刚才说了“子控制器的速度”可以是有条件的速度闭环PID控制;

b、可是速度大小的给定是用户给定和规划的,并非是“马达位置的主控制器”输出命令的;

c、由于“马达”的“位移量”虽然用编码器实现了精确检测,可是没有实现PID输出的电信号的精确控制,举例说,电机转了1/10000周,你看到了,可是你要“马达”只转1/10000周做不到;

d、所以“马达位置的主控制器”是不存在的,“马达”的偏差计数器输出的位置,是用户管理“马达”启动、加速、匀速、减速、停车的依据;或者说,“偏差计数器输出的位置+用户设定”,是“马达”的“主控制”!

 

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 10:36:05
285楼

6、马达的主控制器实际是个开关控制模式:

1)给定目标位置指令脉冲数,马达启动;

2)距离目标位置还很远,所以加速,高速运行;

3)快到达目标位置了,减速;

4)到达目标位置,停车制动!

7、就像家里用的一个水龙头:

1)你想用半锅水,打开水龙头;

2)因为是空锅,水龙头可以开大,大水流;

3)看到快到半锅水了,将水龙头关小;

4)看到半锅水了,关水龙头!

5)所以打半锅水,和保持半锅水面高度,是两码事!打半锅水是个开关控制模式!

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-10 10:48:13
286楼

8、所以,“马达”的主控制器,不是PID控制器,是开关控制模式! 

9、这样:“马达的控制。控制系统会需要马达有一个受控的速度,最后停在一个确定的位置。可由一个子控制器用来管理速度,但是这个子控制器的速度是由控制马达位置的主控制器来管理的。”,作为“数个PID控制器串联起来,或是连成网络”的例子,就是一句空话!

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-10 21:50:39
287楼

        老刘,长篇大论说得真不错,请教你一个小问题,一个PID控制器,如果没有输入偏差,它的输出会不会改变?

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 00:04:52
288楼

引用 x_p_zhang 的回复内容: 

…… 一个PID控制器,如果没有输入偏差,它的输出会不会改变?


1、一个 PID控制器,如果没有输入偏差,他就没有调节作用!

2、一个 PID控制器,如果没有输入偏差,他就没有调节作用!这时它的输入输出相等;

3、一个 PID控制器,如果没有输入偏差,他就没有调节作用!这时它的输入输出相等,输出跟随输入变化,称之为“随动”状态!

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-11 09:29:18
289楼

引用 刘志斌 的回复内容: 

引用 x_p_zhang 的回复内容: 

…… 一个PID控制器,如果没有输入偏差,它的输出会不会改变?

1、一个 PID控制器,如果没有输入偏差,他就没有调节作用!

2、一个 PID控制器,如果没有输入偏差,他就没有调节作用!这时它的输入输出相等;

3、一个 PID控制器,如果没有输入偏差,他就没有调节作用!这时它的输入输出相等,输出跟随输入变化,称之为“随动”状态!


        PID控制的输入输出关系是这样:

        u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt]

        式中u(t)是输出;e(t)是输入偏差;kp为比例系数; TI为积分时间常数; TD为微分时间常数;积分的上下限分别是0和t。

        可以清楚地看出,PID的输出u(t)由输入偏差e(t)决定,如果在0到t的时间内e(t)=0,那么输出u(t)不会改变。

        随什么动啊?!如果没有输入偏差,那么输出根本就不会动一下,老刘,你设计过PID电路没有?调试过PID电路没有?写过PID的程序没有?都是些纸上谈兵的东西。

 

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-11 09:52:19
290楼

        老刘,仔细看下面这张图,如果Error=0,Output是怎么改变的,你给大家解释一下。 

 

 

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 09:52:44
291楼

引用 x_p_zhang 的回复内容: 

  PID控制的输入输出关系是这样:

        u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt]

    ……   

 可以清楚地看出,PID的输出u(t)由输入偏差e(t)决定,

  如果在0到t的时间内e(t)=0,那么输出u(t)不会改变。

  ……


 

1、如果在0到t的时间内e(t)=0,那么输出u(t)=0,没有调节作用;

2、如果在0到t的时间内e(t)=0,那么输出u(t)=0,没有调节作用,在PID控制中,这时控制处于没有偏差的精确给定状态;

3、如果在0到t的时间内e(t)=0,那么输出u(t)=0,没有调节作用,在PID控制中,这时控制处于没有偏差的精确给定状态;给定是多少,控制结果就是多少,随动状态!

 

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:02:41
292楼

引用 x_p_zhang 的回复内容: 

……老刘,你设计过PID电路没有?调试过PID电路没有?写过PID的程序没有?都是些纸上谈兵的东西。


1、你的意思是,让大家相信你说的是对的,因为你是专家!……

2、我的看法和你不一样,专家也会有错误,专家德行不好时,还会害人!害社会!

 

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-11 10:10:54
293楼

引用 刘志斌 的回复内容:

这时控制处于没有偏差的精确给定状态;给定是多少,控制结果就是多少,随动状态!


         给定是多少,结果就是多少,这句话看不懂,可不可以解释一下“给定”是指什么?“结果”是什么?“给定”又是如何精确地赋给了“结果”的?

        请照上面那张方框图解释。你的意思是Setpoint直接就到了Output,是这个意思吗?

        所有PID都是根据偏差输出的,我实在不能理解“给定”是如何直接到“结果”的。

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:12:27
294楼

引用 x_p_zhang 的回复内容:         老刘,仔细看下面这张图,如果Error... 


1、专家开了个大玩笑!!!

2、专家不知道PID控制“偏差”等于零,控制结果是精确的给定状态?

3、专家不知道PID控制“Error=0”,Output=Setpoint  ???

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:14:59
295楼

4、老百姓都知道,PID控制要的就是“偏差等于零”,专家不认识“偏差等于零”了???

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-11 10:17:49
296楼

回复内容:

对: 刘志斌  

1、你的意思是,让大家相信你说的是对的,因为你是专家!……

2、我的看法和你不一样,专家也会有错误,专家德行不好时,还会害人!害社会!


         我不是专家,我只是个普通工程师,水平很一般,但我动过手,了解基本原理,不像有的人没有实际操作经验却长篇大论,好像是个专家一样。

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:18:33
297楼

引用 x_p_zhang 的回复内容:

…… 给定是多少,结果就是多少,这句话看不懂,可不可以解释一下“给定”是指什么?“结果”是什么?“给定”又是如何精确地赋给了“结果”的?... 


1、专家开了个大玩笑!!!

2、专家不知道PID控制“偏差”等于零,控制结果是精确的给定状态?

3、专家不知道PID控制“Error=0”,Output=Setpoint  ???

4、老百姓都知道,PID控制要的就是“偏差等于零”,专家不认识“偏差等于零”了??? 

x_p_zhang

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 85回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2013年10月17日
发表于:2013-11-11 10:19:51
298楼

引用 刘志斌 的回复内容:

1、专家开了个大玩笑!!!

2、专家不知道PID控制“偏差”等于零,控制结果是精确的给定状态?

3、专家不知道PID控制“Error=0”,Output=Setpoint  ???


        这个真不知道!老刘,你就趁此机会给大家讲一下这个机制。 

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:22:49
299楼

引用 x_p_zhang 的回复内容:

…… 我不是专家,我只是个普通工程师,水平很一般,但我动过手,了解基本原理,不像有的人没有实际操作经验却长篇大论,好像是个专家一样


1、你这叫偏见,你以为教书匠就不需要动手,就没有实际操作过?

2、没操作过,没有实践经验,能到论坛说你开了个大玩笑?

刘志斌

  • 精华:5帖
  • 求助:0帖
  • 帖子:348帖 | 35827回
  • 年度积分:0
  • 历史总积分:75384
  • 注册:2006年7月30日
发表于:2013-11-11 10:29:31
300楼

引用 x_p_zhang 的回复内容:   

……这个真不知道!老刘,你就趁此机会给大家讲一下这个机制。 


1、用陕西关中的话说,“一个接生婆接生了一辈子,把娃娃的牛牛当脐带给剪咧!”

2、看着你贴出的图:

      Error=Setpoint  - Output

  ∵  Error=0 ,

  ∴Output=Setpoint  

 


热门招聘
相关主题

官方公众号

智造工程师