当前位置:首页 > 消费电子 > 消费电子
[导读]在简要介绍了PECOS技术及其特点之后,结合嵌入式视频监控系统的基本需求,定义了嵌入式视频监控系统的主要组件。

摘要:在简要介绍了PECOS技术及其特点之后,结合嵌入式视频监控系统的基本需求,定义了嵌入式视频监控系统的主要组件。结合PECOS标准给出串口通信组件部分程序实例,最后对组件化程序设计中的几个关键问题进行了讨论。 
关键词:视频监控;CGI; 嵌入式Web;组件;PECOS;串口通信

0.引言

随着数字视频压缩技术的日益成熟,嵌入式视频监控成为当今监控技术的主流,但由于系统功能不断增加、编程环境不断改变以及前期需求分析和设计不完善,导致系统升级和维护的难度不断增大[1],每一处小小的改动都可能造成整个系统的重新编译、链接和调试,耗费大量的人力、物力和时间。因此需要进行组件化设计,而为了简化组件的开发过程,需要有一组标准的方法来建立、管理和维护组件。针对当前网络视频应用程序的开发过程中,遇到的软件的可重用性不强、IP网络传输的不稳定性及网络带宽的多样性等问题,最好的解决问题的办法是把应用程序构建在组件基础上。

现在通用的组件模型(主要有COM/DCOM、CORBA、JavaBeans等)在运行时需要大量底层基础的支持,主要运行于非嵌入式平台[2]。而目前国外流行的嵌入式组件模型主要有比利时IWT协会赞助的CCOM模型,飞利浦公司用于消费电子的Koala组件模型和国内处于起步阶段的科银京成公司的Delta System平台,这些模型都是不公开的限于公司内部使用的技术,并需要相应的CASE工具支持[3]

针对以上分析,本文进行了监控组件化的设计,选用ABB公司的用于现场设备的组件模型PECOS作为组件化标准,对整个系统进行开发。

1.PECOS技术简介

PECOS组件模型中的元素包括组件、接口和连接器。组件有3种:具有自己的控制线程的活动组件;不具有自己的控制线程,由活动组件调度的被动组件[4];其功能由一个事件触发的事件组件。这3种组件能够组合使用。接口表明组件提供给其他组件或需要其他组件的数据。包括要传递的数据的类型(如浮点)、方向(in、out、in/out)和范围。连接器负责连接兼容的类型、方向和范围的接口。

1.1 PECOS构件行为

一个应用可以通过CoCo和目标语言类来综合描述,被连接的对象称为RTE运行时刻环境。RTE是PECOS提供的标准库。RTE的优点是应用无关性,PECOS的构件也是平台无关性的,可以在不同的项目中共享。一个具体的应用可以分为以下四层:RTOS、RTE、Generated Classes 、User classes。

1.2 PECOS组件模型的特点

用户语言无关性 采用接口定义语言(IDL)和组件定义语言(CDL)描述接口和组件,使模型和具体实现分离,理论上可以映射到多种语言C、C++、Java等。

可移植性 嵌入式系统硬件环境多样,所以组件模型的可移植性非常重要,在本模型中通过封装底层接口获得很好的移植性。

组件的易维护性 通过接口继承和可选接口实现组件的易维护性。

同其它组件编程技术相比,PECOS具有很好地跨平台性能且与编程语言无关,其较好的开放性、扩展性和实时性. 所以,我们选择以CORBA 作为组件化标准,对整个系统进行组件化编程。

2.嵌入式监控系统主要功能组件

基于嵌入式Web的远程监控系统主要由3部分组成:现场数据采集设备,嵌入式Web服务器和远端监控主机[5]。现场数据采集设备负责现场数据采集并以某种协议标准传递数据;嵌入式Web服务器负责对现场数据的收集和发布,监控主机则通过以太网实时地得到数据,从而实现远程监控的目标。

对整个系统而言,按照功能上的要求,本着全局性扩展性、重用性、先进性和可靠性的原则,把系统设计分为Web Server组件,CGI组件,串行通信组件,数据存储组件、报警组件等几个组件模块。按服务划分接口,按功能封装在组件内部,力求系统组件清晰、简洁、便于维护。这些组件之间的关系如图1所示: 

图1 嵌入式监控系统主要功能组件

Web Server组件是指实现了TCP/IP协议的基本内容(如HTTP协议)、能够响应和处理用户请求、实现对立通信的程序模块,通过对TCP/IP相关协议的实现,Web服务器具有与浏览器交互的能力,能够处理客户端用户请求、传递网络消息并向浏览器返回结果,同时能够与其他应用程序协同工作。由于Boa是一个单任务的小型HTTP服务器,其源代码开放,稳定性好,实时性强,因此本系统中选用Boa作为WebServer。

CGI组件是指按照CGI标准设计的具有独立功能的程序模块,是嵌入式web服务器与外部扩展应用程序交互的一种标准接口。通过它把现场设备的数据实时地传递给嵌入式web服务器我。从而实现远端客户与现场设备之间的动态数据交互。

数据存储组件是指能够对现场采集数据进行保存,并为其它功能组件提供读写方法的功能模块。报警组件是指能提供报警功能的程序模块。

在这些组件中,WebServer组件和CGI程序组件分别与串行通信组件、数据存储组件和报警组件相结合完成对数据的采集、存储、显示、报警等功能。

3.串行通信组件实例

下面以串口通信组件模块为例,说明如何用PECOS实现其功能。

串行通信组件是指完成串行通信功能的独立程序模块,这个模块主要包括云台摄像机等硬件设备。摄像机控制主要包括控制其焦距、透镜凹凸、光圈;云台控制主要包括控制其自动旋转和方向,由其完成现场设备即云台摄像机到CGI组件的数据传送[6],它与CGI程序组件相互配合,共同完成对嵌入式web服务器的数据更新。

下面是串口通信组件模块的接口定义语言IDL定义,这里省略了常量、数据定义,只提供整个模块的总统框架。

Module SerialPort{

interface Camera{

SetFocus(in int FocusValue,out int Result);// 设置焦距值

SetLens(in int LensValue,out int Result);//设置透镜汇聚和发散值

SetAperture(in int ApertureValue,out int Result);//设置光圈值

 

}

interface Console //云台接口

{

SetAuto(in Boolean isAuto,out int Result);//设置云台是否自动旋转

SetDirection(in int Direction,out int Result);//传入方向值从1-8,分别代表上下左右、左上、左下、右上、右下4个方向

….

} 在设计好IDL以后,用IDL编译器把它们编译成服务器框架,并插入到工程中,声明好类,就可以编写服务器的程序了。

串口通信组件模块可以很容易地进行拆卸和扩展,如果要添加新的硬件设备,只要在其中再添加一个新的接口,定义其中的函数即可,无需改动整个程序,大大提高了编程效率,使整个程序便于维护。

4.组件化设计中注意的几个关键问题

运用组件化的设计方法需要处理好如下几个关键性问题:

(1)建立合理的系统模型及组件模型是组件化设计的基础。对系统功能模型进行合理分解,以相对独立的功能模块为基础来定义组件,组件之间边界要清晰。

(2)标准化是保证组件具有兼容性的前提。对每种组件的接口和操作定义应尽量做到标准化,包括对组件的属性访问和对组件的操作都需要标准化。

(3)组件应该易于重用。组件技术和它的支持工具应该为组件版本管理提供支持,因为在介绍一个基于组件的开发模型时重用性是一个很重要的方面。

5.结语

本文作者的创新观点是视频监控组件的模型设计,并实现了简单的功能,下一步的工作重点是进一步完善其功能,利用现有的嵌入式组件定义视频监控组件或在现有的组件的基础上设计出一种新的组件化的模型。

参考文献

 [1] 房红征 赵贵根 柳克俊 嵌入式组件模型研究[J] 微计算机应用 2005年 26(6)521-523

[2] 张移山 CGI程序设计指南[M] 中国水利水电出版社 1998

[3] 陈从生 、朱名日、马学文基于uCliunx的CGI接口设计与应用[J] 桂林工学院学报 2005

[4].Bastiaan Schonhaage Model mapping to C++ or Java-based ultra-light environment Technical Report Deliveralbe D2.2.9-1.Pecos,2001.www.pecos-project.org.

[5] 求是科技,谭思亮  Visual c++串口通信开发实例导航[M] 人民邮电出版社 2003年 132-189

[6] 丰洪才,邓华来,刘年波用Active X控件实现对云台和镜头的远程控制[J] 计算机应用研究 2004年(6)234-236

[7] 李侃,,寥启征,基于S3C2410平台与嵌入式Linux的图像采集应用[J] 微计算机信息 2006(6)125-128
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

摘要:当前社会用电需求激增,电力建设规模扩大、项目增多,而在电力建设与运维管理中,电缆安装不容小觑。其作为电力工程的基础项目,直接影响到电力系统的线路运行安全。在高压电缆安装中也必须关注到附件安装问题,尤其要加强质量控制...

关键字: 环境控制 视频监控 作业指导书

(全球TMT2022年10月17日讯)上海安势信息技术有限公司的清源SCA工具在腾讯成功部署。清源 SCA可进行代码片段识别、文件识别、组件识别、依赖识别和容器镜像扫描。清源SCA拥有海量数据储备,其中包含24万漏洞数...

关键字: 腾讯 组件 开源 互联网

上海2022年10月14日 /美通社/ -- 近日,上海安势信息技术有限公司的清源SCA工具在腾讯成功部署。 开源软件在促进全球的技术创新方面发挥着越来越重要的作用,企业越来越依赖开源软件来加速开发与创新,根据 Gar...

关键字: 开源 开源软件 组件 数据库

9月22日, 第三方检验检测认证机构DEKRA德凯在上海举行了可再生能源测试中心落成典礼。落成的DEKRA德凯上海可再生能源测试中心占地2600平方米,融合全球顶尖的光伏领域的专业检验检测技术团队,覆盖光伏产业从材料到零...

关键字: 可再生能源 光伏产业 零部件 组件

北京2022年9月13日 /美通社/ -- 随着数据的爆炸式增长和算力需求的急剧攀升,由开放计算引领的数据中心基础设施创新,正影响着越来越多的公司争相学习和效仿。在近日举行的OCP China Day 2022(开放计算...

关键字: 数据中心 边缘计算 组件 BSP

(全球TMT2022年9月6日讯)近日,软通动力信息技术(集团)股份有限公司与中国—东盟信息港股份有限公司达成生态合作伙伴框架协议,双方将基于各自在数字经济和数字产业中的资源优势,通过平台合作与资源共享的方式在业务领域...

关键字: 信息技术 数据管理 组件 数字平台

上海2022年9月5日 /美通社/ -- 2022年8月,第七届易贸生物产业大会(EBC)盛大落幕。本届大会聚焦分子诊断、抗体药物、细胞与基因治疗、mRNA等热门话题,汇聚了政府、学术、产业、投资等一线领域的科学家、学者...

关键字: 过滤器 集成 研发中心 组件

全新的自助服务解决方案,充分利用业界领先的AI和AR虚拟试妆技术优势,助力新兴美妆网店成功。 上海2022年8月22日 /美通社/ -- 全球领先的人工智能(AI)及增强现实(AR)美妆和时尚科技解决方案供应商——玩...

关键字: 移动 组件 AI COM

德国慕尼黑2022年8月9日 /美通社/ -- 近日,TUV南德意志集团(以下简称“TUV南德”)推出两个新的认证标志 -- 燃料电池系统以及氢系统组件的认证。制造商通过使用...

关键字: 燃料电池 组件 电池系统 ISO

2018年AI安防软硬件135.3亿元市场产值中,视频监控占据了近90%的份额,成为AI+安防的主赛道。而落地场景主要集中于公安与交通领域。

关键字: 智慧安防 视频监控 信息共享

消费电子

96007 篇文章

关注

发布文章

编辑精选

技术子站

关闭