求助:关于PID自动调节 点击:5032 | 回复:83



szllc

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-10-30 11:39:00
楼主
各位兄台,偶想编一个程序,自动调节伺服电机控制板PID参数。请问该从那里下手? 这个程序的思路应该是如何?



szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-09 14:42:00
41楼
刘兄,这个驱动器的参数影响还是真大呀。似乎比控制板影响还大。 我感觉,这个驱动器上的PI好像相当于微调,而控制板上的为宏观调控。当把阿驱动器上的积分环节关闭时,确实震动减小。但是,那个零漂变得不易除了。总在-1定着。除非点几下电机初始化按钮。或者是电机跑完一次后零漂处于-2,-3等。 还有,就是发现昨天调出的参数,昨天还很还好使,今天就不太好使了。呵呵 气的我晕。难道真的是“人不可能两次踏入同一条河流”? 不知一般情况下,你们调的时候,积分环节最后关不关?

刘岩利

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 269回
  • 年度积分:30
  • 历史总积分:841
  • 注册:2002年9月03日
发表于:2004-11-09 15:33:00
42楼
如果要求不高,我不调驱动器上的参数,在控制卡上只用前馈和比例。 在要求比较高的时候,关掉驱动器上的积分,控制卡上是前馈、比例、积分,微分很少用。 另外,我一般认为定位重现性应该是分辨率的3-5倍,需要更高的重现性,就要提高分辨率,或者,加长定位时间。 我通常不认为1个脉冲的抖动是问题。 “点几下电机初始化按钮”是什么意思,执行的是什么动作? 零漂处于-1,-2,-3是什么意思?速度还是位置偏差?

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-10 13:48:00
43楼
我想我们的应用应该属于要求比较高的场合。 定位重现性应该是分辨率的3-5倍--------------这句话什么意思? 关闭 驱动器的积分环节,确实号用不少。我现在也是只用kp和kv,因为一但用ki,即使设成1,也是超调不少(4-5),并且要很长时间才能回到10000。(假设跑10000) 在每天开始调机器的时候,是不是刚开始的时候,机器没有磨合好,所以响应不够好。电机跑了一会之后,响应有所改变。 还有,电机响应有时不好,是不是与机械的润滑也有关系?润滑油的稀稠,是否分布均匀等? 点几下电机初始化按钮”------我自己利用vc做的一个控制平台,上边有一个初始化按钮,里边是设置参数的函数。有时点一次按钮,系统消除不了零漂,但是再点一次,或是两次,零票就没了。好像是第一次没点好似的。 零漂处于-1,-2,-3是什么意思?速度还是位置偏差?------是位置偏差。我从0跑到10000,然后再跑回来。有时发现电机当前位置位-3,参数初始化一次之后变成-2,在初始化一次变成-1,。。。。。变成0。感觉好像有什么东西不让电机过来。其实本质上也是零票再起作用。但感觉有些奇怪,为何初始化几次才能消除?

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-10 13:54:00
44楼
刘兄,不知你是否用过电机驱动器机上第2增益调节。不是说可以参数自动变化吗?由pi到p变化。 如果不用速度环上的积分,每次都有稳态误差,大的时候-3个左右。小的时候-1个。能消除吗?

刘岩利

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 269回
  • 年度积分:30
  • 历史总积分:841
  • 注册:2002年9月03日
发表于:2004-11-11 11:42:00
45楼
如果没有积分,就肯定会有稳态误差。如果要绝对消除稳态误差,个人建议使用控制卡上的积分。 第2增益调节,还真没有用过。 三菱的伺服上有两个比例增益,我在客户那里碰到过,当时不知道这两个有什么区别,把电话打到香港的技术支持,也没说出来。 似服电机的定位重现性应该是分辨率的3-5倍,就是说,定位后电机停在指定目标的+/-5个脉冲以内。如果我的客户要求重现性为1,就不能再要求定位时间了。如果要求重现性为0,无抖动,那么,这个客户还是买别人的产品吧,我不卖了。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-11 13:45:00
46楼
我们倒不是绝对不能没有稳态误差,只要在2个之内就可以。那个抖动在到达指定后200ms内,决不能有,即使是+/-1。 刘兄,我给你发了信,你看看先。给个建议。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-13 13:34:00
47楼
倘若滚珠丝杠润滑的不好,是不是永远也调不出较好的状态?我有些怀疑是滚珠丝杠润滑的问题。因为我的滚珠丝杠将近3年没上润滑油了。

刘岩利

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 269回
  • 年度积分:30
  • 历史总积分:841
  • 注册:2002年9月03日
发表于:2004-11-13 13:44:00
48楼
丝杠润滑不好,可以理解为负载大而且不稳定,对最终的效果当然会有影响,但是程度有多大就不好说了。

沈阳老宋

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 778回
  • 年度积分:0
  • 历史总积分:823
  • 注册:2004年9月30日
发表于:2004-11-13 17:37:00
49楼
安川伺服有一个粘性补偿,是针对有摩擦力环境的,不过只有3挡可调,能否彻底补偿,估计是不行的,一般讲,伺服电机毕竟还没智能到瞬间检查,自动调整的程度,所以要求机械状态要正常,不一定很好,但至少要稳定。变化是有规律的,PID才能起作用。否则,电脑不是人脑,计算程序也有考虑不到的地方,是吧。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-15 10:54:00
50楼
有没有一个办法让电机在某一段时间不伺服?或者说是让他忽略2个脉冲以内的稳态误差?锁定在某一位置?我试过关闭电源,但是电机不一定停在那。你在10000处关电源,它可能在9980处完全静止。

ccbq

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 558回
  • 年度积分:0
  • 历史总积分:581
  • 注册:2003年9月26日
发表于:2004-11-15 11:02:00
51楼
你是不是想让电机HOLD,关电源电机就没保持力矩了,找找手册应该有挂机指令。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-15 11:32:00
52楼
正确。就是想让电机HOLD,关电源的办法根本行不通,但是控制板上好像没有挂机指令。你的控制板上有吗? hold的时候电机会抖动吗/

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-15 14:12:00
53楼
没有这个命令怎么办?还能通过其他办法实现吗?

刘岩利

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 269回
  • 年度积分:30
  • 历史总积分:841
  • 注册:2002年9月03日
发表于:2004-11-16 09:19:00
54楼
to ccbq 您认为伺服定位后,1-2个脉冲的抖动是可以完全消除的?我接触伺服的时间不长,只有几年,还没有见过定位后绝对稳定的伺服电机。这种现象,只在有保持力矩的电机上看到过。

ccbq

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 558回
  • 年度积分:0
  • 历史总积分:581
  • 注册:2003年9月26日
发表于:2004-11-16 10:08:00
55楼
只是利用程序把抖动吸收,不是真正的消除,如果电机保持力矩不够或外界扰动太大,抖动仍是不可避免的。所谓消除抖动也只是在负载比较稳定的情况下优化系统。有的时候底层驱动程序要自己做,不只速度环、位置环,还要添一些其它的东西,这些控制算法都有。其实要是不做高性能的随动系统用不着这么做。

刘岩利

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 269回
  • 年度积分:30
  • 历史总积分:841
  • 注册:2002年9月03日
发表于:2004-11-16 11:21:00
56楼
to ccbq: 谢谢您的解释,不过,还是有点疑惑,如果方便的话,也请赐教一二。 对于常规伺服电机而言,是没有保持力矩的,这样的情况下?是否可以实现对于抖动的吸收? 现实中的轻微抖动,好象都是无规的,不可预期。的对于这样的现象,无法建立数学模型进行计算。如果不能在抖动产生前发现并吸收,最终效果也只能是抖动的减轻,一个脉冲的抖动,已经是减轻的极限了。这个问题,在理论上是如何解决? 您提到负载的稳定,可是,我用空载的伺服也无法完全避免1个脉冲的抖动,最多不过是抖动的频率比较低而已。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-16 11:28:00
57楼
如果没有这个指令的话,要想加岂不很麻烦? 没有别的办法?

TellTruth

  • 精华:1帖
  • 求助:0帖
  • 帖子:10帖 | 451回
  • 年度积分:0
  • 历史总积分:1302
  • 注册:2003年10月29日
发表于:2004-11-17 10:52:00
58楼
1-2个脉冲抖动造成的原因,因为控制系统的带宽过宽,导致系统易受外界干扰,如果你把带宽限制在10Hz以下,肯定不会出现以上的现象。

ccbq

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 558回
  • 年度积分:0
  • 历史总积分:581
  • 注册:2003年9月26日
发表于:2004-11-17 11:41:00
59楼
不好意思,我忽略了有些电机只能建立在动态的抖动平衡上,这样确实无法解决,只能寄希望于输出阻尼较大或负载惯量较大,受抖动影响较小,有时抖动对有背隙的系统很难估计影响。我一般喜欢用直流电机做模型,所以有些方面可能理解有误,见谅。对于刘兄的问题我认为伺服系统不能离开负载设计,影响系统性能的因素很多,我们只要最终输出满足要求,不必苛求中间环节,除非电机是最终输出。

szllc

  • 精华:1帖
  • 求助:0帖
  • 帖子:40帖 | 220回
  • 年度积分:0
  • 历史总积分:351
  • 注册:2004年9月15日
发表于:2004-11-17 12:00:00
60楼
to TellTruth: 你好,请问如何设置带宽?

热门招聘
相关主题

官方公众号

智造工程师