Basler acA640-90gm是一款30万像素90帧千兆网黑白工业相机。是由德国Basler公司制造的ACE系列工业相机中的一款。其主要参数如下:
Basler acA640-90gm
这款相机,使用Basler自已的驱动加图像采集软件,可以很轻松的完成图像的采集,并且不挑卡,各种属性也都可以使用并设置。
使用Baler Pylon软件采集图像OK
使用Basler Pylon软件采集图像属性丰富AOI可调
但是如果更换到NI Vision中采集时,就多少都有一些问题。Basler的这款acA640-90gm工业相机支持多种驱动,如GigEVision,Direct Show,TiWan等。安装好驱动后,通常会在NI MAX中出现两个相机,一个是使用GigEVision接口进行驱动的,另一个是使用DirectShow驱动的。理论上来讲,这两种驱动方式,在NI MAX中都应该是可以驱动的。但是很遗憾,GigEVision的驱动并不能很好的驱动相机,点击后会弹出无法连接的对话框。
Basler acA640-90gm工业相机无法使用GigEVision驱动
如果使用Direcshow驱动程序进行驱动,则可以驱动相机采集图像:
Basler acA640-90gm工业相机使用DirectShow驱动
虽然可以使用DirectShow驱动相机,但是在视频模式中,看到其最大的视频模式是660*494像素,使用此模式采集图像后,图像会错乱:
Basler acA640-90gm使用660*494 YUY2 90.00fps视频模式采集图像
从上图中看到,图像是仲倾斜的,而且越往上,左右错位越严重。这里可以需要理解成相机的成像时,从最下面一行开始,从左往右成像。从工业相机的参数中知道,图像传感器有效分辨率是659*494像素。而在NI MAX中,将相机的分辨率驱动成了660*494像素,这样第一行需要从第二行借一个像素上来补充才可以。然后第二行本身被第一行借了一像素,就得向第三行借两个像素。这样往上走,图像就越往左倾斜。
当设置成640*480的分辨率时,就可以比较正确的采集图像:
Basler acA640-90gm使用640*480 YUY2 92.29fps视频模式采集图像
虽然使用DirectShow可以采集图像,但是其可供设置的属性则非常有限:
使用DirectShow模式驱动相机,设置的属性有限
从图上看到,使用DirectShow模式驱动相机时,可供设置的属性只有亮度,曝光、快门,连AOI都可以设置。
当然,这个只是针对当前的台式电脑里的状况,在其它电脑上,则情况又可能会有不同,在一台笔记本上,使用Realtek的千兆网卡,使用GigEVision驱动相机时,虽然无法采集图像,但是可以得到大部分的相机属性;而使用DierctShow的模式,则无法采集图像,好像NI看不起Realtek似的。而台式机上,则使用Intel、Realtek的网卡,都可以使用DirectShow采集图像。据了解,有些人可以使用GigEVision驱动相机,但是无法使用DirectShow驱动相机。这里可能需要考虑的情况有很多方面,如相机的驱动Pylon有多个不同的版本,每个版本的驱动都有可能不一样。会造成一些功能上的不同。
网卡的驱动程序,也有可能有多种,如下图所示:
Intel 千兆网卡驱动程序
如果使用Intel的千兆网卡,则有可能有多种不同的驱动程序,如Basler、Intel、NI等网卡驱动。选择不同,效果上可能会有出入,只是在本次实验中没有发现区别。
NI IMAQdx驱动版本也有可能不同,会造成功能上的差异。NI每年都会出一两版IMAQdx驱动。其中有区别有差异也是非常可能的。
操作系统上的差异。现在有些人在用WIN XP,有些人在用WIN7,有人用32位,有人用64位,这些都会造成使用上的差异。
如果遇到无法采集图像的问题,只能是具体情况具体分析,没有万能解决方案的。