摘要:本文介紹基于RS觸發器在數據采集管理中實現精確控制的設計應用,可以很方便地應用于各種便攜式設備和嵌入式應用系統中。文中給出了整體硬件電路原理框圖和各功能模塊的硬件電路設計思想。實驗證明,該基于RS觸發器的計數設計很好地滿足了計數和精度高的要求。
關鍵詞:RS觸發器;適配卡;計數;數據處理
DOI: 10.3969/j.issn.1005-5517.2012.11.010
隨著工業自動化要求的提高,以及控制設備和過程監控裝置之間通訊的需要,計數功能電路在不同設備間的通訊和連接,傳輸重要的計算數據方面,起著舉足輕重的地位;ISA總線接口作為一種標準的工業接口結構得到廣泛的應用。用它來實現不同儀器和設備間的通訊與連接已經相當廣泛,越顯重要和突出。所以,該設計把兩者結合起來,設計出一款便于不同設備、儀器間的通訊和連接,并能夠自動完成各種計數、計時、測試和傳輸數據功能的ISA總線適配器。
系統硬件設計
標準ISA計算機插槽的設計
標準ISA(Industry Standard Architecture)計算機插槽采用最先進的微機系統ISA適配卡插槽,由主槽和附加槽兩部分組成,每個槽都有正反兩面插腳。主槽有A1~A31、B1~B31共62腳;附加槽有C1~C18、D1~D18共36腳,兩個槽一共98腳[2]。ISA總線接口具體定義在各類專業書籍中都有詳細介紹,這里不再累述。
本設計中,低4位地址不用作地址比較片選位,而用高4位作地址比較位,因為低4位比高4位變化快,高4位地址遠比低4位地址穩定可靠,地址由撥碼開關S確定。
數據采集單元
P1、P2、P3端口為狀態量采集輸入端,P4端為比較結果輸出端,四個端口均為TTL電平。P1、P2、P3輸入的狀態量與上一時刻P1、P2、P3輸入的狀態量比較,如果比較結果相等,P4端口輸出低電平0;比較結果不相等,輸出高電平1。如果比較結果相等,說明輸入狀態量與上一時刻輸入的狀態量不同,這時需要計數器重新開始計時,P4端口輸出高電平0,再經反相器,這時產生的低電平0脈沖作用給計數器清零端和RS觸發器S端,計數器清零,RS觸發器輸出端Q輸出1,作用于計數器片選端,脈沖消失后重新開始計數。如
數脈沖到來以后的脈沖等。因為,一般來說,停止計數都是在第一個停止計數脈沖到來時停止計數,在該輸入以后到來的脈沖不采取停止計數動作。我們定義計數工作時間段為Tw,理想的利用RS觸發器來設定穩定的計數時間段波形圖如圖3所示。
穩定計數單元實質是利用了RS觸發器的不可沖觸發性原理。RS觸發器具有的不可重觸發的特點,即單次觸發,工作在當且僅當另一端為高電平1時。假如所有門電路的平均傳輸延遲時間相等,用tpd表示,S端輸入的低電平0信號寬度tw應滿足:tw≥2tpd的條件,同理,R端輸入的低電平0信號寬度tw應滿足:tw≥2tpd的條件[3]。仿真波形如圖4所示。
換一種保守的方式理解,即在各種教科書和科技書刊上所說的,利用RS觸發器具有記憶功能的特性,在Tw這段時間內,來防止R、S端誤動作,實質,就是設定RS觸發器的計數工作時間段,在這段時間內才能計數;相反,如果超出這段時間,計數功能電路不工作在計數狀態,因為其不在計數時間段內。這樣,就防止了 RS觸發器在計數時間段內誤動作,保證了計數的穩定性和準確性。
假如在計數模塊輸入端不要RS觸發器,當然也可以完成計數功能,并不影響計數的精確度。但是,這樣的設計存在很大風險,會造成誤動作計數:第一,在R端停止計數脈沖還沒到來時,S端有可能再次或多次出現低電平脈沖,重新從零開始計數,這時就出現在計數未完成的情況下重新開始計數,造成誤動作計數,結果不是想要計的數;第二,在S端計數脈沖還沒到來時,R端有可能再次或多次出現低電平脈沖,這時就出現在計數未完成的情況下多次停止計數,造成誤動作停止計數,引起計數不準確。這種風險恰恰是設計者最容易忽略的地方。
那么,采用RS觸發器就避免了以上情況的發生,tw就是所設置的計數單元穩定的工作時間。
計時單元
該單元采用12位計數,采用1M晶振,基準計數頻率采用分頻器設計,其頻率值為500Hz,每一位二進制數代表0.002s,即每秒鐘計數0.002s,這樣保證了計數精確度在小數點后面3位。該單元硬件原理圖如圖6所示。
軟件算法部分源程序如下:
void Dlgtime::OnTimer(UINT nIDEvent)
本文介紹了基于RS觸發器,高穩定性,高精度計數適配器,采用RS觸發器提高了計數穩定可靠性,應用相當廣泛。當然,還有可以改進的地方,比如可以增加數據采集的輸入端,使其采集更多的數據;還可以增加計數位數,提高計數基準頻率,通過軟、硬件都可以持續的提高計數