劉 衛(wèi)
(長沙民政職業(yè)技術(shù)學(xué)院,湖南 長沙 410004)
溫度在工業(yè)生產(chǎn)當(dāng)中發(fā)揮著重要作用,溫度檢測與控制直接影響著工業(yè)生產(chǎn)效率和安全,并關(guān)系到各種技術(shù)經(jīng)濟(jì)指標(biāo),如產(chǎn)品質(zhì)量、節(jié)能等,因此,相關(guān)研究領(lǐng)域要高度重視研發(fā)智能溫度檢測與控制系統(tǒng)。目前,溫度檢測儀器在多個領(lǐng)域廣泛使用,有多種方式可實(shí)現(xiàn)溫度測量,且溫度測量技術(shù)隨著科學(xué)技術(shù)的不斷進(jìn)步而日臻完善。
STM32屬于一種嵌入式單片機(jī),主要應(yīng)用在提出低功耗、低成本、高性能要求的嵌入式應(yīng)用設(shè)計(jì)中,其主流產(chǎn)品包括STM32F1、STM32F0以及STM32F3,高性能產(chǎn)品包括STM32H7、STM32F7、STM32F4、STM32F2,超低功耗產(chǎn)品有STM32L4+、STM32L4、STM32l1、STM32L0[1]。STM32系列產(chǎn)品包含強(qiáng)化型外側(cè)接口,其互聯(lián)系列有和微控制器一致的標(biāo)準(zhǔn)接口,使產(chǎn)品應(yīng)用更加靈活,不同的設(shè)計(jì)中設(shè)計(jì)人員可重復(fù)利用一個相同軟件。在STM32L系列當(dāng)中,增加了低功耗睡眠、低功耗運(yùn)行這兩項(xiàng)重要的低功耗模式,在超低功耗振蕩器以及穩(wěn)壓器利用下,可使低頻下的微控制器明顯降低工作功耗。穩(wěn)壓器在不依靠電源電壓情況下,仍可達(dá)到電流要求。同時,STM32具有動態(tài)電壓升降功能,可使芯片保持中低壓頻運(yùn)行過程,從而進(jìn)一步降低內(nèi)部工作電壓。
本研究所設(shè)計(jì)的智能溫度巡檢儀主要應(yīng)用在工業(yè)生產(chǎn)領(lǐng)域,為滿足工業(yè)生產(chǎn)提出的監(jiān)控需求,智能溫度巡檢儀需具備以下功能:1)應(yīng)用中可配合使用常用溫度傳感器對多路溫度進(jìn)行全面檢測,本文所設(shè)計(jì)智能溫度巡檢儀和Pt100型鉑熱電阻相互配合,可對8路溫度實(shí)現(xiàn)巡回檢測;2)可結(jié)合不同的應(yīng)用需求選擇不同顯示方式,包括定點(diǎn)顯示方式、巡回顯示方式等;3)可在全量程當(dāng)中設(shè)定一個超限報(bào)警值,一旦實(shí)測溫度高出設(shè)定值,就會有報(bào)警信號發(fā)出,同步輸出常開節(jié)點(diǎn);4)在實(shí)際檢測中,每路溫度都可轉(zhuǎn)變成和其線性對應(yīng)的電流輸入,一般保持在4 mA~20 mA;5)可實(shí)現(xiàn)RS485通信,便于構(gòu)建局域監(jiān)控網(wǎng)絡(luò),在相應(yīng)網(wǎng)絡(luò)中能夠共享溫度超限設(shè)定值、實(shí)測溫度等參數(shù)[2]。
基于STM32設(shè)計(jì)智能溫度巡檢儀,硬件總體設(shè)計(jì)主要包含7個功能單元,即溫度顯示單元、STM32單片機(jī)基本單元、溫度傳感單元、功能模式切換按鍵單元、電源單元、報(bào)警與繼電保護(hù)輸出單元、遠(yuǎn)程通信單元。其中,STM32單片機(jī)基本單元當(dāng)中主要包含單片機(jī)基礎(chǔ)性工作電路,如數(shù)據(jù)儲存電路、程序下載電路、時鐘電路等。在熱電偶測溫單元,重點(diǎn)分布有儀表放大及隔離電路、熱電偶接入以及冷端溫度補(bǔ)償電路等。在熱電阻測溫單元,重點(diǎn)設(shè)計(jì)儀表放大以及隔離電路,還有測溫電橋等。在顯示單元,包含有8位LED數(shù)碼管,由其顯示功能模塊基本信息以及溫度信號。在報(bào)警以及繼電保護(hù)輸出單元,包含有繼電器觸點(diǎn)輸出電路和指示燈報(bào)警電路。在遠(yuǎn)程通信單元,主要以RS485協(xié)議為基礎(chǔ)實(shí)現(xiàn)遠(yuǎn)程通信。在電源單元,設(shè)計(jì)220 V交流接入,所形成直流穩(wěn)壓電源包含多種電壓等級,可滿足單片機(jī)工作以及測量放大電路需求[3]。
系統(tǒng)方案運(yùn)用計(jì)劃溫度測量電路,通過使用溫度測量電路能夠確保溫度測量值具有更高精確度,從而滿足應(yīng)用提出的精度要求。溫度測量電路結(jié)合環(huán)境溫度,將所接收到的溫度傳感器信號進(jìn)行轉(zhuǎn)換,獲得電流或電壓信號,此時需要向AD轉(zhuǎn)換器輸入相關(guān)電信號,以有效檢測環(huán)境溫度。經(jīng)綜合對比,最后選定測溫電路方案包括:1)熱電偶溫度相關(guān)測溫電路方案。智能溫度巡檢儀在工作狀態(tài)下,會對熱電偶溫度做出熱電勢反應(yīng),冷端溫度和熱電勢輸出密切相關(guān),在標(biāo)準(zhǔn)熱電偶分度表當(dāng)中,以冷端溫度0 ℃為依據(jù),所以要在熱電偶溫度基礎(chǔ)上實(shí)現(xiàn)冷結(jié)補(bǔ)償。對冷端溫度進(jìn)行補(bǔ)償期間,有軟件、硬件兩種方法,本研究設(shè)計(jì)中選擇通過硬件方法補(bǔ)償冷端溫度。2)熱電阻溫度相關(guān)測溫電路方案。本研究設(shè)計(jì)中選擇Pt100熱電阻,供橋電源為5 V,經(jīng)儀表放大以及信號隔離,使電橋輸出至單片機(jī)系統(tǒng)[4]。
3.1.1 MCU
在本設(shè)計(jì)中,MCU主要選擇STM32RBT6,其為64引腳。在導(dǎo)出PORTC端口,P2屬于重要組成部分。其中PORTA以及PORTB兩者密切相關(guān),且有一定順序性,即:1)PA1和PA0以及P2端口一一對應(yīng),其可和傳感器數(shù)據(jù)口實(shí)現(xiàn)順暢連接,同時還可和紅外線傳感器當(dāng)中的數(shù)據(jù)線相連。不過在本設(shè)計(jì)中并未使用該數(shù)據(jù)口,設(shè)計(jì)中主要使用“跳帽”使P2、P3兩者相互連接,不過設(shè)計(jì)中需要注意,兩者不可直接連接,因?yàn)闇囟葌鞲衅骱图t外傳感器會對串口產(chǎn)生影響,從而使其發(fā)揮其他功能。2)P4端口實(shí)現(xiàn)和PL2303串口之間的有序連接,此端口主要為輸出端,它和單片機(jī)串口1(也就是PA9/PA10)相對應(yīng),該兩個串口主要實(shí)現(xiàn)跳帽連接,這一設(shè)計(jì)不會影響PA9以及PA10發(fā)揮其他功能。3)P5端口及另一IO口會引出排陣,此處會引出PORTD、PORTC等其他IO口[5]。
3.1.2 串口以及SW調(diào)試設(shè)計(jì)
以高速模式為基礎(chǔ),和JTAG相比,SWD模式更加可靠,因?yàn)樵诰哂休^大數(shù)據(jù)量情況下JTAG會出現(xiàn)程序下載失敗情況,而相比之下SWD的失敗概率明顯偏低,所以本設(shè)計(jì)中選擇應(yīng)用SWD模式。
3.1.3 熱電偶測溫電路設(shè)計(jì)
熱電偶測量端以及冷端溫度會對其輸出熱電勢產(chǎn)生直接影響,設(shè)計(jì)中選擇冷端補(bǔ)償方法。因?yàn)闊犭娕俭w現(xiàn)出突出的非線性特點(diǎn),因此本設(shè)計(jì)斷口檢測電路、非線性校正電路以及X6675集成冷端補(bǔ)償電路,在此基礎(chǔ)上能更加方便、快捷地使用K型熱電偶[6]。其中所用的MAX6675優(yōu)勢顯著,特點(diǎn)突出,它的內(nèi)部集成設(shè)計(jì)了冷端補(bǔ)償電路,并使用三位串行接口,這一接口設(shè)計(jì)相對簡單,同時其溫度信號能夠向12位數(shù)字量方向轉(zhuǎn)換,并且具有非常高的溫度分辨率,能夠達(dá)到0.25 ℃。在電路中橋當(dāng)中,包含有4個電阻,其中有3個恒定電阻,另1個是Pt100熱敏電阻,一旦Pt100電阻值發(fā)生改變,測試端就會同步出現(xiàn)電位差,此時可以電位差為基礎(chǔ)進(jìn)行溫度值計(jì)算。在模擬輸出值當(dāng)中,和橋接法所測量溫度密切相關(guān)。本設(shè)計(jì)中放大器選擇AD623集成單功放。在PNP晶體管當(dāng)中,輸入信號會被當(dāng)作電壓緩沖器向其中添加,所產(chǎn)生的共模信號會向輸入放大器當(dāng)中傳遞[7]。所有放大器都和精確度非常高的50K反饋電阻相連接,在此基礎(chǔ)上實(shí)現(xiàn)可編程增益,并發(fā)揮差分電壓開關(guān)功能。輸出放大器經(jīng)過轉(zhuǎn)換,會形成終端電壓,并以單一形式存在,工作中以五腳電勢為基礎(chǔ)對六腳輸出電壓實(shí)現(xiàn)可靠測量。
結(jié)合STM32特點(diǎn)、設(shè)計(jì)任務(wù)以及硬件電路,本研究所設(shè)計(jì)智能溫度巡檢儀共有4項(xiàng)軟件設(shè)計(jì)任務(wù),按照實(shí)時性要求從低至高的順序,分別是系統(tǒng)初始化、人機(jī)服務(wù)、數(shù)據(jù)采集和溫度計(jì)算、通信任務(wù)。其中,系統(tǒng)初始化這一程序只需要在開機(jī)過程中運(yùn)行一次,所以設(shè)計(jì)中不做過多考慮。在構(gòu)建數(shù)據(jù)采集局域網(wǎng)基礎(chǔ)上,所設(shè)計(jì)智能溫度巡檢儀在相應(yīng)網(wǎng)絡(luò)中保持從站地位,其響應(yīng)網(wǎng)絡(luò)時間延遲最大值是主站一幀信息的發(fā)出時間,如果時間延遲超過了這一時間,就會使主站調(diào)度命令無法得到響應(yīng),整個網(wǎng)絡(luò)將明顯降低通信效率,所以設(shè)計(jì)中最高級別任務(wù)就是通信任務(wù)。在人機(jī)服務(wù)中,關(guān)鍵體現(xiàn)的是按鍵響應(yīng)任務(wù),通常情況下人的按鍵動作需要耗時約100 ms,所以在這一時間內(nèi)能夠做出響應(yīng)即可,未提出較高實(shí)時性要求,所以屬于最低級別任務(wù)[8]。相比之下,將數(shù)據(jù)采集和溫度計(jì)算視作中間級別任務(wù)。為按照所設(shè)定的優(yōu)先級別逐步執(zhí)行三項(xiàng)任務(wù),要在設(shè)計(jì)中應(yīng)用中斷機(jī)制。其中,主要于串行通信中斷服務(wù)程序當(dāng)中執(zhí)行通信任務(wù),在中斷設(shè)計(jì)中將其設(shè)為高級中斷;于外部中斷服務(wù)程序當(dāng)中執(zhí)行數(shù)據(jù)采集以及溫度計(jì)算相關(guān)任務(wù),在中斷設(shè)計(jì)中將其設(shè)為低級中斷;于主程序內(nèi)執(zhí)行人機(jī)服務(wù)任務(wù)。
在智能溫度巡檢儀設(shè)計(jì)中,結(jié)構(gòu)設(shè)計(jì)主要是設(shè)計(jì)儀表安裝形式以及外形。根據(jù)儀表應(yīng)用需求,智能溫度巡檢儀主要有三種結(jié)構(gòu)形式,即盤裝結(jié)構(gòu)、便攜式結(jié)構(gòu)、臺式結(jié)構(gòu)。其中臺式結(jié)構(gòu)不適合長年連續(xù)使用,同時便攜式結(jié)構(gòu)也主要應(yīng)用在非連續(xù)使用相關(guān)場合,而以盤裝結(jié)構(gòu)設(shè)計(jì)溫度巡檢儀,相關(guān)儀表能夠在儀表盤上安裝,可長年持續(xù)監(jiān)控生產(chǎn)過程。所以,本設(shè)計(jì)中選擇盤裝結(jié)構(gòu),以滿足長期監(jiān)控連續(xù)生產(chǎn)過程的需求。在選擇盤裝結(jié)構(gòu)基礎(chǔ)上,要了解可供操作的前面板尺寸比較小,不能安放較多按鍵和顯示器,而智能儀表設(shè)計(jì)中核心是微處理器,通過軟件利用實(shí)現(xiàn)多項(xiàng)功能,而這就對顯示器和按鍵數(shù)量提出較高要求[9]。對此,需要在設(shè)計(jì)儀表功能期間重點(diǎn)展示關(guān)鍵性功能,適當(dāng)舍棄不必要功能,在滿足主要功能需求基礎(chǔ)上方便操作,同時盡量以在后臺提供復(fù)雜軟件支持形式保證操作流程和人的操作習(xí)慣比較相符。設(shè)計(jì)儀表操作方式前,要對同類儀表設(shè)計(jì)特點(diǎn)以及操作過程進(jìn)行深入研究,以盡量提升操作便捷性、合理性。智能溫度巡檢儀在結(jié)構(gòu)設(shè)計(jì)中,還要重點(diǎn)考慮對外接線,此處應(yīng)重點(diǎn)考慮儀表應(yīng)用場合,若應(yīng)用在環(huán)境惡劣且使用周期較長的場合,主要選擇接線端子連接形式,在其他場合主要選擇接插件連接形式[10]。
將軟件Keil uVision 5打開,選擇Options for Target這一選項(xiàng),同步打開,找到Dubeg欄,選定仿真工具,即Use:ST-Link Debugger。之后找到Setting,同步點(diǎn)擊,而后于Debug Adapter當(dāng)中會看到Unit這一選項(xiàng),其中會顯示出ST-LINK版本號。此時如果計(jì)算機(jī)當(dāng)中插入有仿真器(ST_LINK V2.1以及V2.0版本),下拉框會將兩個版本都顯示出來,此時要點(diǎn)擊ST-LINK/V2-1這一選項(xiàng)。本研究所用仿真器屬于SWD模式,可找出ort選項(xiàng),同步點(diǎn)擊“SW”,設(shè)置速度最大值MAX是4 MHz。填充完整設(shè)置結(jié)束后,點(diǎn)擊“確定”,將有一個對話框彈出,點(diǎn)擊“OK”就會顯示出IDE界面,此時操作人員就可對下一工程進(jìn)行編譯。
本研究基于STM32設(shè)計(jì)智能溫度巡檢儀,首先,立足整體層面搭建系統(tǒng),在充分學(xué)習(xí)與了解各模塊組成和功能基礎(chǔ)上建立系統(tǒng)總體,同步搭建顯示電路、報(bào)警電路、熱電阻測溫電路以及熱電偶測溫電路等,而后展開軟件設(shè)計(jì)和結(jié)構(gòu)設(shè)計(jì),并進(jìn)行樣機(jī)制作,使智能溫度巡檢儀可發(fā)揮多項(xiàng)基本功能。其次,進(jìn)行調(diào)試程序的編寫,在對軟件以及單片機(jī)實(shí)現(xiàn)調(diào)試之后,對8路數(shù)字溫度實(shí)現(xiàn)測試,將這8路數(shù)字溫度劃分為兩組,每組4路,一組為Pt100熱電阻測溫系統(tǒng),另一組為 B分度號熱電偶。而后進(jìn)一步調(diào)試顯示模塊以及報(bào)警模塊,在確保系統(tǒng)可以正常運(yùn)行后,對系統(tǒng)進(jìn)行優(yōu)化處理。