您当前的位置:首页>>行业资讯

    USB相机应用所碰到故障现象和排除

    故障相机显示画面撕裂、断层等现象

     

    这种现象主要是由于计算机USB总线带宽不足引起的。USB2.0的理论带宽为480Mbps,即480/8 = 60MB/S;但由于USB为共享式总线,当多个USB设备连接在同一台计算机时会抢占用有限的总线带宽。另外,在USB数据通信的过程中,总线上传输的并不只是真正需要的数据信息,还要包括诸如同步信号、类型标识、校验码、握手信号等各种协议信息。因此实际数据传输的速率根本没有可能达到总线传输的极限速度480 Mbps。一般实测极限速度不会超过45MB/S。

    另外,由于工业相机不同于采用压缩图像传输方式的普通Web Camera,它采用非压缩方式的裸数据传输,因此需占用较大的数据带宽。

    相机占用带宽(MB/S)= 行像素×列像素×帧率×像素比特×相机个数/8/1024/1024

    其中,不同数据格式对应的像素位数参见下表

    相机数据格式

    比特/像素

    Y800

    8

    BY8

    8

    Y411

    12

    UYUV

    16

    表1 数据格式与位数关系

     

    例如:使用单台30万像素黑白工业相机DMK21BU04,其最大占用带宽为:

         640×480×60×8×1/8/1024/1024 = 17.58MB/S

     

    当相机所需占用带宽大于总线带宽时,就会引起不稳定现象。为解决该问题,需要合理配置计算机和相关设备。下面将详细说明:

    l  1.1安装Processor Idle State Manager

    现在很多的CPU都具有多种省电模式,当CPU负载较低的时候,CPU将自动进入省电模式,受此影响,eSATA、火线、USB总线将同样减慢传输速度。但是我们的相机始终按理想状态以全速率的模式传输数据包,由于瓶颈效应导致数据丢失而未能存储到内存中,导致出现“设备处于直播模式,但无数据传输”的提示,或画面出现撕裂、断层等现象。

    对于Intel的处理器我们可以使用“Processor Idle State Manager”软件来关闭C3省电模式。

    Processor Idle State Manager是ImagingSource推出的一款小工具软件,安装后常驻系统后台。当检测系统插入了ImagingSource系列相机,其自动激活,强制关闭C3模式---- CPU退出低功耗状态,将工作于较高的负荷,其发热量可能会有增加,但提高了整系统的带宽瓶颈;当拔出相机时,该软件关闭,系统恢复正常模式运行。

    l  1.2 CPU和软件环境

    前面提到,为安装Processor Idle State Manager,计算机最好使用Intel的CPU;另外,作为工业应用的PC软件系统也不宜安装杀毒软件等。

    l  1.3 计算机设置

    在电源属性中禁用各种休眠模式


    在BIOS设置中,需根据主板选择禁用一些省电设置。

    一般在BIOS电源管理设定 (Power Management Setup)中选择。

    Ø  Power Management (电源管理方式) 

    此项用来选择节电的类型。缺省值为∶User Define(用户自定义),设定值有∶ User Define (用户自定义);Min Saving (停用1小时进入省电功能模式);Max Saving (停用10秒进入省电功能模式)。

    Ø  Suspend Mode(挂起方式)缺省值为∶Disabled (禁用)。 

    设定PC多久没有使用时,便进入Suspend省电状态,将CPU工作频率降低,并通知有关省由设备以便一并进入省电状态。

    Ø  HDD Power Down (硬盘电源关闭模式)缺省值为Disabled (禁用); 

    设置硬盘电源关闭模式计时器,当系统停止读或写硬盘时,计时器开始计算,过时后系统将切断硬盘电源。一旦又有读写硬盘命令执行时,系统将重新开始运行。

    l 1.4  USB线材

    所使用USB线品质不够好会导致没有图像数据或实时图像而导致丢帧,这种情况下首先建议更换高质量的带屏蔽层、扼流磁环的USB线,且长度不应超过3m;此外,在工业环境安装相机时,需注意将USB数据电缆和动力用电线缆(电源、电机)分开捆绑。

     

    故障相机显示画面黑屏并出现如下提示


    该模式表明相机虽然已经启用,但无数据传输,因此无法显示画面。一般发生在启用了第一台相机后,再添加准备使用第N台时出现的界面。此时,前面所启用的相机已经几乎占用了整个数据带宽,因此没有足够的带宽资源开启剩下的相机。

    解决办法:

    1、重新安装最近版本的USB相机驱动;

    2、尝试使用故障1所描述的各种方法;

    3、建议客户降低帧率使用;

    4、如以上方法仍无法解决问题,但仍坚持使用USB相机,可使用PCI转USB卡。其中一台相机接主板USB口,另一台接PCI卡上,有利于缓解南桥USB接口带宽压力;

    5、实在无法满足需求,建议客户更换为1394或GigE系列相机。

     

    故障3 相机频繁掉线

    l 3.1 尝试使用故障1,故障2所描述的各种方法;

    l 3.2 注意USB端口及电气连接

    首先必须明确一点,为保证稳定,使用工业USB相机,其端口应该插入主机背后的主板上端口,而不要接入前面板上的插口。

         使用USB的外部触发扩展应用时,需注意电路连接,防止不期望的干扰引入系统,下面将做详细分析:

         通常作为相机外部触发源的工业设备(数字IO卡、运动控制卡、光电开关等)输出接口采用一种叫做开漏输出(Open Drain)的电气结构,它无法直接输出一个高低电平,而只是提供一个上拉或下拉信号。该端口按照工作类型可分为NPN和PNP输出两种。

           SHAPE \* MERGEFORMAT

    Vcc +12V

    同轴屏蔽电缆

    电缆芯线

    电缆屏蔽层

    NPN

    PNP




    虽然图中两种方案都可用,但实际的工业环境应用却有差异,因此我们比较一下图3.1中两种电路的差异:

    上图采用NPN的方案,由于只能将屏蔽层作为信号,反而作为被屏蔽的芯线为电源,暴露在外层的信号很容易被周围电磁干扰,导致误触发现象;

    下图采用PNP的方案,接地的外屏蔽层可有效保护内芯的脉冲信号不受干扰,可靠性较高。

    因此推荐使用PNP输出型的方案。

     

    l 3.3 软件重启相机

    有时相机会出现莫名的“死机”现象,但在设备管理器中可见该设备,重启应用软件即可恢复正常,这时可以使用软件重启的方式处理该问题。

    VB编程环境下,相机每有效传输一幅画面,都会进入

    ICImagingControl1.ImageAvailable 事件,在该函数中配合Timer的计数器即可检测出图像传输是否超时。超时,即可认为相机失去响应,此时使用软件即可软件重启相机。

    ICImagingControl1.LiveStop()          ‘停止相机                                            
    ICImagingControl1.LiveStart()         ‘重新启用相机                                        

     

    故障4 多相机应用时遇到的问题

    我们原则上不建议客户使用多台USB连接在PC上工作----可能会不稳定。建议使用1394接口的相机,配PCI或PCIE的接口卡,这样可以有效将数据压力分散至PCI和PCIE总线上,且总线带宽更大更稳定。

    当由于成本或其他压力,不得不构建多USB相机图像处理系统时,为保证系统稳定工作,用户必须考虑图像采集时的各种注意事项。

    使用2台分辨率为500万像素的DFK72 (A/B)UC02构建采集系统,由于相机为USB接口,一定要考虑带宽问题:

    1、         防止计算机CPU进入C3低功耗模式降低端口带宽,保证传输稳定,要求客户一定使用Intel的CPU,并且安装Processor Idle State Manager;

    2、         USB为带宽共享型接口,因此尽量不要在USB上接入其他设备,尤其是U盘、移动光驱、移动硬盘等大数据交换类;

    3、         降低相机带宽需求。2台相机无法在满帧率状态下同时启动-----至少会有一台相机会出现无响应的现象,这是由于USB总线带宽不足引起的。最简单的办法是设置相机的帧率,通过测试,双相机在500万分辨率、<3FPS的帧率下可以做连续采集运行。当然,帧率设置越低,输出速度就越慢,但越稳定;

    4、         合理利用系统带宽。可将相机设置为触发模式后开启,然后通过硬触发或软件触发方式分别间隔采集,这种方法可以进一步提高帧率。

    5、      使用高质量的PCI转USB接口卡,其中一台相机接主板USB口,另一台接PCI卡上,有利于缓解南桥USB接口带宽压力。