对于PLC来说,远程操作主要是涉及两个问题:1、连接,2、服务(如 S7 1200 V3.0 /S7 300 PN等)
1、连接问题;
如果想经过广域网(WAN)操作或管理远程的PLC,首先必须知道PLC所在地WAN口的IP地址。
如果PLC所在的局域网对外有VPN Web服务,那么简单的方法就是 Ping 那个网址得到它当前的IP地址。(当然了,如果那个VPN路由器设置了防范Dos攻击等,你也可能得不到)。
否则,最好直接联系察看WAN口的IP地址(一般由Internet服务商ISP动态提供的)。
此外,在PLC所在局域网网关路由器上要做一些设置:
方法:采用DMZ主机方式。在LOGO!所连接的网关路由器上设置它的内网IP地址,并且启用DMZ功能,

那么外部对WAN口的IP访问请求,全部连接到这个局域网指定的IP地址。中间没有任何安全防护。
例如:得知WAN口的IP地址(和网关)是:123.115.159.50,那么添加一个新连接,且输入后做一下检测;状态=是。如下图:

这样就可以远程连接、下载、启/停\检测LOGO了。完成后,停用DMZ功能即可。
因为LOGO只响应LOGO Comfort V7的连接,我觉得还是安全的。(有谁能知道这个动态的WAN口IP地址和这个连接的LOGO主机呢?)
2、服务问题
不少路由器内置了虚拟服务器,这可以通过端口映射,连接到有Web服务的PLC。这里所说的端口并不是物理端口,而是指连接软件服务的端口号。
因为只有服务提供端口,因此不能通过端口映射方式对PLC远程编程、监控。但对于内置Web服务的PLC;例如:S7 1200 V3.0就提供了Web服务。这时,需要在路由器上做一下端口映射就可以远程操作PLC服务的页面。
这里只说一下端口号和协议用法。端口号1024以内已经被占用,1024之外也有不少被默认占用。例如:80端口就是Web服务。选用前最好网上查一下“服务端口”。所选协议是指远程连接时提供的服务种类。一般有两种,TCP和UDP(用户自定义数据协议)。你可以选TCP或者ALL。

如上图:150.0.0.58是S7 1200。写好了HTML-JAVA页面下载。在路由器中配置映射端口到8080。
那么在内网中,用iPad的浏览器输入http:\\150.0.0.58,就打开了这台1200的界面。如果你有另一台1200;IP地址是150.0.0.59;那么在浏览器中输入http:\\150.0.0.59,打开这个PLC的页面。没有冲突。
那么在广域网中,首先如前所述,要获得WAN口的IP地址(如123.115.159.50)。用iPad的浏览器输入http:\\123.115.159.50:8080,就打开了这台1200的界面。如果你有另一台1200;IP地址是150.0.0.59;那么还可以分配另一个端口号 如:8083 ,指向 150.0.0.59。在远程的浏览器中输入http:\\123.115.159.50:8083;打开这个PLC的页面。只要不冲突就可以。
为什么不用Web服务默认端口80呢?因为http:\\150.0.0.1(默认80端口)打开的就是路由器的管理页面。(也就是我拷屏下来的这些页面)