远程机器人监控系统的研制
随着计算机网络的迅速发展和机器人应用的逐步推广,对远程机器人进行实时的控制和监测,已经越来越受到人们的关注。我们所承担的国家863项目“利用远程网络技术的机器人遥操作研究”正是在这样的背景下展开的。
1 总体结构和模块划分
通过Internet网络实现对远程机器人的监控,是指用户在本地发送控制命令给远端的机器人,由远端机器人的控制系统对控制命令加以解释、执行,从而控制机器人完成相应的动作。同时,由远端的摄象机把现场的图像加以采集。
由于视频图像信息的数据量非常大,不可能在Internet网络上实时传输,因此,必须先对图像信息进行压缩,然后通过网络传送到用户站点。用户站点把接收到的已压缩的图像信息进行解压缩,还原成原来的图像。随后,用户可根据总的调度程序给远端机器人发出新的控制命令,远端机器人再完成相应的动作。同样,又通过网络把机器人的动作情况传送到用户站点。于是,远端机器人的一举一动都能及时地呈现在用户的面前,这就是所谓的现场感。 为了把控制命令和运动过程都记录下来,为以后的分析、研究提供准确的数据,有必要建立控制命令和运动过程数据库。按这样的设想,该系统的总体结构如图1所示。
系统采用客户机/服务器(client/Server)体系结构。对于控制命令来说,客户机接受用户提供的机器人控制命令,然后形成相应的命令帧格式,发送到网络上。服务器对接收到的控制命令进行分析解释,并通过机器人的控制系统驱动机器人执行相应的命令。对于视频图像来说,首先由客户机采集视频图像,然后进行数据压缩,再发送到网络上。服务器则把从网络上接收到的图像数据进行组合,完成相应的解压工作,恢复视频图像的本来面目。 从整个系统的工作过程可以看出,从对控制命令的处理这一角度来看,本地是客户机,远端是服务器,而从对视频图像的处理这一角度来看,远端是客户机,本地是服务器。也就是说,客户机/服务器结构不是从物理上的本地或远端来划分的,而是从逻辑上的不同功能来划分的。之所以这样划分,是因为在该系统中,视频图像的处理和传输过程是相对独立的,而不是控制命令的简单应答和反馈信息。总之,客户机主动发出各种信息,而服务器则被动地接收来自客户机的信息,并进行相应的处理。
2 视频图像压缩传输的基本流程
系统首先建立获取窗口,然后指定回调函数。系统获取的图像存放在一段连续的内存中,以回调函数的形式传送给编程人员。在回调函数中,先进行压缩处理,然后把大数据块打包,再把数据包按序号依次发送到Internet网络上。本地站点接收到数据包以后,按序号组合成数据块,然后解压缩,最后在给定窗口上重现视频图像。视频图像压缩传输过程如图2所示。 我们采用的是混合编码方案,其视频图像压缩的基本流程如图3所示。首先判断是否为关键帧,若是关键帧,则先进行离散余弦变换DCT(Discrete Cosine Transform),然后对DCT系数作量化处理,再对量化后的交流(AC)系数以Z形路径进行行程编码RLE(Run-Length Encoding),最后进行哈夫曼编码;若不是关键帧,则采用帧间压缩。 对于帧间压缩,我们比较了两种不同的方式。 第一种方式以象素为基础,首先将其与上一帧作差,得到一个稀疏的矩阵。在作差的过程中,采用小范围匹配的方法去掉一部分噪声,然后采用改进的行程编码得到最后结果。再把当前帧图像保存在指定的内存区内,作为下一帧作差的参考帧。 第二种方式是以宏块为基础的运动补偿方式,首先计算运动矢量,然后采用行程编码RLE和哈夫曼编码。由于机器人的运动主要是平移和转动,而缺少局部的细微变化,用运动补偿可以达到较高的压缩比和相当好的图像质量。 由于与远程站点之间通过Internet网进行传输时,信道的数据传输率不是固定的,因此,系统中通过信道测试反馈信息来改变量化时的步长,从而调节视频信息的数码率,以便更好地适应信道传输率的变化。
相关文章
- 2022-07-03智能化超声波液体密度计
- 2024-01-14情感化设计在产品改进中的应用
- 2022-01-20便携式心电监护系统的设计
- 2024-03-01基于虚拟仪器的平面机构创意组合实验台测控系统设计
- 2024-02-29优化嵌入式无线系统的可靠性和功率效率
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。