一种FMS过程监控系统的设计与实现
- 格式:pdf
- 大小:157.02 KB
- 文档页数:4
第2l卷第4期 2006年12月 北京机械工业学院学报 Journal of Beijing Institute of Machinery Vo1.2l No.4
Dec.20HD6
文章编号:1008—1658(2006)04—0064—03 一种FMS过程监控系统的设计与实现
李平芳 ,钟建琳 ,张 平2 (1北京机械工业学院机械工程系,北京100085;2装备指挥技术学院科研部,北京101416) 摘 要:针对两套独立系统:Festo物流系统和Cims教学培训系统,提出了使用一台主控 计算机让二者协同工作及对过程进行监控的方案。详细论述了使用Profibus总线通过DP口实现 Wincc与西门子S7—300系列PLC的通讯,以及使用OLE控件通过串口通讯方式实现Wince和A
—B PLC的通讯。实现了使用Wince结合串口通讯方式对实验室不同设备的统一监控和管理。 关键词:PLC;Wincc;控件;串口通讯 中图分类号:TP 29 文献标识码:A
Design and implementation of an FMS process monitoring system LI Ping—fang ,ZHONG Jian—lin ,ZHANG Ping (1.Department of Mechanical Engineering,Beijing Institute of Machinery,Beijing 100085,China;2.Department of Scientific Research,the Academy of Equipment Command&Technology",Beijing 101416,China) Abstract:Aiming at two sets of independent systems,namely the festo logistics system and the Cims
teaching training system,a project is put forward that a master control computer is applied to let the two achieve joint operation and carry out the monitoring of the process.The profibus is used to realize commu— nication between Wincc and Simens S7—300 series PLC by the DP interface.while OLE control is used to realize communication between Wincc and the A—B PLC by the serial port communication.The uni— fled monitoring and management of different laboratory equipment are implemented by using Wincc soft— ware and the serial port communication. Key words:PLC;Wincc;OLE;serial communication
Festo公司的FMS物流系统,为模块化结构,主 要由供料单元、检测单元、传送单元、加工单元、操作 手单元和成本分装单元组成。每个单元可独立工 作,还能根据需要任意改变组合顺序,其中供料单 元、检测单元、加工单元、操作手单元以及成品分装 单元控制系统均由西门子S7—300系列PLC控制, 传送带单元则由Logo控制。这些PLC模块提供 MPI口和DP口,可以使用Profibus总线通过DP口 进行通讯。 实验室原有Amatrol公司的Cims教学培训系 统,该培训系统由传送带、机械手,数控机床、Pc和 工控机模块组成,其中传送带由A—B公司的SLC 一500 PLC进行控制,机械手由工控机控制,系统包 含两台Pc机,其中一台用来进行数控机床和机械 手的编程,另外一台安装有Cimsoft软件和PLC的 编程软件RSlogix,用来负责生产调度、作业计划的 管理以及PLC编程。如何通过计算机监控Fseto设 备上物料的存取、传送、粗加工、出库、半成品传送至 Cims教学系统设备传送带以及由机械手送至机床、 加工完毕后取出、送回仓库的整个过程,并使这两套 不同的系统协同工作,是我们所面临的一个难题: 本文提出的解决方案主要基于Wincc组态软件使用 串口通信方式实现对这两个系统的过程监控。
1 系统设计 根据系统总体要求,将新的教学培训系统在功 能上划分为2个层次:第1个层次是数据采集显示 和工况数据信息管理监控级——上位机监控系统; 第2个层次是由PLC控制系统、检测设备以及驱动 设备组成的控制系统——现场级控制系统。上位机
收稿日期:2006—07—05 作者简介:李平芳(1979一),女,湖南澧县人,北京机械工业学院机械工程系硕士研究生,主要从事FMS物流系统中的过程监控及过程优化方 面的研究。
维普资讯 http://www.cqvip.com 第4期 李平芳等:一种FMS过程监控系统的设计与实现 65 监控系统主要和现场级设备进行数据通信,负责完 成在线动态显示、现场级设备的运行状态、参数设 置、事件记录存储功能、报警功能,以及控制现场设 备完成设备运行等功能。 新的教学培训系统以一台中央计算机为中心, 实现数据的采集、过程监控及管理。该中央计算机 使用Wincc组态软件,采用总线方式控制多台下位 机。下位机是以多台PLC组管理器为核心,配以相 应的传感器、控制和驱动设备组成的现场设备控制 2 系统实现 系统。整个系统使用Wincc实现上位监控系统和现 场设备控制系统问的通信,其中现场设备控制系统 分别为西门子PLC控制系统和A—B PLC控制系 统。西门子PLC控制系统中各个PLC站点使用 Profibus—DP总线通过DP口组成一个网络,并使用 CP561 1卡和上位机通信;A—B PLC控制系统直接 使用接口面板上的RS一232和上位机的COM1进 行通讯,其系统设计系统结构框图如图1所示:
左边虚线框内为A毛现场级设备 右边虚线蘸内为西门子现场j爱设备
图1系统组成框图
要实现用计算机进行数据采集和过程监控,重 点在于实现PLC与上位计算机的通信。如果采用 高级编程语言实现,则需要熟悉PLC及PLC网络采 用的通信协议,而工业控制组态软件一般都提供不 同设备的通信驱动程序,用户可以在不了解PLC网 络通信协议的情况下,就能够实现PLC与上位计算 机的通信。Wincc是一个集成的人机界面系统和监 控管理系统的组态软件,具备强大的二次开发能力, 提供了用于过程数据监控、信号采集、过程数据获取 和登录的系统模块,并提供报表和集成的用户自由 编程功能¨一。因此,系统选用Wincc工控组态软件 实现与西门子公司PLC S7—300以及与A—B公司 SLC5/03之问的通信。 2.1 Wincc与S7—300之间的通讯 Wincc和西门子公司S7—300的通讯,首先需 要对硬件进行组态 J,可以使用Profibus总线通过 DP口将各个PLC连成一网络。硬件组态完毕后, 启动Step7 Manger设置各个PLC的槽号,并下载程 序至PLC,然后启动Wincc,添加新的驱动程序以及 s7协议集,并建立和各个PLC I/O对应的变量表。 在通讯基本建立之后,要对各个PLC进行过程监 控,只需在Wincc图形编辑器中建立和变量的一一 对应关系即可。 2.2 Wincc与SLC5/0,3之间的通讯 我院的小型Cims教学系统的PLC只装有1个 SLC5/03处理器模块、2个输入模块、1个输出模块 以及1个RS一485网络通信模块。RS一485接口主 要用于与网络上其他设备的通信。由于教学系统规 模较小,而且为了不破坏原有系统的功能,减少投资 成本,所以本文仍沿用Cimsoft软件的通信方式,即 选用通信模块的RS一232串口方式实现PLC与上 位机通信。要实现它们之间的通信,首先需要将 MsComm32.OCX控件在操作系统中注册 一(西门子 在其Wincc光盘中提供了注册工具程序)。Wincc 中带有一个全局脚本编辑器,它为开发人员提供一 个功能强大的工具,用于生成用户的C脚本或VB— Script。生成的脚本可应用于任何地方。本文使用 全局脚本编辑器通过对MsComm32.OCX控件进行控 制,编制一个从串口采集数据的通讯程序。上位机 工作时,运行这个程序即可实现上位监控系统与串 口采集数据的通讯任务。 然后在运行Wincc控制中心建立的工程中,增
维普资讯 http://www.cqvip.com 北京机械工业学院学报 第21卷 加3个内部变量:①用来表示串口输入的8位文本 变量Coml—In;②用来表示串口输出的8位文本变 量Coml—Out;③用来表示串口的打开或者关闭的 Bool变量Coml—Open。 在图形编辑器中加入MicroSoft Communication Control 6.0串口通讯OLE控件 J,该控件可以使用
Dim Control Set Control=Screenltems(“Controll”) Contro1.Commport=1 Contro1.Settings=”9600,n,8,1’’ Contro1.InBufferCount=0 Contro1.InBufferSize=50 Contro1.PoflOpen=True
串口和下位机进行通讯来读取PLC数据。使用RS 一232可以实现从PLC读取数据。可以使用如下方 式将串口初始化并启动串口,首先插入了一个 MsComm32.OCX控件,并将其命名为Controll,然后 在其控件下方添加初始化和读取数据按钮,初始化 按钮的VBScript代码如下:
‘选择通信串口1 ‘设置传输波特率,校验位等 J ‘返回接收数据缓冲区需要处理数据长度 ‘定义缓冲区的大小 ‘打开通信端口
整个代码的关键是如何读取和发送需要的字符 串。西门子Wincc提供了在图形中获取属性的函 数,获取属性的函数如下: char GetPropChar(LPCTSTR1 pszPictureName, LPCTSTR1 pszObjectName, LPCTSTR1 pszPropertyName) , 参数:lpszPropertyName=OLE自动化属性名称 返回值:字符性值上指向字符的指针 设置函数属性的函数如下: BOOL SetTagChar(Tag—Name,Value of the tag in data type”LPSTR”) 参数:Tag—Name=变量名 返回值:类型BOOL的属性值。 因此根据以上分析,读取数据按钮编写代码如 下: .