数字式CMOS摄像头在智能车中的应用

数字式CMOS摄像头在智能车中的应用,第1张

引言

  飞思卡尔智能车比赛已经成功举办4届,以摄像头为主要传感器的参赛队伍大多数选用了模拟CCD或模拟CMOS摄像头。本文介绍了数字式CMOS摄像头MT9M011的性能特点和工作方式,给出了MT9M011在基于HCSl2单片机的智能车控制系统中的应用方案,并分析了数字摄像头的优势和不足。

  1 CMOS图像传感器的特点

  CMOS图像传感器可通过CMOS技术将像素阵列与外围支持电路(如图像传感器核心、单一时钟、所有的时序逻辑、可编程功能和A/D转换器)集成在同一块芯片上。与CCD(电容耦合器件)图像传感器相比,CMOS图像传感器将整个图像系统集成在一块芯片上,具有体积小、重量轻、功耗低、编程方便、易于控制等优点;同时,可通过I2C、SPI接口配置其曝光时间、增益控制等功能,可控性强。因此,CMOS图像传感器的应用已经变得越来越广泛。

  2 MT9M011的性能特点与工作方式

  2.1 MT9M011的基本参数

  MT9M011是一款:MierON公司推出的RGB三基色的130万像素数字式CMOS摄像头,具有可编程控制及数字信号输出等功能。其输出为Bayer彩色格式,图像尺寸为4.6 mm×3.7 mm,像素尺寸为3.6 μm×3.6 μm,最大分辨率为1 280×1 024,支持的最高时钟频率为25MHz;A/D转换精度为10位,最大信噪比为44 dB,在最高分辨率模式下功耗为129 mW。

  MT9M011输出为逐行扫描的数字信号,通过内嵌的10位ADC将模拟视频信号采样量化后同步输出10位数据流。同时,MT9M011还提供像素时钟(PIXCLK)、行有效信号(LVAL)、帧有效信号(FVAL),以及配置MT9M011所需的I2C协议引脚SCLK和SDAT。

  2.2 MT9M011的编程功能

  MT9M011有25个寄存器,涉及摄像头的各个方面,通过与I2C兼容的串行总线时序读写。结合智能车竞赛应用重点介绍以下寄存器:

  ①行起始寄存器(Ox01)和列起始寄存器(Ox02)。这两个寄存器决定输出图像的起始点坐标。利用这两个寄存器可以软件调节摄像头采集到的图像整体位置。

  ②行宽度寄存器(0x03)和列宽度寄存器(Ox04)。MT9M011的一大特色就是输出数据的图像大小可以任意调整。通过这两个寄存器可以针对当前的应用环境(即赛道)设置合适的图像范围。

  ③曝光时间寄存器(Ox09)。该寄存器的值决定了摄像头采集一帧图像时感光元器件的感光时间。通过调整该寄存器值的大小可以直接调整图像的成像质量。

  ④数据读取模式寄存器(Ox20)。该寄存器可以使输出的行数据和列数据减少至1/2或者1/4,也可以使输出的图像镜面对称。

  ⑤增益设置寄存器。它又包含Greenl分量增益设置寄存器(Ox2B)、Blue分量增益设置寄存器(Ox2C)、Red分量增益设置寄存器(Ox2D)、Green2分量增益设置寄存器(Ox2E)和全局增益设置寄存器(Ox2F)5个寄存器。由于RGB分量对同一光源表现出不同的数值,因此需要针对不同的光源情况分别调整前4个寄存器的值,而这也是这款摄像头最大的缺点。

  2.3 MT9M011的数字图像输出

  2.3.1 Bayer彩色格式输出

  MT9M011的输出为Bayer彩色格式(Bayer color pattern)。这种输出格式直接将滤波阵列上每一个像素点对应的保留基色模拟电平值,通过A/D转换后按时序先后输出。图1展示了这种输出格式对应的局部像素点阵。其中,黑色像素点为输出有效数据的第一个点。

 数字式CMOS摄像头在智能车中的应用,第2张


  2.3.2 MT9M011的输出信号时序

  像素数据输出时序和帧与行有效信号时序分别如图2和图3所示。像素时钟与主时钟同频,在一帧图像开始输出时帧有效信号由低电平变为高电平,一帧输出结束时由高电平变为低电平;而行有效信号则在一行数据输出有效时由低电平变为高电平,一行数据输出完成后由高电平变为低电平。根据MT9M0ll的输出信号时序就能正确地采集整帧图像。图3中,P为帧消隐区,A为有效数据区,Q为行消隐区。

 

数字式CMOS摄像头在智能车中的应用,第3张

 

数字式CMOS摄像头在智能车中的应用,第4张 

 3 MT9M011在智能车控制系统中的应用

  3.1 硬件设计

  MT9M011的电平是3.3 V,而HCSl2单片机系统的I/O电平是5 V,因此需要通过电平转换芯片将摄像头输出数据的电平提升到5V。结合MT9M011的输出信号时序关系和HCSl2单片机的特点,本文利用HCSl2的ECT模块提取MT9M011的帧有效信号的上升沿,采用ECT模块对应引脚的普通I/O口功能采集行有效信号的上升沿。MT9M011的数据输出信号有10位,鉴于赛道环境相对简单,只截取高8位作为摄像头信号输出,既可以保证图像分辨率,又可节省HCSl2的存储空间。HCSl2单片机本身带有一个标准的I2C模块,直接使用这个模块与MT9M011的SCLK和SDAT相接。

  3.2 软件设计

  3.2.1 HCSl2单片机I2C模块配置

  HCSl2单片机提供标准的I2C模块,SCLK引脚能产生多种时钟频率,支持主从模式,设有多种标志位以供查询。初始化I2C模块时需要完成以下工作:

  ①设置IBFD寄存器,使产生的SCLK信号能够对MT9M011进行正常的配置;

  ②设置IBEN寄存器位,使能I2C模块;

  ③设置IBCR,确定I2C模块的主、从模式,收、发模式以及是否使能中断功能等。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2472709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-04
下一篇 2022-08-04

发表评论

登录后才能评论

评论列表(0条)

保存