基于S3C2410的恒溫式自動(dòng)量熱儀設(shè)計(jì)
0 引言
量熱儀是能測(cè)定固、液態(tài)物質(zhì),如煤炭、火藥、粘度油、食品、飼料等可燃物質(zhì)熱值的儀器。傳統(tǒng)的量熱儀受客觀因素影響較大,本文設(shè)計(jì)自動(dòng)量熱儀可減少客觀因素的影響,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)傳輸與實(shí)時(shí)處理,并使量熱儀具有網(wǎng)絡(luò)通信功能,能夠?qū)崿F(xiàn)數(shù)據(jù)的網(wǎng)絡(luò)傳輸,并實(shí)現(xiàn)對(duì)量熱儀的遠(yuǎn)程控制。
近年來(lái)隨著嵌入式技術(shù)的不斷成熟,其成本也不斷下降,本身所具有的規(guī)模可變、擴(kuò)展靈活、有較高的實(shí)時(shí)性和穩(wěn)定性、系統(tǒng)內(nèi)核小的優(yōu)點(diǎn)逐漸凸現(xiàn)出來(lái)。
1 基本原理
恒溫式量熱儀通過(guò)氧彈法測(cè)量熱值。通過(guò)放在氧彈中的物質(zhì)燃燒并使燃燒放出的熱量通過(guò)彈筒傳遞給水及儀器系統(tǒng),再根據(jù)水溫的變化計(jì)算出物質(zhì)的發(fā)熱量。其測(cè)量的基本框圖如圖1所示。根據(jù)氧彈法測(cè)量的基本原理,發(fā)熱量計(jì)算公式如下:
式中:E為熱容量,單位:J/K;q1為點(diǎn)火熱,單位:J;q2為添加物如包紙等產(chǎn)生的總熱量,單位:J;m為試樣質(zhì)量,單位:g;Tc為主期結(jié)束時(shí)溫度,單位:℃;Tb為主期開始時(shí)溫度,單位:℃,C為冷卻校正值,單位:℃。
由上式可知,只要測(cè)量出水的溫度以及相關(guān)參數(shù),就可以計(jì)算出煤樣的發(fā)熱量。
2 系統(tǒng)設(shè)計(jì)
2.1 硬件設(shè)計(jì)
S3C2410與量熱儀各個(gè)部分的連接框圖如圖2所示,在硬件連接之后,需要對(duì)各個(gè)部分與S3C2410的端口進(jìn)行軟件驅(qū)動(dòng)。
2.1.1 ARM板選擇
本次設(shè)計(jì)選擇市場(chǎng)上使用較多,同時(shí)在結(jié)構(gòu)和資源上較為典型的S3C2410處理器,主要是基于以下原因:
(1)性價(jià)比高,使用的最廣泛。作為一款經(jīng)典的ARM9系列處理器,S3C2410的資料最完整,各種驅(qū)動(dòng)程序的開發(fā)包最多,利于開發(fā)者開發(fā)。
(2)采用核心板和底板分離的設(shè)計(jì)思想,用戶可以方便地使用Core-Board進(jìn)行二次開發(fā)。
2.1.2 傳感器的選擇
現(xiàn)在的量熱儀大多采用鉑電阻作為測(cè)溫元件;它雖然具有精度高等優(yōu)點(diǎn),但鉑電阻在O~800℃范圍內(nèi)、無(wú)校正的情況下,最大非線性誤差可達(dá)2%,而且它們屬于模擬式傳感器,輸出信號(hào)需要進(jìn)行模/數(shù)轉(zhuǎn)換,這不僅使電路復(fù)雜,成本增加,而且增大了誤差。改進(jìn)的方式是用石英晶體來(lái)代替鉑電阻作為測(cè)溫元件。根據(jù)不同頻率和切型,石英晶體溫度傳感器的溫度靈敏度可以在20~2 850 Hz/℃范圍內(nèi)變動(dòng),使溫度分辨率達(dá)0.000 1℃,而且溫漂、時(shí)漂極小。
石英晶體溫度傳感器HTS-206就是其中的一種,它由日本EPSON公司生產(chǎn),其振蕩頻率在40 kHz附近,工作溫度范圍為-55~+125℃,其測(cè)量精度利用多點(diǎn)差值法校正后可達(dá)O.05℃石英晶體諧振器HTS-206的調(diào)理電路包括振蕩電路、分頻器、計(jì)數(shù)器三個(gè)主要部分構(gòu)成,其調(diào)理電路如圖3所示。
以往測(cè)量頻率的方法是在芯片外接FPGA芯片,不過(guò)HTS-206,的工作頻率為40 kHz左右,符合S3C2410的工作性能,為了節(jié)約成本,可以利用中斷模式對(duì)頻率信號(hào)進(jìn)行測(cè)量。HTS-206的輸出經(jīng)過(guò)整流放大后,通過(guò)S3C2410的EINT0端口,用FIQ中斷模式。
利用軟件設(shè)定中斷的閘門時(shí)間為Tw,并且記錄被測(cè)信號(hào)的變化周期數(shù)(或脈沖個(gè)數(shù))N,則被測(cè)信號(hào)的頻率為:
2.1.3 控制部分
控制部分由充氧控制、充放水控制、水位控制、點(diǎn)火控制、升降電機(jī)控制等幾部分組成:
充氧電路,主要完成氧彈的沖放氣的控制。當(dāng)實(shí)驗(yàn)開始時(shí),發(fā)送信號(hào),打開閥門。氧彈充氣到一定壓力的時(shí)侯,向S3C2410發(fā)出信號(hào)。S3C2410接收到信號(hào)就控制閥門關(guān)閉。
充放水及水位控制系統(tǒng),主要完成內(nèi)外筒進(jìn)水、排水、定位任務(wù)。分別通過(guò)兩個(gè)探測(cè)器測(cè)定內(nèi)外筒的水位,利用程序進(jìn)行水位比較,從而達(dá)到定內(nèi)外筒水定量的目的。
點(diǎn)火系統(tǒng)控制氧彈中的點(diǎn)火裝置,具體控制要求為:點(diǎn)火絲點(diǎn)火在自檢之后進(jìn)行,如一切正常,則點(diǎn)火。如果點(diǎn)火成功,則向S3C2410發(fā)送信號(hào),啟動(dòng)測(cè)溫系統(tǒng)。如果點(diǎn)火失敗,則退出本次試驗(yàn)。
2.1.4 S3C2410的網(wǎng)絡(luò)通信
如圖4所示,S3C2410使用CS8900A-Q3控制器擴(kuò)展網(wǎng)絡(luò)接口模塊。它的傳輸速率為10 Mb/s。CS8900工作在16位模式下,網(wǎng)卡芯片復(fù)位默認(rèn)工作方式為I/O連接。由于CS8900A和S3C2410的中斷電平是相反的,所以,中斷信號(hào)線間需接一個(gè)非門。信號(hào)的發(fā)送和接收端通過(guò)RJ45接口接入CS8900A,再傳送給S3C2410,從而組成了以太網(wǎng)信號(hào)傳輸?shù)挠布ǖ馈?/p>
2.2 軟件設(shè)計(jì)
2.2.1 開發(fā)環(huán)境的建立
在對(duì)S3C2419進(jìn)行軟件開發(fā)之前,需要通過(guò)以下步驟,建立一個(gè)合適的開發(fā)環(huán)境。
(1)將UBOOT移植到S3C2410開發(fā)板。
(2)利用H-JATG軟件讀取板子CPU的信息,將讀取到的信息利用ADS開發(fā)環(huán)境中的AXD Debugger軟件建立仿真開發(fā)環(huán)境。
(3)仿真建立最小系統(tǒng),對(duì)各個(gè)端口進(jìn)行初始化,設(shè)置時(shí)鐘,電源等參數(shù)。仿真成功后,將初始化的文件利用ADS下載到主板上。
2.2.2 對(duì)系統(tǒng)的編程
如圖5所示,根據(jù)GB(T)213-2003的要求,設(shè)置充氧時(shí)間為18 s,充氧過(guò)程包括壓力測(cè)量,當(dāng)充氧壓力大于3.2 MPa時(shí),顯示充氧壓力過(guò)大,并結(jié)束實(shí)驗(yàn)。省略點(diǎn)火及控制部分,主要程序如下:
實(shí)驗(yàn)開始時(shí),每秒采樣一次。實(shí)驗(yàn)8 min后,每1 min采樣一次。將前后三次采樣的數(shù)據(jù)進(jìn)行比較,當(dāng)變化的溫度不超過(guò)0.001 K時(shí),實(shí)驗(yàn)結(jié)束。隨后進(jìn)入數(shù)據(jù)處理部分。這部分包括數(shù)據(jù)的打印、存儲(chǔ)及數(shù)據(jù)在互聯(lián)網(wǎng)上的傳輸。限于篇幅這部分程序并未列出。
3 結(jié)語(yǔ)
該設(shè)計(jì)嚴(yán)格按照GB(T)213-2003標(biāo)準(zhǔn),并且不同于以往量熱儀使用單片機(jī)8位的數(shù)據(jù)傳輸模式,而是利用S3C2410芯片的32位數(shù)據(jù)傳輸模式,實(shí)現(xiàn)數(shù)據(jù)的高精度傳輸。同時(shí)使用晶體傳感器——測(cè)量的是頻率量,無(wú)需數(shù)/模轉(zhuǎn)換單元,從而實(shí)現(xiàn)溫度的高精度測(cè)量。同時(shí)它有很高的穩(wěn)定性,能夠在復(fù)雜環(huán)境下正常工作,不僅能運(yùn)用于煤炭生產(chǎn)行業(yè),而且在電力、石油、化工、水泥、軍工、糧食、木材、木炭以及科研等行業(yè)都有很好的應(yīng)用前景。