回复:请教一个模拟量输入值进入了下冲范围的问题,请不吝赐教。

秦皇汉武

  • 帖子

    151
  • 精华

    3
  • 被关注

    17

论坛等级:侠客

注册时间:2010-12-21

黄金 黄金 如何晋级?

发布于 2016-09-02 10:54:34

11楼

展开查看
以下是引用emil128在2016-09-02 10:36:49的发言 >9楼

说到底问题出在数制上。

楼主你没说到点子上,你这里说把“把DBD20的值直接MOVE给了PQW”,其实你没有。你多做了一个工作,“如果输入值大于27648,把DBD20的值直接改写为27648”。

我敢打赌,你不做这步,直接PIW到PQW不会出现这种情况。

问题出在这个比较上“如果输入值大于27648”。

楼主你用的什么比较指令?用哪两个值比较的?比较的两个值都是这个比较指令指定的数据类型吗?



以下是引用秦皇汉武在2016-09-02 10:14:31的发言 >8楼:是的,我没有使用F...

引用8楼详细内容:

是的,我没有使用FC105,因为我这是个简单的模拟量的传送,简单的说就是在主站的模拟量输入模块得到一个4-20mA的信号,然后在远端的ET200M站上的模拟量输出模块直接把这个4-20mA信号输出给变频器。

所以,程序中先把PIW的值送入了DBD20,然后把DBD20的值直接MOVE给了PQW。

但是在HMI设定0%时,PIW的输入值好像只有3.9mA左右,没有达到标准的4mA,所以我感觉这是一个模拟量进入下冲范围的问题。

以下是引用月雨在2016-09-02 08:30:12的发言 >7楼:我现在有点不明白了...

引用7楼详细内容:

我现在有点不明白了,你没有用FC105,直接变得双字吗?

以下是引用秦皇汉武在2016-09-01 15:03:54的发言 >:事实上已经有一个...

引用详细内容:

事实上已经有一个比较程序了,如下:

如果输入值大于27648,把DBD20的值直接改写为27648;如果输入值小于0,则把DBD20的值直接改写为0。

但是,这里HMI设定0%时,本来是想得到4mA,但是得到了低于4mA的电流值,PLC得到的输入值是65521,其大于27648,所以,程序直接输出了27648,也就是说,得到了20mA电流值,和预想的正好相反。

数制的确整的我一头糟。

但是您提到的那个比较,事实上我已经做了限制,仅考虑比27648大不多的数值才进行DBD20的修改。

直接PIW到PQW的结果是一样的,参看下图:

LIFE IS AN ADVENTURE !
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54620条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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