|
视觉技术是近几十年来发展的一门新兴技术。机器视觉可以代替人类的视觉从事检验、目标跟踪、机器人导向等方面的工作,特别是在那些需要重复、迅速的从图象中获取精确信息的场合。尽管在目前硬件和软件技术条件下,机器视觉功能还处于初级水平,但其潜在的应用价值引起了世界各国的高度重视,发达国家如美国、日本、德国、法国等都投入了大量的人力物力进行研究,近年来已经在机器视觉的某些方面获得了突破性的进展,机器视觉在车辆安全技术、自动化技术等应用中也越来越显示出其重要价值。本文根据最新的CMOS图像采集芯片设计了一种通用的视觉系统模块,经过编制不同的图像处理、模式识别算法程序本模块可以应用到足球机器人,无人车辆等各种场合。 二、设计原理 系统原理框图如图1所示。
三、图像采集模块 系统模块以CMOS图像传感器OV7620为核心,还包括一个聚光镜头和其他一些辅助元器件比如27MHZ的晶振,电阻电容等。 COMS图像传感器是近几年发展较快的新型图像传感器,由于采用了相同COMS技术,因此可以将像素阵列与外围支持电路集成在同一块芯片上,是一个完整的图像系统(Camera on Chip)。本系统采用的是Ommnvision公司推出的一块CMOS彩色图像传感器OV7620,分辨率为640x480。它能工作在逐行扫描方式下,也能工作在隔行扫描方式下。它不仅能输出彩色图像,也可用作黑白图像传感器。这块芯片支持的图像输出格式有很多种:1)YCrCb4:2:2 16 bit/8 bit格式;2)ZV端口输出格式;3)RGB原始数据16 bit/8 bit;4)CCIR601/CCIR656格式。其功能包括有对比度、亮度、饱和度、白平衡及自动曝光、同步信号位置及极性输出,帧速率和输出格式等都可以通过I2C 总线进行编程配置片内寄存器控制。 聚光镜头选用桑来斯公司生产的DSL103镜头。此镜头体积小,适合嵌入式视觉传感器的应用场合。 四、FPGA接口模块 FPGA采用Xilinx公司的xc2s100,这款芯片内部集成了10000个逻辑门。接口程序采用VHDL(Very High Speed Integrated Circuit Hardware Description Language)书写。为了提高数据的传输速率,在xc2s100 内部分配了2个双口RAM缓冲区,其大小为127KB,每个双口RAM存储1行的图像数据。两组双口RAM进行奇偶行计数器进行切换。当一行存储完毕后,立即向SH4传生一个读取该行数据的中断的申请信号。FPGA内部结构如图2所示。
这里给出双口RAM的构造及读写控制程序: Entity dual_port_ram is Generic(d_width:integer:=2; Mem_depth:integer:=8); Port(clk:in STD_LOGIC; CS:in STD_LOGIC; We: in STD_LOGIC; Indata: in STD_LOGIC_VECTOR(7 downto 0); Outdata:out STD_LOGIC_VECTOR(7 downto 0); Raddr,waddr:in STD_LOGIC_VECTOR(1 downto 0)); End dual_port_ram ; Architecture data of dual_port_ram is Type mem_type is array(3 downto 0) of STD_LOGIC_VECTOR(7 downto 0); Signal mem:mem_type; Begin Process(clk,we,waddr) Begin If(rising_edge(clk))then If(we='1')then Mem(conv_integer(waddr))<=indata; End if; End process; Process(raddr,clk) Begin If(rising_edge(clk))then If(CS='0')then Outdata<=mem(conv_integer(raddr)); End if; End if; End process; End data; 在MAX Plux II中的波形仿真图如图3所示:
本系统采用SH4芯片作为处理器:SH4单片机是日立公司推出的一款低功耗、高性能,RISC(精简指令集计算机)结构的全32位单片机。其处理速度可高达60M IPS一100MIPS,能在2.25v电压下工作,功耗仅400MW片内集成有32位乘法器、4路5KB CACHE、存取器管理单元MMU和其它一些通用接口及时钟电路等。日立公司为SH4系列单片机提供了c及c++语言集成编译工具HIM(Hitachi IntegrationManag)。利用它可以将日立C、C++格式的源程序编译链接为汇编程序或目标机器码. 图像传感器芯片OV7620具有灵活的可编程功能,可通过I2C总线对其进行编程来设置各功能寄存器。由于单片机没有内部硬件I2C总线接口,所以只有采用软件模拟的方法实现I2C总线接口功能。取作为SH4的两个I/O引脚作为I2C总线的SCL和SDA总线器件接口,示例程序如下: unsigned char rdiic (unsigned char addr);读取数据 void iic_init();初始化 void iic_start();起始信号 void iic_stop ();结束信号 void delay4u();延时 举例 iic_init();/*初始化总线寄存器*/ rstcamera ();/*复位OV7620内部寄存器*/ wriic (0x11,0x15); /*设置OV7620内部寄存器0x11 的值为0x15*/ delay4ux6(); wriic (0x28,0x60); /*设置OV7620内部寄存器0x28 的值为0x60 */ delay4ux6(); 本模块采用了人类可以识别的ASCII串口通讯协议从而可以通过上位机方便的和人进行交互通信。当连接到一台计算机上,本模块可通过串口上传整幅原始图像数据,用来进行系统调试或更高级得图像处理。 六、结束语 本文采用大规模集成电路芯片组成了一个简洁,低价的图像采集处理系统。本系统经过编制不同的图像处理算法程序可以应用在足球机器人,农产品检查机器人等不同场合。但其也有些不足,比如SH4处理器,运算速度不够快,只能运行一些相对简单的算法,不支持以太网接口等。下一步工作计划采用双CPU结构,其中DSP专职处理图像数据,ARM负责网络通信,以及对机器人行为的控制等。这样就可将机器人的“眼睛”通过以太网连接成一个复杂的协同处理的视觉系统,以适应更为复杂的场景的需要。 参考文献 1、OV7620 single-chip CMOS CIF color digital camera Data Sheet. OmmVision,2001 2、王红军。机器视觉-现代工业的眼睛。机电一体化。1999.3 3、钟玉琢等。 机器人视觉技术。 北京:国防工业出版社,2002 4、李振玉。图像通信与监控系统。 北京:中国铁道出版社,2001(end) |
|||
| 技术录入:admin 责任编辑:admin | |||
|
|
|||
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||
|
|
|||
|
|||
|
|
|||
|
|||
|
|||
|
|




