发 帖  
原厂入驻New
[问答] 如何协调PID采样时间、控制器计算时间、while循环时间?
144 控制器 PID控制 采样时间
分享
  我在使用控制与仿真模块里的PID vi的时候遇到了这个问题,while循环时间位指定,根据所获取的数据得知在1-2ms波动,PID采样时间设置为1s,按照说明,PID的采样时间即为PID控制器计算及输出的间隔时间,但是根据PID的输出口的数据,发现数据刷新远低于1s,更改PID的采样时间到10s甚至100s发现只会影响到积分I部分的效果(我没有使用D),PID输出数据的刷新速度并没有改变,依然远低于1s。所以我想问一下,PID的计算和输出时间间隔是由那个参数决定的?和采样时间、while循环时间是什么样的关系?
  此外,我用simulink编写PI控制器编译成dll以后供labview调用,依旧出现上述现象,即更改采样时间,数据输出刷新速度无变化,仅仅影响到积分I部分。
  使用USB6008进行数据输入和输出,labview版本为2019。
  程序截图如下:
PID.png simulink调用.png




0
2020-9-1 09:17:45   评论 分享淘帖 邀请回答
3个回答
希望了解这个问题的大佬能解答,谢谢啦!
2020-9-1 14:20:26 评论

举报

是不是while循环时间是一个控制周期的时间。PID模块的积分时间是用于数值积分用的(我记得他可选梯形或者辛普森积分),你改变该值当然会影响到积分结果。那么在这里是不是应该令PID模块的积分时间等于你while的循环时间,while循环时间需要大于你的采样时间加上PID计算的时间
2020-9-1 14:31:46 1 评论

举报

1 条评论
  • 2020-9-1 19:11

    似乎控制周期确实由while循环时间决定,至于您的最后一句,我暂时持保留意见,因为在PLC当中,采样时间一般要设置成循环中断时间的整数倍

经过测试,目前我的看法是,PID的计算周期是由while循环决定的,PID中的采样时间dt不设置,dt会和while循环时间大致相等,为了使dt不变,故最好指定dt与while相等,dt也可设置成与while循环不相等,此时dt影响积分部分,而不影响pid采样时间
2020-9-2 08:57:45 评论

举报

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
关闭

站长推荐 上一条 /8 下一条

快速回复 返回顶部 返回列表