<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于FPGA的機器人視覺(jué)系統模塊的設計

基于FPGA的機器人視覺(jué)系統模塊的設計

作者: 時(shí)間:2017-06-06 來(lái)源:網(wǎng)絡(luò ) 收藏
一、概述

  視覺(jué)技術(shù)是近幾十年來(lái)發(fā)展的一門(mén)新興技術(shù)。機器視覺(jué)可以代替人類(lèi)的視覺(jué)從事檢驗、目標跟蹤、導向等方面的工作,特別是在那些需要重復、迅速的從圖象中獲取精確信息的場(chǎng)合。盡管在目前硬件和軟件技術(shù)條件下,機器視覺(jué)功能還處于初級水平,但其潛在的應用價(jià)值引起了世界各國的高度重視,發(fā)達國家如美國、日本、德國、法國等都投入了大量的人力物力進(jìn)行研究,近年來(lái)已經(jīng)在機器視覺(jué)的某些方面獲得了突破性的進(jìn)展,機器視覺(jué)在車(chē)輛安全技術(shù)、自動(dòng)化技術(shù)等應用中也越來(lái)越顯示出其重要價(jià)值。本文根據最新的CMOS圖像采集芯片設計了一種通用的模塊,經(jīng)過(guò)編制不同的圖像處理、模式識別算法程序本模塊可以應用到足球,無(wú)人車(chē)輛等各種場(chǎng)合。

  二、設計原理

  系統原理框圖如圖1所示。

  系統包含5個(gè)主要芯片:圖像采集芯片OV7620,高速微處理器SH4,大規??删幊剃嚵?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/FPGA">FPGA,和串口通訊控制芯片MAX232。內部編程設立兩個(gè)雙口RAM,產(chǎn)生圖像傳感器所需的點(diǎn)頻,行場(chǎng)同步等信號,以及控制雙口RAM的存儲時(shí)序。SH4負責對OV7620通過(guò)I2C進(jìn)行配置,讀取雙口RAM的圖像數據,進(jìn)行處理,并通過(guò)串口實(shí)現圖像資料的上傳或控制步進(jìn)電機等其他設備。

  三、圖像采集模塊

  系統模塊以CMOS圖像傳感器OV7620為核心,還包括一個(gè)聚光鏡頭和其他一些輔助元器件比如27MHZ的晶振,電阻電容等。

  COMS圖像傳感器是近幾年發(fā)展較快的新型圖像傳感器,由于采用了相同COMS技術(shù),因此可以將像素陣列與外圍支持電路集成在同一塊芯片上,是一個(gè)完整的圖像系統(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格式。其功能包括有對比度、亮度、飽和度、白平衡及自動(dòng)曝光、同步信號位置及極性輸出,幀速率和輸出格式等都可以通過(guò)I2C 總線(xiàn)進(jìn)行編程配置片內寄存器控制。

  聚光鏡頭選用桑來(lái)斯公司生產(chǎn)的DSL103鏡頭。此鏡頭體積小,適合嵌入式視覺(jué)傳感器的應用場(chǎng)合。

  四、接口模塊

  FPGA采用Xilinx公司的xc2s100,這款芯片內部集成了10000個(gè)邏輯門(mén)。接口程序采用VHDL(Very High Speed Integrated Circuit Hardware Description Language)書(shū)寫(xiě)。為了提高數據的傳輸速率,在xc2s100 內部分配了2個(gè)雙口RAM緩沖區,其大小為127KB,每個(gè)雙口RAM存儲1行的圖像數據。兩組雙口RAM進(jìn)行奇偶行計數器進(jìn)行切換。當一行存儲完畢后,立即向SH4傳生一個(gè)讀取該行數據的中斷的申請信號。FPGA內部結構如圖2所示。

  這里主要問(wèn)題在于FPGA內部的雙口RAM讀寫(xiě)操作共用同一數據總線(xiàn)和地址總線(xiàn),當同時(shí)進(jìn)行讀寫(xiě)操作的時(shí)候就會(huì )產(chǎn)生時(shí)序問(wèn)題導致寫(xiě)入或讀出的數據錯誤。在這兩個(gè)過(guò)程中為了防止數據和地址總線(xiàn)沖突,在FPGA內部設計了一個(gè)中央總線(xiàn)仲裁器。根據公共數據傳輸的先后順序,中央仲裁器先接受圖像傳感器的總線(xiàn)請求,當圖像存儲到RAM之中后,中央仲裁器才響應單片機系統的讀信號請求。

  這里給出雙口RAM的構造及讀寫(xiě)控制程序:

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(精簡(jiǎn)指令集計算機)結構的全32位單片機。其處理速度可高達60M IPS一100MIPS,能在2.25v電壓下工作,功耗僅400MW片內集成有32位乘法器、4路5KB CACHE、存取器管理單元MMU和其它一些通用接口及時(shí)鐘電路等。日立公司為SH4系列單片機提供了c及c++語(yǔ)言集成編譯工具HIM(Hitachi IntegrationManag)。利用它可以將日立C、C++格式的源程序編譯鏈接為匯編程序或目標機器碼.

  圖像傳感器芯片OV7620具有靈活的可編程功能,可通過(guò)I2C總線(xiàn)對其進(jìn)行編程來(lái)設置各功能寄存器。由于單片機沒(méi)有內部硬件I2C總線(xiàn)接口,所以只有采用軟件模擬的方法實(shí)現I2C總線(xiàn)接口功能。取作為SH4的兩個(gè)I/O引腳作為I2C總線(xiàn)的SCL和SDA總線(xiàn)器件接口,示例程序如下:

  unsigned char rdiic (unsigned char addr);讀取數據
  void iic_init();初始化
  void iic_start();起始信號
  void iic_stop ();結束信號
  void delay4u();延時(shí)

  舉例

iic_init();/*初始化總線(xiàn)寄存器*/
  rstcamera ();/*復位OV7620內部寄存器*/
  wriic (0x11,0x15); /*設置OV7620內部寄存器0x11 的值為0x15*/
  delay4ux6();
  wriic (0x28,0x60); /*設置OV7620內部寄存器0x28 的值為0x60 */
  delay4ux6();

  本模塊采用了人類(lèi)可以識別的ASCII串口通訊協(xié)議從而可以通過(guò)上位機方便的和人進(jìn)行交互通信。當連接到一臺計算機上,本模塊可通過(guò)串口上傳整幅原始圖像數據,用來(lái)進(jìn)行系統調試或更高級得圖像處理。

  六、結束語(yǔ)

  本文采用大規模芯片組成了一個(gè)簡(jiǎn)潔,低價(jià)的圖像采集處理系統。本系統經(jīng)過(guò)編制不同的圖像處理算法程序可以應用在足球,農產(chǎn)品檢查機器人等不同場(chǎng)合。但其也有些不足,比如SH4處理器,運算速度不夠快,只能運行一些相對簡(jiǎn)單的算法,不支持以太網(wǎng)接口等。下一步工作計劃采用雙CPU結構,其中DSP專(zhuān)職處理圖像數據,ARM負責網(wǎng)絡(luò )通信,以及對機器人行為的控制等。這樣就可將機器人的“眼睛”通過(guò)以太網(wǎng)連接成一個(gè)復雜的協(xié)同處理的,以適應更為復雜的場(chǎng)景的需要。

  參考文獻

1、OV7620 single-chip CMOS CIF color digital camera Data Sheet. OmmVision,2001
  2、王紅軍。機器視覺(jué)-現代工業(yè)的眼睛。機電一體化。1999.3
  3、鐘玉琢等。 機器人視覺(jué)技術(shù)。 北京:國防工業(yè)出版社,2002
  4、李振玉。圖像通信與監控系統。 北京:中國鐵道出版社,2001


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>