新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 熱工計(jì)量便攜計(jì)算工具有設(shè)計(jì)與實(shí)現(xiàn)

熱工計(jì)量便攜計(jì)算工具有設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2006-05-07 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:介紹用于工業(yè)熱工計(jì)量分度表計(jì)算及其它運(yùn)算的一種便攜計(jì)算工具。本設(shè)計(jì)選擇滿足高速、大的程序容量需求的單片機(jī),并對(duì)系統(tǒng)結(jié)構(gòu)作了說(shuō)明。

本文引用地址:http://butianyuan.cn/article/255612.htm

關(guān)鍵詞:熱工計(jì)量 分度表計(jì)算 高速單片機(jī) 浮點(diǎn)計(jì)算

在電力、石化、鋼鐵等行業(yè)中大量使用各類標(biāo)準(zhǔn)或非標(biāo)準(zhǔn)的熱電阻與熱電偶。為保證測(cè)量精度,這些溫度測(cè)量器件需要定期檢定或校準(zhǔn)。計(jì)量工程師在檢定時(shí),需要進(jìn)行大量的分度表計(jì)算。這類計(jì)算,尤其是標(biāo)準(zhǔn)溫度計(jì)的分度表計(jì)算,方法復(fù)雜、費(fèi)時(shí)費(fèi)力、容易出錯(cuò)。在些單位因此編制了一些小程序配合計(jì)算,但基于微機(jī)的程序?qū)τ诖罅康默F(xiàn)場(chǎng)計(jì)算顯得很不方便,計(jì)量工程師迫切需要一種快速便捷的計(jì)算工具。

本熱工計(jì)量便攜計(jì)算工具采用兩組單片機(jī)作為計(jì)算與控制核心。一組芯片用于核心計(jì)算及基本控制,另一組芯片專門用于復(fù)雜的中文界面顯示,兩者之間通過(guò)SPI總線通訊。這種設(shè)計(jì)在系統(tǒng)成本增加不多的情況下,簡(jiǎn)化了設(shè)計(jì)難度,提高了系統(tǒng)的可靠性。本熱工計(jì)量便攜計(jì)算工具可以完成標(biāo)準(zhǔn)熱電阻、標(biāo)準(zhǔn)熱電偶分度表轉(zhuǎn)換計(jì)算;工業(yè)熱電阻、熱電偶分度表轉(zhuǎn)換計(jì)算;變送器轉(zhuǎn)換計(jì)算;壓強(qiáng)、溫度等14類物理量約170種單位的轉(zhuǎn)換以及其它復(fù)雜的數(shù)學(xué)函數(shù)及浮點(diǎn)計(jì)算等,可以充分滿足計(jì)量工程師現(xiàn)場(chǎng)及實(shí)驗(yàn)室的計(jì)算需求。

1 計(jì)算需求

以比較復(fù)雜的標(biāo)準(zhǔn)鉑銠10—鉑熱電偶的分度表計(jì)算為例,分析對(duì)單片機(jī)計(jì)算功能的需求。計(jì)算方法依據(jù)ITS90國(guó)際溫標(biāo)及國(guó)家技術(shù)監(jiān)督局頒發(fā)的JJG75-95《標(biāo)準(zhǔn)鉑銠10—鉑熱電偶》計(jì)量檢定規(guī)程。與一般常規(guī)計(jì)算不同,熱電偶分度表計(jì)算具有步驟多、計(jì)算嵌套多以及需要大量的浮點(diǎn)乘法甚至指數(shù)計(jì)算等特點(diǎn),計(jì)算精度為十進(jìn)制5位有效數(shù)字,ANSI規(guī)定的單精度浮點(diǎn)計(jì)算可以滿足精度要求。

考慮一般的計(jì)算情形,如果某標(biāo)準(zhǔn)S熱電偶鋅、銻、銅點(diǎn)熱電勢(shì)已知,測(cè)量某溫度場(chǎng)的溫度,用冰點(diǎn)器作為冷端補(bǔ)償,此時(shí)可以測(cè)量得到其熱電勢(shì),需要計(jì)算此時(shí)的溫場(chǎng)溫度。下面是計(jì)算過(guò)程中用到的計(jì)算公式。

參考函數(shù),約有17次乘法及8次加法。

插值函數(shù),有3次乘法及2次加法。

ΔE(t)/μV=a+bt+ct 2

系數(shù)計(jì)算,有9次乘法及6次加法。

在計(jì)算中,需要對(duì)參考函數(shù)用二分法及線性插值法求其反函數(shù)的解,對(duì)一般的電壓點(diǎn)大約需要進(jìn)行12次參考函數(shù)調(diào)用??紤]到其他運(yùn)算,計(jì)算該溫度點(diǎn)大約需要做250次單精度浮點(diǎn)乘法計(jì)算以及140次單精度浮點(diǎn)加法計(jì)算。

如果考慮現(xiàn)場(chǎng)冷端補(bǔ)償溫度不為0℃的情況,上述計(jì)算次數(shù)需要加倍,即約500次單精度浮點(diǎn)乘法計(jì)算以及280次單精度浮點(diǎn)加法計(jì)算。

2 選擇單片機(jī)

2.1 計(jì)算精度及速度要求

考慮到計(jì)算精度(單精度浮點(diǎn)計(jì)算)的需求及價(jià)格因素,選擇使用8位單片機(jī)。

市面上有很多種類的8位單片機(jī),比較典型的有MCS51系列產(chǎn)品。選擇了INTEL 8031處理器作為選擇的判斷基礎(chǔ),使用6MHz石英晶體,用C51編制上述例子的計(jì)算程序。在實(shí)際計(jì)算中,測(cè)得完成一次完整的計(jì)算約需4秒。對(duì)于某些需要指數(shù)計(jì)算的例子,時(shí)間可長(zhǎng)達(dá)10余秒。由于程序的編制水平不同,不同單片機(jī)的結(jié)構(gòu)、指令不同等諸多因素影響,無(wú)法精確計(jì)算各類8位單片機(jī)的運(yùn)算時(shí)間,這個(gè)測(cè)試結(jié)果僅作為判斷的依據(jù)。

作為實(shí)際使用的產(chǎn)品,用戶可以接受的計(jì)算時(shí)間是1秒以內(nèi),因此必須采用高速8位單片機(jī)。

2.2 程序存儲(chǔ)容量及其它要求

本熱工計(jì)量便攜計(jì)算工具設(shè)計(jì)功能較多,程序較大,使用C語(yǔ)言編程,生成代碼較多。先在INTEL 8031上完成包含輸入輸出的上述計(jì)算的完整程序,生成代碼長(zhǎng)度約4KB,完成全部功能,最終程序代碼長(zhǎng)度約為80KB。相對(duì)于一般微處理器應(yīng)用,此程序代碼相對(duì)較多。為精簡(jiǎn)系統(tǒng)以及保密的要求,采用片內(nèi)集成ROM或FLASH程序存儲(chǔ)器的單片機(jī),要求其程序存儲(chǔ)器容量在80KB以上。

由于設(shè)計(jì)功能較多,需要實(shí)時(shí)保存大約2KB的參數(shù),即需要2KB以上的EEPROM實(shí)時(shí)保存數(shù)據(jù)。另外需要帶SPI總線接口以達(dá)到快速數(shù)據(jù)顯示的目的,對(duì)其它如I/O口數(shù)量等沒(méi)有特殊的需求。

2.3 選擇結(jié)果

ATMEL公司的ATmega103單片機(jī)是基于RISC結(jié)構(gòu)、內(nèi)置FLASH的單片機(jī),采用Harvard流水線結(jié)構(gòu),一個(gè)時(shí)鐘周期可以執(zhí)行一條指令。ATmega103時(shí)鐘頻率為6MHz,由于采用8位RISC結(jié)構(gòu),速度可以接近1MIPS/MHz,是同樣頻率傳統(tǒng)MCS51系列單片機(jī)速度的十幾倍。經(jīng)過(guò)測(cè)試,可以在0.1秒內(nèi)完成上述的測(cè)試運(yùn)算,在速度上完全達(dá)到了用戶期望值。

ATmega103內(nèi)置128KB的程序FLASH,完全滿足所需的程序存儲(chǔ)空間。本熱工計(jì)量便攜計(jì)算工具最終完成后程序存儲(chǔ)量為76KB。ATmega103內(nèi)置2KB的EEPROM,足夠存儲(chǔ)中間參數(shù),其他特性也使得電路設(shè)計(jì)更加簡(jiǎn)潔。此外,可以使用效率較高的C語(yǔ)言編程。

經(jīng)過(guò)多方比較,最終選擇了ATmega103單片機(jī)作為核心計(jì)算及基本控制處理器。

3 系統(tǒng)結(jié)構(gòu)與工作原理

3.1 硬件結(jié)構(gòu)

本熱工計(jì)量便攜計(jì)算工具原理框圖如圖1所示。

在硬件設(shè)計(jì)中,較有特點(diǎn)的電路設(shè)計(jì)說(shuō)明如下:

電源部分采用MAX713的智能鎳鎘電池充電電路。MAX713是使用較為廣泛的智能充電芯片,設(shè)計(jì)靈活,使用功率MOSFET組成低功耗的開關(guān)型電源,可以在充電的同時(shí)為系統(tǒng)供電。穩(wěn)壓部分采用MAX639。MAX639特別適合9V供電,本身帶有低電壓檢測(cè)功能。圖2是穩(wěn)壓及電壓監(jiān)控電路部分。

圖2中,VOLT_IN端是電源輸入端,也是MAX713電壓輸出端。ON_OFF端是開關(guān)機(jī)鍵。該端接地開機(jī),Q1導(dǎo)通,為MAX639供電,輸出VCC穩(wěn)壓5V。CPU初始化時(shí)將TURN OFF PC7端置高電平,Q2導(dǎo)通,保持Q1持續(xù)導(dǎo)通。在開機(jī)狀態(tài)下,按開關(guān)機(jī)鍵,ON_OFF端接地,OFF INT0外部中斷端電平拉低,CPU響應(yīng)中斷后檢測(cè)PA7端,PA7端為低電平表示有關(guān)機(jī)請(qǐng)求,此時(shí)將TURN OFF PC7端置低電平,Q2截止,Q1截止,實(shí)現(xiàn)關(guān)機(jī)。圖2中,LOW BATT PA6是低電壓復(fù)位輸出端。

本系統(tǒng)鍵盤按鍵較多(37鍵),但是為了降低成本,同時(shí)充分利用ATmega103現(xiàn)有的I/O口,采用了矩陣鍵盤設(shè)計(jì)。特別之處是采用中斷鍵盤響應(yīng),統(tǒng)一處理按鍵信號(hào)、關(guān)機(jī)信號(hào)及低電壓檢測(cè)信號(hào),由于AVR單片機(jī)有內(nèi)部上拉電阻,因此簡(jiǎn)化了電路設(shè)計(jì)。

3.2 軟件結(jié)構(gòu)

由于系統(tǒng)程序較大,采用了模塊化編程,充分利用C語(yǔ)言豐富的現(xiàn)成庫(kù)函數(shù)以簡(jiǎn)化程序設(shè)計(jì)。圖3是系統(tǒng)軟件框圖。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉