计算机编译原理在工业中的应用.doc_第1页
计算机编译原理在工业中的应用.doc_第2页
计算机编译原理在工业中的应用.doc_第3页
计算机编译原理在工业中的应用.doc_第4页
计算机编译原理在工业中的应用.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

轮胎成型机计算机监控系统设计 The Design of Tyre Moulding Machine s Computer Control System(天津工业大学 计算机与自动化学院 原晋辉)(Tianjin polytechnic university Computer and Automation School Yuan Jinhui) 摘要: 本文介绍了轮胎成型机计算机控制系统的组成,工作原理以及工艺程序编译软件和监控软件的编制原理及方法. 关键词: wincc VB 编译软件 Abstract: This paper describe the Tyre Moulding Machine s Computer Control System principle and main composition ,at same time The Principle and Method of Technology Compile Software and SCADA Software are present. Keyword: Wincc VisualBasic Compile Software1. 引言 全钢丝载重子午线轮胎一次法成型机是轮胎生产过程中的关键设备,结构复杂,在可靠性以及控制精度方面有很高的要求。其中,计算机控制部分是其大脑和灵魂,在系统的设计中,选用了先进的SIEMENS集成自动化系统,以保证该控制系统的可靠性和足够的控制精度.2. 控制系统配置:本系统从上到下可分为监视层、控制层、现场层三个层次,由SIMATIC PC670工控机和S7400PLC以及SIMODRIVE 611伺服系统组成 . 图1 硬件结构图 2.1监视层配置:监视层采用SIMENS的SIMATIC PANEL PC: PC670,通过它实现对整台成型机的所有报警点和各工段工况的监视.2.2控制层配置:监视层采用S7400PLC,配置如下:(1) 电源: 采用PS407 10A电源模板(2) 中央处理模块: 采用414-4HCPU,内置256K字节的RAM,使用存储卡可扩展到64M.(3) 数字量输入模板:采用SM421:DI3224VDC,输入点数32点,3块.(4) 数字量输出模板:采用SM422:DI3224VDC/0.5A,输出点数32点,2块.(5) 通讯模板:采用PROFIBUS-DP主站接口IM467,1块,来完成PLC和伺服系统的通讯.2.3现场层配置:现场层由SIMODRIVE611U伺服驱动单元,10台1FK伺服电机,和两台步进电机组成. 伺服电机是供料架,传递环,主轴等部分的传动电机,两台步进电机用以驱动主鼓和辅鼓灯标的移动.2.4通讯配置:在本系统中上位工控机和S7400PLC之间的通讯采用MPI(Multi-Point Interface)协议来实现. PLC和伺服系统之间的通讯是由PROFIBUS-DP现场总线来完成的.2.4.1MPI(Multi-Point Interface)协议: MPI网络是一种令牌总线式对等网络,其物理介质是RS485。利用MPI网可以建立PLC到PLC,或PLC到PC之间的通讯,通讯速率最高可达187.5K bps。2.4.2PROFIBUS-DP现场总线:PROFIBUS是一种国际化、开放式、不依赖于设备生产商的现场总线标准。广泛适用于制造业自动化、流程工业自动化和楼宇、交通、电力等其他领域自动化, 它由三个兼容部分组成,即PROFIBUS-DP(Decentralized Periphery)、PROFIBUS-PA(Process Automation)、PROFIBUS-FMS(Fieldbus Message Specification)。而PROFIBUS-DP是一种高速低成本通信,用于设备级控制系统与分散式I/O的通信。使用PROFIBUS-DP可取代24VDC或4-20mA信号传输。3 软件配置3.1 编译软件3.1.1VB6.0的特点 VB语言简单易学,只要稍有语言基础即可很快掌握并进而精通.可视化的用户界面设计功能,把编程人员从繁重的界面设计的任务中解放出来.利用它用户可以轻松的开发出WINDOWS95/98应用程序.它的丰富的字符串处理函数能够容易的完成编译软件所须的语法检查功能,这是我选用VB语言编写编译软件的重要原因.4.1.2 软件编译原理 编译软件所要完成的任务是将源程序翻译成等价的计算机能够识别的目标程序,这项工作是一个复杂的整体过程.从概念上讲,一个编译程序的整个工作过程是分阶段进行的,每一阶段将源程序的一种表示形式转换成另一种表示形式,各阶段进行的操作在逻辑上是紧密结合在一 起的 . 图2 编译的各个阶段图2将编译过程划分为词法分析、语法分析、词义分析、中间代码生成、代码优化和目标代码生成六各阶段,其中,词法分析阶段担负对输入的源程序字符流进行扫描分解,从而识别出一个个单词的作用;语法分析的任务是在词法分析的基础上将单词分解成各类语法短语,如“程序” ,“语句”,“表达式”等;语义分析阶段完成的是审查有无语义错误,为代码的生成收集类型信息的任务;中间代码是程序的一种内部表示形式,设计的形式多样,设计原则为两点:一是易生成;二是易将其翻译成目标代码。经过优化,它会使目标代码更为高效。目标代码生成的任务是把中间代码转换成特定的指令代码或可重新定位的指令代码或汇编指令代码。这是编译的最后阶段,它的工作与硬件系统结构和指令含义有关,涉及硬件系统功能部件的运用、机器指令的选择、各种数据类型变量的存储空间的分配以及寄存器和后援寄存器的调度。3.1.2 软件编译部分的实现 我所编译的源程序是轮胎工艺人员使用特定语言编写的工艺程序,具有结构简单 、基本字(也称关键字)少,的特点,整个工艺程序结构为:手动部分+自动单元1(U1)+自动单元2(U2),其中每个自动单元由若干工步构成。它的程序语句格式如下:行号+空格+指令码+参数(+中文注释)。编译软件的第一步工作就是打开*.txt 格式的工艺程序,把它读到FORM1的TEXT1中。这部分程序如下: Private Sub openfile_Click()On Error GoTo errhandlerCommonDialog1.Filter = 文档文件(*.txt)|*.txt|所有文件(*.txt)|*.txt CommonDialog1.ShowOpen Open CommonDialog1.FileName For Input As #1 Text1.Text = StrConv(InputB$(LOF(1), 1), vbUnicode) Close #1 Exit Sub 随后通过Line Input #filenumber, str语句把整个文本文件分解成每个独立的易处理的语句。对于每条要进行语法检查的工艺语句,使用 Mid$(str, i, 1)及Left$(str, 1)函数扫描输入的每个字符,然后判断每个字符的ASCII码,若AscB(char) = 48) And (AscB(char) = 65) And (AscB(char) = 90) 则该字符为英文字母。按照行号,指令代码,参数的顺序进行词法检查,若这些字符串满足逻辑上紧密相连,有集体含义的要求,即认为在格式上满足要求,通过这样的词法检查过程,识别出了一个个行号,指令代码,参数代码。接下来的语法分析部分是检查这些单词是否满足特定的语法规则。主要是检查指令码是否满足特定的要求,有关参数是否越界,对指令码的检查通过检索一个特定的表格,若在其中,则认为指令码正确,否则就给出错误提示。 对于通过语法检查的代码,则根据上下位机约定好的格式转换为下位机能够识别和执行的十六进制代码。 种类工艺程序字节分配1UTXX占2字节,UT:16#F1 XX:16#00-16#022GBxx占2字节,GB:16#F2 xx:16#00-16#633HE占1字节,HE:16#F34WT占1字节,WAIT:16#F45TExxx占3字节,TE:16#F5 xxx:16#1000-16#13E7 (1表示时基,不变)6TMxxxxx占4字节,TM:16#F6 xx:16#01-16#32 xxx:16#0000-16#FFFF(0表示时基,不变)7VAxxxxxxxx占6字节,VA:16#F7 xx:16#01-16#0A xxxxxx.xx:16#00000000-16#FFFFFFFFFF8VMxxxxxxxxxx占7字节,VM:16#F8 xx:16#01-16#0A xx:16#01-16#0F xxxxxx:16#00000000-16#FFFFFFFF 9QAxxxxxxxx占6字节,QA:16#F9 xx:16#01-16#0A xxxxxx:16#x0000000-16#xFFFFFFFF,高位有符号位,x是0表示正,x是1表示负10QMxxxxxxxxxx占7字节,QM:16#FA xx:16#01-16#0A xx:16#01-16#0Fxxxxxx:16#00000000-16#FFFFFFFFFFF11STxxx占2字节,S:16#FB xxx:16#00-16#FF12RSxxx占2字节,R:16#FC xxx:16#00-16#FF13SP占1字节,SP:16#FD14ED占1字节,ED:16#FE 表1 指令代码及转换规则根据转换规则:每条工艺语句须转换成1到7位长度不等的十六进制代码,格式简单的语句转换方式也简单,比如UT、GB、ST、RS等工艺语句,按约好的规则直接转换成双字节的代码即可,如UT01直接转换成F1;01即可;而结构复杂的工艺语句如QM0101000000,后面的参数分别代表电机号,速度等级和速度设定值,则须把整个参数分解成相应的三部分,分别送到相应的数组中并对其转换,举例如下:如QM直接转换成FA,而参数0101000000则须分解成01,01,000000,分别送到代表电机号,速度等级,速度设定值的三个数组MATER(2),CLASS(2),SPEED(6)中,其中对MATER,CLASS直接转换成所对应的指定地址的占1BYTE字长的代码即可,而SPEED则须把转换成地址相邻的占4个BYTE字长的十六进制代码.上面的例子转换结果如下:FA;01;01;00;00;00;00; 随后,所有的转换结果被放到了一个长度足够长的大的数组RESLUT(35000)中,等待下传到PLC指定的数据区中. : 图3 程序框图 3.1.3 代码下载 代码的下传是通过WINCC作桥梁来实现的,整个过程包括从VB到WINCC变量和WINCC变量到PLC数据块两个过程:从VB到WINCC通过调用MCP对象中的setvalue(str1,data)函数来实现.Str1-WINCC变量Data-数据. 程序如下: Option ExplicitRem set tag value in wincc-project Private Sub Command1_Click() Set mcp = CreateObject(wincc-runtime-project) Dim mcp As ObjectDim data As VariantDim str1 as StringDim I as Integer,Set as IntegerFor I=0 TO 35000Data(I)=RESULT(I)Set=mcp.setvalue(str1,data(i)Next IEnd Sub从WINCC到PLC数据区的数据传送不须编程,只须在WINCC变量管理器中建变量时指定好地址即可.3.2 WINCC监控软件的设计 WINCC监控软件担负着工艺程序下载、各工段工况显示、用户管理等任务.另外,它还要有在线修改工艺程序和诊断机械故障的功能. 监控画面由轮胎成型机的总体主视图、俯视图、主供料架及辅供料架的俯视图组成,通过C脚本编写程序,实现了运行状态动画显示和参数的动态显示, 用户可以对成型机的工况一目了然;它的故障诊断功能是通过编辑报警信息的参数和文本来完成的,用户可在监控画面中实时查看轮胎成型机所有监控点的故障报警信息;在该系统中用户要求在线修改用户的用户名密码等用户信息,在按钮中编写C脚本程序,调用PROGRAMEXCUTE()函数执行可执行程序即可完成.4使用效果: 经过半年的试运行,该系统工作可靠,完全达到了设计要求,而且减少了操作人员的检查故障时间,提高了工作效率.5 结束语 在半年的设计过程中,我体会到没有艰辛的努力和付出,是不可能取得成功的,同样,离开纺普公司同事们的大力支持,也不可能成功,所以在此我想感谢他们对我的支持. 参考文献:(1) 张树兵等编著 VISUAL BASIC 6.0 入门与提高.北京:清华大学出版社,1999年(2) 徐金梧等编著 TUR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论