當前位置:機電之家首頁 >> 電工園地>> 論文資料 >> 軟件驅(qū)動 >> 工控軟件設(shè)計中高精度計時的實現(xiàn)
工控軟件設(shè)計中高精度計時的實現(xiàn)

該方法通過winapl函數(shù)訪問計算機高速系統(tǒng)計數(shù)器實現(xiàn)級計時,相對當前常用的幾種其他方法來說,此方法具有精度更高、實現(xiàn)更方便、程序更簡單的優(yōu)點。最后,討論了使用高速計時器可能出現(xiàn)的計數(shù)值上跳現(xiàn)象及解決方法。

86:a收穡日期:2002―隨著bbbbbbs2000的普及,使得在win-dow2000平臺上開發(fā)工業(yè)實時控制系統(tǒng)的應用軟件成為大勢所趨。但是,在bbbbbbs2000平臺上開發(fā)工控軟件,常常必須解決高精度計時方面的問題。

目前常用的解決方法為:⑴使用bbbbbbs中提供的常規(guī)定時器timer控件。這種方法相對簡單直接使用bbbbbbs的定應用程序中設(shè)置一個或多個定時時鐘。但是,由于受系統(tǒng)時鐘的限制,這種方法的精度很低,最多能達到55ms.而且,此方法所建立的定時器是由定時器消息wm-timer驅(qū)動的;但wm -timer在串行消息隊列中的優(yōu)先級很低,往往額外造成無法預料的較大定時誤差。因此,此方法弊端較多,在要求高精度或高實時性的工控程序設(shè)計中較少使用。

(2)使用多媒體定時器,調(diào)用用于多媒體定時的bbbbbbsapi函數(shù)來實現(xiàn)。使用bbbbbbs的多媒體擴展庫中的幾個定時函數(shù):(3)編寫驅(qū)動程序?qū)崿F(xiàn)精確計時。這種方法精度較高,但涉及到vxd或wdm方面的專門知識,有較大難度。

還有利用系統(tǒng)定時中斷,利用多線程機制等等方法,這些方法比較復雜,而且精度并未得到較大提高。所以,本文介紹利用bbbbbbs和queryperbbbb―ancecounter兩個函數(shù),方便簡單地實現(xiàn)ms級高精度計時。

1函數(shù)介紹如果計算機硬件支持,queryperbbbbancefie―quency函數(shù)可讀取計算機系統(tǒng)的計時器的頻率。

此頻率值依不同處理器而得到不同值,但在計算機運行時是穩(wěn)定不變的。

率的變量。如果計算機硬件不支持,這個參數(shù)可能值為0.返回值:如果計算機硬件支持,函數(shù)返回值為非0;如果機硬件不支持,函數(shù)返回值為0.如果計算機硬件支持,queryperbbbbancecou―nter函數(shù)讀取計算機系統(tǒng)計數(shù)器中的當前計數(shù)值。

器當前值的變量。如果計算機硬件不支持,這個參數(shù)可能值為0.返回值:如果計算機硬件支持,函數(shù)返回值為非0;如果計算機硬件不支持,函數(shù)返回值為0.函數(shù),這兩個函數(shù)有高得多的計時精度。

2程序設(shè)計這里以一高速電機瞬時轉(zhuǎn)速精確測量為實例,用vc++6.0編寫了一個簡單的應用程序來說明如何在bbbbbbs2000平臺上實現(xiàn)級高精度計時。

高速電機通過變速箱帶動一采樣盤轉(zhuǎn)動,采樣盤一周均勻分布了1000條采樣柵,變速箱速率比為1:10.即電機每轉(zhuǎn)動一周,外圍高速采樣電路就產(chǎn)生10000個計數(shù)脈沖,經(jīng)整形后送至電路上的累加器單元計數(shù)。

應用程序如下,主要給出高精度計時的實現(xiàn)部分,其他部分從簡。

前的計數(shù)值//計時結(jié)束后的計數(shù)值//換算后的計時ms值發(fā)請求命令至外圍采樣電路,將累加器清零并開始計采樣脈沖數(shù)發(fā)請求命令至外圍采樣電路,停止累加器計數(shù)發(fā)請求命令至外圍采樣電路,返回累加器計數(shù)值至變量ntotal //輸出計時結(jié)果//輸出轉(zhuǎn)速結(jié)果cstngstr2;表示從aa處運行到bb處共用時579ms,電機的瞬間轉(zhuǎn)速為5636.8轉(zhuǎn)/min.外圍采樣電路設(shè)計合理且采用高速元件,那么,兩次請求外圍電路的響應延遲時間所引起的計時誤差正負相反,基本可以抵消,總體誤差可以忽略。否則,必須經(jīng)過反復實際測試,得到一個補償常數(shù)e,在程序中對計時加以補償以減少誤差。

請求外圍電路的程序語句最好采用匯編語

作者:未知 點擊:2268次 [打印] [關(guān)閉] [返回頂部]
本文標簽:工控軟件設(shè)計中高精度計時的實現(xiàn)
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《工控軟件設(shè)計中高精度計時的實現(xiàn)》相關(guān)權(quán)利人與機電之家網(wǎng)取得聯(lián)系。
電子樣本

中基斯頓擺線液壓馬達
:余翰林
:18857411608
:寧波中基斯頓液壓機械有限公司
個人求購

陳工 【求購】  電機保護器  2025-4-24
楊經(jīng)理 【求購】  流量開關(guān)  2025-4-24
林經(jīng)理 【求購】  保溫棉  2025-4-24
杜經(jīng)理 【求購】  機械水表  2025-4-24
李洪斌 【求購】  手拉葫蘆  2025-4-23
 【求購】  泡沫滅火劑  2025-4-23
顧女士 【求購】  耐候鋼板  2025-4-21
王新利 【求購】  氨壓機  2025-4-21
VIP公司推薦