作者 | 主题 |
---|---|
WWCWWC 至圣 经验值:72876 发帖数:8234 精华帖:145 |
楼主 2023-11-10 12:20:03
主题:2则S7-200 SMART数据传送例子 2则S7-200 SMART数据传送例子 西门子S7-200 SMART的PLC,在数据类型不同的情况下做数据之间的传送,确实在没有搞清楚西门子数据结构前,仅仅靠在工具栏中的指令无论是输入和输出均无法进行数据类型的匹配,编译是无法通过的。如果项目中需要这样的传递,数据交换的数据类型不一致之间的传送将如何做呢?困难总是办法多,如下是2则应用例子仅供参考: 1) 字节传送给字: BYTE TO INT(WORD )通过“万能”的累加器。 a) 字节传送到字的低字节:VB0 → VW2 (VB3) b) 字节传送到字的高字节: VB0 → VW2 (VB2) c) 同理,字节传送给其它数据类型的变量地址,也仅仅只是在传送给累加器后的移位而已,如VB0 → VD2中的(VB4),图示: 同样,反过来,还无需这么看起来“复杂”的程序处理,直接传送也是可以的,如,仍然是上述VB0 → VD2(VB4): 搞清楚西门子数据类型的“架构”组成,不同数据类型之间的数据传送的传递还是不复杂的。 2) 在指令中可以调用的交换指令是SWAP,如果需要字交换?仍然可以使用万能的累加器AC0处理,图示: VD0中的VW0与VW2之间进行循环交换,相当于把SWAP指令做了一点扩展。 |