首页> 中国专利> 构建工业自动化仪器仪表嵌入式软件系统的方法

构建工业自动化仪器仪表嵌入式软件系统的方法

摘要

一种构建工业自动化仪器仪表嵌入式软件系统的方法,属于工业自动化仪器仪表技术领域。本发明利用微控制器和外部设备,通过源代码,先建立仪器仪表行业常用微控制器和外部设备的构件库,后调用相应的构件快速自动生成仪器仪表软件驱动程序,再添加相应的功能应用程序,然后用Keil uVision2软件对源代码程序进行编译、链接、调试,从而逐一完成工业自动化仪器仪表的各个功能模块。由于本发明具有针对性强、实用性强、节省投资、减少重复劳动,产品质量高、出错率低、大大缩短产品开发周期等特点,故本发明可广泛应用于各种类型的工业自动化仪器仪表嵌入式软件系统的构建。

著录项

  • 公开/公告号CN1963749A

    专利类型发明专利

  • 公开/公告日2007-05-16

    原文格式PDF

  • 申请/专利权人 重庆大学;

    申请/专利号CN200610095235.9

  • 申请日2006-11-24

  • 分类号G06F9/44(20060101);

  • 代理机构50201 重庆大学专利中心;

  • 代理人胡正顺

  • 地址 400044 重庆市沙坪坝区沙正街174号重庆大学专利中心

  • 入库时间 2023-12-17 18:37:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-01-07

    未缴年费专利权终止 IPC(主分类):G06F9/44 授权公告日:20100512 终止日期:20131124 申请日:20061124

    专利权的终止

  • 2010-05-12

    授权

    授权

  • 2007-07-11

    实质审查的生效

    实质审查的生效

  • 2007-05-16

    公开

    公开

说明书

技术领域

本发明属于工业自动化仪器仪表技术领域,特别涉及工业自动化仪器仪表嵌入式软件系统的构建方法。

背景技术

工业自动化仪器仪表是集传感器技术、信号处理技术、计算机技术、网络通信技术于一体的高新技术产品,这类产品技术含量高、市场容量大、应用面广,工作环境恶劣,可靠性和测量精度要求高,是仪器仪表行业研究的重点课题。

工业自动化仪器仪表种类繁多,如分析仪器、光学仪器、环保仪器、医疗仪器、电子测量仪器、地质仪器、气象海洋仪器、航空航天仪器、汽车仪表等等。若再细分,如分析仪又分为工业电导电浓度分析仪、智能微量氧分析仪、智能红外气体分析仪等等。随着社会进步和科技发展,工业自动化仪器仪表将向着数字化、智能化、网络化、微型化、高性能、高可靠性、高稳定性和光机电一体化的趋势发展,对软件系统提出了更高的要求。

目前工业自动化仪器仪表结构上都是由信号采集、传输,处理、控制等功能模块构成,硬件上均包括各类常用微控制器和外部设备模块,比如英特尔(Intel)系列、爱特梅尔(Atmel)系列、飞利浦(Phlips)系列、新华龙(Cygnal)系列微控制器等、各类模数转换器、数模转换器、串行总线及通信接口,输出显示、脉宽调制等。

现有工业自动化仪器仪表软件系统的构建都是从零开始,由软件工程师在硬件结构上按照仪器仪表功能进行嵌入式软件编码。实际上在软件工程师编写的程序中存在大量可重用的代码段,包括各类常用的微控制器及外部设备的驱动程序模块。这些代码都随着一次产品开发的结束而结束,只使用了一次,没有得到很好的积累和管理。因此软件工程师的离职常常导致技术无法继承,重复开发。这使得工业自动化仪器仪表产品的研发周期长、难度大、效率低、出错率高、成本也居高不下。

为了缩短工业自动化仪器仪表产品的开发周期,提高产品质量,增强市场竞争能力,同时降低软件工程师的工作强度和增强技术的继承性,有必要将众多的可重用的源代码片段进行封装,生成重用性高的源码构件,提供给软件工程师使用。目前常用的构件模型包括微软公司的组件对象模型(COM/DCOM)、对象管理组织(OMG)的公共对象请求代理架构(CORBA)和太阳(SUN)公司的软件组件模型(JavaBean/EJB)等,它们已成为快速构建应用系统的关键。但在嵌入式应用领域,由于嵌入式平台的多样性,以及嵌入式系统对内存消耗、实时特性、可靠性和稳定性等重要的非功能性因素的考虑,上述的构件模型难以有效地适用于嵌入式系统。为此,国内外研究机构专门推出了一系列嵌入式构件模型,如比利时国际焊接技术员(IWT)协会赞助的射思科(SEESCOA)项目的耦合道光学模型(CCOM)、飞利浦公司用于消费电子的考拉(Koala)构件模型和电力和自动化技术集团(ABB)等公司用于现场设备技术的嵌入式系统组件模型(Pecos)等。这些模型的共同特点是:基于源码级的构件复用,并有相应的方法支持。

但是针对工业自动化仪器仪表的常用微控制器和外部设备驱动的构件,目前并没有相应的规范和标准,基于构件的仪器仪表嵌入式软件系统也没有具体的框架。因此,基于构件的工业自动化仪器仪表嵌入式软件系统构建方法越来越引起学术界和产业界的高度重视。

发明内容

本发明的目的是针对现有工业自动化仪器仪表软件系统构建方法的不足之处,提供一种构建工业自动化仪器仪表嵌入式软件系统的方法,解决软件资源得不到有效的积累和复用,导致重复开发,效率低的问题。该方法具有针对性强、实用性强、节省投资、减少重复劳动,产品质量高、出错率低、大大缩短产品开发周期等特点。

本发明的机理是:通过对工业自动化仪器仪表产品的常用体系结构、程序设计语言、常用功能及微控制器和外部设备驱动,建立一种适用于仪器仪表的嵌入式软件构件化模型。软件工程师可以根据模型标准设计/生成源码构件,提交构件库统一管理。在构件库的基础上,根据仪器仪表产品软件体系结构和常用功能,构建一种基于构件的工业自动化仪器仪表嵌入式软件系统。实际开发中,通过调用相应的构件自动生成软件源代码,从而快速建立面向具体型号和应用领域的仪器仪表的嵌入式软件驱动程序,实现对工业自动化仪器仪表的控制。这种构建工业自动化仪器仪表嵌入式软件系统的方法将大大降低开发难度,使开发者把精力集中于功能的开发和实现,开发效率显著提高。

嵌入式软件构件是一段可重用的代码,粒度定义为语句级,即代码片段至少包含一条语句,使其具有更高的灵活性和可重用性,也可以是包含其他构件的构件,因此它可以是函数、过程或对象类,也可以是更大规模的单元。构件是可配置和共享的,这是基于构件开发的基石,且构件之间能相互提供服务。

为了提高软件生产过程的复用力度,不仅需要复用旧的代码,而且要复用相似的分析设计结果和体系结构。这样才能减少构造新软件系统的代价,从而提高软件的可靠性,改变过去一次次、一个个地重复开发应用系统的状况,使软件工作者真正地从烦琐的劳动中解放出来。基于框架的软件开发方法就是这样一种面向特定领域的软件复用技术。一个对象框架是指在特定领域中的应用软件的半成品,它由一组协作构件组成,阐明了整个设计、构件间依赖及成员构件的责任分布,其优点在于能够通过软件重用提供高层服务而屏蔽底层细节,从而大大提高各类应用程序的开发效率,避免重复编写大量相同的代码以及由此可能产生的大量错误。框架由于提供了大力度的复用而被认为是一种非常有前途的面向对象技术。

本发明的软件系统基于科尔公司(Keil)的uVision2软件设计的。Keil公司是一家业界领先的微控制器软件开发工具的独立供应商,制造和销售种类广泛的开发工具,包括美国国家标准协会(ANSI)C编译器、宏汇编程序、调试器、连接器、库管理器、固件和实时操作系统。目前有超过10万名微控制器开发人员在使用这种得到业界认可的解决方案。Keil公司针对51系列单片机推出了32位Windows环境、以51系列单片机为开发目标、高效率的C语言集成为基础开发平台的Keil uVision2软件。

仪器仪表行业大多采用Keil uVision2软件,因此本发明构建的软件系统兼容uVision2软件的工程格式,可直接在uVision2软件中进行编译,下载,调试,极大的方便仪器仪表行业软件从业人员的使用,他们不必重新学习和掌握新的开发工具,节省投资。

通过为各个微控制器和各类外部设备硬件模块编写硬件描述性操作的驱动和控制程序,如模数/数模转换器(ADC/DAC)、串口232(RS232)、内部集成电路(I2C)、串行外围接口(SPI),区域网络控制器(CAN)等,从而建立驱动构件。描述性操作是指在控制硬件时只需知道要完成什么,而不需要知道如何去完成,每个操作都是一些单一的动作。例如:对于设置一个串口的波特率,只需要知道是哪个串口,波特率是多少,而不需要知道要写哪一个寄存器以及如何写等。驱动构件留出接口供开发人员调用,编程人员只需要了解程序开发中的初始化顺序以及初始化的内容而不需要了解初始化的具体细节就能完成程序的编写。这样可以大大的提高工作效率,减少硬件驱动程序具体细节设置中最容易出错的地方。建立驱动构件库,从而大大减少出错的可能性,使嵌入式系统应用开发过程简单化,节省大量的时间。

本发明的目的是这样实现的:一种构建工业自动化仪器仪表嵌入式软件系统的方法,利用微控制器和外部设备,如各类模数转换器、数模转换器、串行总线及通信接口,输出显示、脉宽调制等,通过源代码,先建立仪器仪表行业常用微控制器和外部设备的构件库,后调用相应的构件快速自动生成仪器仪表软件驱动程序,再添加功能应用程序,然后用Keil uVision2软件对源代码程序进行编译、连接、调试,从而逐一完成工业自动化仪器仪表的各个功能模块。具体步骤如下:

(1)建立构件库

对工业自动化仪器仪表产品的常用体系结构、程序设计语言、常用功能及微控制器和外部设备驱动,建立一种适用于仪器仪表的嵌入式软件构件化模型,再根据构件化模型构建源码构件,并放置于构件库统一管理,供重复使用时调用。

(2)构建仪器仪表嵌入式软件系统

第(1)步完成以后,根据仪器仪表产品的软件体系结构和常用功能,从第(1)步建立的构件库中调用相应的微控制器和外部设备驱动构件,通过源代码自动生成仪器仪表软件驱动程序,从而快速建立面向具体型号和应用领域的仪器仪表的驱动程序源代码框架。

(3)添加功能应用程序

在第(2)步完成以后,根据用户的需求,再添加相应的功能应用程序,快速完成仪器仪表功能模块的构建。

(4)调试功能模块

在第(3)步完成以后,通过Keil uVision2软件对功能模块进行编译、连接、调试,直到达到仪器仪表的功能。再返回到第(2)步添加另一功能的相应驱动构件及第(3)步添加功能应用程序,并进行调试。如此反复,逐步增加应用功能,直至完成仪器仪表的全部功能为止。

本发明采用上述技术方案后,主要有以下特点:

(1)针对性强。本发明是针对工业自动化仪器仪表的常用微控制器和外部设备驱动,建立的嵌入式软件构件,针对性强,效率高。

(2)实用性强。本发明选择的代码片段是仪器仪表软件中的常用重复代码,将其标准化、系列化、规范化、模块化、参数化,以源码构件的形式使用,简单易行,减少重复劳动,从而使工业自动化仪器仪表产品开发周期大大缩短,出错率低,产品质量高。

(3)节省投资。本发明构建的软件系统与uVision2软件兼容,因此能够很好的与现有开发工具和开发模式相结合,节省投资,成本低。

(4)扩展性好。基于构件库的软件系统的构建方法能够快速构建特定的应用系统,有利于产品的建设、维护与更新,具有很强的可扩展性。

本发明可广泛应用于各种类型的工业自动化仪器仪表嵌入式软件系统的构建。

附图说明

图1是现有工业自动化仪器仪表软件传统开发流程图;

图2是本发明的构件库图;

图3是本发明的程序流程图。

具体实施方式

下面结合具体实施方式,进一步说明本发明。

涡轮流量传感器是一种精密流量测量仪表,与相应的流量积算仪表配套可用于测量液体的流量和总量,广泛用于石油、化工、冶金、科研等领域的计量、控制系统。  如图2、3所示,一种工业自动化仪器仪表的涡轮流量传感器的液晶显示功能模块的构建方法,利用微控制器和SPI驱动、显示驱动、串口驱动的外部设备,通过源代码,先建立仪器仪表行业常用微控制器和外部设备的构件库,后调用相应的构件快速自动生成仪器仪表软件驱动程序,再添加功能应用程序,然后用Keil uVision2软件对源代码程序进行编译、连接、调试。构建涡轮流量传感器的液晶显示功能模块的具体方法步骤如下:

(1)建立构件库

对工业自动化仪器仪表常用体系结构、程序设计语言、常用功能及微控制器和外部设备驱动进行研究基础上,建立一种适用于仪器仪表的嵌入式软件构件化模型,再根据构件化模型构建源码构件,并放置于构件库统一管理,供重复使用时调用。液晶功能模块需要调用SPI驱动、显示驱动以及微控制器的相关驱动,所以编写其相应的驱动构件,放置到构件库中以便重复使用时调用。

(2)构建涡轮流量传感器嵌入式软件系统

第(1)步完成以后,根据液晶显示的功能要求,从第(1)步建立的构件库中调用相应的微控制器的相关驱动和SPI驱动、显示驱动以及串口驱动构件,通过源代码自动生成液晶显示功能驱动程序,从而快速建立液晶显示驱动的源代码框架。

(3)添加液晶显示功能应用程序

在第(2)步完成以后,根据用户需求,再添加液晶显示功能的应用程序,快速完成显示功能模块的构建。

(4)调试液晶显示功能模块

在第(3)步完成以后,通过Keil uVision2软件对显示功能模块进行编译、连接、调试,直到达到功能要求。再返回到第(2)步添加另一个串口通信功能的相应驱动构件及第(3)步添加串口通信功能的应用程序,并进行调试,完成涡轮流量传感器的液晶显示和串口通信功能。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号