新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2016-10-15 來源:網(wǎng)絡(luò) 收藏

摘要:針對生產(chǎn)生活中對的高精度要求,利用雙(SCM)作為硬件平臺(tái),融合技術(shù)、PWM波產(chǎn)生技術(shù),采用,設(shè)計(jì)了一種基于雙的電烤箱系統(tǒng)。采用多點(diǎn)測溫,提高精度;利用芯片nRF24L01進(jìn)行兩之間的通信,實(shí)現(xiàn)檢測和控制的分離。同時(shí)進(jìn)行鍵盤顯示電路設(shè)計(jì),實(shí)現(xiàn)數(shù)據(jù)的輸入、顯示功能;進(jìn)行超限報(bào)警電路的設(shè)計(jì),防止溫度出現(xiàn)大的超調(diào)。經(jīng)過硬件結(jié)合軟件調(diào)試,整個(gè)系統(tǒng)運(yùn)行良好,很好的實(shí)現(xiàn)了溫度控制。

本文引用地址:http://2s4d.com/article/201610/307461.htm

在生產(chǎn)生活過程中,控制對象各種各樣,溫度控制在生產(chǎn)過程中占有相當(dāng)大的比例,其關(guān)鍵在于測溫和控溫兩方面。由于單片機(jī)具有集成度高、功能強(qiáng)、體積小、價(jià)格低、抗干擾能力等優(yōu)于一般CPU的優(yōu)點(diǎn),因此,在要求高控制精度和低成本的工業(yè)測控系統(tǒng)中,通常采用單片機(jī)作為數(shù)字控制器取代模擬控制器。文獻(xiàn)中采用AD590作為溫度傳感器預(yù)設(shè)多組PID參數(shù)實(shí)現(xiàn)溫度控制;文獻(xiàn)采用單個(gè)87C51作為控制器,兼顧檢測、控制等任務(wù)實(shí)現(xiàn)溫度控制。此二者均采用AD590溫度傳感器進(jìn)行溫度測量,其外圍電路復(fù)雜、成本高且精確度低;針對這些問題,該論文采用數(shù)字傳感器克服其缺點(diǎn)。同時(shí)該論文采用雙單片機(jī)來實(shí)現(xiàn)控制,采用無線方式進(jìn)行信號傳輸,以滿足在特定使用環(huán)境下,實(shí)現(xiàn)遠(yuǎn)距離的控制。

1 溫度控制系統(tǒng)的整體設(shè)計(jì)

利用單片機(jī)實(shí)現(xiàn)對電烤箱的穩(wěn)定控制,其控制系統(tǒng)以單片機(jī)為控制核心,采用數(shù)字PID的控制算法實(shí)現(xiàn)自動(dòng)控制,達(dá)到控制溫度的恒定。將多個(gè)溫度傳感器置于電烤箱中,傳感器測得多個(gè)信號,將這些信號加權(quán)平均之后與設(shè)定溫度值的給定電壓進(jìn)行比較,采用,得到控制信號,來驅(qū)動(dòng)執(zhí)行器動(dòng)作,達(dá)到理想結(jié)果。圖1為系統(tǒng)的總體結(jié)構(gòu)框圖。

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

系統(tǒng)選擇STC89C52RC作為主控芯片,既滿足大內(nèi)存、高速率和通用性的要求,又遵循經(jīng)濟(jì)節(jié)約的原則。利用檢測到的信號和給定溫度值對應(yīng)的信號之間的偏差,采用得到控制信號,再通過處理放大去驅(qū)動(dòng)執(zhí)行器。而為了能實(shí)現(xiàn)遠(yuǎn)程監(jiān)控,設(shè)計(jì)采用雙單片機(jī),利用無線模塊進(jìn)行數(shù)據(jù)傳送,達(dá)到遠(yuǎn)程顯示、控制和超限報(bào)警等功能。

2 溫度控制系統(tǒng)的硬件設(shè)計(jì)

系統(tǒng)的硬件設(shè)計(jì)主要包括測溫接口電路、接口電路、按鍵和顯示電路和超限報(bào)警電路的設(shè)計(jì),其系統(tǒng)兩個(gè)單片機(jī)及其外圍電路圖分別如圖2和3所示。

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)
基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

2.1 測溫接口電路設(shè)計(jì)

采用數(shù)字溫度傳感器DS18B20進(jìn)行溫度采集。為提高精度,使用四個(gè)傳感器通過軟件求取平均值。4個(gè)DS18B20可以接到一個(gè)I/O口上,但需要使用獨(dú)立電源;由于該系統(tǒng)I/O口充足,其連接采用一個(gè)傳感器對應(yīng)一個(gè)I/O口的方式,如圖2所示。若需要更多傳感器,可以考慮采用多個(gè)傳感器對應(yīng)一個(gè)I/O口的連接方式。

2.2 無線傳輸接口電路設(shè)計(jì)

采用nRF24L01芯片實(shí)現(xiàn)無線傳輸,其主要引腳排列如圖4所示。各引腳具體功能如下:CE為發(fā)射和接收的使能端;CSN為SPI的使能端;SCK為SPI時(shí)鐘輸入;MOSI為SPI數(shù)據(jù)主輸從入端;MISO為SPI數(shù)據(jù)主入從輸端;IRQ為中斷輸出;VCC為電源端,接3.3 V直流電源。

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

2.3 按鍵和顯示電路設(shè)計(jì)

2.3.1 按鍵接口電路設(shè)計(jì)

設(shè)計(jì)一共接4個(gè)按鍵。其中3個(gè)是用到的,另外一個(gè)按鍵用于功能擴(kuò)展。其中3個(gè)按鍵的功能分別為:切換鍵、加一鍵和減一鍵,切換鍵用做顯示所測溫度與設(shè)定溫度值顯示的切換,加一鍵和減一鍵用來改變設(shè)定值。

2.3.2 顯示接口電路設(shè)計(jì)

采用4位共陽極LED數(shù)碼管,它們分別顯示溫度值的百位、十位、個(gè)位和小數(shù)點(diǎn)后一位。若要顯示設(shè)定值。需要按下切換按鍵即可。共陽數(shù)碼管需要接上驅(qū)動(dòng)電路,從該電路接到單片機(jī)的I/O口P1.0、P1.1、P1.2、P1.3上,這四位分別是四位數(shù)碼管的片選口,通過此四位決定是哪位數(shù)碼管進(jìn)行顯示。數(shù)碼管的a~dp通過電阻接到單片機(jī)的P0口上,通過P0口接收需要顯示數(shù)字的段碼,從而實(shí)現(xiàn)數(shù)字的顯示。

2.4 超限報(bào)警電路設(shè)計(jì)

當(dāng)溫度超過設(shè)定范圍時(shí),系統(tǒng)能夠及時(shí)報(bào)警。系統(tǒng)采用蜂鳴器進(jìn)行報(bào)警,即將蜂鳴器接在單片機(jī)的I/O口P2.7上,當(dāng)出現(xiàn)超限時(shí),將P2.7口置高電平,蜂鳴器報(bào)警。

2.5 硬件技術(shù)介紹

2.5.1 nRF24L01芯片

該芯片有不同的工作狀態(tài),可以通過設(shè)置CE和狀態(tài)寄存器來選擇它的工作狀態(tài)。工作狀態(tài)如表1所示。配置為發(fā)射模式的nRF24L01將會(huì)利用增強(qiáng)式ShockBurst技術(shù)來發(fā)射數(shù)據(jù)包。發(fā)送設(shè)備在發(fā)完數(shù)據(jù)后將自動(dòng)轉(zhuǎn)為接收狀態(tài)等待接收方的應(yīng)答信號。若發(fā)送設(shè)備未接收到應(yīng)答信號,它將自動(dòng)重發(fā)這包數(shù)據(jù)(自動(dòng)重發(fā)開啟的情況下)直到接收這包數(shù)據(jù)或重發(fā)次數(shù)超過了在寄存器SETUP_RETR_ARC設(shè)置的所允許的最大重發(fā)次數(shù)。如果是第二種情況,它將在STATUS寄存器里的MAX_RT位反應(yīng)出來,并且給出中斷。當(dāng)nRF24L01收到應(yīng)答信號時(shí),它將認(rèn)為該包數(shù)據(jù)成功發(fā)送到接收方,并把這包數(shù)據(jù)從發(fā)射堆棧中消除,同時(shí)IRQ變低,STATUS寄存器里德中斷標(biāo)志位TX_DS置高。

3 溫度控制系統(tǒng)的軟件設(shè)計(jì)

整個(gè)系統(tǒng)由主從單片機(jī)控制,主單片機(jī)擔(dān)負(fù)著檢測和處理溫度、傳送溫度、執(zhí)行PID算法和產(chǎn)生PWM等等的控制任務(wù),從單片機(jī)主要實(shí)現(xiàn)控制鍵盤輸入、接收主單片機(jī)傳過來的溫度并顯示以及報(bào)警等功能。

3.1 主單片機(jī)程序設(shè)計(jì)

主單片機(jī)主程序主要包括系統(tǒng)的初始化和調(diào)用子程序。系統(tǒng)的初始化包括初始化IO口、變量定義以及nRF24L01的初始化配置等。主單片機(jī)主要的功能就是檢測溫度值并傳送給從單片機(jī),同時(shí)接收從單片機(jī)傳過來的設(shè)定值,并進(jìn)行PID運(yùn)算,產(chǎn)生PWM波。由此可設(shè)計(jì)主程序的流程圖如圖5所示。

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

3.2 從單片機(jī)程序設(shè)計(jì)

從單片機(jī)需要實(shí)現(xiàn)的功能有:按鍵輸入設(shè)定值、顯示從主單片機(jī)傳送過來的溫度值、將設(shè)定值傳送給主單片機(jī)以及超限報(bào)警功能,從單片機(jī)的程序包括:主程序、按鍵掃描子程序、顯示子程序和雙機(jī)通信程序等。其主程序的流程圖如圖6所示。

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

3.3 PID算法設(shè)計(jì)

增量式:PID算法如公式(1)

基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)
基于雙單片機(jī)的電烤箱溫度控制系統(tǒng)設(shè)計(jì)

如果單純用PID算法,可能會(huì)出現(xiàn)很大的超調(diào),所以在設(shè)計(jì)軟件時(shí),可以加上上下限,當(dāng)偏差值小于下限值時(shí),執(zhí)行器不動(dòng)作;當(dāng)偏差值大于上限值時(shí),就將令偏差值等于最大值來計(jì)算;只有當(dāng)偏差值在上下限區(qū)間內(nèi),系統(tǒng)才會(huì)按照PID算法執(zhí)行。下列程序?yàn)镻ID輸出值程序。

4 結(jié)論

按照上述方法設(shè)計(jì)的硬件電路和程序,經(jīng)過實(shí)際調(diào)試,整個(gè)系統(tǒng)運(yùn)行良好,很好地實(shí)現(xiàn)了對鍋爐溫度的控制。該方法以雙單片機(jī)作為硬件平臺(tái),將無線傳輸技術(shù)、PWM波產(chǎn)生技術(shù)等加入到設(shè)計(jì)之中,實(shí)現(xiàn)了一種高精度、性能穩(wěn)定溫控方案。為今后工業(yè)上不同對象的溫度控制提供了參考依據(jù)和技術(shù)支持。



評論


相關(guān)推薦

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

關(guān)閉