浅谈IO映射(附西门子几种常用的IO映射方法)
发布时间:2024-11-26
最近看到有些工程师在讨论一个问题,就我们在写程序的过程中,会不会使用IO映射,或者是直接使用分配的物理I点和Q点。
我个人而言,我是一直在使用的,至于我为什么会使用,我认为它的优点是什么?请看下文!
何为IO映射?
即说的是,PLC的主程序中不要直接使用物理的I和O地址,而是在程序的一个批量映射,I信号批量复制到中间寄存器或者全局DB中, 把输出的全局DB的数据或寄存器区域的数据批量拷贝到O地址区。
在网上,大多数人都说IO映射有这么一个优点,那就是可以保证程序中所有的I/O物理地址只使用1次, 如果某个点坏了,可以直接把映射表改一下,既可以更换到另一个备用通道,而主程序逻辑可以丝毫不需要改动。
我个人认为这个观点是仅适用某些情况。
例如:
但是
当我们项目中IO量很多是,大多数都会用PEEK/POKE指令,做了个循环,批量式地实现了IO映射
或者用BLKMOV块移动指令
或者VariantGet/VariantPut指令
1.在我入行刚没多就的时候,领导安排我负责某主机厂4条线PLC程序编写,做过汽车行业的工程师都知道,主机厂线体程序的各种设备,他的命名,网络地址和IO信号等都是有着严格的要求,在项目前期,甲方的相关部门会提供该工厂的所有的设备,他的命名,网络地址和IO信号等相关规范给机械电气工程师等。当时的情况是这样子的,我拿到线体的IO分配表后,就着手开始编写程序,由于缺乏经验,在编写程序的时候,有使用到IO变量的地方,我都是直接有实际的物理变量,当我程序完成到百分之80的时候,甲方突然说,原来规划的地址有问题,需要变更一下,听到这个消息,我当时那个头大啊。后面只能自己加班加点,先通过映射到DB变量,再一个一个变量的替换。如果一开始,我就先将IO变量映射到DB变量,不管他的地址规划如何编号,都可以很快的修改。
2.做过汽车行业的工程师都知道,不管是主机厂的线体,还是零部件厂的工作站,基本都是柔性生产线,可生产多种车型,这种产线的夹具(载具)一般分为两种,一种是通用的(要求比较高,需要满足适用多种车型产品,一般是伺服夹具)一种就是专用夹具,即不同车型产品,对应不对的夹具(需要切换,有手动切换,也有自动切换,比通用夹具浪费节拍)。我这种情况针对于专用夹具。在一些可生产多种车型的工作站中,不同车型对应专用的夹具,一般的电气设计方案都是这样的,不同的夹具上的远程IO模块的IP地址(节点)应该是设置成一样的,所有夹具的物理地址也是一样的。这样只需要在第一次导入的时候设置网络即可,后面新增夹具不需要修改和增加网络。但这样子会有这样的一种情况出现,不同夹具的同一路气,它所带的气缸不一样,导致到位开关信号的数量不一样,这时候,如果直接用IO变量,可读性就会很差。例如有两套夹具的IO信号是这样的
如果我们不做IO映射,这些信号的注释就会很乱,程序可读性会很差。
如果我们做了IO映射,就可以避免这个问题了。
注释是写在DB信号里,程序需要用到的点也是用DB信号,这样子程序可读性会比较好
以上仅个人观点,是小潘在项目中用到情景
IO映射还有另外许多的优点,等待小潘和各位工程师发掘。
展开全文
其他新闻
- 谈谈PLC程序中的报警程序作用和设计 2024-11-26
- 西门子PLC IO/DB信号映射FC块封装和分享 2024-11-26
- 西门子PLC程序设计摘录-编程规则 2024-11-26
- PLC标准化编程的技术架构的思考与分享 2024-11-26
- 伺服基础介绍 2024-11-26
- 博图中的定时器你真的会用吗?关于西门子PLC编程软件TIA中使用IEC定时器的陷阱 2024-11-26
- SIMATIC S7-1500 PLC数据类型之系统数据类型介绍 2024-11-26
- SIMATIC S7-1500 PLC 控制系统的硬件组成之负载电源与系统电源介绍 2024-11-26
- 西门子S7-1200 PLC与KTP700触摸屏创建配方设置实例 2024-11-26
- 西门子S7-1200PLC的HSC高速计数器应用实例 2024-11-26