基于ARM的家庭视频服务器的研究(4)

2012-08-20 22:16

    其中ID标志控件命名,提供访问控件的HTML代码。CLASSID标志是唯一的UUID给控件赋值的指令,告诉IE哪个对象被装载。在HTML页面实现控件的自动下载,使用<OBJECT>标志的CODEBASE属性,该属性告诉IE要下载和安装的控件版本和找到和下载控件及其支持文件的地址。     (2)客户端控件的注册     控件编写完成后,需要在客户端注册,关于控件的信息记录在注册表中。客户端从服务器端接收到嵌有控件的HTML页面后,将根据OBJECT标签中的信息通过注册表使用对应的空间完成接收,解码和显示。

4  远程控制部分设计

    在远程控制部分设计中,根据性能最优化和实时性考虑,将控制部分分为两部分:云台控制部分,主要是通过串口进行通信;信息家电远程控制,通过内部家庭网络协议对相应设备进行控制,控制信号的物理载体是家庭网络内部总线。(由于篇幅有限,本文仅讨论前者)。     云台控制模块设计     该模块是个相对独立的模块,负责控制云台的上下左右旋转以及镜头的焦距和光圈的调整。当服务器接受到的请求中含有对云台设备以及镜头的控制命令时,将通过CGI函数向云台解码器发送控制指令以实现对云台,镜头的控制。在室内,采用CDA2000室内万能解码器4直接通过RS-232串行口与嵌入式网关通信,云台控制电压~24V、~220V 可选,镜头控制电压可在 5V-12V 之间无级调节。

图4  云台控制系统硬件连接框图     在云镜控制模块中,解码器起着核心的地位,设计云镜控制模块主要解决的问题是将各项操作如上下旋转,镜头调焦等操作进行编码,但本系统采用的解码器封装了底层硬件程序的编写,因此所做的工作是利用解码器开发商提供的协议,通过RS232串行口向解码器发送指令。     Linux对串口的操作是通过设备文件进行访问的,只需打开相应的串口文件,然后通过调用设备相关函数来打开串口(open()),设置串口参数(tcgetattr(),cfsetispeed(), cfsetospeed()),设置输入输出模式(options.c_Iflag和options.c_Oflag),恢复串口属性,关闭串口(close())等即可。

图5 串行通信流程

5  结论   

    本系统的特点是基于嵌入式微处理器有限的系统资源之上,为客户提供视频服务。本系统采用的是〝boa服务器+CGI+家庭网络服务器〞的模式来实现对信息家电的控制,但由于篇幅有限,不做论述。鉴于实时视频服务的特殊性,采用了〝boa服务器+CGI+视频接收和控制模块(视频服务器)〞的模式实现对视频数据的捕获、采集、发送等操作,并通过串行口通信方式对云台和镜头进行直接的控制,视频的接收问题一直以来是研究的重点,本系统采用的是在WEB页面中嵌入ActiveX控件的方式,由ActiveX控件完成视频数据的接收、解码和显示工作。而这样做的好处是,不需对客户端做任何设置,就可以完成控件的自动下载和视频文件的实时播放。

参考文献

[1] 张大波等编著.嵌入式系统原理、设计及应用,第二版,2005.1,机械工业出版社[M] [2] 李现勇等编著.Visual C++串口通信技术与工程实践,第二版,2004.7,人民邮电出版社[M] [3] 李驹光等.ARM应用系统开发详解——基于S3C4510B的系统设计,2003.12,清华大学出版社[M] [4] 李善平等.Linux与嵌入式系统,第二版,2006.10清华大学出版社[M] [5] 刘峥嵘等.嵌入式Linux应用开发详解,第一版,2004.7机械工业出版社[M]

基于ARM的家庭视频服务器的研究(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:一种支持动态网站生成的模型与系统

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: