付 青, 丁 金 華, 王 輝, 王 朋 亮, 季 田
( 大連工業(yè)大學(xué) 機(jī)械工程與自動化學(xué)院, 遼寧 大連 116034 )
智能記錄儀近十年來在工業(yè)上已經(jīng)得到了廣泛的應(yīng)用[1],然而在教學(xué)當(dāng)中應(yīng)用不是很廣泛[2]。 為了讓學(xué)生通過實(shí)驗(yàn)更好地了解現(xiàn)代工業(yè)中常用的檢測裝置,不與實(shí)際脫節(jié),作者利用HMI液晶終端系統(tǒng)完成了智能記錄儀。
檢測技術(shù)中涉及多種類型的傳感器,例如電阻應(yīng)變傳感器、電感位移傳感器、壓電傳感器、電容傳感器、光電旋轉(zhuǎn)編碼器、用于溫度測量的熱電偶和鉑電阻傳感器。一些傳感器內(nèi)部已有信號調(diào)理電路,可以直接輸出標(biāo)準(zhǔn)電流信號,如DC 0~10 mA,DC 4~20 mA或標(biāo)準(zhǔn)電壓信號,如0~5 V,0~10 V等,有的以頻率信號輸出。標(biāo)準(zhǔn)信號輸出的傳感器信號調(diào)理電路只需作簡單的放大與變換,對其他非標(biāo)準(zhǔn)信號,先經(jīng)過變送轉(zhuǎn)換成標(biāo)準(zhǔn)信號后再進(jìn)行相應(yīng)的調(diào)理電路。智能記錄儀涉及應(yīng)變片的電橋電路變換、鉑電阻的恒流驅(qū)動及補(bǔ)償變換電路、熱電偶的信號變換電路,基本涵蓋了工科院校檢測技術(shù)中的傳感器種類,可以完成諸如力學(xué)中的梁的彎曲、扭轉(zhuǎn)實(shí)驗(yàn)、拉壓力傳感器實(shí)驗(yàn)、振動測量、溫度測量、齒輪周節(jié)誤差分析等實(shí)驗(yàn)。
智能記錄儀系統(tǒng)硬件配置框圖如圖1所示。
圖1 智能記錄儀系統(tǒng)框圖
數(shù)據(jù)采集器的核心器件C8051F340是完全集成的混合信號片上系統(tǒng)型MCU,帶有模擬多路器10位的單端/差分A/D,精確校準(zhǔn)的12 MHz內(nèi)部振蕩器和4倍時(shí)鐘乘法器,具有5個(gè)捕捉/比較模塊和看門狗定時(shí)器功能的可編程計(jì)數(shù)器/定時(shí)器陣列,4個(gè)通用的16位定時(shí)器,容許5 V輸入的多達(dá)40個(gè)I/O端口。
在輸入信號中,對數(shù)據(jù)采集的準(zhǔn)確性要高,所以必須考慮到隔離技術(shù),以提高抗干擾能力,從而使A/D采樣能夠良好的進(jìn)行。本系統(tǒng)從傳感器來的毫伏級的電壓信號經(jīng)低溫漂運(yùn)算放大器OP07放大到0~10 V后加到V/F變換器LM331的輸入端,LM331將輸出的頻率信號轉(zhuǎn)換成TTL電平,進(jìn)過6N137光電耦合器送給單片機(jī)的I/O口作為定時(shí)器的計(jì)數(shù)脈沖。LM331采用了新的溫度補(bǔ)償能隙基準(zhǔn)電路,在整個(gè)工作溫度范圍內(nèi)和低到4.0 V電源電壓下都有極高的精度。LM331的動態(tài)范圍寬,可達(dá)100 dB;線性度好,最大非線性失真小于0.01%,工作頻率低到0.1 Hz時(shí)尚有較好的線性;變換精度高,數(shù)字分辨率可達(dá)12位;該轉(zhuǎn)換電路線性良好,抗干擾能力強(qiáng),輸出范圍在10 Hz~10 kHz,有利于提高系統(tǒng)的測試范圍。如此使得儀表的抗干擾能力大大提高,使儀表運(yùn)行穩(wěn)定、可靠,
所以用LM331模塊代替CPU自帶的AD轉(zhuǎn)換功能。
液晶顯示器可分為段位式LCD、字符式LCD和點(diǎn)陣式LCD。其中段位式LCD和字符式LCD只能用于字符和數(shù)字的簡單顯示,不能滿足圖形曲線和漢字顯示的要求。設(shè)計(jì)中智能儀器需要進(jìn)行實(shí)時(shí)曲線圖、漢字、字符等顯示,因此選擇點(diǎn)陣式LCD。作為一款以微處理器為核心、集液晶漢字與圖形顯示為一體,具有無紙記錄、實(shí)時(shí)性好、通用性好、精度高、帶通信功能的智能化儀表,其精度、可靠性、性價(jià)比等綜合性能都需要考慮,最終采用了8″的迪文智能終端彩色顯示器,800×600的圖形點(diǎn)陣,型號為DMT80600S080-03WN,電源輸入電壓為4.5~26 V,HMI用戶接口有8個(gè)引腳和單片機(jī)連接進(jìn)行通訊,實(shí)現(xiàn)人機(jī)交互。表1是HMI接口引腳說明。
表1 HMI接口引腳
由于迪文HMI的處理速度很快,所以不用判斷BUSY信號狀態(tài),懸空即可。其他引腳與單片機(jī)對應(yīng)連接。HMI的串口模式為全雙工異步串口(UART),8N1模式,波特率1 200~115 200 b/s。HMI可以支持2000~2099年的陽歷和農(nóng)歷實(shí)時(shí)時(shí)鐘,為提供時(shí)間基準(zhǔn)以確保歷史數(shù)據(jù)在時(shí)間上的不變性,它在掉電情況下仍能正常運(yùn)行,走時(shí)準(zhǔn)確。HMI終端帶有鍵盤接口,可支持8×8矩陣鍵盤,可實(shí)現(xiàn)人工設(shè)定或者功能切換等操作。
調(diào)理后的信號通過LM331轉(zhuǎn)換為頻率信號,利用CPU的定時(shí)器進(jìn)行計(jì)數(shù),實(shí)現(xiàn)A/D采樣,最后得到A/D 轉(zhuǎn)換的結(jié)果。最后經(jīng)過UART1串口的發(fā)送引腳再次隔離發(fā)送到HMI終端上顯示。為了使采樣的精度更準(zhǔn)確,采用PCA中斷,邊沿觸發(fā)的捕捉方式,得到一個(gè)周期的采樣數(shù),取10個(gè)周期后再取平均值。
void PCA0_ISR (void) interrupt 11
{
if (CCF0)
{
CCF0=0;
pcacounter++;
fr331time=fr331time+PCA0CP0;
nnn++;
if (nnn>=10)
{
average=fr331time/10;
nnn=0;
fr331time=0;
}
}
}
迪文HMI所有指令或者數(shù)據(jù)都是16進(jìn)制(HEX)格式,對于字形(2字節(jié))數(shù)據(jù),采用MSB方式傳送,即高字節(jié)在前。數(shù)據(jù)幀結(jié)構(gòu)如表2所示。
表2 HMI數(shù)據(jù)幀結(jié)構(gòu)
HMI終端主要顯示文本、數(shù)據(jù)、曲線等功能,使用內(nèi)部標(biāo)準(zhǔn)指令,將程序模塊化、簡單化,這樣不但節(jié)省開發(fā)時(shí)間,還便于用戶修改與維護(hù)。所用的部分指令說明如下:
文本顯示指令:0xAA 0x55
動態(tài)曲線顯示指令: 0xAA 0x74
說明:
液晶顯示動態(tài)曲線,需要實(shí)時(shí)描出變量的曲線趨勢圖,作者用顯示時(shí)斜率的值來定義曲線的變化幅度,把曲線按照其變化幅度的大小分成“大動態(tài)曲線”和“小動態(tài)曲線”。在顯示終端上可以用不同的方法來實(shí)現(xiàn),因?yàn)楸緦?shí)驗(yàn)數(shù)據(jù)變化幅度不是很大,所以采用“小動態(tài)曲線”來實(shí)現(xiàn)動態(tài)的曲線。
小動態(tài)曲線可用0x74指令實(shí)現(xiàn),用指定的背景色(Bcolor)擦除 (X,Ys) 至(X,Ye)的垂直線,Ys為Y坐標(biāo)起點(diǎn),Ye為主Y坐標(biāo)終點(diǎn),在以后采樣點(diǎn)的位置顏色為Colori的點(diǎn),可以同時(shí)在不同位置多個(gè)點(diǎn),就是把采樣點(diǎn)當(dāng)成X軸,不同變量采樣點(diǎn)結(jié)果作為Y軸,通過不停的采樣輸出刷新X坐標(biāo)來實(shí)現(xiàn)。
HMI自帶實(shí)時(shí)時(shí)鐘,通過UATR1中斷,對讀取的時(shí)鐘接收,顯示在液晶上。
子程序代碼:
void send_byte(unsigned char f)//發(fā)送字節(jié)
{
SBUF1=f;
while ((SCON1 & 0x02)==0)
{;}
SCON1 &= 0xfd;
}
void send_str(unsigned char *p,unsigned char s)//向串口發(fā)送一個(gè)數(shù)據(jù)串
{
unsigned char m;
for(m=0;m
{ send_byte(*p); p++;}
}
void curv()//顯示實(shí)時(shí)曲線
{
send_byte(0xAA);
send_byte(0x74);
DATE=(RE[0]*100+RE[1]*10+RE[3])/20+100;//接受到的數(shù)據(jù),Y軸從100開始為起點(diǎn)
send_word (x);
send_word (100);
send_word (600);
send_word (0x001f);
send_word (DATE);
send_word (0xF800);
end();//幀尾
x++;//可根據(jù)X軸點(diǎn)間距設(shè)置x的增值
if(x>790)//X軸為800
{
x=50;//X軸從50開始起點(diǎn)
}
msec(1);//延時(shí)
}
本系統(tǒng)采用RS-232接口芯片MAX232作為通信口,用UART1來進(jìn)行發(fā)送數(shù)據(jù),串口中斷來接受HMI發(fā)送的數(shù)據(jù)。單片機(jī)還留有zigbee接口,可以方便將來采用無線發(fā)送數(shù)據(jù)。
對數(shù)字鍵盤進(jìn)行定時(shí)掃描,根據(jù)判斷結(jié)果置相應(yīng)標(biāo)志,以便主控程序執(zhí)行相應(yīng)的子程序。
無紙記錄儀是一個(gè)實(shí)時(shí)存儲記錄的一種系統(tǒng),現(xiàn)場大量數(shù)據(jù)需要保存、存檔以備以后可以查詢,本系統(tǒng)采用的CPU帶有USB 2.0接口,所以可以將實(shí)驗(yàn)數(shù)據(jù)存到U盤,作為外部存儲器。便于從歷史數(shù)據(jù)庫中提取數(shù)據(jù)并完成指定的處理功能的數(shù)據(jù)轉(zhuǎn)換,包括歷史數(shù)據(jù)顯示、歷史曲線繪制等。
本系統(tǒng)測試采用鉑電阻PT100-溫度傳感器。方案為設(shè)計(jì)一個(gè)恒流源通過PT100熱電阻,通過檢測PT100上電壓的變化來換算成溫度。圖2為測溫原理圖。
圖2 PT100測溫原理圖
鉑電阻阻值與溫度的關(guān)系可以近似用下式表示[5]:
在0~650 ℃:Rt=R0(1+At+Bt2)
式中,A、B為常數(shù),A=3.968 47×10-3;B=-5.847×10-7。
由于公式計(jì)算較為復(fù)雜,所以采用軟件查表或線性插值法,從A/D輸入的電壓值再得出實(shí)時(shí)溫度值。鉑電阻常用的電壓信號獲取電路通常有電橋電路和恒流源電路,實(shí)際測溫中常采用恒流源電路。由于恒流源的作用,使得電壓輸出與電阻成良好的線性關(guān)系,測量精度得到了很好的保證,最后將電壓信號轉(zhuǎn)換為對應(yīng)的溫度值實(shí)時(shí)顯示。為了使電阻和溫度關(guān)系盡量線性,減少誤差,在軟件設(shè)計(jì)中可采用數(shù)字濾波和非線性補(bǔ)償。具體方法由學(xué)生自選來進(jìn)行編程,使實(shí)時(shí)曲線更接近于線性。
HMI液晶終端系統(tǒng)分為兩個(gè)通道,左側(cè)通道為溫度和電阻關(guān)系,右側(cè)通道為電壓與電阻關(guān)系。通過液晶終端可以使學(xué)生們更直觀地觀察溫度趨勢曲線和實(shí)時(shí)測量的電壓、電阻和溫度值。 圖3是實(shí)驗(yàn)中記錄儀的界面,溫度值和電壓值會隨著阻值變化。
圖3 鉑電阻PT100測溫實(shí)驗(yàn)記錄儀界面
智能記錄儀在自動化實(shí)驗(yàn)裝置中的應(yīng)用,解決了原先使用有紙記錄儀帶來的各種問題,提高了參數(shù)記錄精度,方便了數(shù)據(jù)保存和分析,提高了實(shí)驗(yàn)效果,學(xué)生也可利用此系統(tǒng)進(jìn)行單片機(jī)的編程,使之更形象地了解圖形化編程,同時(shí)也使學(xué)生接觸到了最新的自動化裝備。相信智能記錄儀在今后的教學(xué)實(shí)驗(yàn)中能得到更為廣泛的應(yīng)用。
[1] 謝焱,畢監(jiān)勃. 無紙記錄儀技術(shù)的現(xiàn)狀及發(fā)展趨勢[J]. 自動化與儀器儀表, 2001(3):1-4.
[2] 仲玉芳. 無紙記錄儀在工業(yè)自動化教學(xué)實(shí)驗(yàn)裝置中的應(yīng)用[J]. 微計(jì)算機(jī)應(yīng)用, 2007, 26(7):23-26.
[3] 楊春燕,馬月輝,嚴(yán)世強(qiáng). 多通道無紙記錄儀的研制和開發(fā)[J]. 實(shí)驗(yàn)室研究與探索, 2002, 21(6):93-94.
[4] 王悅. 彩色無紙記錄儀的設(shè)計(jì)[J]. 儀器儀表與應(yīng)用, 2006(4):84-86.
[5] 謝偉,文小玲. 鉑電阻測溫非線性補(bǔ)償?shù)难芯縖J]. 國外電子元器件, 2007(7):15-17.
[6] 張根源,陸瓊,何曉華. 一種帶集成WATCHDOG電路的無紙記錄儀的設(shè)計(jì)[J]. 計(jì)算機(jī)測量與控制, 2002, 10(7):485-487.