回复:Pid问题请教一下高手,急急急急急!!!!!

parker0000

  • 帖子

    102
  • 精华

    1
  • 被关注

    1

论坛等级:游侠

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2005-02-02 15:23:39

0楼

1.在定时中断中进行PID运算。
2.定时中断时间必须大于等于飞轮系统的响应时间。假设飞轮系统在输入全速信号时,从0-7200需要1000ms,死区5%(变化小于5%的信号,系统不响应)则定时中断时间定为100ms,即每秒运算约10次。假设现在是10MS。此时间必须等于PID中的采样时间。
3.技巧:在定时中断中,用堆栈指令将每100ms采集的脉冲数压入堆栈,堆栈长度=10,并且立即将高速计数器清0,以免丢失脉冲!然后再配合FIFO指令对堆栈求和。得出每秒脉冲数。这样做的好处是每100ms就能知道每秒的脉冲数。
4.将满刻度值调整为每秒脉冲数。即7200 X 24 / 60 =2880
5.SV=所要求的每分钟转速 / 7200
6.PV=每秒脉冲数 / 2880
7.P=1~1.25
8.I=0.2分钟(PID采样时间 / I < 0.01)
9.D=0
我有一个实际的例子,是控制油马达的转速,每圈16个脉冲。效果不错。wyan@parker.com
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。