通过指令实现S7-200 Smart获取IP地址和设置IP地址

S7-200 Smart 固件版本V2.0及以上,STEP7-MicroWin Smart软件V2.0及以上提供指令GIP_ADDR可以实现在线获取PLC的IP地址;指令SIP_ADDR在线设置PLC的IP地址。其中,IP 地址、子网掩码和网关值被写入永久性存储器。指令位置见下图:

图1. GIP和SIP指令

注意:若要使用SIP_ADDR 指令,必须取消选中"IP地址数据固定为下面的值,不能通过其它方式更改"(IP address data is fixed to the values below and cannot be changed by other means) 复选框。该组态复选框位于"系统块"(System Block) "通 信"(Communication) 节点下的"以太网"(Ethernet) 字段中。

图2. 系统块中可以设置PLC固定IP地址

设置电脑的固定IP地址与程序下载

首先设置电脑的IP为固定地址:控制面板--“Network and Internet”--“Network and Share center”--“Local Area Connection”--“Properties”--“Internet Protocol Version 4(TCP/IPv4)”--见下图:

图3. 设置电脑IP地址

编写程序实现IP地址的获取和设置,建议使用变量触点获取IP地址,使用变量上升沿设置IP地址,如下图所示:

图4. GIP和SIP的编程部分

程序编译正确后,点击下载按钮进行下载操作。在弹出的窗口中,查找PLC,如下图所示:

图5. 查找PLC

测试结果

在指令中,IP 地址、子网掩码和网关输出给Dword,在程序监控表里可以单独对Byte寻址,对应IP地址、子网掩码和网关如下图所示:

图6. 获取IP地址程序监控及状态表监控

在进行设置IP地址时,需要完整设置IP地址、子网掩码和网关。先将IP地址和子网通过监控表设置好后,用M0.1上升沿触发,之后再从新使能M0.0,读取IP地址,如图所示:

图7. 设置IP地址程序监控及状态表监控

因设置的IP地址已更改,所以程序监控连接中断,见下图:

+

图8. 因IP地址更改后通信连接中断

如果修改后的IP地址与电脑不在同一子网,需要再次修改电脑的固定IP与新设置的IP地址在同一子网,从新查找PLC后进行连接。
注意:根据需求判断是否需要使用设置IP地址的功能,比如使用触摸屏上修改IP后,可能需要从新设置触摸屏的连接组态才可以通信得上。

例程

例程所需条件:

1、软件版本:STEP 7-Micro/WIN SMART V2.3

2、SMART CPU固件版本:V2.0及以上

3、通讯硬件:TP电缆(以太网电缆)

所实现的功能:

结合上述文档所描述,

M0.0置位时,获取CPU的IP地址,子网掩码以及网关

M0.1上升沿时,设置CPU的IP地址,子网掩码以及网关

GIP_SIP_ADDR

注意:本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。

常见问题

1.对于设置IP地址的使能建议用沿指令触发,获取IP地址的指令使能条件可以是触点或者沿指令。
指令中ADDR,MASK,GATE为Dword,若需要进行设置,建议对其中的Byte进行操作。

2.必须完整设置IP地址、子网掩码和网关,否则,无法正确执行该程序。
下图,仅设置IP地址,而不设置子网掩码。M0.1上升沿后,多次读取IP,仍是以前的IP地址,说明新的IP地址没有设置成功。

图9. 未设置子网掩码无法成功设置IP地址

若是换成触点接通SIP_ADDR,可以看到,当IP地址部分设置错误,例如没有设置子网掩码的话,该指令在执行程序监控时为红色,无法正确执行。

图10.未设置子网掩码无法成功设置IP地址且指令红色

结论:
1、对于设置IP地址的使能沿指令触发,获取IP地址的使能条件可以是触点或者沿指令。
2、 使用SIP_ADDR时,必须完整设置IP地址、子网掩码和网关。
3、 使用SIP_ADDR后,新IP地址即刻生效,SMART CPU无需重新启动或者断电上电。
4、重新设置IP地址后,STEP 7-Micro/WIN SMART 通常需要重新建立连接。