登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:【话题】用什么方法得知最大值指令MAX已经得到了最大值(20110617)

点击:1655 回复:10

用什么方法得知最大值指令MAX已经得到了最大值?然后输出一个标志位。
最后修改:2011/6/20 9:02:47
11-06-16 13:10
本来就有标志位,否则你用错了MAX模块
11-06-16 22:06
用的是CP1H的PLC,本身有MAX指令。有MAX为0时的标志位,与负数时的标志位,没有已经获得最大值时的标志位。你所说的是哪种模块。
11-06-17 08:38

引用 218hty 在 2011/6/17 8:38:32 发言【内容省略】

为何不通过比较指令来获取一个标志位呢?或许你可以自己建立一个FB,然后将MAX指令包含进去,并对MAX的返回值进行处理返回给OUT变量。
附件
以上观点仅代表个人意见……
Good Luck~
11-06-17 09:15
MAX的结果D300的值不是一下成87的,他需要一个一个的比较。每一个值都可能大于0。
11-06-17 12:26
MAX本身有一个等于0的标志位。和一个负数的标志位。但没有最大值的已经获得的标志位。所以需要自己从程序里实现。好像有点难度。
11-06-17 12:29
附件
做了这么一个程序,大家拍砖了。
11-06-17 12:36

引用 218hty 在 2011/6/17 12:26:29 发言【内容省略】

不是很理解您这句话的含义。
附件
附件
如果您认为是一个一个输出中间值,那么上图就很难解释了。
以上仅代表个人见解。
Good Luck~
11-06-17 13:28
D0后的数值不是固定的,是由模拟量202通道中传到DM区的。所以DM区的值是时时更新的。大概是1S更新一次,这样MAX每次比较的组值不一样,所以他的最大值也是在变化的。
11-06-17 14:36

引用 218hty 在 2011/6/17 14:36:45 发言【内容省略】

但是就CP1H的MAX的执行速度,1S钟已经足以了。
附件
以上仅代表个人意见。
Good Luck~
11-06-17 15:24

上一页下一页

工控新闻

更多新闻资讯