兩自由度振動偏移量實時采集設(shè)備的設(shè)計與實現(xiàn)
光電鼠標(biāo)的工作機(jī)理是采用一種基于CMOS成像的圖像識別方法,通過一個感光眼,不斷的對物體進(jìn)行拍照,并將前后兩次圖像進(jìn)行DSP處理,得到移動的方向和間隔,因此,光電鼠標(biāo)芯片具有一種傳感器的基本功能。振動的檢測,其基本原理可以歸結(jié)到一種位移的檢測。只是此種位移是圍繞某個基本點(diǎn)進(jìn)行往復(fù)移動。因此設(shè)計了一種采用光電鼠標(biāo)傳感器原理進(jìn)行振動檢測的設(shè)備。
該設(shè)備是完全從市場應(yīng)用的角度進(jìn)行設(shè)計的,設(shè)備等間隔連續(xù)采集到的△x和△y值經(jīng)上位機(jī)應(yīng)用程序可以繪制出設(shè)備的各種運(yùn)動參數(shù)曲線(包括位移、速度和加速度曲線)并進(jìn)行相應(yīng)的運(yùn)動學(xué)分析。
采用現(xiàn)行的鼠標(biāo)芯片,采集設(shè)備可以在速度≤1m/s,加速度≤160m/s2 范圍內(nèi)實現(xiàn)偏移量在精度為15.88mm,反應(yīng)時間為0.156ms的捕獲。其精確性能、高速性能和低廉的價格使得該采集設(shè)備具備了廣闊的應(yīng)用前景。
1 總體方案設(shè)計
系統(tǒng)框圖如圖1所示,光源照在基板上,該設(shè)備固定在待測量物體上。設(shè)備主要由ADNS-3080、CY7C68013兩塊集成芯片及外圍電路組成,工作后,ADNS-3080通過其影像擷取系統(tǒng)(IAS)不斷捕獲基板的圖像,經(jīng)其數(shù)字信號處理器(DSP)時頻分析并提取出特征值△x、△y,保存至相應(yīng)的寄存器,并使運(yùn)動觸發(fā)寄存器(Motion_Burst)的標(biāo)志位置1,等待讀?。籆Y7C68013通過SPI總線與作為SPI從設(shè)備的ADNS-3080進(jìn)行通信,循環(huán)查詢△x和△y的標(biāo)志位,一旦發(fā)現(xiàn)置1,讀取△x和△y值,并通過USB2.0接口向上位機(jī)傳輸。E2PROM采用了8KB的24C64,用于實現(xiàn)設(shè)備的C0或C2方式加載。CY7C68013采用端口模式模擬主SPI與ADNS-3080通信,與上位機(jī)數(shù)據(jù)傳輸采用USB中斷模式。
圖1 系統(tǒng)原理框圖
2 設(shè)備硬件方案選擇
為充分減小系統(tǒng)的PCB板尺寸,設(shè)備使用了集成芯片、串行交換結(jié)構(gòu)技術(shù)、USB供電等手段。集成芯片的使用還提高了設(shè)備抗EMI(電磁干擾)能力;USB2.0接口的使用提供了高速、可靠的數(shù)據(jù)通信和人性化的用戶接口;非接觸式的光電測量方法,避免了傳統(tǒng)接觸式測量中因磨損帶來的誤差,并可用于惡劣的環(huán)境,加大了設(shè)備的使用范圍。
2.1 ADNS-3080
該集成芯片包括一個影像擷取系統(tǒng)(IAS),一個數(shù)字信號處理器(DSP)和一個四線串口(SPI接口)。
IAS通過透鏡和照明系統(tǒng)捕獲精微的表面圖像。這些圖像經(jīng)DSP處理后得出運(yùn)動的方向和距離。DSP計算出相對位移值△x和△y,等待MCU讀取。
它具有如下特性:(1)高速運(yùn)動的捕獲-高達(dá)40inch/s和15個gn;(2)超過6400幀/秒的可編程幀速率;(3)支持高達(dá)1600cpi的分辨率。
它雖然是一款高端鼠標(biāo)芯片,但是其高性能的各項參數(shù)使其完全可以勝任絕大部分環(huán)境下物體兩自由度振動偏移量的捕獲。
2.2 CY7C68013
該芯片是Cypress半導(dǎo)體公司高速USB系列中的一款,它帶有USB2.0串行接口引擎(SIE)、增強(qiáng)型的8051核(性能是標(biāo)準(zhǔn)51核的5~10倍)、8KB的RAM、高性能I/O口(最高支持96Mbit/s的傳輸)、支持三種方式(默認(rèn)方式、C0、C2方式)加載設(shè)備。
集成的SIE和公司提供的固件開發(fā)框架及豐富的參考源碼大大降低了開發(fā)難度,只需簡單了解USB通信協(xié)議即可開發(fā)出優(yōu)秀的固件代碼。8KB的RAM使其固件可以無限次下載;設(shè)備插上主機(jī)后,固件會自動從主機(jī)下載到設(shè)備RAM中,非常人性化;固件在主機(jī)上更改后再次編譯到下載驅(qū)動(LoaderDriver)中即可實現(xiàn)對設(shè)備功能的增、刪、改,無須專門的下載器和對應(yīng)的設(shè)備下載接口。
加載設(shè)備時,可以自由選擇是否需要外接E2PROM來實現(xiàn)C0或C2方式加載。C0或C2方式加載可實現(xiàn)設(shè)備的更靈活的枚舉功能,只需修改E2PROM中的VID(廠商標(biāo)識符)、PID(產(chǎn)品標(biāo)識符)即可使設(shè)備加載新的固件、新的USB驅(qū)動和相應(yīng)的應(yīng)用程序,輕易更改設(shè)備的功能;相比C0方式,C2方式可以實現(xiàn)固件直接從E2PROM中讀取加載。無E2PROM連接時,設(shè)備采用默認(rèn)方式加載實現(xiàn)設(shè)備的枚舉和重枚舉,節(jié)省硬件成本。CY7C68013使用自帶I2C總線跟E2PROM連接。多種加載方式充分滿足了用戶的多樣化需求。
該芯片的枚舉及重枚舉的全過程如下:
?。?)設(shè)備上電后,復(fù)位電路直至PPL鎖存24MHz晶振,工作頻率穩(wěn)定。
?。?)Cypress內(nèi)核自動檢測I2C總線是否有E2PROM。若E2PROM不存在或數(shù)據(jù)無效,則使用自帶的硬件邏輯提供的默認(rèn)VID和PID(默認(rèn)值VID為0x04B4,PID為0x8613),以默認(rèn)方式加載設(shè)備到上位機(jī);若E2PROM數(shù)據(jù)有效,即從E2PROM讀取VIDPID,并覆蓋其自身的VIDPID,第一個字節(jié)為0xC0,則以C0方式加載設(shè)備,第一個字節(jié)為0xC2,則以C2方式加載。
?。?)上位機(jī)檢測到USB設(shè)備插入,開始詢問其IDs(通過在端口0發(fā)起一個GetDescriptor請求),最重要的是VIDPID。USB設(shè)備答復(fù)為??一個未下載的設(shè)備(nondownloadeddevice)。
評論