一种机器人采样控制装置的制作方法

文档序号:13940602阅读:205来源:国知局
一种机器人采样控制装置的制作方法

本实用新型涉及一种机器人,具体是一种机器人采样控制装置。



背景技术:

随着社会生产力的发展和多媒体处理技术的进步, 人们对机器人功能的要求越来越高,其中如何实现机器人的“所看即所得”,是本领域一直在努力的方向,其中的关键技术问题,就是对机器人采样的视频信号进行处理。



技术实现要素:

本实用新型的目的在于提供一种机器人采样控制装置,以解决上述背景技术中提出的问题。

为实现上述目的,本实用新型提供如下技术方案:

一种机器人采样控制装置,包括摄像头和嵌入式视频处理板,所述嵌入式视频处理板从摄像头获取视频数据,然后经过视频A/D芯片数字化后再交给DM365处理器,处理器依靠内部集成的H.264高清编解码协处理器HDVICP完成视频的H.264实时压缩编码,输出H.264视频流,ARM端程序接收到H.264视频流,然后按照恰当的封装策略将其封装成RTP包,RT-SP服务端程序在接收到客户端请求时,会把这些封装好的RTP包发送给接收端,多个不同平台的便携式终端在接收到码流后解码并显示,实现视频的实时传输;所述嵌入式视频处理板还包括电源,电源包括变压器T、芯片U1、芯片U2、电阻R1、二极管D1和电感L,所述变压器T线圈L1两端连接220V交流电两端,变压器T线圈L2一端接地,变压器T线圈L2另一端连接二极管D1正极,二极管D1负极分别连接电阻R1、电容C1和二极管D2正极,电阻R1另一端分别连接电容C1、电容C2和电容C并接地,电容C另一端分别连接二极管D2负极、电容C2另一端、电阻R2、芯片U1引脚7、芯片U2引脚1和电阻R3,电阻R2另一端连接直流母线,芯片U1引脚5连接电阻R4并接地,电阻R4另一端分别连接芯片U1引脚2、电阻R3另一端和芯片U2引脚2,芯片U2引脚3分别连接电阻R5和单向可控硅VS的A极,电阻R5另一端分别连接芯片U2引脚4、电阻R9、电感L和二极管D3负极,二极管D3正极分别连接电容C3另一端和变压器T线圈L3,变压器线圈L3另一端分别连接电容C4、电容C5、电阻R6、电阻R7和输出端Uo,电阻R6另一端连接单向可控硅VS的K极,单向可控硅VS的G极分别连接电阻R7另一端和电阻R8,电阻R8另一端分别连接电感L另一端、电容C4另一端、电容C5另一端和输出端Uo另一端。

作为本实用新型进一步的方案:所述DM365处理器采用TMS320DM365处理器。

作为本实用新型进一步的方案:所述芯片U1型号为UC3842。

作为本实用新型再进一步的方案:所述芯片U2型号为4N25。

与现有技术相比,本实用新型的有益效果是:本实用新型采用TMS320DM365数字媒体处理器和MontavistaLinux嵌入式系统,实现了对视频的实时采集、H.264编码、H.264视频流封包和传输,TMS320DM365是一款ARM+DSP的双核处理器,具有720p@30f/s的H.264硬件编码能力,本系统的H.264压缩编码全部由H.264高清编解码协处理器HDVICP硬件实现,不占用ARM的资源,保证了传输系统的实时性,也提高了系统的稳定性。

附图说明

图1为机器人采样控制装置的结构框图。

图2为机器人采样控制装置中电源的电路图。

具体实施方式

下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本实用新型保护的范围。

请参阅图1~2,本实用新型实施例中,一种机器人采样控制装置,包括摄像头和嵌入式视频处理板,所述嵌入式视频处理板从摄像头获取视频数据,然后经过视频A/D芯片数字化后再交给DM365处理器,处理器依靠内部集成的H.264高清编解码协处理器HDVICP完成视频的H.264实时压缩编码,输出H.264视频流,ARM端程序接收到H.264视频流,然后按照恰当的封装策略将其封装成RTP包,RT-SP服务端程序在接收到客户端请求时,会把这些封装好的RTP包发送给接收端,多个不同平台的便携式终端在接收到码流后解码并显示,实现视频的实时传输;所述嵌入式视频处理板还包括电源,电源包括变压器T、芯片U1、芯片U2、电阻R1、二极管D1和电感L,所述变压器T线圈L1两端连接220V交流电两端,变压器T线圈L2一端接地,变压器T线圈L2另一端连接二极管D1正极,二极管D1负极分别连接电阻R1、电容C1和二极管D2正极,电阻R1另一端分别连接电容C1、电容C2和电容C并接地,电容C另一端分别连接二极管D2负极、电容C2另一端、电阻R2、芯片U1引脚7、芯片U2引脚1和电阻R3,电阻R2另一端连接直流母线,芯片U1引脚5连接电阻R4并接地,电阻R4另一端分别连接芯片U1引脚2、电阻R3另一端和芯片U2引脚2,芯片U2引脚3分别连接电阻R5和单向可控硅VS的A极,电阻R5另一端分别连接芯片U2引脚4、电阻R9、电感L和二极管D3负极,二极管D3正极分别连接电容C3另一端和变压器T线圈L3,变压器线圈L3另一端分别连接电容C4、电容C5、电阻R6、电阻R7和输出端Uo,电阻R6另一端连接单向可控硅VS的K极,单向可控硅VS的G极分别连接电阻R7另一端和电阻R8,电阻R8另一端分别连接电感L另一端、电容C4另一端、电容C5另一端和输出端Uo另一端。DM365处理器采用TMS320DM365处理器。所述芯片U1型号为UC3842。所述芯片U2型号为4N25。电压采样电路有两路:一是辅助绕组的电压经二极管D1、二极管D2、电容C1、电容C2、电容C和电阻R1组成的整流、滤波和稳压后得到稳定的直流电压给UC3842供电,另外,该电压经电阻R3及电阻R4分压后得到一采样电压,该路采样电压主要反映了直流母线电压的变化;另一路是芯片U2、单向可控硅VS和电阻R4~R8组成的电压采样电路,该路电压反映了输出电压的变化,当输出电压升高时,经电阻R5及R6分压后输入单向可控硅VS的参考电压也升高,流过芯片U2中发光二极管的电流减小,流过芯片U2中的光电三极管的电流也相应的减小,输入反馈电压降低,导致芯片U1引脚6输出驱动信号的占空比变小,于是输出电压下降,达到稳压的目的。

嵌入式视频处理板是整个系统的核心,它从摄像头获取视频数据,然后经过视频A/D芯片数字化后再交给TMS320DM365处理器,处理器依靠内部集成的H.264高清编解码协处理器HDVICP完成视频的H.264实时压缩编码,输出H.264视频流。ARM端程序接收到H.264视频流,然后按照恰当的封装策略将其封装成RTP包,RT⁃SP服务端程序在接收到客户端请求时,会把这些封装好的RTP包发送给接收端,多个不同平台的客户端在接收到码流后解码并显示,实现视频的实时传输。

系统硬件平台主要由微处理器TMS320DM365、SDRAM、NandFlash、视频A/D芯片、网络芯片以及摄像头等部分组成,TMS320DM365是TI推出的基于达芬奇技术的新一代高清视频处理器,其延续了达芬奇家族处理器ARM+DSP的双核架构,集成了ARM926EJ-S核和DSP核,其中DSP核包含一个H.264高清编解码协处理器HD-VICP和一个MPEG-4/JPEG高清编解码协处理器MJCP,可以支持H.264/MPEG-4的高清视频(1080p@15f/s,720p@30f/s)的实时编解码。考虑到无线情况下带宽的限制,本系统支持QCIF(176×144),CIF(352×288)以及D1(720×576)等不同分辨力的实时视频,以满足多个终端平台的不同需求。系统采用TVP5146为视频A/D芯片,完成模拟视频信号到数字视频信号的转换,其输出数据格式支持10bit4∶2∶2YCbCr和20bit4∶2∶2YCbCr。TVP5146转换后的数字信号经过DM365芯片提供的VP⁃FE(VideoProcessingFront-End)接口直接送至DM365内部集成的H.264硬件编码器进行实时的视频压缩编码,编码输出的H.264视频流再由程序按照RFC3984标准中规定的H.264的RTP负载格式封装成RTP包,然后根据客户端RTSP的请求来进行RTP包的发送。

系统软件实现:本系统的软件开发基于MontaVistaLinux嵌入式操作系统,具有高效、稳定、实时、内核可裁减、支持多种硬件平台等特点。为了方便程序开发,TI针对达芬奇平台提供了达芬奇多媒体应用程序接口(DavinciMultimediaApplicationInterface,DMAI),DMAI封装了底层的驱动,并且提供了易于程序开发的编程接口,使用DMAI开发达芬奇平台下的应用程序,不仅更加快捷高效,而且也使应用程序与底层无关,已经开发好的程序几乎不用更改就可以移植到另外一个器件或操作系统上。

本系统的软件使用了DMAI接口,并且采用了模块化设计,按照功能可以分为以下3个模块:视频采集与编码模块、H.264视频流的RTP封装模块、RTSP服务端模块。2.1视频采集与编码模块视频采集与编码模块的功能由两个线程来完成,分别是capturethread线程和videothread线程,在这两个线程中都使用了DMAI接口,很大程度上方便了程序的开发。一般来讲,嵌入式Linux系统的视频采集都是靠调用V4L2驱动来实现,V4L2是一套用于处理Linux上多媒体设备的标准应用程序接口,通过这些接口,可以对视频输入设备执行打开、读写、关闭等操作。本系统也是使用V4L2驱动来实现视频采集功能,所不同的是,TI在底层驱动的基础上对设备驱动接口进行了二次封装,抽象成几个DMAI接口。应用程序开发者只需要调用这几个DMAI接口,就可以轻松实现对底层设备的访问,而不用关注实现的具体细节问题,从而使开发者可以把主要精力放在对视频的处理和后续功能的扩展上。capturethread线程和videothread线程的通信是通过FIFO机制来完成的,其底层是通过pipe()调用来实现。首先,capturethread线程通过Fifo_get()调用从vid⁃eothread线程获取一个空闲的buffer,经过Capture_get()调用后,这个buffer中就保存有刚刚捕获到的一帧视频数据,然后通过Fifo_put()调用,将这个buffer发送给vid⁃eothread线程进行H.264编码。相应的,在videothread线程中也需要使用Fifo_get(),Fifo_put()这两个接口。

使用DMAI后,视频采集线程的执行流程就变得非的程序就可以通过CodecEngine提供的VISA(Video,Image,Speech,Audio)API接口调用,可在DSP端执行编解码算法,DSP端专门负责各种算法的执行,并通过VISAAPI接口将算法执行的结果返回给ARM端的程序。视频编码线程的执行流程为:1)打开编码器引擎。这个操作是通过CodecEn⁃gine提供的Engine_open()调用来完成,把DSP的可执行程序加载到DSP的内存,同时把DSP从复位状态释放。2)创建H.264视频编码器。这个操作是通过CodecEngine提供的Venc1_create()调用来完成,在使用这个调用时,需要同时传递视频编码器的参数信息,例如,编码器输入的图像大小、帧率、编码后的比特率等。3)编码一帧视频数据。这个操作是通过CodecEn⁃gine提供的Venc1_process()调用来完成,把获取的一帧视频数据传递给DSP,DSP端程序对其执行H.264编码后,再将编码后的数据返还给ARM端指定的buffer。4)关闭H.264视频编码器和编码器引擎。这两个操作分别是通过Venc1_delete()调用和Engine_close()调用来完成,执行这两个操作后,就会释放DSP资源,DSP重新进入复位状态。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1