- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件无缝挂接技术与系统仿真的研究-天士力集团
基础自动化.2000,7(5):39-42
软件无缝挂接技术与系统仿真的研究
王宝光1,廖怡白1,王竟鹏1,刘鹏2
天津大学 精仪学院,天津 300072;2.天士力联合制药集团公司,天津 300070)
摘要:以“复方丹参滴丸自动包装线”的测控系统设计为例,探讨了在工业控制系统中广泛应用的InTouch软件进行功能扩展(无缝挂接技术)的几种方法,探讨了软件在测控系统中的仿真技术应用原理,这些应用技术与软件功能扩展方法的研究,使得工控软件在工业控制领域中的应用得到了进一步的拓展。
关键词:系统仿真;软件无缝挂接技术;InTouch;测控系统
中图分类号:TP 391.9 文献标识码:B
1 引 言
“复方丹参滴丸自动包装线”是天津大学精仪学院与天津天士力联合制药集团公司联合研制的我国第一台中药滴丸自动包装设备。在该自动灌装线的总体设计中,计算机软件采用了美国WonderWare公司出品的InTouch,用它来创建运行在Microsoft Windows操作系统下的良好人机界面(MMI)应用程序。但在程序编制的应用中遇到了几种软件间不能兼容的实际问题与困难,反映了其本身的限制与不足。下面从工控软件InTouch的功能扩展与系统仿真两个方面对其进行阐述与说明,并逐一加以解决。
2 “复方丹参滴丸自动包装组”的总体设计
该自动线在总体设计上采用了一种新型的多线密集型生产线(compact type)方式,包括布丸、数粒、灌装、压盖、“八路合一”、剔除及振动上盖部分等七大工序和功能被集成于l台主机设备上。因此,该自动线满足了传送链最短的精密机械设计原则。因此,系统运行轻松自如,时序分明、紧凑。该系统的有序工作,是在一种新型测控系统的操作之下完成的。
该新型测控系统以PLC为主控单元,计算机工控程序通过与PLC交换数据完成设备故障的自诊断功能及语音报警、图像仿真运行、生产情况记录等功能,并可实时地对生产现场进行闭路监视。以PLC为主控单元的整体测控逻辑图如图1所示。
3 工控软件的功能扩展一软件无缝挂接技术的研究
在工业控制程序中,虽然往往以工业控制软件为主体,但有时也需嵌入一些其他的应用软件。比如在“复方丹参滴丸自动包装线”项目中,闭路电视监控系统用于监视包装线的运行与记录维护过程,并用光盘刻录机存入光盘永久保存。由于监控系统自带配套软件与InTouch并不兼容,而且又因为工业控制程序要求操作人员只能在InTouch界面上进行操作,不能直接控制其他软件,因此怎样在InTouch内对其实现界面掩盖以及操作本地化成了我们研究的关键问题,这时就需要采用软件间的无缝挂接技术。
实现InTouch与其他应用程序的无缝挂接实质上是要达到两个目标:①要操作者在操作InTouch时察觉不到闭路监控程序的执行,即InTouch对闭路监控程序实现界面掩盖;②将操作人员对闭路监控程序的直接操作转变为以InTouch为中介的间接操作,即InTouch的操作本地化。
3.1 界面掩盖技术
在InTouch的内部函数中,StartApp用于启动运行另一Windows应用程序,这一内部函数在工控软件中普遍存在。格式为:StartApp APPNAME;其中APPNAME为要启动的应用程序实际名称。
为了实现界面掩盖,我们应该在InTouch工控程序已经运行的情况下最小化启动执行闭路监控程序(假设其文件名为Record.exe)。为此我们用Visual C++编写了一个可执行文件RunRecord.exe来实现上述功能。其技术要点如下:
①RunRecord.exe源代码中最小化启动Record,exe的部分应在其InitInstance()函数中,而且要将这个函数中所有产生窗口的部分删除,函数的最后应返回FALSE。这样做的目的都是为了在InTouch中执行RunRecord.exe时,可执行文件本身不产生任何窗口,因此从InTouch界面上来看不会有丝毫附加程序启动的痕迹。
②RunRec02d.exe中的关键代码包括:
StarUPINFO StartUplnfo;
StartUplnfo.dwFlags=StartFUSESHOWWINDOW;
StartUplnfo.wShowWindows=SWMINIMIZE;
//设置StarUPINFO结构的标志位以最小化显示窗口。
::CreatProcess(“Record.exe”,NULL,NULL,NULL, FALSE, 0,NULL,NULL, StartUplnfo,&StartUplnfo);
文档评论(0)