兩自由度振動(dòng)偏移量實(shí)時(shí)采集設(shè)備的設(shè)計(jì)與實(shí)現(xiàn)
光電鼠標(biāo)的工作機(jī)理是采用一種基于CMOS成像的圖像識(shí)別方法,通過一個(gè)感光眼,不斷的對(duì)物體進(jìn)行拍照,并將前后兩次圖像進(jìn)行DSP處理,得到移動(dòng)的方向和間隔,因此,光電鼠標(biāo)芯片具有一種傳感器的基本功能。振動(dòng)的檢測(cè),其基本原理可以歸結(jié)到一種位移的檢測(cè)。只是此種位移是圍繞某個(gè)基本點(diǎn)進(jìn)行往復(fù)移動(dòng)。因此設(shè)計(jì)了一種采用光電鼠標(biāo)傳感器原理進(jìn)行振動(dòng)檢測(cè)的設(shè)備。
該設(shè)備是完全從市場(chǎng)應(yīng)用的角度進(jìn)行設(shè)計(jì)的,設(shè)備等間隔連續(xù)采集到的△x和△y值經(jīng)上位機(jī)應(yīng)用程序可以繪制出設(shè)備的各種運(yùn)動(dòng)參數(shù)曲線(包括位移、速度和加速度曲線)并進(jìn)行相應(yīng)的運(yùn)動(dòng)學(xué)分析。
采用現(xiàn)行的鼠標(biāo)芯片,采集設(shè)備可以在速度≤1m/s,加速度≤160m/s2 范圍內(nèi)實(shí)現(xiàn)偏移量在精度為15.88mm,反應(yīng)時(shí)間為0.156ms的捕獲。其精確性能、高速性能和低廉的價(jià)格使得該采集設(shè)備具備了廣闊的應(yīng)用前景。
1 總體方案設(shè)計(jì)
系統(tǒng)框圖如圖1所示,光源照在基板上,該設(shè)備固定在待測(cè)量物體上。設(shè)備主要由ADNS-3080、CY7C68013兩塊集成芯片及外圍電路組成,工作后,ADNS-3080通過其影像擷取系統(tǒng)(IAS)不斷捕獲基板的圖像,經(jīng)其數(shù)字信號(hào)處理器(DSP)時(shí)頻分析并提取出特征值△x、△y,保存至相應(yīng)的寄存器,并使運(yùn)動(dòng)觸發(fā)寄存器(Motion_Burst)的標(biāo)志位置1,等待讀取;CY7C68013通過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,用于實(shí)現(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ù)通信和人性化的用戶接口;非接觸式的光電測(cè)量方法,避免了傳統(tǒng)接觸式測(cè)量中因磨損帶來的誤差,并可用于惡劣的環(huán)境,加大了設(shè)備的使用范圍。
2.1 ADNS-3080
該集成芯片包括一個(gè)影像擷取系統(tǒng)(IAS),一個(gè)數(shù)字信號(hào)處理器(DSP)和一個(gè)四線串口(SPI接口)。
IAS通過透鏡和照明系統(tǒng)捕獲精微的表面圖像。這些圖像經(jīng)DSP處理后得出運(yùn)動(dòng)的方向和距離。DSP計(jì)算出相對(duì)位移值△x和△y,等待MCU讀取。
它具有如下特性:(1)高速運(yùn)動(dòng)的捕獲-高達(dá)40inch/s和15個(gè)gn;(2)超過6400幀/秒的可編程幀速率;(3)支持高達(dá)1600cpi的分辨率。
它雖然是一款高端鼠標(biāo)芯片,但是其高性能的各項(xiàng)參數(shù)使其完全可以勝任絕大部分環(huán)境下物體兩自由度振動(dòng)偏移量的捕獲。
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ī)后,固件會(huì)自動(dòng)從主機(jī)下載到設(shè)備RAM中,非常人性化;固件在主機(jī)上更改后再次編譯到下載驅(qū)動(dòng)(LoaderDriver)中即可實(shí)現(xiàn)對(duì)設(shè)備功能的增、刪、改,無須專門的下載器和對(duì)應(yīng)的設(shè)備下載接口。
加載設(shè)備時(shí),可以自由選擇是否需要外接E2PROM來實(shí)現(xiàn)C0或C2方式加載。C0或C2方式加載可實(shí)現(xiàn)設(shè)備的更靈活的枚舉功能,只需修改E2PROM中的VID(廠商標(biāo)識(shí)符)、PID(產(chǎn)品標(biāo)識(shí)符)即可使設(shè)備加載新的固件、新的USB驅(qū)動(dòng)和相應(yīng)的應(yīng)用程序,輕易更改設(shè)備的功能;相比C0方式,C2方式可以實(shí)現(xiàn)固件直接從E2PROM中讀取加載。無E2PROM連接時(shí),設(shè)備采用默認(rèn)方式加載實(shí)現(xiàn)設(shè)備的枚舉和重枚舉,節(jié)省硬件成本。CY7C68013使用自帶I2C總線跟E2PROM連接。多種加載方式充分滿足了用戶的多樣化需求。
該芯片的枚舉及重枚舉的全過程如下:
(1)設(shè)備上電后,復(fù)位電路直至PPL鎖存24MHz晶振,工作頻率穩(wěn)定。
?。?)Cypress內(nèi)核自動(dòng)檢測(cè)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,第一個(gè)字節(jié)為0xC0,則以C0方式加載設(shè)備,第一個(gè)字節(jié)為0xC2,則以C2方式加載。
(3)上位機(jī)檢測(cè)到USB設(shè)備插入,開始詢問其IDs(通過在端口0發(fā)起一個(gè)GetDescriptor請(qǐng)求),最重要的是VIDPID。USB設(shè)備答復(fù)為??一個(gè)未下載的設(shè)備(nondownloadeddevice)。
評(píng)論