第20卷第8期。
电子设计工程。
012年4月。
嵌入式组态软件系统的设计。
程西浩’.展巍。
1.山东省济宁市任城区供电公司山东济宁272北京六所和瑞科技发展****北京100摘要:针对后pc时代的到来.个人计算机随之向着掌上嵌入式计算机方向发展。为了适应组态软件在嵌入式环境下运行的问题.提出了采用嵌入式技术开发嵌入式组态软件的方案。
本设计首先论述了嵌入式组态软件系统在当今自。
动化领域的发展及现状,给出了嵌入式组态软件的概念,然后分模块对嵌入式组态软件系统进行了阐述。在本设计中.主要把嵌入式组态软件系统分为以下4个模块:嵌入式接口模块、嵌入式实时数据库模块、嵌入式历史数据库模。
块、嵌入式图形模块。
关键词:嵌入式组态软件;嵌入式接口;嵌入式实时数据库;嵌入式历史数据库;嵌入式图形组态。
中图分类号:tp佃文献标识码:a文章编号。
随着后pc时代的到来,嵌入式工业控制组态软件在工业及其他相关领域也得到了更大的发展。组态软件可以大大地缩短嵌入式产品投放市场的时间。而且使得产品具有丰富的人机界面、嵌入式web及符合的控制逻辑功能ll1并且可以存储相当数量的历史数据,部分完成现场工作站级计算机的功能。
所谓嵌入式工业自动化组态软件.就是一种用于嵌入式设备并带有网络功能(包括int服务功能)的嵌入式应用。
嵌入式接口模块。
设备接口模块是嵌入式自动化组态软件系统的重要组。
成部分,该模块主要完成现场终端信息采集和监控的通讯任。
务,获取现场的实时数据并上传给实时数据库系统模块,同时将用户的操作命令下传给设备通讯子系统,从而对硬件设备实施控制[31设备通讯子系统主要用于实现i,0设备与组态软件之间的通信。该子系统有以下3个接口的设计:
)与实时数据库的接口设计子系统提供接口函数与实时数据库进行通讯。在本设计中,将驱动管理模块作为di上进行开发,其导出的接口函数即为与实时数据库的接口。
)提供给驱动开发者的接口设计子系统的数据i/0模。
软件回。嵌入式组态软件系统一般分为开发系统和运行系统。嵌入式组态软件的开发环境一般运行于具有良好人机界面的win操作系统上,而运行环境可基于多种嵌入式操作系统,甚至直接支持特定cpu嵌入式自动化组态软件的运。
行系统大多为组件式可伸缩配置结构。在本设计中,我们把。
嵌入式自动化组态软件系统划分为4个模块:嵌入式接口模块、嵌入式实时数据库模块、嵌入式历史数据库模块、嵌人式图形模块。
收稿日期。块中的驱动规范即为该接口函数的。
)给用户的接口设计这主要是指与用户有关的界面设。
计,在设备配置模块中实现。
由于采集设备的多样性,不同的设备的接口协议和物理接口标准不尽相同,不可能通过一个通用的数据采集程序来。
稿件编号。作者简介:程西浩(19一),男,山东莱芜人,中级工程师。研究方向:电力系统及其自动化。
程西浩.等嵌入式组态软件系统的设计。
满足对各种设备进行数据采集的要求 。因而,本设计中的接口模块完全支持等标准。
嵌入式实时数据库模块。
嵌入式实时数据库模块是监控组态软件数据处理、事务调度、各应用程序通信的中心。在这里,我们重点阐述嵌入式实时数据库模块采用的嵌入式内存数据库技术。根据嵌入式内存数据库自身的特点.本设计采用了新的体系结构、存储结构和恢复机制,以满足嵌入式内存数据库的要求。
2.嵌入式内存数据库的体系结构。
在本设计中,我们采用关系数据模型,最上层提供外部查询接口,支持多种语言;第二层是对sql语句进行解析的。
查询命令分解与优化层.这一层下面是2个重要的模块:数据组织管理模块和事务管理器。其中,数据组织管理模块完成常用的索引和数据组织工作.事务管理器具有创建事务、
调度事务、**事务的功能。内存工作区是该体系结构最重要的模块,全部数据操作及日志处理在这里进行,它在事务处理时为每一个事务分配一个内存工作区。其中存放数据和日志。
日志管理器管理内存工作区中的日志。而恢复管理器则在系统出现故障时才起作用。该数据库大部分操作在内存工作区中运行,只有当发生检查点操作和数据库备份,及系统恢复时才与外面的磁盘打交道。
因此该数据库是典型的嵌入式内存数据库目。体系结构图如图1所示。
口。查询命令分解与优化。
塾塑丝堡鱼望垄ll皇查笪墨.i
i(包括数据和日志内存工作区卜查笪墨。
塾塑!查一。
图1嵌入式内存数据库结构图。
.2嵌入式内存数据库的存储与索引。
嵌入式内存数据库通常在内存受限的环境中进行,cp能直接操纵内存中的数据。因此合理有效利用内存资源、减少内存开销和cpu指令数非常关键,为此我们引用了一种新。
的存储与索引方法——t树。t树是将avl树和b树结合在。
一。起而得出的一种新的数据结构,t树也是一种二叉树,只不。
过每个结点(称为t结点)都包含多个元素。每个t结点都包。
含一系列从小到大排序后的元素和3个指针.指针分别指向父结点和左右结点。某一t结点a的左结点中必会包含比a
结点中最小元素小的最大元素,而a结点的右结点中必会包含比a结点中最大元素大的最小元素。因为是二叉树,所以t树具有avl树固有的二分查找特性.又因为每个结点包含多个元素.其又包含了b树良好的更新和存储特性的优点。对t树来说.因插入和删除数据所造成的数据移动通常可以。
局限在一个结点内进行,和avl树一样,t树也是通过旋转来使树达到平衡的,但其所需要的旋转操作的次数远少于avl树。t树结点结构如图2所示。
图2 t树结点结构图。
.3事务处理。
当内存数据库用于实时系统时.实时事务表现出了许多不同的特征,如实时性和相关性.其数据库状态正确性包含内部一致性和时间一致性。事务执行正确性则包含结果正确性、行为正确性、结构正确性和时间正确性等[63传统的“ac的事务概念及模型对实时事务不适合。因此事务调度要采取相关的实时调度算法。
2.系统恢复。数据库的备份是数据库的副本以及一些控制信息.在出。
现故障的情况下,可以随时用它进行恢复.使得数据丢失最。
小化。在内存数据库系统中,由于所有操作都直接作用于内存中的数据库主拷贝上,数据库极易受到操作系统和应用软件错误造成的破坏,因此mmd的恢复技术如备份、检验点和重启动(re等都较常规的磁盘数据库(dr复杂。人们从体系结构、事务提交、日志系统到备份、检验点算法等各个方面进行了大量的研究和探索。
其中日志管理是内存数据库恢复机制中至关重要的一环。一般使用构造非易失内存保存部分日志,或采用“成组提交”技术、影子内存技术等来解决13志瓶颈问题。在检验点方面,通常力图使检验点操作和事务处理同时进行。
为了提高速度指标和综。
合性能,mm系统往往利用附加的硬件设备如非易失内存、专用的日志处理器、检验点处理器等来支持高效、快速的数据恢复。
嵌入式历史数据库模块。
一。般嵌入式数据库系统管理的历史数据类型较少(特别。
注意:这并不是说需要管理的数据量小)。数据管理本身不复。
杂。但对数据操作要求高效率.采用由大名鼎鼎的ber美国加州大学伯克利分校)开发的可能是一个很明智的选择。
.1 综述。
b支持几乎所有的现代操作系统,支持。
等。值得注意的是db是嵌入式数。
据库系统,而不是常见的关系/对象型数据库,对sql语言不支。
持,也不提供数据库常见的高级功能,如存储过程,触发器等。3.的设计思想。
b的设计思想是简单、小巧、可靠、高性能。db提供了。
电子设计工程)20年第8期。
一。系列应用程序接口(ap调用本身很简单,应用程序和4)编译**系统,组态安全系统。
b所提供的库在一起编译成为可执行程序。这种方式从两方面极大提高了db的效率。
)db库和应用程序运行在同一个地址空间.没有客户。
)作为嵌入式组态核心的控制系统组态包括以下部分:
软逻辑组态,实现逻辑控制功能的软plc系统。②连续过程组态及配置,实现流程控制的流程图系统。③调试工具,允。
许**监视各个内部变量的值,监控流程执行顺序,允许重。
端程序和数据库服务器之间昂贵的网络通讯开销.也没有本地主机进程之间的通讯:
新设置和启动流程运行。④**运行工具,在开发环境中,仿。
真运行控制流程,离线测试控制效果。
)不需要对sql**解码,对数据的访问直截了当。
.3 数据访问算法。
在数据库领域中,选择合适的算法可能会在运算速度上提高1个甚至多个数量级。大多数数据库都选用b+树算法,结束语。
本设计介绍了嵌入式组态软件系统的各个模块。每个模块都采用了当前最先进的技术得以实现.经过实验验证.本设计中的系统运行良好,这使得嵌入式组态软件系统得到了长足的发展,并且能够不断地推广到市场中去。参考文献:
b也不例外,同时还支持has算法、re算法和que
算法。对算法的选择首先要看关键字的类型。如果为复杂类型,则只能选择b+树或has算法。如果关键字为逻辑记录。
号,则应该选择rec或que算法。当工作集关键字有序时,b+树算法比较合适;如果工作集比较大且基本上关键字。
1】李驹光,郑秋,江泽明.嵌入式lin系统开发详解【m]北。
京:清华大学出版社.20
为随机分布时,选择has算法。qu算法只能存储定长。
的记录,在高的并发处理情况下,qu算法效率较高;如果。
是其它情况,则选择rec算法,re算法把数据存储为平面文件格式。
嵌入式图形模块。
图形组态71作为人机界面是嵌入式组态软件的重要组成部分,是组态软件中所有功能的输人接i=i及输出结果的直接。
3】邹思铁.li
社.20式系统与应用[m】北京:清华大学出版。
4]王华忠.监控与数据采集(sc系统及其应用【m】北。
京:电子工业出版社.20
表现。这就要求它图形表现直观,图形处理功能完善、有较高“通用性”,即利用它能完成对各种控制设备的描述。本设计中,嵌入式组态模块主要包含以下一些内容:
5]肖迎元.分布式实时数据库技术北京:科学出版社,20夏家莉.嵌入式实时数据库系统的事务模型及其处理技。
术【m]北京:经济管理出版社,20
)工程管理器(包括项目、实时数据库、设备等的管理)。
7】席巍.人机界面组态与应用技术【m]北京:机械工业出版。
社.20)画面组态,包括趋势图,报警和报表。
)实时数据库和历史数据库的组态。
上接第45页)
8】宋利,周源华,周军.基合成技术的水波动画[j]
计算机工程与应用一l1.
6】杨怀平,孙家广.基于海浪谱的波浪模拟[j]系统**学。
报。一l1.
9】曹莉,李绍彬,申闰春.基于0sg的镜面反射特效的实现 .
计算机**。
7】李广鑫,丁振国,詹海生,等.一种面向虚拟环境的真实感。
水波面建模算法fj1计算机研究与发展。
田。10]马骏,朱衡君,龚建华.基于cg和ope的实时水面环境。
模拟[j]系统**学报。
嵌入式ARM嵌入式系统设计
摘要 本系统设计了基于arm系统的嵌入式硬件平台,其中主要介绍了系统母版的具体电路实现,其硬件电路已经通过了信号完整性分析。中国 网 关键词 arm 嵌入式系统 中图分类号 tp368.1 文献标识码 a 文章编号 1007 9416 2012 12 0104 01 1 序言 本系统是设计一款基于a...
嵌入式linux与嵌入式系统设计
ustc bbs embedded斑竹d j主讲。感谢hongtao chen以及networking斑竹jun zxjun的大量幕后工作!感谢james zhang以及网络中心提供聚会的场地和大力支持!欢迎访问我的主页。聚会详情如下 名称 嵌入式系统设计以及嵌入式linux展望 时间 本周星期天 ...
嵌入式嵌入式系统原理与设计
第六章 iic总线。一 iic总线介绍 i2c总线 1.结构。2.工作原理 a b 主机 主设备 负责生成scl时钟,同时负责发出其实信号s和终止信号p 从机 从设备 被主机寻址的器件。1 a检测i2c总线是否 空闲 如果空闲 高 a发出起始信号 scl高,sda 2 寻址选择目标器件b,发送7位地...