目前許多場合都要對溫度進(jìn)行控制。如倉庫,不同的儲藏室儲存物品的溫度都不同;再比如醫(yī)院,為了使病人的治療效果最好,需要對每一個病房的溫度進(jìn)行控制。該文研究的多點溫度監(jiān)控系統(tǒng)能夠?qū)Χ鄠€位置的溫度進(jìn)行設(shè)置、檢測,根據(jù)溫度設(shè)置值與檢測值來控制調(diào)溫設(shè)備運(yùn)轉(zhuǎn),調(diào)節(jié)溫度。
l 系統(tǒng)的總體結(jié)構(gòu)及功能
本系統(tǒng)的總體結(jié)構(gòu)框圖如圖1所示,為了滿足多通道數(shù)據(jù)采集和處理,系統(tǒng)采用了一臺上位機(jī)和多個下位機(jī)的集總式結(jié)構(gòu)。上位機(jī)采用AT89S51單片機(jī),下位機(jī)采用AT89C2051單片機(jī)。上位機(jī)與下位機(jī)之間采用RS 485總線通信。其中上位機(jī)系統(tǒng)配置液晶顯示屏、按鍵。按鍵用于調(diào)整各個點的預(yù)置溫度和系統(tǒng)時間,查詢各個點的預(yù)置溫度值、實際溫度值以及調(diào)溫設(shè)備運(yùn)行情況,輸入下位機(jī)的控制信息。液晶顯示屏用于顯示系統(tǒng)時間,以及各點的預(yù)置溫度值、實際溫度值和調(diào)溫設(shè)備運(yùn)行情況,如1 min內(nèi)沒有任何操作,則液晶顯示屏上開始循環(huán)顯示各個點的實際溫度值、預(yù)置溫度值以及調(diào)溫設(shè)備運(yùn)轉(zhuǎn)情況,每一個點的數(shù)據(jù)在液晶屏上顯示的時間是8 s。下位機(jī)負(fù)責(zé)溫度采集和控制調(diào)溫設(shè)備運(yùn)轉(zhuǎn),溫度傳感器采用DSl8820。上位機(jī)首先將預(yù)置溫度值發(fā)送到下位機(jī),下位機(jī)將實際溫度與預(yù)置溫度進(jìn)行比較后輸出調(diào)溫設(shè)備控制信號,并將實際溫度與調(diào)溫設(shè)備運(yùn)轉(zhuǎn)狀態(tài)發(fā)送到上位機(jī)。
2 硬件電路設(shè)計
2.1 下位機(jī)電路設(shè)計
下位機(jī)電路主要由三部分構(gòu)成:溫度采集電路、RS 485總線接口電路、調(diào)溫設(shè)備的控制電路,其電路原理圖如圖2所示。
2.1.1 溫度采集電路
溫度傳感器采用DSl8820,其是一種單總線智能型溫度傳感器,只有三線接口,分別為地線、數(shù)據(jù)線、電源線。DSl8820輸出信號為數(shù)字信號,處理器與DSl8820通過數(shù)據(jù)線來完成雙向通信,因此采用DSl8820使得電路十分簡單。溫度變換功率可以來源于外電源,也可以來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DSl8820供電。DSl8820的電壓范圍為+3.O~+5.5 V,測溫范圍為一55~+125℃,固有的測溫分辨率為O.5℃,最高精度可達(dá)0.067 5℃,最大的轉(zhuǎn)換時間為200 ms。一條總線上面可以掛接多個Dsl8820實現(xiàn)多點測溫。本系統(tǒng)中每臺下位機(jī)只接一個DSl8820。
采用單片機(jī)的P3.7口與DS18820進(jìn)行通信,采集溫度信號,由于其是雙向通信,內(nèi)部結(jié)構(gòu)是開漏,所以在總線上要加一個10。kΩ上拉電阻。
2.1.2 RS 485總線接口電路
本系統(tǒng)上位機(jī)與下位機(jī)之間采用RS 485總線通信,其通信距離可達(dá)1 200 m??偩€驅(qū)動芯片采用MAX485,RO接單片機(jī)的RXD,DI接TXD,MAX485芯片的發(fā)送和接收功能轉(zhuǎn)換由芯片的RE,DE端控制。DE=1時,MAX485處于發(fā)送狀態(tài);RE=O,DE=0時,芯片處于接收狀態(tài)。將RE,DE接在單片機(jī)的一根口線P3.4上。
在上電復(fù)位時,為了避免分機(jī)咬總線的情況,總線上的各分機(jī)應(yīng)處于接收狀態(tài)。而在上電復(fù)位時,單片機(jī)各端口處于高電平狀態(tài),硬件電路穩(wěn)定也需要一定的時間,則可能向總線發(fā)送信息,為了避免這種情況,將P3.4口接一個74HCl4反相器,使MAX485上電時處于接收狀態(tài)。另外在數(shù)據(jù)傳輸之前,先要通過一個低電平起始位實現(xiàn)握手,給R0外接10 kΩ上拉電阻,防止干擾信號誤觸發(fā)產(chǎn)生負(fù)跳變,使單片機(jī)進(jìn)入接收狀態(tài)。總線上面掛接多個分機(jī),其中任何一只芯片故障就可能將總線“拉死”,因此在MAX485的A,B口線與總線之間各串接一只20Ω的電阻實現(xiàn)總線隔離。如果是最后一臺分機(jī),則在差分端口A,B之間接120 Ω的平衡匹配電阻,減少由于不匹配而引起的反射,并且能夠吸收噪聲,抑止干擾,保證通信質(zhì)量。注意不能在中間分機(jī)節(jié)點上并接平衡匹配電阻。
2.1.3 輸出控制電路
上位機(jī)向下位機(jī)發(fā)送命令和預(yù)置溫度,下位機(jī)接收到之后,解析命令,并將預(yù)置溫度與實際溫度比較,根據(jù)命令和比較結(jié)果,利用P3.5口控制調(diào)溫設(shè)備。當(dāng)P3.5輸出低電平時,U1導(dǎo)通發(fā)光,使晶體管導(dǎo)通,從而T1導(dǎo)通,驅(qū)動繼電器K工作,使調(diào)溫設(shè)備導(dǎo)通工作。當(dāng)P3.5為高電平時,U1不導(dǎo)通,晶體管不導(dǎo)通,T1也截止,繼電器不通電,調(diào)溫設(shè)備不工作。
2.2 上位機(jī)電路
上位機(jī)電路包括RS 485總線接口電路、鍵盤電路和液晶顯示電路。其中總線接口電路與下位機(jī)總線接口電路基本一致。其電路原理圖如圖3所示。下面介紹鍵盤電路和顯示電路。
2.2.1 鍵盤電路
上位機(jī)電路中提供6個按鍵用于溫度設(shè)置、溫度查詢、系統(tǒng)時間設(shè)置、工作/待機(jī)設(shè)置。它們是“ON/OFF”鍵、“+”鍵、“—”鍵、“SET”鍵、“ENQ”鍵、“TIME”鍵,分別與AT89S51的P2.0,P2.1,P2.2,P2.3,P2.4,P2.5相連?!癝IET”鍵用于選擇下位機(jī),之后可按“ON/OFF”鍵使對應(yīng)的下位機(jī)工作/待機(jī),也可按“+”,“一”鍵給該分機(jī)設(shè)置預(yù)置溫度?!癊NQ”鍵用于查詢下位機(jī)的預(yù)置溫度、實際溫度值和調(diào)溫設(shè)備運(yùn)轉(zhuǎn)狀態(tài)。設(shè)置系統(tǒng)時間需先按“TIME”鍵選擇時或分,然后利用“+”,“一”鍵設(shè)置系統(tǒng)時間。
2.2.2 顯示電路
上位機(jī)系統(tǒng)采用16×2字符型液晶模組(LCM),其為按鍵操作提供可視化依據(jù),內(nèi)部集成了LCD控制器、LCD驅(qū)動器、LCD顯示裝置。LCM與單片機(jī)的接口電路比較簡單,單片機(jī)的P1口接LCM的數(shù)據(jù)總線,P3.5,P3.6,P3.7用于控制LCM。LCM的第一行顯示系統(tǒng)時間,第二行顯示分機(jī)的設(shè)置溫度、實際溫度和工作狀態(tài)。如果在1 m內(nèi)沒有任何操作,則液晶顯示屏上開始循環(huán)顯示各個點的實際溫度值、預(yù)置溫度值以及工作狀態(tài),每一個點的數(shù)據(jù)在液晶屏上顯示的時間是8 s。
3 RS 485通信協(xié)議
為實現(xiàn)上位機(jī)與多臺下位機(jī)通信可靠穩(wěn)定,上位機(jī)與下位機(jī)通信波特率都為9 600 b/s,通信方式均為串行工作方式3,每幀通信數(shù)據(jù)包括1個起始位,1個停止位,8個數(shù)據(jù)位,1個奇校驗位。通信模式采用主/從方式,上位機(jī)為主機(jī),下位機(jī)為從機(jī),主機(jī)地址為1,從機(jī)地址是2,3,4,…;主機(jī)與從機(jī)之間采用一問一答方式,從機(jī)之間不能相互通信。每個上行/下行的數(shù)據(jù)包的字節(jié)個數(shù)都是一樣的,從機(jī)收到數(shù)據(jù)包后向主機(jī)回復(fù)一個數(shù)據(jù)包。每個數(shù)據(jù)包長度為4 B,下行數(shù)據(jù)包格式:地址信息(1 B)、命令信息(1 B)、溫度設(shè)置值(1 B)、檢驗碼(1 B);上行數(shù)據(jù)包格式:主機(jī)地址信息(1 B)、命令應(yīng)答信息(1 B)、實測溫度值(1 B)、檢驗碼(1 B)。命令信息和命令應(yīng)答信息就是指從機(jī)的工作狀態(tài)。
主機(jī)采用輪詢方式訪問各從機(jī),在發(fā)出指令后,主機(jī)進(jìn)入查詢狀態(tài),等待從機(jī)應(yīng)答。從機(jī)不斷查詢總線,如主機(jī)訪問地址與從機(jī)地址相符,并且校驗通過,則執(zhí)行指令,并保存設(shè)置溫度值,然后將相關(guān)信息以上行數(shù)據(jù)包格式發(fā)回主機(jī)。如不是本機(jī)地址或校驗碼錯誤,則丟棄指令及數(shù)據(jù)。傳輸過程中的誤碼校驗采用校驗和的方式,即先將要發(fā)送的數(shù)據(jù)包的所有字節(jié)相加,然后截短到一個字節(jié)長度。
4 系統(tǒng)軟件設(shè)計
4.1 下位機(jī)程序設(shè)計
下位機(jī)程序主要包括DSl8820傳感器溫度采集子程序、串行通信子程序、輸出控制子程序。主程序循環(huán)調(diào)用溫度采集子程序和輸出控制子程序,利用串行中斷來接收上位機(jī)發(fā)送的信息并回復(fù)主機(jī)(上位機(jī)),接收數(shù)據(jù)包的長度是4 B,發(fā)送數(shù)據(jù)包的長度也是4 B。其串行中斷接收發(fā)送程序流程圖如圖4所示。
4.2 上位機(jī)程序設(shè)計
上位機(jī)程序主要包括鍵盤掃描子程序、串行通信子程序、液晶顯示子程序。
利用T0產(chǎn)生50 ms定時中斷來進(jìn)行時間換算、實時更新液晶顯示屏上的信息;在主程序中利用循環(huán)來查詢按鍵、向下位機(jī)發(fā)送數(shù)據(jù);利用串行中斷來接收下位機(jī)的回復(fù)數(shù)據(jù)。上位機(jī)接收數(shù)據(jù)過程與下位機(jī)接收數(shù)據(jù)過程一樣,其主程序流程圖如圖5所示。系統(tǒng)采用一問一答的通信方式,上位機(jī)是主機(jī),在向從機(jī)(下位機(jī))發(fā)送完數(shù)據(jù)之后要調(diào)用延時程序等待從機(jī)的回復(fù)。
5 結(jié) 語
該系統(tǒng)能夠?qū)崿F(xiàn)多點溫度檢測控制,操作方便,配置簡單,有效地節(jié)省了人力物力,實現(xiàn)自動化,具有通用性,可用于多種場合,具有很好的實用價值。
北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...
關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心東京2022年10月18日 /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國際物流有限公司(Nipp...
關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP要問機(jī)器人公司哪家強(qiáng),波士頓動力絕對是其中的佼佼者。近來年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機(jī)器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...
關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車