首页 上一页 1 2 下一页 尾页

MCGS新功能“脚本驱动程序”功能介绍 点击:6746 | 回复:34



linkman

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:32帖 | 210回
  • 年度积分:0
  • 历史总积分:833
  • 注册:2002年2月27日
发表于:2004-07-26 16:42:00
楼主
张波(化名)是福建省厦门市一家很有名的工控仪表生产厂家的技术人员,该厂家是昆仑通态MCGS组态软件的老客户,每年都使用200套以上的MCGS组态软件,张波的主要工作是为该厂家的各种仪表编写MCGS组态软件的设备驱动程序。   昆仑通态在2002年推出了nTouch系列嵌入式一体化工控机和MCGS嵌入式组态软件。厦门这一厂家在对昆仑通态这两款产品进行试用和论证后,决定采用nTouch和MCGS应用到其工程项目中。于是派张波到北京出差,学习如何使用Embeded VC开发MCGS嵌入式组态软件的设备驱动程序。   张波是昆仑通态的老朋友,大家都比较熟悉。在昆仑通态学习的空闲时间里四处走动,他发现昆仑通态测试部门的员工正在认真地测试一个软件,询问之后得知,这是昆仑通态准备在近期推出的MCGS组态软件新功能的一部分,名叫MCGS脚本驱动开发程序,觉得非常好奇,于是找到该项目的负责人侯尚秋,与侯尚秋有了如下一段对话。 张波(以下简称张):什么是脚本驱动? 侯尚秋(以下简称侯):   脚本驱动是我们推出的一种使用MCGS脚本编写设备驱动程序的技术。   使用脚本驱动,您不需要使用复杂的VC、DELPHI、VB等开发语言,不需要理解动态连接库、COM接口等复杂的技术。您只需要使用我们提供的开发工具,做一些简单的设置,编写一些简单的脚本,就可以完成一个设备驱动程序。 张:为什么需要脚本驱动? 侯:在组态软件的应用中,需要与各种智能设备通讯。一般组态软件都是通过VC、DELPHI或者VB等高级语言编写动态库程序,通过组态软件提供的接口,实现采集设备数据并和组态软件通讯。   这种方式目前在组态软件中应用广泛。但存在其不足之处。尤其是对于一些简单的设备,或者用户自己开发的设备。   这种设备的通讯协议本身非常简单,但客户不得不委托组态软件的开发商开发设备驱动程序,而组态软件厂商的开发人员往往没有实际的设备,只能根据用户提供的协议完成代码编程。实际用户在现场使用,如果出现问题,又需要返回厂商修改,有时不得不反复数次才能解决问题。给用户造成了人力、物力、时间上的浪费。   如果用户希望自己开发设备驱动程序,则必须使用组态软件厂商提供的开发框架和接口进行开发。理解框架和接口本身就是一件费时费力的事情,同时还需要了解具体的串口、网络、端口等方面的知识。   脚本驱动屏蔽了大量的技术细节。用户需要关心的事情只有一件,就是分析设备的通讯协议,解析从设备读取的数据。这样,用户可以自己完成设备驱动的编写、调试和现场应用,就可以在最短的时间内,开发出满足需要的设备驱动程序。 张:脚本驱动难不难呀? 侯:不难,简单是脚本驱动程序最大的特点。   脚本驱动程序是专为简化驱动开发过程设计的,只要会使用MCGS软件,在4、5个小时的时间内,就可以全面掌握脚本驱动程序开发过程。熟练之后,甚至只需要30分钟就可以完成一个象泓格7017模块的驱动。 张:哪些设备可以用脚本编写驱动? 侯:理论上,所有串口设备、MODEM设备、以太网通讯设备和板卡设备都可以使用脚本驱动程序开发驱动。最适合使用脚本驱动的有:单片机,传感器,智能模块,智能仪表,常见PCI板卡等。   我们对我们所编写的全部设备驱动程序的代码作了统计分析,分析后发现,70%以上的设备驱动程序,其代码量在200行以内。这些设备的特点是协议比较简单,通道较少,对协议的解析和命令合成过程不是很复杂。脚本驱动针对这些设备,提供了必要的数据收发,协议解析,通道赋值等方面的功能。开发这些类型的驱动程序,脚本驱动使用方便、调试简单、工作量小。 张:通讯协议复杂的设备怎么办? 侯:对于通讯协议复杂的设备,如PLC和一些国外的仪表等,理论上也可以使用脚本驱动开发,但是并不是最合适的。这类设备代码量大,调试复杂,一般应由组态厂商的设备驱动人员为用户完成。   脚本驱动程序推出的目标,并不是代替目前的设备驱动开发方式,而是提供给用户一种新的选择。 张:对于MCGS的用户,是不是都要学习使用脚本驱动? 侯:对于MCGS的用户,包括组态用户和最终用户,都不会发觉MCGS在设备处理方面有任何变化,脚本驱动编写的设备驱动程序,与一般的设备驱动程序的使用方式是没有任何区别的。   脚本驱动程序的使用对象,一是我公司内部的驱动开发人员,二是我公司的技术支持人员和销售人员,三是需要自己编写驱动的客户。我们在公司内部的要求是:所有技术支持人员和销售人员都要掌握脚本驱动编写的方法,其目标是加快客户服务的速度。 张:不知其速度和性能如何? 侯:这是一个每个使用脚本驱动程序的人员都会问的一个问题,特别是在嵌入式系统的应用中,速度更是一个非常关键的问题。   我们在内部做了实验,MCGS的脚本语言比VC代码平均慢10倍。但对通讯程序而言,速度的瓶颈是在对串口、以太网等的读写上。我们已将对串口读写、以太网等的读写操作进行了精心的封装,这一部分代码全部是使用C语言编写的,脚本驱动程序只需要调用该部分的函数接口,即可完成一次完整的通讯过程。经过大量的极限测试,我们得出结论,其速度和性能完全能满足现场设备的需要。 张:你刚才讲到精心的封装,能不能具体介绍一下这方面的内容? 侯:这方面的内容,涉及到比较多的计算机知识,我只大概地描述一下,我只针对串口通讯来进行说明。   对于串口通讯,最底层的操作是通过INP和OUP对端口3F8或2F8进行操作,目前编程人员一般不直接采用这种方式了。VC编程人员是通过ReadFile和WriteFile两个API接口函数进行串口操作的;DELPHI一般使用SPCOMM等构件进行串口操作;VB则一般使用MSCOMM控件进行串口操作。 VB和DELPHI对串口操作即进行了封装,将大量的串口操作细节封装在控件或构件的内部,用户只需要调用该控件的属性和方法,即可完成通讯参数的设置和通讯了。   脚本驱动中,对串口操作的封装更加强大,我们分析了历年来我们为客户编写的大量设备驱动程序,归纳出几种典型的串口通讯模式,并将这些串口通讯模式进行封装。现在,用户只要调用一个接口函数,就可以完成数据发送、等待、接收等全过程。 张:我听不太懂,我对VB比较熟悉,我能很快熟悉脚本驱动吗? 侯:如果您打开MCGS提供的脚本驱动开发工具,你一定会发现:这个工具多么象VB的编译器呀,包括界面风格、语法等,还有与VB类似的单步跟踪和调试手段呢。 张:脚本驱动只能运行在MCGS嵌入版本吗? 侯:不,脚本驱动可以运行在MCGS的三个版本中,即在嵌入版本、通用版本和网络版本都可以应用。   而且,脚本驱动还有一个特点,即:一次编写,无需编译。您在MCGS嵌入版本中编写的脚本驱动,可以直接在通用版本或网络版本上使用。 张:脚本驱动的稳定性如何? 侯:主程序可以控制脚本驱动的所有异常访问并加以判断处理。使用脚本驱动,绝不会出现象C语言编写的驱动程序那样,动不动就出现非法指针访问的情况,也不会出现VB那样对内存的非法操作情况。 张:能不能给我演示一下? 侯:好的。 (1小时后,张波已编写并调试了他厂家生产的某一款仪表的脚本驱动。) 张:这对我们这些系统制造商或其它系统集成商来说,真是一件天大的好事,它什么时间发布? 侯:目前脚本驱动正在紧张的测试中,预计嵌入版本的脚本驱动程序在一个月之后正式发布,通用版本和网络版本的脚本驱动程序在三个月之后正式发布。 张:看来我不需要学习EMBEDED VC和VB了,能不能给我拿一套试用版本,我先试试? 侯:可以呀。能为您和那些支持我们昆仑通态事业发展的朋友效劳,是我们的荣幸。   我的EMAIL:mcgslcb@263.net。如果您在试用过程中对我们的产品有任何意见或者建议,也请与我们联系。



长征三号

  • 精华:0帖
  • 求助:1帖
  • 帖子:54帖 | 910回
  • 年度积分:0
  • 历史总积分:1121
  • 注册:2008年6月16日
发表于:2009-06-08 23:10:58
21楼
学习了顶吧                                      

cameo

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2009年6月17日
发表于:2009-06-23 15:33:47
22楼
有没有MCGS脚本递减程序

叶缘

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 241回
  • 年度积分:0
  • 历史总积分:159
  • 注册:2009年6月11日
发表于:2009-06-24 11:02:53
23楼

你说的脚本递减程序是什么?是不是指的实现递减功能的一个脚本程序? 用一个循环语句就能实现!

haiyi911

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 1回
  • 年度积分:0
  • 历史总积分:99
  • 注册:2011年2月14日
发表于:2011-02-14 13:12:26
24楼
我是一名大学生 刚接触这个软件 现在要完成一个课程设计 请问有没有机械手的MGCS脚本程序 我想参考一下 如果有的话 可不可以给我一份参考一下 我的邮箱是:haiyi911@126.com 先谢了!

wangweimin688

  • 精华:0帖
  • 求助:1帖
  • 帖子:11帖 | 73回
  • 年度积分:0
  • 历史总积分:751
  • 注册:2008年11月27日
发表于:2011-03-13 08:35:37
25楼
能不能给我发一份,我也想学学。邮箱是wangweimin688@126.com

懂一点点

  • 精华:1帖
  • 求助:2帖
  • 帖子:9帖 | 2674回
  • 年度积分:0
  • 历史总积分:1169
  • 注册:2008年5月13日
发表于:2011-10-29 21:28:28
26楼

正在学习中,希望得到昆仑通态的大力帮助

jerryqww

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 2回
  • 年度积分:95
  • 历史总积分:106
  • 注册:2011年3月29日
发表于:2011-11-28 09:51:12
27楼

谁有呢?我也找了好久,今年5月找到现在,不知道有没有,请发我一份吧,不胜感谢 jerry-qww@163.com 或者qq:526152718

fengenquan

  • 精华:0帖
  • 求助:9帖
  • 帖子:26帖 | 112回
  • 年度积分:0
  • 历史总积分:191
  • 注册:2009年3月22日
发表于:2013-06-04 22:24:07
28楼

519135289@QQ.com 还没有收到呢,


wolflougen

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:1
  • 注册:2015年6月04日
发表于:2015-06-05 06:42:39
29楼

你好,有MCGS通用版的脚本驱动软件吗?可以给我一份吗?邮箱:849227356@qq.com

LINSHOUCHENG

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 39回
  • 年度积分:0
  • 历史总积分:48
  • 注册:2008年11月25日
发表于:2015-11-12 19:32:57
30楼

1391876555qq@,com 谢谢

LINSHOUCHENG

  • 精华:0帖
  • 求助:2帖
  • 帖子:2帖 | 39回
  • 年度积分:0
  • 历史总积分:48
  • 注册:2008年11月25日
发表于:2015-11-12 19:34:10
31楼

1391876555@qq,com  谢谢 急需

sunshine5178

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 59回
  • 年度积分:0
  • 历史总积分:60
  • 注册:2008年11月30日
发表于:2018-02-01 06:24:24
32楼

谢谢楼主分享,工控人真的不容易

自动化相关学习

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 5回
  • 年度积分:0
  • 历史总积分:65
  • 注册:2018年2月09日
发表于:2018-04-08 17:38:08
33楼

976601506@qq.com,你好,方便发一份给我吗?


liushenwen2009

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 55回
  • 年度积分:0
  • 历史总积分:108
  • 注册:2018年8月24日
发表于:2018-08-24 22:57:24
34楼

顶,学习一下。谢谢!


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页