防腐監(jiān)測儀的設(shè)計與應(yīng)用
0 引言
本文引用地址:http://m.butianyuan.cn/article/83295.htm本文介紹的腐蝕儀是為了監(jiān)測野外輸油管道腐蝕度而設(shè)計的,由于輸油管道的腐蝕度影響到石油的生產(chǎn),會造成經(jīng)濟(jì)損失和安全事故,故對其腐蝕度的監(jiān)測是非常必要的。本系統(tǒng)中,可以通過檢測管道里的微電流,然后通過輸入經(jīng)驗(yàn)參數(shù)來換算出管道當(dāng)前的腐蝕度,并通過上位機(jī)程序把數(shù)據(jù)存檔,繪制腐蝕度變化曲線圖,以便操作人員可以直觀的了解輸油管道的腐蝕變化情況。
1 總體方案設(shè)計
1.1 設(shè)計總體構(gòu)成方案
設(shè)計主要由下位機(jī)和上位機(jī)兩個部分組成。下位機(jī)以單片機(jī)為核心,運(yùn)用程序控制來進(jìn)行電流的采集、處理、顯示,并將有關(guān)數(shù)據(jù)存儲到IC卡。上位機(jī)則是通過計算機(jī)與Q系列接觸式IC卡讀寫器之間進(jìn)行的串口通信,將IC卡里的數(shù)據(jù)導(dǎo)入計算機(jī)。
其下位機(jī)系統(tǒng)框圖如圖1所示。
圖1 下位機(jī)系統(tǒng)框圖
其上位機(jī)系統(tǒng)的系統(tǒng)框圖如圖2所示。
圖2 上位機(jī)系統(tǒng)框圖
1.2 下位機(jī)電路的設(shè)計
本系統(tǒng)的設(shè)計過程中,主要元件包括12位并行模/數(shù)轉(zhuǎn)換芯片AD1674、擴(kuò)展多功能接口芯片8155、時鐘日歷芯片DS12887、AT89C52單片機(jī)。無憂
放大芯片采用了AD524放大器??紤]到腐蝕電流的取值范圍為0uA~100uA,故選取固定增益值GAIN=1000,使放大后的電流量滿足AD1674的輸入端要求。
模擬電流量通過AD1674后轉(zhuǎn)換成對應(yīng)的數(shù)字量。本系統(tǒng)中AD1674與AT89C52的硬件接口電路如圖3:采用+12V、-12V雙電源供電,單極輸入方式,模擬量從10VIN輸入。其中CS接GAL16V8的18號管腳,它的啟動地址為4000H,高八位地址為4002H,低八位地址為4003H。轉(zhuǎn)換結(jié)束信號STS接到INT0上,AT89C52的讀寫信號W/R、RD通過與非門接到AD1674的操作使能端CE來控制AD1674的讀/轉(zhuǎn)換操作??捎弥袛喾绞剑部捎貌樵兎绞?。本系統(tǒng)中采用查詢方式,其流程如圖4所示。
圖3 AD1674與AT89C52的硬件接口電路
圖4 AD1674轉(zhuǎn)換流程圖
其對應(yīng)的C51語言程序如下所示:
#define ADSEL XBYTE[0x4000] //AD1674相關(guān)定義
#define HIGH_READ XBYTE[0x4002]
#define LOW_READ XBYTE[0x4003]無憂
unsigned int ad1674()
{ uchar high,low,j=0;
unsigned int ad_value1;
unsigned int ad_value2,ad[20],sum=0;
for(j=0;j<10;j++)
{ ADSEL="0x00"; //啟動12位轉(zhuǎn)換
while(STS==1) ; //等待AD轉(zhuǎn)換完畢
high="HIGH"_READ; //讀高八位數(shù)據(jù)
low="LOW"_READ; //讀低四位數(shù)據(jù)
low>>=4;
ad_value1=high*256+low; //合并12位二進(jìn)制數(shù)為十進(jìn)制數(shù)
ad_value2=ad_value1*0.0002442*10;
//1/0XFFF=0.0002442,這里取單位為mA級
評論