在工業(yè)污水處理過程當中,往往需要監(jiān)測污水的COD 值,而現(xiàn)場的監(jiān)測儀器所監(jiān)測到 的數(shù)據(jù)是通過各種模擬信號輸出,這些模擬信號必須通過A/D 轉(zhuǎn)換器變換為數(shù)字信號后才 能送入上位機或外接數(shù)據(jù)采集器。基于此,本文給出了基于A/D 轉(zhuǎn)換器TLC2543 的軟硬件 設計,并結(jié)合最小二乘法將輸出數(shù)據(jù)進行修正,達到了環(huán)保部分對有機污染物監(jiān)測數(shù)據(jù)精度 的要求。 1 系統(tǒng)硬件設計介紹 如圖1所示,是系統(tǒng)電路圖, A/D轉(zhuǎn)換器采用TLC2543,它是12位串行模數(shù)轉(zhuǎn)換器,使用 開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程,由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機I/O 資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應用。其特點如下所述: A/D轉(zhuǎn)換器有12位分辨率;在工作溫度范圍內(nèi)轉(zhuǎn)換時間為10us;有11個模擬輸入通道;采用 3路內(nèi)置自測試方式;有轉(zhuǎn)換結(jié)束(EOC)輸出;具有單、雙極性輸出;有可編程的MSB或 LSB前導;輸出數(shù)據(jù)長度可以編程設定為8位、12位或16位。在本系統(tǒng)中采用的輸出長度設 定為12位。另外TLC2543與外圍電路的連線簡單,它有三個控制輸入端為CS(片選)、輸入/ 輸出時鐘(I/O CLOCK)以及串行數(shù)據(jù)輸人端(DATA INPUT);模擬量輸入端AIN0 ~ AIN10 (1 ~ 9 腳、11 ~ 12 腳),11路輸入信號由內(nèi)部多路器選通,對于本系統(tǒng),選用了AIN0 模擬輸入端;系統(tǒng)時鐘由片內(nèi)產(chǎn)生并由I/O CLOCK同步;正、負基準電壓(REF+ ,REF-)由外部提供, 通常為VCC和地, 兩者差值決定輸人范圍。在本系統(tǒng)中,輸入模擬信號為4"20mA 電流的模擬量,也就是轉(zhuǎn)換輸入范圍電壓是0"5V。 單片機采用AT89LS51,如圖1 所示。AT89LS51 是一個低功耗,高性能CMOS 8 位單片 機,有40 個引腳,片內(nèi)含4k Bytes ISP(In-system programmable)的可反復擦寫1000 次的Flash 只讀程序存儲器,128 bytes 的隨機存取數(shù)據(jù)存儲器(RAM),32 個外部雙向輸入/輸出(I/O) 口,5 個中斷優(yōu)先級,2 層中斷嵌套中斷,2 個16 位可編程定時計數(shù)器,2 個全雙工串行通信 口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。器件采用ATMEL 公司的高密度、非易失性 存儲技術(shù)制造,兼容標準MCS-51 指令系統(tǒng)及80C51 引腳結(jié)構(gòu),芯片內(nèi)集成了通用8 位中 央處理器和ISP Flash 存儲單元。同時該芯片還具有PDIP、TQFP 和PLCC 等三種封裝形式, 在本系統(tǒng)用采用的是PDIP 封裝形式,輸入/輸出(I/O)口采用了P1 口如圖1 所示,P1 口 是一個帶內(nèi)部上拉電阻的8 位雙向I/O 口,P1 的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個 TTL 邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入 口。 1.1 TLC2543 主要引腳說明 AIN0~AIN10,引腳為1"9,11,12:模擬量輸入端。11 路輸入信號由內(nèi)部多路器選 通(本系統(tǒng)采用通道AIN0)。 DATA OUT,引腳為16,A/D 轉(zhuǎn)換結(jié)果的三態(tài)串行輸出端。為高時處于高阻抗狀態(tài), 為低時處于激活狀態(tài)。 DATAINPUT,引腳為17,串行數(shù)據(jù)輸入端。由4 位的串行地址輸入來選擇模擬量輸 入通道。 I/O CLOCK,引腳為18,輸入/輸出時鐘端。I/OCLOCK 接收串行輸入信號并完成以 下四個功能:(1)在I/O CLOCK 的前8 個上升沿,8 位輸入數(shù)據(jù)存入輸入數(shù)據(jù)寄存器;(2) 在I/OCLOCK 的第4 個下降沿,被選通的模擬輸入電壓開始向電容器充電,直到I/OCLOCK 的最后一個下降沿為止;(3)將前一次轉(zhuǎn)換數(shù)據(jù)的其余11 位輸出到DATAOUT 端,在 I/OCLOCK 的下降沿時數(shù)據(jù)開始變化;(4)I/OCLOCK 的最后一個下降沿,將轉(zhuǎn)換的控制信 號傳送到內(nèi)部狀態(tài)控制位。 EOC,引腳為19,轉(zhuǎn)換結(jié)束端。在最后的I/OCLOCK 下降沿之后,EOC 從高電平變 為低電平并保持到轉(zhuǎn)換完成和數(shù)據(jù)準備傳輸為止。EOC 引腳由高變低是在第12 個時鐘的 下降沿,它標志TLC2543 開始對本次采樣的模擬量進行A/ D 轉(zhuǎn)換,轉(zhuǎn)換完成后EOC 變高, 標志轉(zhuǎn)換結(jié)束。 1.2 串口輸出電路介紹 如圖2所示,是MAX232芯片與單片機AT89LS51與PC機的具體電路圖,外圍元件都是按照 MAX232的標準外圍元件接入,其連接電路簡單,穩(wěn)定;串口針腳的接法也是按照標準工業(yè)的 說明接入,其中第2個針腳是接入數(shù)據(jù),第3個針腳是發(fā)送數(shù)據(jù),第5個針腳接地,其他針腳 懸空。 2 AD轉(zhuǎn)換過程及實現(xiàn) 如圖1所示,上電后,片選CS 為高, I/ O CLOCK、DATA IN PUT 被禁止, DATA OUT 呈 高阻狀態(tài), EOC為高。使CS 變低, I/ O CLOCK、DATA IN PUT 使能, DATA OUT 脫離高阻 狀態(tài)。12 個時鐘信號從I/ O CLOCK端依次加入,隨著時鐘信號的加入,控制字從DATA INPUT 一位一位地在時鐘信號的上升沿時被送入TLC2543 (高位先送入) , 同時上一周期轉(zhuǎn)換的A/ D 數(shù)據(jù), 即輸出數(shù)據(jù)寄存器中的數(shù)據(jù)從DATA OUT 一位一位地移出。TLC2543 收到第4 個 時鐘信號后,通道號AIN0 也已收到,因此,此時TLC2543 開始對選定通道的模擬量進行采樣, 并保持到第12 個時鐘的下降沿。在第12 個時鐘下降沿, EOC 變低,開始對本次采樣的模擬 量進行A/ D 轉(zhuǎn)換,轉(zhuǎn)換時間約需10μs ,轉(zhuǎn)轉(zhuǎn)完成EOC 變高,轉(zhuǎn)換的數(shù)據(jù)在輸出數(shù)據(jù)寄存器中, 待下一個工作周期輸出。此后可以進行新的工作周期。 3 最小二乘法原理及實現(xiàn) 最小二乘法是基于隨機統(tǒng)計原理,把試驗樣本值作為隨機變量,使其與所求直線的距離的 平方和為最小。它在本系統(tǒng)中直接運用就是,當有一組(二維) 大小不等的試驗數(shù)據(jù),它們之 間具有近似線性的關(guān)系,而需要求出它們之間的線性關(guān)系的表達式時,首先畫出二維坐標系, 把這些以試驗數(shù)據(jù)為坐標的點在坐標系中畫出,就可以利用最小二乘法原理根據(jù)試驗數(shù)據(jù)畫 出一條直線,使這條直線到所有點的距離的平方和為最小,那么這條直線的方程就可以最佳地 反映這組試驗數(shù)據(jù)的線性關(guān)系。如何畫出這條直線,求出直線的方程和斜率,可以借助excel 數(shù)據(jù)處理工具或其他線性擬合計算軟件來實現(xiàn)。 在上面 A/D 轉(zhuǎn)換程序中,buf0"buf7 是轉(zhuǎn)換后數(shù)據(jù)的高8 位,buf8"buf11 是轉(zhuǎn)換后數(shù)據(jù) 的低4 位。由于模擬量的輸入范圍是4"20mA,接入阻抗電阻為250Ω,所以轉(zhuǎn)換后電壓的 范圍是1"5V,又因模擬量4"20mA 與測量儀器測出的COD 值成線性關(guān)系,也就是與轉(zhuǎn)換 后1"5V 電壓成線性關(guān)系,因此可以采用最小二乘法求出線性關(guān)系的斜率系數(shù)a 和常數(shù)b,最后求出COD 值,通過串口將COD 值發(fā)送給PC 機或其他數(shù)據(jù)采集器。轉(zhuǎn)換后電壓算法及 COD 值算法如下: 因 5V 對應的12 位二進制數(shù)為111111111111(也就是滿量程的數(shù)4095),將5V 電壓分成4095 分,每一份即為5/4095,在1"5V 之中的電壓與0"4095 之間是一一對應的,因此轉(zhuǎn)換后電 壓可以按(1)式計算: (2)式中斜率a和常數(shù)b采用最小二乘法求出。如下表1所示,是用有機污染監(jiān)測儀器監(jiān)測(型號為OPM-410A)到的COD值與A/D轉(zhuǎn)換電壓值,它們成線性關(guān)系。 在表1中:U是A/D轉(zhuǎn)換后測量出來的電壓值;COD是型號為OPM-410A的有機污染監(jiān)測儀器 監(jiān)測到的COD值。根據(jù)最小二乘法原理,可求出斜率a和常數(shù)b的值分別為125.3和(-50.6), 因此(2)式即為: COD=125.3*dianya – 50.6 (單位:mg/L) 4 實際測試結(jié)果 以下是采用型號為OPM-410A的有機污染監(jiān)測儀監(jiān)測到的COD數(shù)據(jù)與本系統(tǒng)采集COD數(shù)據(jù)對比。 表1中 COD1 是指型號為OPM-410A有機污染監(jiān)測儀監(jiān)測到的COD數(shù)據(jù)數(shù)值; COD2 是采用本嵌入式系統(tǒng)所采集的數(shù)據(jù)數(shù)值;誤差=COD2-COD1; 表2中的數(shù)據(jù)僅僅是本系統(tǒng)在實際測試過程中隨機采集的一部分,從表中可以看出,本 系統(tǒng)所采集到的數(shù)據(jù)低于監(jiān)測儀器采集到的數(shù)據(jù),誤差不低于-3mg/L,可以滿足環(huán)保部分 對有機污染監(jiān)測的要求,達到預期的效果。 結(jié)束語: 基于高精度的12位串行A/D轉(zhuǎn)換器TLC2543的模擬數(shù)據(jù)采集系統(tǒng)具有較好的靈活性和 實用性,采用TLC2543可以使電路簡單,便于提高性能,降低成本,同時本系統(tǒng)采用了最小 二乘法對電壓值與COD值之間進行線性擬和,使之所采集到的COD值更接近于有機污染監(jiān)測儀 監(jiān)測到的COD值。經(jīng)實測,本系統(tǒng)穩(wěn)定可靠,所采集到的數(shù)據(jù)精度滿足環(huán)保部分對有機污染 監(jiān)測儀器精度的要求。 本文作者創(chuàng)新點:本文利用最小二乘法對電壓值與COD值進行線性擬合,使采集到的數(shù)據(jù)更 接近于真實值,在一定范圍內(nèi)滿足環(huán)保部門對有機污染物監(jiān)測儀器精度的要求。另外本系統(tǒng) 基于串行12位A/D轉(zhuǎn)換器TLC2543的模擬數(shù)據(jù)采集系統(tǒng)具有較好的靈活性和實用性,可實現(xiàn)對電壓、電流、溫度、壓力、濕度等多種電量與非電量的高精度采集與處理。 |