1201 【万泉河】数据中央采集系统的路由器实现方案
越来越多的工厂,大量的单机设备需要集中数据采集,传送到中央控制系统, 然后再送到更高层的mes系统乃至erp或者云平台等。
经常有人咨询在单机为以太网网络比如s7-1200, s7-1500, fx5u等情况下的凯发官网的解决方案。 首先,直接把网络用网线接到同一个交换机上肯定是不可取的。
因为大量单机有可能就是同一供应商提供的完全同样型号的设备,那么会网络参数都相同的, plc, 触摸屏,从站,变频器等全都是同样的ip设置,给硬生生接到一起,必然ip冲突。 而即便有机会把ip分别改掉,改到不同的网段区域,但在网络规模扩大以后,发生网络故障的几率增大了, 非常容易影响生产。
所以,通常需要把网络分层物理隔离。
有几种不同的凯发官网的解决方案。
其一是在cpu机架上增加专用的以太网通讯模块, 比如s7-1200可以增加cp1243-1,那么增加的cp可以与中央控制系统的上位机组网,就实现了与控制网络的隔离。
其二是增加pn/pn coupler,这称为耦合器,其实对双侧的主站它都作为从站,一侧向其写数据,它收到后再提供给另一侧读取。由此也实现了网络隔离。
这两种方案都是各厂家官方主推的方案,然而通常模块的价格高,不同的产品序列需要增加的模块型号不同,组态方法也不同。
所以,除此之外还有增加路由器的方案,即本文要介绍的实现方法。
路由器原本是个高贵产品,只在一些高端三层核心交换机才有路由功能,那些价格更贵,但后来随着家用商用路由器的应用普及,市场规模巨大,这些普通功能的小路由器价格越来越低,导致路由器甚至都成为专用名词,专门指小型路由器了, 原本的正宗的路由反而被挤到边缘位置了。 同时也使得可以使用路由器来作为本文应用的选择方案了。
我们平常所使用的路由器其实是多个功能的集合体,包含了路由,交换,网关,wifi等功能。同时,路由的功能其实反而弱化了。
比如路由器会分wan口和lan口,比如会有一个蓝色的wan口和4个黄色的lan口,分别用于接外网和内网。 而其实原本路由器的概念本身是不区分内网外网的,需要在路由器中配置路由表来规定ip的跳转规则。 所以弱化其实是因为其在内部把一些路由功能给固化了。
除了少部分特殊定制的路由器,大部分的商用产品不再需要用户在使用时配置路由表,也不再有设置利用规则的功能,但我们现在要使用它,就失去了更多的自由。
我们现在要把普通路由器应用到工业网络,工业网络原本不存在wan和lan的区别,所以如何使用路由器就有了2种选择,要么是lan口接入到plc网络,wan口接到上位机网络,要么是倒过来,wan口接plc, lan口接上位机。
本文把两种配置都分别做讲解,其中各自的优缺点也都列出,在不同的应用场合可以根据需要选择。
我现在有一台普通的家用路由器,其内网口ip为:192.168.89.1, 外网口ip为192.168.19.101,因为我上网的主路由器的ip是192.168.19.x网段。
注意我后面做实验时不会再更改路由器的ip设置,而会修改plc和上位机的ip来适应不同的网络配置架构。
我使用一台s7-1200和一台wincc做通讯实验,实验成功之后可以推广到更多的plc网络以及更多的plc品牌和上位机软件。
配置a: plc接wan口,wincc接lan口
ip分配:s7-1200: 192.168.19.11,网关:空
wincc: 192.168.89.12,网关:192.168.89.1
plc中编程做简单数据累加:md10:=md10 1; 用于上位通讯监控
portal编程中不在项目中给plc分配ip地址,而是ip地址在设备中指定便于随时修改。
首先,电脑不经过路由器而是直连到plc,电脑ip:192.168.19.12, 完成程序下载和ip地址设置。
wincc中建立s7-1200通道,设置plc ip为192.168.19.11,直连通讯成功,并保持运行状态。
然后设置电脑ip为自动获取,获得了89网段的地址,电脑和plc均接入到plc,切换完成后等待十几秒后, wincc画面中断十几秒后会恢复通讯正常。
这时测试ping的反馈为:
来自 192.168.19.11 的回复: 字节=32 时间=2ms ttl=254
来自 192.168.19.11 的回复: 字节=32 时间=2ms ttl=254
时间由<1ms变为了2ms,而尤其注意ttl现在是254,而之前是255 。说明经过了一层路由。
再度打开portal网络设置,输入设备ip后在线联机,在线监控也可以成功。
a1:
电脑的手动设置ip和网关,重复上面的过程可以成功。
a2:
电脑设置中把网关部分清除,ping中断, 通讯不成功。
运行增加路由表:
route add 192.168.19.11 mask 255.255.255.255 192.168.89.1
ping可以成功,wincc通讯也恢复成功。
a3:
电脑设置双ip,除了正常上网的ip和网关,dns之外,再增加一个不带网关的ip:192.168.89.12,重复执行route add,通讯成功。
发现到plc的访问路径被强制变更到了经过路由器。这时即便plc直接接在主路由器,与电脑同在19的网段,也不再能ping通。需要删除上述的路由规则或者电脑重启之后方可恢复。
配置b: plc接lan口,wincc接wan口
ip分配:s7-1200: 192.168.89.11,网关:192.168.89.1
wincc: 192.168.19.12,网关:192.168.19.1
进入路由器界面, 找到超级端口转发和dmz主机等设置条目,设置dmz主机地址到plc的地址:
所有主流品牌的路由器都会有dmz主机功能,相关概念也可以搜索网络学习。
wincc直连可以通讯时的状态,修改通道的ip到路由器wan口的ip:192.168.19.101,运行后可以成功。
编程软件中填入这个ip,可以监控程序,但不可以修改ip。
如果ip是跟随项目设置的, 那么下载程序也要出问题。 因为你只能在程序中设置ip为路由器的ip时才可以监控,而程序一旦下载,ip地址也被修改,就麻烦了。 这方面比较乱,需要各位自行摸索。
b1:
plc网址设置中删除网关,通信中断,无法再建立。
这是大部分plc项目中的设置,即通常在没有需求的情况下,不会给plc设置网关,那么如果属于后期改造项目,而程序中并未设置网关,或者不清楚原程序员设置的网关地址, 那就很难通信成功。
所以,对于改造项目,源程序还是必须需要的。
总结:
比较配置a和配置b两种方案,可以发现各有优劣。
配置a中,wincc直接访问的是plc的ip, 那么在中央上位系统需要访问多台单机的时候就需要各自的ip均不相同。 然而a方案可以方便地修改plc的程序,所以比较适合于新建项目,控制系统和中央采集系统都是一家人做设计的情况。
配置b中,可以通过给不同的路由器设置不同的wan口的方式,实现对重复ip的plc的区分,所以既实现了网络分离,也保留了原系统网络配置。唯独需要保证对方程序中有给plc设置网关指定到路由器的lan口。