作者 程新平 罗克韦尔自动化主任工程师
啤酒发酵很“慢”,但啤酒行业的互联企业进程却在以极“快”的速度推进。
某啤酒集团是全球领先的啤酒酿造商,也是全球五大消费品公司之一。面对中国这个全球最大、发展最快的啤酒市场,集团决定规划投资10.6亿元人民币在福建漳州建造新的啤酒生产基地。生产基地占地约330亩,一期工程投产后预计年产量可达22.5万吨,三期建成产能可达80万吨。
秉承着“以全球一流标准打造漳州新厂”的目标,该集团对新工厂的自动化和信息化水平提出了极高的要求,希望新工厂采用更为先进的控制通信方式,即从过去多种不同的现场总线改为“E网到底”的架构,从糖化酿造到包装动力车间,从设备控制、设备监控到车间级监控、维护管理均采用工业以太网部署,同时要与企业级IT网络实现互联。
将工业以太网布局到全厂并非易事!
生产基地一期工程分为糖化过滤车间、包装一线、包装二线和公用工程等区域,工厂的整个网络由400多个网络节点组成。各个区域的网络设备种类极多:既有底层的传感器、阀组和变频器等仪器仪表设备;又有PAC和PLC等控制层设备,以实现离散控制、过程控制和批次处理等控制;还有监控层设备,如:过程控制服务器、实时数据库、报警事件历史服务器、数据采集、生产报告和能源管理系统等,且各层设备来自多家自动化厂商。
此外,在工业运行环境中,不同区域的温度、湿度变化很大,网络要连通不同区域的设备,各区域内又有变频器等大电流的PWM调制设备,电磁环境较复杂。相比于成熟的现场总线技术,在复杂的电磁环境下保证以太网的可靠性和高可用性是很大的挑战。
该项目如能实施成功,对于啤酒行业的同类项目将极具参照价值。
四步打造全厂级工业以太网通信方案
根据工厂的实际情况,罗克韦尔自动化为新工厂量身定制了全厂以太网实施方案,包括如下四个部分:
1.用无类子网(VLSM)实现节点地址的分配。
在工业环境中,由于网络架构和节点的相对固定,以及高度可用性等苛刻要求,都采用固定IP地址,而不是动态地址分配(DHCP)。在制造车间,一般一个生产单元由一个厂商的设备来完成。在分配IP地址时要考虑有多少厂商、每个厂商有多少个网络节点。由于各厂商设备的复杂程度和规模不一,不同厂商的节点数有很大的差异,如果为每个厂商分配单独的子网,节点地址就会造成很大的浪费,并可能导致全厂地址分配超出范围。可考虑将临近区域的厂商节点数合并到一个子网,同时也便于管理。考虑可用节点数时,要根据编程维护人员电脑的数量为其预留出一部分,还要扣除子网地址、广播地址和预留网关地址等。
2.按生产区域划分VLAN虚拟局域网,实现流量隔离。
各生产单元都是独立完成一定的生产任务,构成单元内部网络的设备包括:控制器、网络扫描器、适配器、网络传感器/执行单元、操作触摸屏、监控计算机和维护用计算机等,它们通过交换机接入网络。用VLAN虚拟局域网来实现网络的隔离,可以将网络进行逻辑划分而不仅是按物理位置划分,一个VLAN就是一个广播域,实现流量隔离,减少冲突,同时由于与子网的隔离,更加安全。基于端口VLAN的网络逻辑拓扑图如图1所示。
3.VLAN间路由实现不同生产区域的通信。
在上述用VLAN划分了不同的子网后,不同的生产单元之间必要的生产数据通信由VLAN间路由来实现,在二层交换机和三层交换机进行相应的配置。
4.网路冗余实现网络的高可用性要求。
在工业运行环境中,不同区域的温度、湿度变化很大,网络要连通不同区域的设备,各区域内又有变频器等大电流的PWM调制设备,电磁环境较复杂,如电压波动、电磁传导、辐射和对地环流等干扰,加上正常的生产和维护活动也会影响到网路介质。所以网络一旦因各种原因中断后能快速实现恢复非常重要,根据PLC控制器对I/O扫描时间的设定,要求网络的重新收敛时间在100ms以内,否则就会因超时而停机。图2展示了该网络高可用性的特点。通过综合实施EtherChannel,RSTP和HSRP,保证了任何一条光纤链路以及任何一台汇聚交换机失效时,网络都能快速恢复,通信不会中断。
E网到底酿造惊喜
2012年5月,生产基地一期工程正式竣工投产。酒厂以极高的效率完成了建设,从开工到投产仅用一年时间。投产后,四条生产线均表现出色:日产能12批次的全自动糖化生产线,采用先进的德国Krones工艺设备,配合美国罗克韦尔自动化控制系统,整条生产线自动化程度、生产效率以及质量控制均达到全球顶级水平;过滤生产线确保全程无菌生产;两条全自动包装流水生产线是更是目前该集团全球同步的最高速灌装线。
经过三年多的实际运行,该集团对罗克韦尔自动化提供的全厂工业以太网控制解决方案非常满意。新酒厂的建成,更好地满足了东南地区消费者的需求,为集团战略性业务增长做出了卓越贡献。作为合作伙伴,罗克韦尔自动化也助力客户实现美好愿景——做最佳啤酒公司,酿造更美好世界!
!----[endif]---->!----[if>!--[endif]---->!----[if>!----[endif]---->!----[if>!--[endif]---->!----[if>!----[endif]---->!----[if>!--[endif]---->!----[if>