《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 红外方式数字图像采集报警系统的设计
红外方式数字图像采集报警系统的设计
任子真,顾晓明
(沈阳化工学院 计算机学院,辽宁 沈阳 110142)
摘要: 介绍了AT91SAM7S64单片机的主要特点和性能,分析了采用该芯片减少及优化外围电路,提高精度、实时性和可靠性等方面的优势。着重阐述了应用该芯片实现红外控制、自动摄像的软、硬件设计方案,分析了为提高实时性而在软硬件设计方面所采取的措施。
Abstract:
Key words :

摘  要: 介绍了AT91SAM7S64单片机的主要特点和性能,分析了采用该芯片减少及优化外围电路,提高精度、实时性和可靠性等方面的优势。着重阐述了应用该芯片实现红外控制、自动摄像的软、硬件设计方案,分析了为提高实时性而在软硬件设计方面所采取的措施。
关键词: 红外方式;AT91SAM7S64;图像采集

    随着社会经济的发展,人们活水平日益提高。如何保障财产安全成为社会普遍关注的热点问题。虽然各种报警设备涌人市场,但是其中有很多功能不完善,技术不成熟,达不到有效防盗的功效。红外线报警系统是目前应用较广泛的一种报警技术,通过单片机进行智能化控制,大大提高了防盗的效率。单片机控制的红外线报警系统其工作原理是采用红外传感器装置检测防区内人体移动辐射的红外热能,专用红外传感处理集成电路对接收信号进行处理,传递给单片机控制器,单片机进行智能控制后,启动照相机进行拍照。该系统的特点是只要在警戒区空间或非开放时间探测到非法活动人体,就可以立即启动系统进行自动报警。这种报警装置具有误报率低、抗干扰能力强、附带多种功能用途、安全可靠、安装使用方便等特点,适合于家庭、办公室、商场、沿街店面、微型汽车、车库、仓库等场合应用。红外线报警系统设计与视频采集卡等传统图像采集系统相比,嵌入式图像采集系统具有体积小、成本低、可靠性高等优点,在智能交通、远距离监控、计算机视觉等领域应用广泛。本文所设计的嵌入式图像采集系统是采用以ARM7为内核的AT91SAM7S64-AI作为主控芯片,控制CMOS传感OV6620进行图像采集,然后由AT91SAM7S64-AI控制先将图像数据存放入AT45DB041D中,最后将图像采集结果通过多种通信接口进行传输,该图像采集系统仅用一个ARM芯片就实现了对OV6620的功能控制、时序同步、数据采集与处理等功能,系统结构紧凑,功能强大。
1 AT91SAM7S64的特点
    AT91SAM7S64是Atmel公司的32位单片机,具有高性能、低功耗、全速USB2.0接口及丰富的外围接口资源等特点,是连接PC、手机等外设应用的理想芯片。AT91SAM7S64单片机采用纳瓦技术符合业界对低功耗设计的要求。其工作电压范围为2.0 V~5.0 V之间。当频率为32 kHz、电压为2.0 V时,工作电流典型值为8.5 A,当频率为1 MHz、电压为2.0 V时,典型值为100 A。当电压为2.0 V时,看门狗定时电流典型值为1 A[1-2]。
2 硬件组成
    图像采集报警系统由红外报警电路、电源电路、USB接口电路、OV6620图像传感器采集电路、CPU接口电路、CPU外部EEPROM等电路组成,如图1所示。



2.1  处理器
    该系统处理器采用Atmel公司的AT91SAMS64芯片,与其他系列的单片机实现的电路相比,其外围扩展电路极少。报警系统中,与上位机的通信由USB完成,该处理器集成了USB设备的端口,使它成为连接外设的理想芯片,如PC机和手机等。此外图像采集需要传输的数据量较大,AT91SAM7S64有64 KB的高速Flash和16 KB的 SRAM,但在OV6620图像传感器连续采集图像并传输数据时明显空间不充裕,所以需要外接存储器进行数据存储。红外传感器在采集到红外感应信号后经红外传感处理器处理后,输出信号,该信号由0 V~3.3 V的电压跳变可直接连接CPU,AT91SAM7S64经由通用输入输出口接收到信号跳变后,通过I2C与图像传感器OV6620进行通信,获取图像,进而把图像通过8条并行接口回传给CPU,并存入外接存储器中。
2.2  红外信号处理
    红外信号处理部分采用BISS0001红外信号传感处理器,它是由运算放大器、电压比较器和状态控制器、延迟时间定时器、封锁时间定时器及参考电压源等构成的数模混合专用集成电路。可广泛应用于多种传感器和延时控制器。BISS0001利用运算放大器OP1组成传感信号预处理电路,将信号放大。然后耦合给运算放大器OP2,再进行第二级放大,同时将直流电位抬高为VM(≈0.5 VDD)后,送到有比较器COP1和COP2组成的双向鉴幅器,检出有效触发信号Vs。由于VH≈0.7 VDD、VL≈0.3 VDD,所以,当VDD=5 V时,可有效地抑制±1 V的噪声干扰,提高系统的可靠性[3]。在红外报警电路中,当红外传感器接收到信号后经BISS0001处理后由BISS0001的引脚2输出,在此芯片中由于信号输出时测量其引脚为3.3 V故可将该引脚直接连接CPU。红外信号传感电路其电路设计图如图2所示。



2.3  图像传感
    OV6620需要5 V的稳定电压进行供电,它是彩色/黑白图像传感器,通过I2C与CPU之间进行通信,最高像素为352 ×288帧速率为26 fps,一帧2场,每秒约为50场,即每20 ms就有一幅图像产生。它支持连续和隔行2种扫描方式,CIF和QCIF两种图像格式,数据格式包括YUV、YCrCb、RGB 3种,能够满足一般图像采集的需求。OV6620内部有50个可编程寄存器,通过AT91SAM7S64的TWI协议对其进行设置,以中断方式同步图像数据输出OV6620的Y0~Y7通道输出的8位并行数据实时传送给CPU。
2.4  外存储器
    AT45DB041D是一款2.5 V或2.7 V、串行接口的Flash存储器,是各种数字语音、图像、程序代码和数据存储应用的理想选择。AT45DB041D支持RapidS串行接口,适用于要求高速操作的应用。RapidS串行接口兼容SPI,最高频率可达66 MHz。AT45DB041D的存储容量为4 325 376位,组织形式为2 048页,每页256或264字节。除了主存储器外,AT45DB041D还包含2个256/264字节的SRAM缓冲区。缓冲区允许在对主存储器的页面重新编程时接收数据,也可写入连续的数据串。通过独立的“读-改-写”3步操作,可以轻松实现EEPROM仿真(可设置成位或字节)。DataFlash通过RapidS串行接口顺序访问数据,而不像传统Flash存储器那样通过复用总线和并行接口随机存取。简单顺序访问机制极大地减少了有效引脚的数量,有利于硬件布局,增强了系统可靠性,将切换噪音降至最小,为了实现简单的在系统重复编程,AT45DB041D并不需要高输入电压来支持编程。AT45DB041D工作在独立的2.5 V~3.6 V或者2.7 V~3.6 V电压下,用于编程和读取操作[4]。AT45DB041D可通过片选引脚(/CS)使能,并通过3-wire接口访问,3-wire由串行输入(SI)、串行输出(SO)和串行时钟(SCK)组成。所有的编程和擦除周期都遵循自时序。
3 系统软件设计
3.1  系统软件的总体流程

    红外方式数字图像采集报警系统由红外传感器探测出信号跳变通知CPU,从而控制图像传感处理器。由于AT91SAM7S64有32个I/O服用端口故选取其中一个端口PA18作为红外信号接收端口,在CPU中首先设置其为输入端口由于上电后其端口为高电平当红外接收信号触发时经处理后是由低电平向高电平的跳变,所以在I/O端口处应是高电平向低电平的跳变,在芯片初始化后可通过PIO控制器引脚数据状态寄存器判断PA18是否为0。若为0则控制OV6620,否则应继续判断,直到端口为低电平为止,然后进行通信并设置OV6620,当其响应后进行图像获取,并把数据传送给外存储器。其系统主程序框图如图3所示。


3.2 图像传感处理
3.2.1  OV6620的寄存器设置

    TWI的数据发送为单字节发送OV6620功能寄存器的地址是0x00~0x50,其中不少是保留寄存器通过设置相应的寄存器,可以使OV6620工作于不同模式,在TWI数据发送时由于从机地址与从机子地址的存在所以应在TWI_MMR中写入从机地址并设置内部地址长度,在TWI_IADR中写入从机子地址,由于TWI_THR保存发送的数据为8位,故设置OV6620为低分辨率、曝光时间、自动白平衡和设置帧时钟周期,其控制程序如下:
 AT91_F_TWI_Write_Byte
 (const TWI_Mapped,OV6620_addr,0x14,0x20)
 AT91_F_TWI_Write_Byte
 (const TWI_Mapped,OV6620_addr,0x10,0x9A)
 AT91_F_TWI_Write_Byte
 (const TWI_Mapped,OV6620_addr,0x24,0x33)
 AT91_F_TWI_Write_Byte
 (const TWI_Mapped,OV6620_addr,0x25,0x97)
 AT91_F_TWI_Write_Byte
 (const TWI_Mapped,OV6620_addr,0x1,0x02)
   AT91_F_TWI_Write_Byte( )为控制设置寄存器函数,它的第1个参数是TWI的映射地址。在AT91SAM7S64中的宏定义地址为0Xfffb8000,OV6620_addr为宏定义的从机芯片地址0XC0<<16,第3个参数为OV6620的内部寄存器地址,第4个参数为相应的寄存器设定的值。
3.2.2  OV6620的采集过程
   OV6620有4个同步信号:VSYNC(垂直同步信号)、FODD(奇数场同步信号)、HREF(水平同步信号)、PCLK(像素同步信号)。当采用连续扫描方式时,只使用VSYNC和HREF、PCLK 3个同步信号[5-6]。AT91SAM7S64的1个外部中断引脚VSYNC信号的输入,相应的中断服务程序分别为VSYNC_IRQ( ),HREF接AT91SAM7S64的普通I/O口。图像采集的过程为:当用TWI初始化0V6620后,使能VSYNC对应的中断,等待CPU读取一帧的图像在VSYNCIRQ( )中断服务程序中判断是否已取得一帧图像数据。若不是,继续等待知道完全传送一帧图像数据为止。完成后把每接收到一帧的数据再存储到外存储器中。
3.2.3  图像提取过程
 图像提取的过程为:当采集数据已经存放在外存储器中,利用CPU取出数据,再传输给上位机。先对外存储器进行读复位,使外存储器的指针指向首地址,再根据OV6620所输出RGB数据的格式进行读取。其中,提取过程最重要的是OV6620所输出RGB数据格式,它影响到提取图像的准确性。本系统应用的是8位输出,其数据格式如表1所示。


    从表1中可以看出,第一行Y通道是无效数据应该去除。从第二行开始读取,在一行之内,B、R数据只在奇次项出现,G数据只在偶次项出现。而在每一行内,偶数点的R数据、B数据可通过分别对其两侧的2个点的R和B数据求平均值得到。这样,一幅图像就提取完了,可以直接存成二进制文件。
4 软件设计的难点与不足点
    由于AT91SAM7S64 芯片的价格低廉,且在图像采集过程中消耗MCU 的资源大,所以不免存在某些资源有限的问题。在软件设计过程中程序空间不足是设计的瓶颈,此外在红外信号处理部分并不是无间断的连续红外感应而是需要间隔一段时间,但是间隔的时间约为10s左右,考虑到该系统为报警防盗系统的实际情况其时间间隔应在合理的范围内。在图像传感及处理部分,图像的去噪尧黑线提取等只在设置寄存器中不断试验从而达到最好的效果,并没有在程序中自动完成。所以在以上这些方面还需要不断完善。本设计采用AT91SAM7S64 单片机,它具有丰富的外设,同时集成了USB 接口模块,减少了外围电路、降低了成本遥利用硬件平台。AT91SAM7S64 和OV6620 摄像头进行图像采集,以及将采集到的图像数据存储到外存储器、与普通的视频采集卡相比,该嵌入式图像采集系统极大地简化了系统结构,降低了系统设计成本,缩短了开发周期曰图像数据的采集与处理均由ARM 芯片完成,因而降低了数据中转过程中传输错误的几率,提高了系统的可靠性。

参考文献
[1] AT91SAM7S64 data sheet AT91 ATM/Thumb-based micro,controllers.2004.
[2] 马忠梅.AT91 系列ARM 核微控制器结构与开发[M].北京院航空航天大学出版社,2003.
[3] 陈永甫.红外探测与控制电路[M].北京:邮电出版社,2004.
[4] AT45DB041D Data Sheet.ATMEL Corporation.2007.
[5] 吴晴,周建.嵌入式图像采集的系统的设计与实现[J].电子测量技术,2007,30(6):89-92.
[6] OV6620 Data Sheet. OMNIVISION Technologies Inc.1999.

此内容为AET网站原创,未经授权禁止转载。