摘要:針對油田現(xiàn)場環(huán)境復雜,,一直面臨著因采集到的數(shù)據(jù)不準確的問題,采用ADl公司的ADuC841芯片設計了一種具有在油田現(xiàn)場實現(xiàn)數(shù)據(jù)采集的小型電路,。該數(shù)據(jù)采集電路采用片內(nèi)集成的A/D轉(zhuǎn)換器,,大大減小電路體積,;滿足系統(tǒng)的高溫,、高壓工作環(huán)境以及低功耗。現(xiàn)在的數(shù)據(jù)采集系統(tǒng)速度更快,,功能更強,精度更高,,但是體積卻顯得更小,,總體性價比越來越高。
關(guān)鍵詞:嵌入式,;數(shù)據(jù)采集系統(tǒng);ADuC841,;A/D轉(zhuǎn)換器
0 引言
油田現(xiàn)場往往環(huán)境復雜,電磁干擾多,,溫度/濕度相對變化范圍較大,所以一直面臨著因采集到的數(shù)據(jù)不準確,,影響測量精度和速度,。在設計現(xiàn)場數(shù)據(jù)采集模塊的過程中,經(jīng)過對眾多數(shù)據(jù)采集處理芯片的分析比較,,選用了ADuC841作為數(shù)據(jù)采集的核心芯片,,相比于早期的ADuC81x系列,,它在速度大幅度提升片內(nèi)的集成功能,、器件的可靠性和功耗等方面都達到了一個嶄新的水平,證明該芯片非常適合用于復雜電磁環(huán)境下工業(yè)控制上的小信號數(shù)據(jù)采集,。
1 ADuC841的基本原理和性能特點
ADuc841單片機具有高速、高精度的ADC,,DAC功能,,以及獨一無二的在電路可調(diào)試,、可下載的特點,,特別適合在各種測控系統(tǒng)和儀器儀表中使用。
ADuC841(如圖1所示)內(nèi)部集成了8052微處理器的內(nèi)核,,并提供了很大的存儲空間,如64 KB的FLASH/E2PROM程序空間,、8 KB的FLASH/E-2PROM數(shù)據(jù)空間,,以及2 304 B的數(shù)據(jù)RAM等。此外,,該器件還集成了許多外圍器件,包括精確,、高速的8通道12位模/數(shù)轉(zhuǎn)換器(其轉(zhuǎn)換速率最高可達420 kS/s),片上低漂移15×10-6℃的精密內(nèi)部電壓參考源,,DMA方式控制器,,2個12位的電壓輸出數(shù)/模轉(zhuǎn)換器,、2個脈寬調(diào)制輸出、一個溫度傳感器,。使用這些模塊,,可以方便地實現(xiàn)與前級傳感器的接口,也可以有效地控制后級電路,。其他的片上外設主要有ART,SPI以及I2C接口、時間間隔計數(shù)器,、看門狗定時器和電源監(jiān)視器等,,這些模塊可以便捷地實現(xiàn)與其他單片機或PC機通信(此時需電平轉(zhuǎn)換電路),,還可以有效地保障單片機電源的正常工作和程序的正常運行,。
2 數(shù)據(jù)采集器硬件系統(tǒng)的總體設計與實現(xiàn)
2.1 硬件系統(tǒng)的模塊劃分和各模塊功能
該外置式數(shù)據(jù)采集器硬件系統(tǒng)由傳感器模塊、信號調(diào)理模塊,、外部存儲模塊,、串行通信口模塊、顯示模塊組成,,如圖2所示。信號調(diào)理模塊主要采集到的信號進行簡單的放大,、濾波,。模擬輸入信號的濾波主要用于濾除高頻干擾信號,,在設計中采用低通濾波器完成這一功能,。開關(guān)量輸入信號的濾波主要用于防止強電磁干擾或工頻電壓通過開關(guān)量輸入通道進入信號采集處理系統(tǒng),設計采用連接光耦合器的方法實現(xiàn)這一功能。信號采集處理模塊的主要功能是對采集到的信號進行A/D轉(zhuǎn)換和簡單處理,。同時信號采集處理模塊的微處理器肩負著管理輸入輸出等其他模塊的任務,,該模塊主要由ADuC841芯片組成,。外部存儲模塊的主要功能是提供32 KB的外部數(shù)據(jù)存儲空間,,為該外置式數(shù)據(jù)采集器存儲和處理大量的采集信號,,以提供硬件支持,。外部存儲模塊主要由FLAsH存儲器AT45DB081B組成,。串行通信模塊的功能主要是提供標準的RS 232接口和RS 485接口,為實現(xiàn)不同外置式數(shù)據(jù)采集器之間的通信,,以及外置式數(shù)據(jù)采集器與計算機之間的通信提供方便,。該模塊主要由MAX 232芯片和MAX485芯片組成,。
2.2 硬件系統(tǒng)電路的總體設計
信號采集處理模塊中的ADuC841芯片允許P1口作為采集器的模擬信號輸入口,,ADuC841芯片功能強大,,允許被采集信號直接輸入,。但為了抑制干擾信號,在本設計中被采集信號通過低通濾波器后再輸入ADuC841,。信號采集處理模塊中ADuC841芯片的P2口既可以作為采集器的數(shù)字信號I/O口,,也可以作為外部32 KB RAM的高7位地址線接口。當作為采集器的數(shù)字信號I/O口時,,P2口通過緩沖器(鎖存器)與外部開關(guān)量輸入(開關(guān)量輸出)相連;當作為外部32 KB RAM的高7位地址線接口時,,P2口直接與外部RAM的高7位地址線相連,。ADuC841的第14口外接一個射級跟隨器作為DAC輸出口,第14口外接一個射級跟隨器的目的是增加電路的驅(qū)動能力,。為了方便集散控制和實現(xiàn)外置式數(shù)據(jù)采集器與計算機及其
他設備間的信息交換,,需要在外置式數(shù)據(jù)采集器設計標準的通信接口。本數(shù)據(jù)采集處理器預留了標準的RS 232C和RS 485A通信接口,,方便了聯(lián)機通信,。
3 軟件系統(tǒng)的設計
本系統(tǒng)的軟件編制和仿真下載均在Keil公司最新推出的Keil uVision3環(huán)境下實現(xiàn)。Keil單片機應用開發(fā)軟件支持多種不同公司的MCS51構(gòu)架的芯片,,集編輯,、編譯、下載和仿真等于一體,,同時還支持PLM,、匯編和C語言的程序設計,在調(diào)試程序和軟件仿真方面也有很強大的功能,。Keil uVision3支持ADuC8XX系列芯片的開發(fā)和在線下載,,簡單易用,能夠滿足系統(tǒng)軟件開發(fā)環(huán)境的需求,。由于篇幅的限制只給出了串口通信的設計,,如圖3所示。
在串行通信中,,收發(fā)雙方對發(fā)送或接收數(shù)據(jù)的速率要有約定,。通過軟件可對ADuC841串行口編程為4種工作方式,,其中,方式0和方式2的波特率是固定的,,方式1和方式3的波特率是可變的,,由定時器T1的溢出率來決定。串行口的4種工作方式對應3種波特率,。由于輸入移位時鐘的來源不同,,所以各種方式的波特率計算公式也不相同。
方式0的波特率=fosc/12
方式1的波特率=(2SMOD/64)(T1溢出率)
方式2的波特率=(2SMOD/64)fosc
方式3的波特率=(2SMOD/64)(T1溢出率)
當T1作為波特率發(fā)生器時,,使T1工作在自動再裝入的8位定時器方式(即方式2,,且TCON的TR1=1,以啟動定時器),。這時溢出率取決于TH1中的計數(shù)值,。在ADuC841中,用的晶振頻率為32.768 kHz,,所以選用的波特率也相對固定,。在使用串行口之前,應對其進行初始化,,主要是設置產(chǎn)生波特率的定時器1,、串行控制和中斷控制。具體步驟如下:
(1)確定T1的工作方式(編程TMOD寄存器),;
(2)計算T1的初值,,裝載TH1,TL1,;
(3)啟動T1(編程TCON中的TR1位),;
(4)確定串行口控制(編程SCON寄存器);
(5)串行口在中斷方式工作時,,要進行中斷設置(編程IE,,IP寄存器)。
雙方約定采用串行口方式1進行通信,,一楨信息為10位,,其中有1個起始位、8個數(shù)據(jù)位和一個停止位,,波特率為2 400 b/s,。T1工作在定時器方式2,振蕩頻率選用11.059 2 Hz,,由此可知TH1=TL1=OF4H,,PCON寄存器的SMOD位為0。
4 結(jié)語
在此提出了以ADuC841單片機為核心結(jié)構(gòu),進行數(shù)據(jù)實時采集的實施方案設計,。圍繞該系統(tǒng)方案,,把本系統(tǒng)實時內(nèi)核的具體實現(xiàn)步驟分為系統(tǒng)硬件設計和軟件編程設計2個階段。對今后的研發(fā)提供一定的整體框架,,為開發(fā)設計類似設備打下了理論與實踐的基礎,。