在网上查了很多关于这个问题的答案,都是概念性的,翻来覆去老是那几句话,都说不到点子上,这里我 问下高手:IW是过程印象区,在CPU内,PIW是直接的外部输入,在AI模块内,过程印象区是不是一个独立的存储区,就像M区、V区?IW与PIW是什么关系呢?比如IW256与PIW256都指向同一个数据吗?还是说PIW256把采集来的外部信号放到IW256内,供CPU运算处理?主-从站通讯的时候,主站读取的都是Q区,写入的都是I区,比如主站读取QW16时,PIW16会怎么样?
问题补充:
PIW为啥从256开始,0~255是留给数字量的吗?这个是不是跟CPU有关系,有的CPU就不是从256开始的呢?假如通讯主站DCS,从站是CPU315-2DP,我的AO模块从PQW480开始,我把数据库的一个值MOVE给QW480,然后由DCS读取QW480,会不会冲突呢?
最佳答案
1、IW与PIW的关系:
对于模拟量输入,用PIW和IW都可以,CPU输入/输出映像区有一定范围,对于没有相应的映像缓冲区的输入地址,一定采用PIW指令,而一般外设输入地址,都是没有映像缓冲区的。对于有映像缓冲区的输入地址,用PIW和IW都可以,但用PIW,表示直接取地址内的数据而非映像缓冲区的数据,相当于立即读取。对于输出亦是如此。
2、IW256与PIW256都指向同一个数据?
指向同一地址,PIW是实时输入,在程序的一个循环周期中是可能变化的,IW不会变化,IW和PIW输入的都是16bit数。
3、通讯时输入和输出地址区之间没有关系的,只是表示对于从站的通讯地址。
CPU输入/输出映像区的查看见附图。
补充:地址是可以修改的。默认地址只是系统提供的,根据自己的需要来修改就可以了。
你这样使用时不对的,模拟量的地址和通讯的地址都是独立且唯一的。
图片说明:
提问者对于答案的评价:
恩,谢了
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc231508.html