Camshaft zus也可用记事本编辑,它包含所有的状态矩阵,处理所有的状态切换,从而实现软件中的窗体切换。根据OEM软件包的规定,状态矩阵一般是一个17×8的矩阵。每行由状态/动作、人口等级、水平键文本、垂直键文本、子窗体名称、返回值、标识符、注释组成。由于每个矩阵意义相似,并且矩阵的3到17行意义跟第二行近似。在此仅列出置录窗体logo所在状态的状态矩阵的前两行加以说明。
第一行的[0]指状态号,036分别表示水平软键和垂直软锤文本的起始地址。与软件的语言动态链接库对应,“logo”为此状态下要显示的子窗体名称,接下来的“”是用来显示多个窗体的,此处为空表示此状态下仅显示logo,“埃啊北表示返回值,最后一个0表示标识符。这里人口等级和注释省略。
第二行中的0表示第一个水平软键,标识符下面的1表示按下此键要到达的状态。标识符有两种含义。用作状态描述时指是否要保存当前状态下的设置(如软键文本),用作行动描述时表示要到达的状态。这里表示在状态0下,当按下第一个水平软键时。将跳转到状态1下的界面。
整个矩阵的第一列为0到16.0到7表示水平方向的8个软键,8到15表示垂直方向的8个软键。16表示返回键。这一列不需修改。
在众多于窗体列表文件和状态矩阵文件中。需要一个向导文件使开发的应用程序能找到对应的子窗体列表文件和状态矩阵文件。这就是camshaft ini的作用,同样在一、oem下建立camshaft ini,内容分为CONTROL和DEBUG两部分,作如下设置即可:
[CONTROL]
MDILIst=camshaft mdi
ControlFile=eamshaft.zus
[DEBUG]部分不用设置,系统默认即可。
而对于嵌入的第二部分,为了保证嵌^软件界面语言的独立性,同时也应该便于修改和转换,研究采用VC++建立语言动态链接库的方法。在VC十+中将每个状态下各个软键所对应的文本编辑成一个RC文件,再根据RC文件,即可建立语言动态链接库。为了使regie ini能够识别嵌^的应用程序,需要在VB程序的PRIVATE模块中定义一个全局变量保存应用程序名camshaft,并将VB程序的执行文件camshaft exe也复制到..../oem下,这样。整个凸轮轴磨削软件的开发便完成了。
4 凸轮轴磨削软件的实现
通过凸轮轴磨削软件的设计和顺序控制模式应用程序的转化,实现了凸轮轴磨削软件的嵌入。具备轮轴的功能,软件运行情况如图5所示。
5 结束语
本文采用VB编程语言和Micwsoft Access数据库技术编写了凸轮轴磨削软件.运用VC++建立了软件的语言动态链接库,并通过OEM软件开发包将其嵌人到西门子840D数控系统,达到了对数控系统进行二次开发的目的.实现了凸轮轴的磨削,满足了用户的需要,可应用到大型数控切点跟踪曲轴磨床的研究中.具有非常积极的意义。