<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>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 光電鼠標傳感器的精密測量與控制系統

光電鼠標傳感器的精密測量與控制系統

作者: 時(shí)間:2009-03-18 來(lái)源:網(wǎng)絡(luò ) 收藏

(3)單片機發(fā)送的控制數據
按照的PS/2協(xié)議規范,實(shí)際編程時(shí)先對發(fā)送Oxff使其復位,默認采樣頻率為10O次/s,縮放比例為1:1,數據報告禁止。使用Oxea命令進(jìn)入strearn模式,使用Oxe8、0x03命令設置解析度為8點(diǎn)/mm,使用Oxf4命令使能數據報告。配合AT89S51單片機的定時(shí)器功能,將其時(shí)間常數設置為0.1 s,每次中斷時(shí)發(fā)送Oxeb命令讀取位移數據信息,每發(fā)出一次,單片機接收到的位移數據包都包含有位移信息和按鍵動(dòng)作信息。具體格式如表1所列。編譯時(shí)也只需提取X3的有效數據包即Y方向位移增量。

2.2 PID控制軟件算法
對該交流變頻調速系統建模,首先取電壓輸入為一個(gè)隨機值,再測得其轉速值。取兩個(gè)數值構成一個(gè)數據對,然后對大量數據對用Matlab仿真求得其幅頻特性和相頻特性,并且對其幅頻特性和相頻特性進(jìn)行相似的擬合。根據擬合的曲線(xiàn)可以近似求得其傳遞函數為:


使用神經(jīng)網(wǎng)絡(luò )PID自適應控制對系統進(jìn)行Matlab的仿真測試,效果令人滿(mǎn)意。但因其輸入層、隱含層、輸出層的多階矩陣運算使得單片機的運算時(shí)間大幅度增加,造成時(shí)間上的不確定因素增大;同比使用增量型PID控制,盡管后者需調整3個(gè)控制參數,但同樣可使精度達到預期的效果,運算時(shí)間也大幅度下降,為此選用增量型PID算法作為控制算法。
增量式數字PID的控制算法為:


其中kp為比列系數,ki為積分系數,kd為微分系數;e(k)為當前位移增量與上一次位移增量的變化量;同理,e(k一1)、e(k一2)各為往前時(shí)間問(wèn)隔的位移變化量。
利用單片機串行中斷接收功能,可在PC機上實(shí)時(shí)在線(xiàn)調節PID的kp、ki、kd參數。

3 上位機監測設計
通過(guò)單片機的串口發(fā)送端,在LabVIEW中編寫(xiě)程序來(lái)完成PC機與數據通信設備的數據交換,直接通過(guò)串口接收外部數據并進(jìn)行圖形顯示,并可將數據存放在txt文件當中。在LabVIEW中主要是使用VISA控件實(shí)現串行口直接數據通信,通過(guò)RS一232串行接口和LabVIEW實(shí)現數據的通信。
使用read string控件對數據進(jìn)行接收,并通過(guò)Waveform graph控件就可以顯示實(shí)時(shí)波形。在LabVIEW中自帶的范例中,數據的接收并非是連續不斷的,而要通過(guò)一定的延時(shí);因此,為了不間斷地接收單片機發(fā)送的串口數據包,須將前面的寫(xiě)和延時(shí)都去掉。因串口接收到的數據是字符型的,而我們所需要的是整型數據,因此可通過(guò)強制轉換將數據轉換為單精度整型。創(chuàng )建數組,將數據和數組初始化相結合得到一個(gè)完整的數組,通過(guò)Waveform graph控件以及移位寄存器即可實(shí)現上位機的實(shí)時(shí)顯示與記錄。

4 檢測控制性能評價(jià)
PS/2接口最大的使用頻率是33 kHz。本實(shí)驗單片機使用12 MHz的晶振,可輕松實(shí)現接口功能。但受其芯片特性的影響,盡管OM02的芯片最高可使用的分辨率為400DPI,但在使用較高分辨率的情況下。鼠標傳輸的誤碼率將有所上升,其位移精度也將受到質(zhì)疑。為保證位移量的準確性,采用200DPI的分辨率,配合看門(mén)狗,精度誤差和程序穩定性將大為好轉。
測試結果如圖5所示,圖中縱坐標為位移增量點(diǎn),每一點(diǎn)為0.125 mm。帶在較低速的運行中盡管存在速度的上下跳動(dòng)變化,但跳動(dòng)量較小。圖中帶速度的設定值為32點(diǎn),即40.00 mm/s(靈敏度為0.125 mm/s),速度平均值為39.987mm/s(數據引自速度曲線(xiàn)剛開(kāi)始穩定時(shí)的前1000個(gè)時(shí)間點(diǎn))。因其鼠標在正常工作環(huán)境中使用,系統呈線(xiàn)性變化,對此可引入速度修正系數k,以提高檢測精確度。

結 語(yǔ)
使用鼠標作為檢測帶運動(dòng)的速度,其價(jià)格低廉、準確性高且使用方便,配合單片機的數字式PID編程控制以及LabVIEW虛擬儀器的圖形檢測顯示,可以很好地對速度要求較低、精度要求不太高的設備進(jìn)行改裝,使其輸出速度穩定。又因為鼠標技術(shù)已趨于成熟,一般情況下對檢測表面的粗糙度要求不高,在比較惡劣的工況下仍可保證運行無(wú)障礙。近些年所推出的激光鼠標,其分辨率可達到O.01 mm,效果甚佳。該實(shí)驗在某企業(yè)的生產(chǎn)部門(mén)進(jìn)行了現場(chǎng)測試,效果理想。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(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>