基于OV7670的网络图像传感器设计与实现

2014-12-12 10:58杜宝祯吴志荣曾佳
中国科技纵横 2014年21期
关键词:模组嵌入式宁波

杜宝祯 吴志荣 曾佳

(1.宁波职业技术学院 电信学院 物联网工作室,浙江宁波 315800;2.宁波职业技术学院 电信学院,浙江宁波 315800)

基于OV7670的网络图像传感器设计与实现

杜宝祯1吴志荣2曾佳2

(1.宁波职业技术学院 电信学院 物联网工作室,浙江宁波 315800;2.宁波职业技术学院 电信学院,浙江宁波 315800)

文章提出了一种基于OV7670的网络图像传感器节点软硬件平台的设计方案。该方案构建了以Cortex-M3处理器STM32F103RBT6和uCosII 为核心嵌入式软硬件平台,通过OV7670模块实现图像数据采集。针对网络传输问题,采用了基于IEEE802.11b/g标准的WIZ610wi无线网络模组,实现数据的远程传输。

STM32F103 图像传感器 OV7670 无线网络模组

1 引言

近年来,随着工业级的网络化测控系统的不断发展,人们对生产检测和控制的要求不断提高,在自动化测量、安全监控、设备检测等工业测控领域,都需要有性能良好、成本低廉、可大面积布控的网络图像传感器用于现场图像数据采集的工作。鉴于实际工业现场布控的需求,本文提出了基于STM32F103RBT6及OV7670的网络视频传感器软硬件平台的设计方案,具有一定的通用性。

图1 传感器平台硬件结构图

图2 传感器平台软件体系结构

图3 wireshark数据分析

2 传感器硬件平台设计

网络传感器节点设计需要考虑的因素有成本、体积、功耗、扩展性、处理能力和抗干扰能力等几个方面的因素。由于图像传感器节点在网络测控系统中承担着图像数据采集压缩和网络通讯两大任务,因此要求传感器的硬件平台要有具有优良的网络性能和强劲的计算能力。通过综合考虑常用的8位、16位和32位控制器芯片,本文采用了ST公司的STM32F103RBT6,外围设备主要包括RAM、FLASH存储器模块、OV7670图像采集模块以及WIZ610wi无线网络模组等。控制器的硬件平台结构如图1所示。

2.1 STM32F103RBT6处理器

STM32F103RBT6采用32位Cortex-M3系统架构,电压范围2.0-3.6V,主钟频率72MHz, 片上系统资源和外围接口非常丰富,包括外部存储器控制器、电源管理控制器、UART控制器、SDIO控制器、8个定时器3通道UART、两通道SPI同步串行总线、2个I2C接口、CAN接口(2.0B主动)、USB 2.0全速接口、4通道DMA、2个12bit模数AD转换器(多达16个输入通道)、8个定时器、80个快速IO,具有睡眠、停机和待机三种模式。该芯片在功耗方面性能优异,性价比很高,具有实时性好、高性能、低功耗、极低成本、稳定等诸多优点,在智能家电、汽车电子、医疗器械、消费类电子、无线网络等领域应用广泛[1]。

2.2 外围电路设计

控制器外围电路主要由电源模块、存储器电路模块、JATG调试电路以及通信模块的等构成[2]。存储器电路模块采用一片K9F1208芯片(64Mbyte)作为Flash,另外采用采用HY57V561620FTP SDRAM芯片作为系统的内存[2]。数据采集部分采用OV7670图像传感器模块,通过SCCB接口与主控制器通信,实现图像数据的采集工作。通信部分采用内置TCP/IP协议栈的WIZ610wi模块,以UARTWifi桥方式,实现了wifi接口的设计;同时设计了USBhost接口电路,为近一步实现海量数据存储提供接口。

3 视频传感器平台软件平台设计

3.1 软件平台整体结构

目前,几乎所有嵌入式产品在开发中都移植了微型操作系统,来管理和调度软硬件资源,同时便于后期产品功能的扩展。通过综合考虑处理器性能和软件功能,本文采用了精简的UCOS-II作为系统软件平台支撑。传感器节点软件体系结构如下图2所示,系统的软件部分最底层为设备驱动程序层,主要完成处理器的初始化和各外设电路模块的驱动功能;第二层为嵌入式操作系统UCOS-II,主要用于管理系统软硬件资源、调度底层接口驱动和为上层应用提供API接口[3];第三层为应用程序层主要包含OS级别的系统调用、控制算法、数据采集和网络通讯等功能实现。

3.2 OV7670图像传感器模块软件设计

OV7670是一款适用于嵌入式领域的高灵敏度低照度的CMOS传感器,其内部集成有640x480的感光阵列、模拟信号处理、A/D转换、测试图案发生器、数字信号处理器、图像缩放、时序发生器等驱动模块,采用标准SCCB接口通信方式,兼容I2C接口,因此极大的精简了硬件设计且编码控制功能非常丰富[4,5]。在图像采集前,首先调用unsigned char OV7670_init(void)函数实现OV7670内部芯片的初始化,主要是调用ov7670_GPIO_Init();SCCB_GPIO_Config();CLK_init_ON()等函数完成基本配置,程序判断返回值1,则表示初始化成功。另外 摄像头的图像帧频、输出分辨率、数据格式等参数都可以通过写OV7670内部寄存器实现,具体写操作函数为uchar wrOV7670Reg(uchar IDreg,uchar Dat)函数。图像采集主要以中断函数void ov7670_Interrupts(void)实现,在这之前通过void Interrupts_Config(void) 完成中断优先级和中断向量的配置。图像采集的数据先缓存到FIFO中,之后再周期性批量转存储到FLASH,完成图像数据的采集和存储工作。

3.3 无线网络通信模组设计与实现

无线通信模块可以采用,蓝牙、红外、射频、zigbee、wifi等方案,从主流程度、技术成熟度以及未来技术发展趋势等角度考虑,本文直接采用支持wifi通信的网关模块,实现通过MII、UART到IEEE802.11b/g wifi的无线通信[6,7]。经过调研和实验测试,本文采用WIZ610wi模组作为无线网络通信的核心模块,该模块内置ARM微控制器和TCP/IP协议栈的固件程序,最大程序降低传感器MPU的软硬件负担,可直接作为网关模块提供RS-23 2 C到IEEE802.11b/g的无线通信的桥接,且最大传输速度为25Mbps。WIZ610wi模组使用要注意,将其设置为Client模式,并需要设置波特率、数据位数、停止位、奇偶校验位、流控制选项,与传感器串口输出相匹配。网络通讯采用TCP协议方式,并将该节点设置为web server模式,端口号为20000。完成配置以后,WIZ610wi将作为UART-Wifi桥,通过串口接收来自传感器的数据,再通过自身wifi模块,将数据打包发送出去。

图3为使用截包工具wireshark,对网络图像传感器发处的数据进行抓包数据分析图。结果表明,传感器节点与客户端握手成功,图片数据发送正常。

4 结语

本文论述了基于STM32F103RBT6微控制器和OV7670网络图像传感器平台的设计与实现方法,构建了系统的软硬件平台,对OV7670模块的驱动方法、WIZ610wi配置方式进行了详细论述。目前,基于图像和视频数据传输的网络传感器研发是测控领域的一大热点。测试结果证明,该方案是可行的,可满足普通图像网络化采集的需要,应用前景广阔。

[1]STMicroelectronics Co.Ltd. STM32F103VE DATASHEET [DB/OL].[2011-04-05].http://www.st.com/inte rne t/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00191185.pdf.

[2]周立功,王祖麟,陈计明,等.ARM嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2008.

[3] 周立功.uCOS-II微小内核分析与程序设计[M].北京:北京航空航天大学出版社,2008.

[4]邵华等.基于嵌入式系统的高分辨率图像处理系统[J].软件导刊,2012,(1).

[5]魏旭可.基于STM32单片机的光谱仪数据采集与处理系统[D].中国海洋大学,2012.

[6]张卫华.基于STM32的灌区监测系统的研发[D].西北农林科技大学,2013.

[7]刘磊.基于无线传感器网络的视频传输技术研究[D].华北电力大学,2011.

A hardware and software?platform design scheme based on OV7670 image network sensor node was proposed. The program was built embedded hardware and software platform,using the Cortex-M3 processor STM32F103RBT6 as core,running the uCosII operating system, using OV7670 image sensor to capture image data.Meanwhile,the WIZ610wi wireless network module based on IEEE802.11b/g standard was adopted to facilitate the remote data transmission.

STM32F103; Image Sensor;OV7670;Wireless network module

宁波职业技术学院2013年科研项目资助,项目编号NZ13028ZF;课题负责人:杜宝祯。

杜宝祯(1985—),男,单位:宁波职业技术学院电子信息工程系,教师,学历:硕士研究生,研究方向:嵌入式网络化测控系统。

猜你喜欢
模组嵌入式宁波
一图读懂宁波
拖起明天的希望
光学薄膜技术及在背光模组中的应用研究
聚焦·宁波
浅谈石墨烯材料在LED路灯模组中的应用及该模组的设计
搭建基于Qt的嵌入式开发平台
关于超薄LED背光模组设计探讨
嵌入式软PLC在电镀生产流程控制系统中的应用
Altera加入嵌入式视觉联盟
倍福 CX8091嵌入式控制器