一般而言,工业相机丢帧与工业相机所采用的传输接口是没有关系的,无论是USB,还是1394、GIGE、或者是cameralink,设计不良的驱动程序或工业相机硬件才是造成丢帧的真正原因。设计不良的工业相机之所以会发生丢帧的现象,其实就是资料通道的堵塞,无法及时处理,所以新的图像进来时,前一张可能被迫丢弃,或是新的图像被迫丢弃。要解决这问题,需要设计者针对驱动程序与工业相机硬件资料传输的每个环节进行精密的设计。
图像信号堵塞的地方有三个:
1、工业相机的部分
图像传感器传送图像到相机上的USB芯片,USB再传送给PC端,如果PC端系统太忙碌,来不及处理接收的图像,而图像传感器又持续传送新的图像资料,这时工业相机就要有足够的记忆体缓存,反之就会产生丢帧现象。
2、视觉软件程序部分
视觉软件对于等待计算的图像空间,有无缓冲的机制,以加大图像的缓存争取缓冲的时间,让程序的运算来得及处理,但若稳定的运作情况下,CPU的整体处理速度比图像进来的速度慢,那缓存总有超载的时刻,就会有丢帧的情况发生。
3、硬件PC系统部分
这部分偏重PC硬件驱动程序,跟视觉软件程序无关,PC端的接收最关键就是驱动程序的效率,以及WINDOWS有多少内核模式下的线程在瓜分CPU的时间,接收的效率不好,工业相机又没有足够的缓冲记忆体,就会造成丢帧的现象。
工业相机的帧速非常快,实际上工业相机的缓存不会像PC的程序可以无限制的加大,只要有足够的容量用以调节系统“暂时”的繁忙就够了。USB工业相机会丢帧,只有一种情况就是机器视觉软件运算的速度比工业相机图像进来的速度还慢,时间长了软件缓存堆满了,无法再存放新图像但这是系统掉资料,不是工业相机掉资料。在这种状况不论使用1394接口的工业相机,还是USB接口,又或者是GigE接口,任何接口的工业相机都会得到相同结果。
楼主最近还看过