pid温度控制程序中OB100中的程序,不知何意? 点击:960 | 回复:13



彩云之滇东北

    
  • 精华:20帖
  • 求助:5帖
  • 帖子:107帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2011-01-21 22:24:24
楼主

我在一本书上看见温度PID控制程序中OB100中有这一段程序:

NETWORK 1

S DB1.DBX0.0 //重启PID

NETWORK 2 

R   DB1.DBX0.0
弄不清除为什么一个程序置位以后又复位,这样在启动过程中能启动PID程序吗?




yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2011-01-21 23:30:30
1楼
因为需要复位COM_RST引脚,因此在初始循环块中给一个COM_RST的复位脉冲。

wangquming

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 24回
  • 年度积分:0
  • 历史总积分:141
  • 注册:2009年3月31日
发表于:2011-01-22 16:22:02
2楼
只是重启动时初始化一下PID模块。同在线调试界面中的自整定。通常编程可以不写这段,我是从来不写的。这个过程我会在自整定过程中解决。

彩云之滇东北

  • 精华:20帖
  • 求助:5帖
  • 帖子:107帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2011-01-22 20:34:44
3楼
主要是按照我的理解是程序首先执行ob100,执行完毕后才会执行其它城区,这样db1.dbx0.0置完位又马上复位为0,似乎不起作用

yuanle

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 10208回
  • 年度积分:2747
  • 历史总积分:48332
  • 注册:2005年4月22日
发表于:2011-01-22 21:00:51
4楼
COM_RST信号只是对PID进行初始化,也就是说,调用FB41等PID功能块前需要复位COM_RST信号,仅此而已。

fx2n _

  • 精华:0帖
  • 求助:40帖
  • 帖子:305帖 | 1715回
  • 年度积分:0
  • 历史总积分:6747
  • 注册:2004年9月09日
发表于:2011-01-22 22:17:51
5楼
楼上的说不通吧?OB100执行时,没调用FB41,OB100执行完了后,DB1.DBX0.0又复位了,这样对FB41有意义吗?我不理解,烦知道的说清楚点?

wangquming

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 24回
  • 年度积分:0
  • 历史总积分:141
  • 注册:2009年3月31日
发表于:2011-01-23 15:11:31
6楼
OB100是暖启动组织块。只在CPU从STOP状态转为RUN状态时工作一次(热启动)。OB35的执行优先级别是高于OB100的。所以这段程序写在OB100里面是有效的。

fx2n _

  • 精华:0帖
  • 求助:40帖
  • 帖子:305帖 | 1715回
  • 年度积分:0
  • 历史总积分:6747
  • 注册:2004年9月09日
发表于:2011-01-25 09:37:11
7楼
回复内容:
对:wangquming 关于OB100是暖启动组织块。只在CPU从STOP状态转为RUN状态时工作一次(热启动)。OB35的执行优先级别是高于OB100的。所以这段程序写在OB100里面是有效的。 内容的回复:


按你说的,这段程序要起作用,必须在OB100执行第一个网络之后,在第二个网络之前,OB35刚好中断,这样DB1.DBX0.0
这个时候才是ON的,FB41才能初始化。但实际上是这样吗?如果FB41没有初始化,只怕也看不出有什么不一样的吧?所以我觉得这个程序不一定起作用的。

彩云之滇东北

  • 精华:20帖
  • 求助:5帖
  • 帖子:107帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2011-01-28 17:31:46
8楼
我也是感觉有点问题,才请大家讨论一下

xiaogang0000

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 191回
  • 年度积分:0
  • 历史总积分:741
  • 注册:2009年12月13日
发表于:2011-02-14 10:54:26
9楼

写在OB35里会不会好一些那

xiaogang0000

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 191回
  • 年度积分:0
  • 历史总积分:741
  • 注册:2009年12月13日
发表于:2011-02-14 10:55:20
10楼
在每次调用之前复位一下  我们是这么做的

彩云之滇东北

  • 精华:20帖
  • 求助:5帖
  • 帖子:107帖 | 2725回
  • 年度积分:0
  • 历史总积分:21121
  • 注册:2005年6月14日
发表于:2011-02-14 11:02:42
11楼

是不是都是使用这样的方法?            

什么都不知道

  • 精华:0帖
  • 求助:0帖
  • 帖子:14帖 | 54回
  • 年度积分:0
  • 历史总积分:273
  • 注册:2003年11月08日
发表于:2011-02-24 09:14:07
12楼
怎么没人接着回答?我原来使用,都不复位

配电柜

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 30回
  • 年度积分:0
  • 历史总积分:156
  • 注册:2005年10月20日
发表于:2011-03-11 22:33:35
13楼
回复内容:
对:fx2n _ 关于回复内容:
对:wangquming 关于OB100是暖启动组织块。只在CPU从STOP状态转为RUN状态时工作一次(热启动)。OB35的执行优先级别是高于OB100的。所以这段程序写在OB100里面是有效的。 内容的回复:


按你说的,这段程序要起作用,必须在OB100执行第一个网络之后,在第二个网络之前,OB35刚好中断,这样DB1.DBX0.0
这个时候才是ON的,FB41才能初始化。但实际上是这样吗?如果FB41没有初始化,只怕也看不出有什么不一样的吧?所以我觉得这个程序不一定起作用的。
内容的回复:

wangquming说到对 重启时执行一次且只执行一次

热门招聘
相关主题

官方公众号

智造工程师