西门子s7-1500 与 s7-1500 之间的以太网通信可以通过 tcp 或 iso on tcp 协议来实现,使用的通信指令是在双方 cpu 调用 t-block (tsend_c, trcv_c, tcon, tdiscon, tsen, trcv) 指令来实现。通信方式为双边通信,因此 tsend 和 trcv 必须成对出现。
一、s7-1500 cpu之间tcp通讯组态准备
1、硬件准备:① s7-1500 cpu② pc (带以太网卡)③ tp电缆(以太网电缆)
2、软件准备:博图 v14 (本文以博图v14为例)
二、通信的编程,连接参数及通信参数的配置
1. 打开 博图 v14 软件并新建项目
2. 添加硬件并命名plc然后进入 “project view”,在“project tree” 下双击 “add new device”,在对话框中选择所使用的s7-1500 cpu添加到机架上,命名为 plc_1。同样方法再添加通信伙伴的s7-1500 cpu ,命名为 plc_2。
为了编程方便,使用 cpu 属性中定义的时钟位,定义方法如下:在 “project tree” > “plc_1” > “device configuration” 中,选中 cpu ,然后在下面的属性窗口中,“properties” > “system and clock memory” 下,将系统位定义在mb1,时钟位定义在mb0。时钟位我们主要使用 m0.3,它是以2hz 的速率在0和1之间切换的一个位,可以使用它去自动激活发送任务。
3. 为 profinet 通信口分配以太网地址在 “device view”中点击 cpu 上代表profinet 通信口的绿色小方块,在下方会出现profinet 接口的属性,在 “ethernet addresses” 下分配ip 地址为 192.168.0.1 ,子网掩码为255.255.255.0,如下图所示。
同样方法,在同一个项目里添加另一个新设备s7-1500 cpu 并为其分配 ip 地址为192.168.0.2。
4. 创建 cpu之间的逻辑网络连接在项目树 “project tree”>“devices & networks” >“networks view” 视图下,创建两个设备的连接。用鼠标点中 plc_1 上的profinet通信口的绿色小方框,然后拖拽出一条线,到另外一个plc_2 上的profinet通信口上,松开鼠标,连接就建立起来了,如下图所示。
5. 创建 cpu之间的tcp连接创建tcp连接方式有两种方式:使用程序块、使用组态的连接。 使用程序块:参见plc编程方式使用组态的连接:两种方式(1)、在项目树 “project tree”>“devices & networks” >“networks view” 视图下,创建两个设备的连接。选择连接,下拉列表选择tcp,然后用鼠标点中 plc_1 上的profinet通信口的绿色小方框,然后拖拽出一条线,到另外一个plc_2 上的profinet通信口上,松开鼠标,连接就建立起来了,如下图所示。
(2)、在项目树 “project tree”>“devices & networks” >“networks view” 视图下,创建两个设备的连接。选择连接,下拉列表选择tcp,然后用鼠标点中 plc_1 上右键选择添加新连接,然后在弹出的对话框内选择要连接的plc,点击添加按钮。通过这种方式建立的连接可以在连接选项内看到已经建立的连接,并且可以更改连接相关参数。用此方式编程中需要注意,选择连接类型时要选择使用组态的连接如下图所示。