S7-200 之间的以太网通信

S7-200 之间的以太网通信,S7-200 既可以做为 Server(服务器)端, 也可以做为 Client(客户端)。 1、 S7-200 做为 Server 端 S7-200 做为 Server 端时,只响应 Client 端的数据请求,不需要编 程,只要组态 CP243-1 就可以了。 (1)选择“工具”菜单下的“以太网向导...”。
(2)打开“以太网向导”,简单介绍 CP243-1 及以太网的有关信息, 点击“下一步”。
(3)设置 CP243-1 模块的位置,如不能确定,可以点击“读取模块” 由软件自动探测模块的位置,点击“下一步”。
(4)设定 CP243-1 模块的 IP 地址和子网掩码,并指定模块连接的类 型(本例选为自动检测通讯),点击“下一步”。
(5)确定 PLC 为 CP243-1 分布的输出口的起始字节地址(一般使用 缺省值即可)和连接数据数,点击“下一步”。
(6)设置本机为服务器,并设置客户机的地址和 TSAP。 TSAP:由两个字节构成,第一个字节定义了连接数,其中: ●Local TSAP 范围:16#01,16#10~16#FE ●Remote TSAP 范围:16#01,16#03,16#10~16#FE 第二个字节定义了机架号和 CP 槽号。 如果只有一个连接,可以指定对方的地址,否则可以选中接受所有的连接请求。 “保持活动”功能是 CP243-1 以设定的时间间隔来探测通信的状态,此时间的设定在下步设定。
(7)选择是否需要 CRC 保护,如选择了此功能,则 CP243-1 在每次系统重启时,就校验 S7-200 中的组态信息看是否被修改,如被改过,则停止启动,并重新设置 IP 地址。 “保持活动间隔”即是上步中的探测通信状态的时间间隔。
(8)选定 CP243-1 组态信息的存放地址,此地址区在用户程序中不 可再用。
(9)至此,S7-200 服务器端的以太网通信已经组态完毕,如下图, 给出了组态后的信息。点击“完成”保存组态信息。
(10)在程序调用子程序“ETH0_CTRL”。 参数说明:ETH0_CTRL 为初始化和控制子程序,在开始时执行以太网模块检查。应当在每次扫描开始调用该子程序,且每个模块仅限使用一次该子程序。每次 CPU 更改为 RUN(运行)时,该指令命令 CP243-1以太网模块检查 V 组态数据区是否存在新配置。如果配置不同或 CRC保护被禁用,则用新配置重设模块。 当以太网模块准备从其他指令接收命令时,CP_Ready 置 1。Ch_Ready的每一位对应一个指定,显示该通道的连接状态。例如,当通道 0 建立连接后,位 0 置 1。Error(错误)包含模块通信状态。
2、S7-200 做为 Client 端 S7-200 做 Client 端时,组态步骤前 5 步同 S7-200 做 Server 时,注 意在第 4 步中客户端的地址要设主 192.168.147.2。 (1)~(5)步同 Server 端时的步骤。 (6)选择本机为客户机,并设定服务器的地址和 TSAP。由于客户机 需要组态发送或接收服务器的数据,点击“数据传输”按钮。
(7)在弹出的画面中点击“新传输”。
(8)选择客户机是接收还是发送数据到服务器及接收和发送的数据 区,如有多个数据传输(最多 32 个,0~31),可按“新传输”按钮 定义新的数据传输。
(9)选择是否有 CRC 保护及保持活动的间隔时间。
(10)选择 CP243-1 组态信息的存放地址。
(11)CP243-1 Client 端的组态完成,结果如下: 其中:ETH0_CTRL 为初始化和控制子程序,ETCH0_XFR 为数据发送和 接收子程序。
(12)服务器端和客户端组态完毕后,分别把组态信息下载到 PLC 中, 在客户端就可以利用子程序 ETH0_XFR 来向服务器发送数据或从服务 器接收数据了。在客户端,程序中调用以太网子程序如下:
子程序参数说明如下: START:=1 时触发数据交换; Chan_ID:连接号( 0~ 7),也可输入连接名称(如本例中的 Connection00_1); Data:数据传输号(0~31),也可输入数据传输的名称(如本例中的 Peermessage00_1); Error:通信状态(可查看通信的错误信息)。