导读:PUT/GET 指令的编程可以使用PUT/GET 向导以简化编程步骤。该向导最多允许组态16 项独立PUT/GET 操作,并生成代码块来协调这些操作。
CPU1 (192.168.2.1 ) 把VB100~107数据传输到CPU2(192.168.2.2 ) VB0~7
CPU1 (192.168.2.1 ) 把VB100~107数据读取到CPU2(192.168.2.2 ) VB0~7
一、PUT/GET 向导编程步骤PLC
1、STEP7 Micro/WIN SMART 在“工具”菜单的“向导”区域单击“Get/Put”按钮,启动 PUT/GET 向导(见图1)。
图1 启动
2、在弹出的“Get/Put”向导界面中添加操作步骤名称并添加注释(见图2)。
图2
a. 点击“添加”按钮,添加PUT/GET 操作
b. 为每个操作创建名称并添加注释
3、定义PUT/GET操作(见图 3、图 4)。
图3 定义PUT 操作
a. 选择操作类型,PUT 或 GET
b. 通信数据长度
c. 定义远程 CPU 的 IP 地址
d. 本地 CPU 的通信区域和起始地址
e. 远程 CPU 的通信区域和起始地址
图4 定义GET 操作
a. 选择操作类型,PUT 或 GET
b. 通信数据长度
c. 定义远程 CPU 的 IP 地址
d. 本地 CPU 的通信区域和起始地址
e. 远程 CPU 的通信区域和起始地址
4、定义PUT/GET向导存储器地址分配(见图5)。
图5 分配存储器地址
注意:
点击“建议”按钮向导会自动分配存储器地址。需要确保程序中已经占用的地址、PUT/GET向导中使用的通信区域与不能存储器分配的地址重复,否则将导致程序不能正常工作。
5、在图5中点击“生成”按钮将自动生成网络读写指令以及符号表。只需用在主程序中调用向导所生成的网络读写指令即可(见图6)。
图6 主程序中调用向导生成的网络读写指令
二、程序调试PLC
把主动端程序下载到CPU1中(192.168.2.1),被动端CPU2(192.168.2.2)不需要写程序,把空程序下载到CPU2中即可,打开状态图表监控和写入数据(见图7)。
图7 程序监控与写入
三、PUT/GET常见问题PLC
1、S7-200SMART CPU以太网通信端口支持哪些通信协议,是否支持TCP、UDP和ISOonTCP等开放式用户通信或ModbusTCP通信?
S7-200 SMARTCPU以太网通信端口从V2.2固件支持TCP、UDP和ISOon TCP等开放式用户通信及ModbusTCP通信。
2、S7-200SMART CPU标准型和紧凑型产品是否都支持GET/PUT通信?
S7-200 SMART CPU 全系列产品都支持GET/PUT通信。但是固件版本低于V2.0的产品不支持GET/PUT通信,CPU固件可以通过Micro SD卡进行升级。
3、S7-200SMART CPU在同一时刻能否对同一个远程CPU调用多于8个GET/PUT指令?
同一时刻对同一个远程CPU可以调用多于8 个GET/PUT指令。同一时刻对同一个远程CPU 调用多个GET/PUT指令只会占用1个GET/PUT主动连接资源,而不是8个主动连接资源。
4、为什么有些第三方触摸屏不能与STEP7-Micro/WIN SMART 软件同时访问S7-200SMART CPU?
虽然S7-200SMART CPU 以太网端口具有25个连接资源,但是其中只有1个连接资源(PG连接资源)用于与STEP7-Micro/WIN SMART 软件的通信。如果第三方触摸屏与S7-200SMART CPU的连接也使用PG连接资源,就会造成第三方触摸屏不能与STEP7-Micro/WIN SMART 软件同时访问S7-200SMART CPU。
5、GET/PUT指令可以传送的最大用户数据是多少?
GET 指令可从远程站点读取最大222个字节的用户数据,PUT指令可向远程站点写入最大212个字节的用户数据;大数据量的用户数据通信可以调用多个GET/PUT指令来实现。采用GET/PUT向导时每个操作的读写用户数据的最大个数为200 个字节。
6、GET/PUT通信错误有哪些可能原因?
GET/PUT 指令TABLE参数表的第一个字节提供了“错误代码”,用于排查错误原因。GET/PUT指令故障可能原因:
(1)S7-200 SMART CPU 固件版本较低,通信双方 CPU 固件都需要 V2.0 及以上版本。
(2)超出了本地 CPU 主动连接资源限制或远程 CPU 无可用的被动连接资源。
(3)GET/PUT 指令 TABLE 参数定义错误。
(4)通信站点之间的物理连接出错。
7、如何获取S7通信的连接状态以及错误代码?
详细信息可以参考:如何判断S7通信中断并获取错误代码