基于單片機的便攜遠程多路數據采集系統(tǒng)
2.3 主要的抗干擾措施
對MAX354的輸入端采用隔離放大器進行信號隔離,采用隔離放大器的變壓器將信號磁耦合 ,隔離了通路的線路連接,從而切斷了干擾源。這樣對壓裂設備上發(fā)動機的干擾有了一定效果的屏蔽作用。
同時,為了防止單片機受干擾影響而發(fā)生“死機”等現象,系統(tǒng)還利用MAX706芯片設計了“看門狗”電路,提高了系統(tǒng)的抗干擾能力,如圖-3。 MAX706是一種性能優(yōu)良的低功耗CMOS監(jiān)控電路芯片,其內部電路由上電復位、可重觸發(fā)“看門狗”定時器及電壓比較器等組成。MAX706只要在 1.6秒時間內檢測到WCI引腳有高低電平跳變信號,則“看門狗”定時器清零并重新開始計時;若超出1.6秒后,WCI引腳仍無高低電平跳變信號,則“看門狗”定時器溢出,WDO引腳輸出低電平,進而觸發(fā)MR手動復位引腳,使MAC706復位,從而使“看門狗”定時器清零并重新開始計時,WDO引腳輸出高電平,MAX706的RST復位輸出引腳輸出大約200毫秒寬度的低電平脈沖,使單片機控制系統(tǒng)可靠復位,重新投入正常運行。MAX706的控制只需要利用單片機的P1.5引腳通過簡單編程實現。
3 系統(tǒng)軟件設計
軟件設計包括兩方面:筆記本電腦的主機程序和單片機數據采集和發(fā)送的固件程序。其中,主機程序的編寫可以利用VB語言編寫,串口通信是通過 Microsoft Visual Basic的通信編程控件MSComm實現的。在讀取完串口數據后,需要將每通道10次采集的數據進行數學平均計算,這樣可以在一定程度上減小干擾數據的影響。
89C52的串行通訊采用工作方式1,波特率是9600bit/s,發(fā)送數據采用定時查詢方式,可以根據需要適當調節(jié)發(fā)送數據的時間,定時周期性地讀取存儲的采樣數據,以串行方式通過RS-485接口發(fā)送到上位機。程序采用可讀性較強的C51語言編寫,程序流程圖見固件流程圖-4。在編寫89C52 的程序時,需要對采樣數據進行處理。由于采集的油溫、油壓、井口壓力等數據與信號電壓是線性關系,通過給定標準信號電壓測量一個最大值和一個最小值,就能得出各種數據的信號電壓與測量數據之間的比例關系。數據處理程序是根據線性比例關系,先將A/D轉換器AD574 采集到的12位二進制數據轉換成實際測量值,并將此值按照ANSI/IEEE標準754-1985轉換成32位浮點數,保存在設定的存儲區(qū),總共有8組數據,需要32字節(jié)的空間來存儲采樣數據。
一個標準浮點數占用一個雙字(32位)。最高位(第31位)位浮點數的符號位,最高位為“0”是為正數,位“1”時為負數;8位指數占23-30 位;因為規(guī)定尾數的正數部分總是為“1”,只保留的尾數的小數部分(0~22位)。浮點數的優(yōu)點是利用很小的存儲空間(4B)可以表示出精確度很高的非常大和非常小的數,在進行數據處理和運算時提高了精確度。
圖-4 單片機固件主程序流程圖
4 結束語
該套數據采集系統(tǒng)在油田壓裂設備上成功運用。實踐證明,與傳統(tǒng)的數據采集系統(tǒng)相比,該采集系統(tǒng)不僅輕便易攜帶,能有效防止現場環(huán)境的干擾,而且利用 RS-485總線進行遠程數據采集,將油井壓裂作業(yè)過程中的壓裂車的油溫、油壓、井口壓力、泥漿密度,以及其它數據保存到筆記本電腦上,增強了數據的實時處理能力,工程技術人員能夠及時分析數據結果,減少了在油井壓裂作業(yè)過程中的事故率
評論