《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 視覺自動對準系統(tǒng)的設計
視覺自動對準系統(tǒng)的設計
來源:電子技術(shù)應用2011年第8期
胡 勝1, 宋 躍1,, 李 君2, 胡必武1,, 李 明1
(1. 東莞理工學院 電子工程學院, 廣東 東莞 523808,;2. 東莞理工學院 計算機學院, 廣
摘要: 設計了一種視覺自動對準系統(tǒng),分析了系統(tǒng)設計時各關(guān)鍵技術(shù)環(huán)節(jié)?;陔p核控制,,設計了基于FPGA控制CCD圖像采集和基于Nios II的多種內(nèi)核,重點介紹了傳動軸的角度量控制模型,,設計了基于Nios II的LCD驅(qū)動以實現(xiàn)液晶顯示,、基于ARM的觸摸屏輸入以實現(xiàn)人機交互以及AT91SAM7S64驅(qū)動以實現(xiàn)ARM與PC的數(shù)據(jù)傳輸?shù)取嶒灲Y(jié)果表明,,本系統(tǒng)具有應用價值高,、速度高、可靠性高,、故障少等優(yōu)點,。
中圖分類號: TP274
文獻標識碼: A
文章編號: 0258-7998(2011)08-082-04
Design of vision automatic alignment system
Hu Sheng1, Song Yue1, Li Jun2, Hu Biwu1, Li Ming1
1. College of Electronics Engineering,Dongguan University of Technology, Dongguan 523808, China,; 2. College of Computer, Dongguan University of Technology, Dongguan 523808, China
Abstract: A sort of design technique of vision automatic alignment system was given. All kinds of key techniques were analyzed in system design. This system was based on two core control. Data acquisition of CCD image signal based on FPGA and many core based on Nios II were devised. This paper mainly introduced the control model of angular metric of power drive shaft, the design of LCD drive based on Nios II for realizing LCD display, the design of touch screen based on ARM for realizing human-computer interaction, the design of AT91SAM7S64 drive for realizing data transmission of ARM and PC and so on. Experiments showed that this system had advantages of high application value, high rate, high reliability and less accident.
Key words : vision automatic alignment system; touch screen,;ARM; Nios II


    IC成型,、分離和自動排管作為芯片封裝的后工序,,可以完成芯片封裝后的成型、芯片分離和芯片排列入管,。成型,、分離和自動排管系統(tǒng)的性能決定了生產(chǎn)IC的速度及產(chǎn)品質(zhì)量等指標。目前國內(nèi)大多數(shù)芯片封裝企業(yè)的成型,、分離和自動排管系統(tǒng)的功能單一,,速度一般在40~60次/min,噪聲大,、速度慢,、精度也不高。本設計采取光機電一體化技術(shù)及凸輪帶動沖頭傳料片機構(gòu)同步?jīng)_壓機臺設計方案,,電腦控制CCD圖像識別裝置通過取像,、找參考點、圖像分析幾個步驟來對產(chǎn)品方向性,、引腳數(shù)及外型進行檢測判斷,,設備具有噪聲低、精度高,、可靠性高,、速度快等優(yōu)點,芯片,、封裝,、系統(tǒng)協(xié)同優(yōu)化,。
1 系統(tǒng)總體結(jié)構(gòu)
  整個系統(tǒng)由自動上料、導料和收料等幾個部分組成,。CCD圖像識別裝置對產(chǎn)品方向性,、腳數(shù)及外形進行檢測判斷??刂葡到y(tǒng)的輸入輸出接口與被控電機的連接關(guān)系如圖1所示,。CPU通過輸出控制可以完成X、Y,、Z與A軸的控制[1],。

    如圖2所示,視覺定位由光學對準系統(tǒng)工作臺,、CCD攝像部分,、FPGA、ARM及計算機控制系統(tǒng)等部分組成[2],。它對采集到的圖片進行濾波,、特征提取、色澤分析,,從而得到基準點的坐標,,使定位精度和貼片效率顯著提高,是全自動高速集成電路成型與分離系統(tǒng)的核心部分,。它利用CCD檢測目標的光強度分布,通過A/D轉(zhuǎn)換模塊變成數(shù)字圖像,。計算機將所獲得的數(shù)字圖像與模板圖像進行匹配,根據(jù)匹配的結(jié)果控制光學對準工作臺及沖頭的運動,。在對準過程中,先沿X,、Y 軸方向移動光學對準系統(tǒng)工作臺,使芯片、基底進入視場范圍,,沿Z軸方向移動,并對準工作臺和沖頭直到基底和芯片成像清晰,然后利用匹配算法測量基底,、芯片上定位標志的距離, 根據(jù)此偏差,控制單元調(diào)整主工作臺,,從而使基底到達目標位置,完成芯片和基底的對準。

 

 


    系統(tǒng)采用了一種數(shù)字相機模塊,,該模塊采用130萬像素攝像頭,,該攝像頭的傳感器是ov9650芯片。攝像頭通過SCCB(Serial Camera Control Bus)總線進行控制,。SCCB是雙向,、兩線總線,具有總線仲裁機制,。選定在FPGA內(nèi)設計SCCB控制核的方法,,實現(xiàn)對ov9650參數(shù)的配置,。模擬信號采樣電路部分由A/D轉(zhuǎn)換器ADC0832構(gòu)成。FPGA選擇Altera公司的CycloneII系列EP2C20型,該芯片的資源非常豐富,,可滿足本系統(tǒng)設計的需要,。利用有限狀態(tài)機設計了A/D采樣控制模塊,它的任務就是根據(jù)ADC0832的轉(zhuǎn)換時序圖,,在芯片的引腳發(fā)出相應的時序控制信號,,使ADC0832完成啟動、配置和數(shù)據(jù)讀取等操作,。當CS=0,并且在第一個脈沖下降之前DI=1,,狀態(tài)機啟動。ARM采用AT91SAM7S64,,它是基于ARM7TDMI的高性能,、工業(yè)級的32位RISC微控制器。
2 圖像處理
        
     圖像處理使用硬件模板匹配算法,這種算法來源于軟件模板匹配算法和硬件中值濾波算法,。設計中采用quartus II的LPM庫中的移位寄存器,。模塊選取的是5×5大小,有25個PE(處理單元),,每個PE都是一個時鐘同步的閾值計算電路,。模板處理結(jié)構(gòu)能同時產(chǎn)生25個閾值,再送入加法電路進行模板總閾值大小的計算,,計算結(jié)果與預先設置的閾值進行比較,,如果小于設置的閾值則表示模板匹配成功。硬件圖像處理算法結(jié)構(gòu)如圖3所示,。
3 傳動軸的角度量控制模型
    工作臺的運動軌跡是通過傳動軸的角度量控制的,,控制模型如圖4所示。系統(tǒng)采用一個閉環(huán)神經(jīng)網(wǎng)絡控制模型,,驅(qū)動電機控制傳動軸的運動,。通過傳動軸的角度檢測裝置,形成角度P,、I,、D三個分量,然后送入網(wǎng)絡,。同時把預設角度曲線的前一個值,、當前值和下一個值也送入網(wǎng)絡。人工神經(jīng)網(wǎng)絡選用的是徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡,,它是具有單隱層的三層前饋網(wǎng)絡,。伺服電機選用安川SGML-01AF12,它能夠自動測定機械的必要參數(shù),,實現(xiàn)最佳驅(qū)動,,并且配備了與計算機的接口,。驅(qū)動選用TT MOTOR公司智能型直流無刷電機驅(qū)動芯片GSG3PWM6-S/SN。
4 基于FPGA接口的設計
       FPGA構(gòu)成框架如圖5所示,包括CCD模塊,、SDRAM模塊,、SD卡讀寫器、LCD顯示模塊等資源,。FPGA控制CCD采集圖像,,把像素陣列放入SDRAM中緩沖,而SDRAM采用雙口SDRAM控制方法,,這樣再從SDRAM中讀取數(shù)據(jù),,實現(xiàn)模板匹配算法[3]。SD卡用于存放圖像數(shù)據(jù),,圖片在SD卡中按簇存儲,,Nios II在讀取時根據(jù)圖片的起始地址和所占簇的數(shù)量讀出圖像數(shù)據(jù)。用戶可通過顯示掌握控制信息,,系統(tǒng)選用NS-TFT6448液晶控制板模塊實現(xiàn)顯示,,它可實現(xiàn)256色、雙頁顯示,,并提供一個高速的8位總線接口,,可直接連接CPU。圖像數(shù)據(jù)進行圖像處理及位置坐標計算,,在圖像功能上完成灰階化處理,、邊緣檢測及二元圖像處理。圖像邊緣檢測方面,,使用Sobel算法,,二元圖像處理部分的臨界值由Otsu算法來決定。

5 基于ARM的觸摸屏設計
  整個系統(tǒng)的運行是一個與用戶不斷交互的過程,嵌入式觸摸屏裝置是一種人機交互設備[4,5],。用戶通過觸摸操作,就可以實現(xiàn)對相應的設備的控制,。系統(tǒng)采用專用的控制器件(ADS7483)控制觸摸屏。它的主要作用是從觸摸點檢測裝置上接收觸摸信息,,并把它轉(zhuǎn)化成觸點坐標,,再發(fā)送給CPU,同時接收CPU發(fā)來的命令并加以執(zhí)行,。工作流程是:觸摸屏完成數(shù)據(jù)的采集,ADS7483一方面完成對觸摸屏的電極間的電壓轉(zhuǎn)換,,另一方面完成觸摸屏接觸點的電壓值的采集,,并實現(xiàn)數(shù)據(jù)的A/D轉(zhuǎn)換。ARM對ADS7483發(fā)送過來的數(shù)據(jù)進行處理,,并完成觸摸屏位置坐標的顯示,。觸摸屏掃描任務程序包括設備的初始化,、設備讀寫及中斷響應等模塊。觸摸屏的電路連接如圖6所示,。

6 軟件設計
6.1 觸摸屏軟件實現(xiàn)

    觸摸屏工作流程如圖7所示,。


    函數(shù)ADS7843_init()實現(xiàn)ADS7843的初始化。讀函數(shù)Uint32 ADS7843_Read(Uint8 Number)讀觸摸點值并返回Number位測量結(jié)果,。寫函數(shù)Void ADS7843_Send(Uint8 command)發(fā)送控制字給ADS7843,。函數(shù)Void Read_Touch(Uint32 *X, Uint32 *Y)功能為讀取觸摸屏的觸摸位置,結(jié)果保存在X,,Y指針變量中,。ADS7843_init( )代碼如下:
    Void ADS7843_init(Void)
    {PINSEL0= PINSEL0&OX0FFFFFFF;
                           //設置CS PENIRQ為GPIO口
    PINSEL1= PINSEL1&OXFFFFFF03;    
                        //設置DIN DOUT DCLK為GPIO口
    IO0DIR=IO0DIR|CS|DCLK|DIN; //CS、DCLK,、DIN為輸出
    … …
    IO0DIR=IO1DIR&(~BUSY);                //BUSY為輸入
    }
6.2 基于Nios II的SDRAM驅(qū)動和LCD實現(xiàn)
    使用Nios II軟核對LCD進行驅(qū)動時,片內(nèi)的存儲器資源一般滿足不了系統(tǒng)的設計要求,系統(tǒng)使用片外SDRAM作為程序存儲器和數(shù)據(jù)存儲器,。SDRAM控制器內(nèi)核為FPGA片外的SDRAM提供一個Avalon_MM接口,SDRAM控制器內(nèi)核可以與多個SDRAM相連,并處理所有的SDRAM的協(xié)議請求,。使用Avalon_MM總線訪問SDRAM控制器內(nèi)核時, 可以通過函數(shù)IOWR(BASE,、REGNUM、DATA)和IORD(BASE,、REGNUM)進行讀寫操作,。
    在設計中實現(xiàn)的主要操作有:LCD模塊的檢測閑忙、初始化,、顯示字符,、顯示漢字、打點,、畫線和畫圖等,,并將這些操作設計成相應的函數(shù)。顯示漢字流程如下:首先通過公式轉(zhuǎn)換計算,定位對應的點陣信息在字模庫的地址;然后從字庫中取出該漢字點陣信息,,將這些信息送到顯示緩沖存儲器中;最后顯示器的控制器把點陣信息整屏順次讀出,即可將漢字顯示出來[6],。
6.3 計算機與ARM通信的實現(xiàn)
    AT91SAM7S64的USB接口與USB2.0全速標準兼容,通信速率12 Mb/s[7],。包含4個端點,,端點0是8 B,端點1和端點2是64 B,,端點3是64 B,。USB接口電路如圖8所示。

    在打開USB端口時,可通過一個AT91_USB_Open()函數(shù)來實現(xiàn),。
    Void AT91_USB_Open(Void)
    {AT91C_BASE_CKGR->CKGR_PLLR|= AT91C_CKGR_US
        BDIV_1;                    //設置USB鎖相環(huán)驅(qū)動
    AT91C_BASE_PMC->PMC_SCER = AT91C_PMC_UDP;
    …
         AT91_PIO_Cfgoutput(AT91C_BASE_PIOA,AT91C_PIO_
        PA16);                       //設置PIO模式及配置輸出
    AT91_PIO_Clearoutput(AT91C_BASE_PIOA,AT91C_PIO_
        PA16);                                    //給上拉電阻清0
    AT91_CDC_Open(&PCDC,AT91C_BASE_UDP);
                       //通過CDC結(jié)構(gòu)初始化CDC設備
    }
    Static uint AT91_UDP_Write(AT91PS_CDC Pcdc,const char *pdata,uint length)函數(shù)用于USB端口的數(shù)據(jù)發(fā)送,,每一次發(fā)送都按照數(shù)據(jù)包的形式發(fā)送。
    Static uint AT91_UDP_Read(AT91PS_CDC Pcdc, char *pdata, uint length)函數(shù)用于USB端口的數(shù)據(jù)讀取,,在讀的過程中,,依次把接收到的數(shù)據(jù)寫入緩沖區(qū)中,。
  Atmel公司為AT91SAM7S64ARM處理器的USB端口提供了動態(tài)鏈接庫DDL,同時還提供了一個PC端通用INF驅(qū)動配置文件atm6124.inf,,可以直接使用它們實現(xiàn)PC端的應用,。
6.4 系統(tǒng)程序設計及工作控制界面的實現(xiàn)
    視覺自動對準系統(tǒng)程序整體流程為圖9所示。

    系統(tǒng)具有成型,、分離和成品自動入管功能,,自動化水平和生產(chǎn)效率很高。機臺成型與分離速度達到140次/min,,相比傳統(tǒng)的40次/min~60次/min的產(chǎn)品速度明顯提高,。馬達驅(qū)動機械凸輪帶動沖頭傳送料片機構(gòu)同步成型與分離機臺設計,先進的閉環(huán)隨動驅(qū)動和定位技術(shù),,定位精度極高,,誤差小于0.007 mm。CCD圖像識別裝置辨識產(chǎn)品方向性,,腳數(shù),、外型檢測判斷,隨著料片的不同,,模具可供選擇配用,,提高了產(chǎn)品的合格和優(yōu)秀率。配有讓門設計,,反應快速有效,,并配有急剎系統(tǒng)設計,可避免產(chǎn)品及沖模損壞,。系統(tǒng)的應用價值較高,。
參考文獻
[1] 胡必武,余成. 高速集成電路切筋系統(tǒng)設計[J].電子與封裝,2009(05):24-27.
[2] 梁錫漢. 自動貼片視覺系統(tǒng)的研究與設計[J].工業(yè)控制計算機,2005(05):61-62.
[3] 李立,金華標,陳智君. 基于FPGA和DSP的高分辨率圖像采集系統(tǒng)[J] 數(shù)據(jù)采集與處理,2008(01):117-122.
[4] 史蕊,,蔡浩,,王振. 基于S3C4480X+uCOSⅡ的觸摸屏設計[J].電測與儀表,2007(02):50-53.
[5] 葛化敏,鄭靜,楊利青. 基于ARM-Linux的LCD顯示模塊設計[J].儀表技術(shù)與傳感器,,2009(07):75-77.
[6] 黃菊生,周慧,譚季秋.單片機仿真實驗儀在漢字LCM開發(fā)中的應用[J].湖南工程學院學報,,2005(02):41-44.
[7] 葉文良. 基于ARM的嵌入式小型飛行參數(shù)測試系統(tǒng)的設計[D].南京:南京航空航天大學,2008.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。