冷轧生产执行系统(pes)中间件设计与实现

冷轧生产执行系统(pes)中间件设计与实现

ID:10677316

大小:53.50 KB

页数:3页

时间:2018-07-07

冷轧生产执行系统(pes)中间件设计与实现_第1页
冷轧生产执行系统(pes)中间件设计与实现_第2页
冷轧生产执行系统(pes)中间件设计与实现_第3页
资源描述:

《冷轧生产执行系统(pes)中间件设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、冷轧生产执行系统(PES)中间件设计与实现摘要中国1/vie  阐述使用C#开发技术、SQLserver数据库技术开发冷轧中间件的总体设计方案,详细分析了柳钢生产计划在内部网络的流向。  【关键词】C#SQLserver冷轧中间件  1前言  柳钢冷轧生产执行系统(ProductExecutionSystem,PES)属于柳钢制造执行系统(ManufacturingExecutionSystem,简称MES)的子系统,在柳钢冷轧钢卷生过程中,需要通过MES制定生产计划以报文的形式下发到PES,冷轧厂需要根据公司的生产计划执行生

2、产。因此,需要通过设计中间件进行对公司下发计划存储的数据库跟生产机组二级服务器数据库进行衔接,执行生产计划的下发及实际生产数据上传。  2需求分析  2.1业务需求分析  冷轧中间件的开发主要是将公司中间件下发到冷轧Sql数据库中的数据跟生产机组二级服务器数据库中数据实现对接。有效的实现冷轧Sql数据库数据跟生产机组二级服务器数据的互通。  2.2功能需求分析  冷轧中间件在功能上,首先要实现冷轧Sql数据库跟二级数据服务器数据库进行连接,其次创建时间定时器,对数据库数据进行定时遍历查询,将未下发的生产计划自动按时下发以及二级

3、服务器内未上传的实际生产数据按时上传。实现对上下鞍座实绩、钢卷焊接实绩、钢卷生产实绩、重量更新、酸轧作业命令。  2.3数据流向分析  冷轧卷生产数据流向,首先由公司通过MMS系统制定总生产计划存储到公司的Oracle数据库中,再通过PES系统访问公司的oracle数据库,对制定的总生产计进行详细分配到各个机组生产,制定详细计划。公司中间件是对公司的Oracle数据库中的冷轧生产计划下发到冷轧Sql数据库中。冷轧中间件是将冷轧Sql数据库中的数据分配到各个相应机组二级服务器数据库中。等到机组按照生产计划完成生产后,二级机组服务

4、器数据库会生成实际生产数据,会通过冷轧中间件传回冷轧Sql数据库中,再由公司中间件传回到公司的Oracle数据库中。  3中间件功能结构图  中间件功能主要有上下鞍座实绩、钢卷焊接实绩、钢卷生产实绩、重量更新、酸轧作业命令。功能结构图如图1所示。  4数据库设计  4.1E-R图  E-R图是一种概念模型。概念模型实际上是现实世界到机器世界的一个中间层次。因此概念模型一方面应该具有较强的语义表达能力,能够方便、直接的表达应该用众的各种语义知识,另一方面他还应该简单、清晰并且易于会员理解。图2是各个数据表的实体图。  4.2基本

5、表设计  如表1所示。  5中间件实现  中间件的实现使用了C#程序设计语言程序技术跟SQLserver数据库技术相结合。实现了冷轧中间件的内部远程连接服务器功能、上下鞍座实绩、钢卷焊接实绩、钢卷生产实绩、重量更新、酸轧作业命令功能等。  5.1冷轧中间件界面设计  冷轧中间件界面设计如图3所示。  5.2冷轧中间件测试服务器连接实现  冷轧中间件测试服务器连接实现代码如下所示:  publicstaticboolTestConnection(stringhost,intport,intmillisecondsTimeout)

6、  {  TcpClientclient=neillisecondsTimeout);returnclient.Connected;}  catch(Exceptione){thro();  //构造Ping实例  PingpingSender=neent=true;  //测试数据  stringdata="testdataabcabc";  byte[]buffer=Encoding.ASCII.GetBytes(data);  //设置超时时间  inttimeout=120;  //调用同步send方法发送数据,将返回

7、结果保存至PingReply实例  PingReplyreply=pingSender.Send(ipStr,timeout,buffer,options);  if(reply.Status==IPStatus.Success)  {if(textBox4.Text==""

8、

9、textBox4.Text=="9999")  {textBox4.Text="1";textBox4.ForeColor=Color.Red;}  else{textBox4.Text=(Convert.ToInt32(textBox4.Text)+

10、1).ToString();}  }else{stringdate=DateTime.Nom:ss");  if(textBox5.Text==""

11、

12、textBox5.Text=="9999")  {textBox5.Text="1";  listBox1.Items.Ad

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。