單片機(jī)與MCGS組態(tài)軟件在全自動(dòng)中央供暖系統(tǒng)中的應(yīng)用
3.3 主程序流程設(shè)計(jì)
圖3是溫度控制系統(tǒng)的主程序流程圖。主程序首先對(duì)各個(gè)數(shù)據(jù)寄存器及外圍接口芯片進(jìn)行初始化,然后通過(guò)讀EEPROM數(shù)據(jù)存儲(chǔ)器AT24C01將原先通過(guò)鍵盤(pán)設(shè)定的溫度門(mén)限值存入到溫度門(mén)限寄存器中;隨后調(diào)用AD7416溫度采樣和TLC1543模/數(shù)轉(zhuǎn)換子程序,并將結(jié)果經(jīng)數(shù)值轉(zhuǎn)換后通過(guò)4位LED數(shù)碼管顯示。程序運(yùn)行當(dāng)中可隨時(shí)通過(guò)調(diào)用鍵盤(pán)子程序來(lái)更改溫度上下限值,并將該限值保存到AT24C01數(shù)據(jù)存儲(chǔ)芯片中。當(dāng)測(cè)量的溫度值超過(guò)預(yù)先設(shè)定的門(mén)限值時(shí),調(diào)用后向通道控制子程序啟動(dòng)繼電器打開(kāi)各種負(fù)載。
4 上位機(jī)監(jiān)控系統(tǒng)設(shè)計(jì)
4.1監(jiān)控界面設(shè)計(jì)
全中文工控組態(tài)軟件MCGS是一套基于Windows的平臺(tái),快速構(gòu)成上位機(jī)監(jiān)控系統(tǒng),可運(yùn)行于Microsoft Windows9598MENT2000等操作系統(tǒng),MCGS有寵大標(biāo)準(zhǔn)的工業(yè)器件、設(shè)備、圖形庫(kù),通過(guò)接口設(shè)計(jì),支持各類(lèi)型單片機(jī)等硬件設(shè)備。MCGS軟件使用簡(jiǎn)單,操作方便,Windows圖形功能完備,界面一次性好。本系統(tǒng)設(shè)計(jì)了五個(gè)界面,分別是主界面、流程監(jiān)控、故障報(bào)警、報(bào)表輸出、操作規(guī)程。圖4所示的是中央供熱/供暖系統(tǒng)流程監(jiān)控界面。其中,流程監(jiān)控是系統(tǒng)的整個(gè)工作流程的動(dòng)態(tài)顯示,包括每個(gè)接口的水溫顯示、流水的方向等;報(bào)表輸出是通過(guò)組態(tài)軟件的報(bào)表功能實(shí)現(xiàn)運(yùn)行信息、故障信息的數(shù)據(jù)保存、顯示與定期打印。
4.2 單片機(jī)和上位PC機(jī)的RS—485通信接口
RS—485最大的優(yōu)點(diǎn)在于它的多點(diǎn)總線互連功能,它可以連接一臺(tái)主機(jī)和多臺(tái)終端同時(shí)通信。由于它是半雙工的工作方式,只能有一方發(fā)送,一方接收,而且它采用差動(dòng)電平接收的方法提高抗干擾能力,適合在比較惡劣的環(huán)境下工作。在單片機(jī)系統(tǒng)中使用MAX485芯片,完成單片機(jī)和上位PC機(jī)的RS—485通信。芯片MAX485是RS—485 通信的低功率收發(fā)器,其驅(qū)動(dòng)器變化率沒(méi)有限制,最大傳輸率可達(dá)2.5Mbps,傳輸距離為1200米。MAX485芯片采用單+5V電源供電,總線上可掛接32個(gè)收發(fā)器。MAX485有8個(gè)引腳,當(dāng)驅(qū)動(dòng)器使能端DE和接收器使能端/RE禁止時(shí),驅(qū)動(dòng)器和接收器輸出為高阻態(tài)。RO和DI分別為接收器輸出端和驅(qū)動(dòng)器輸入端,只要A、B端通過(guò)電阻對(duì)應(yīng)連接,即可實(shí)現(xiàn)信息傳輸。MAX485采用雙線半雙工通信方式,串行通信的波特率選為9600bps,AT89S51單片機(jī)的晶振相應(yīng)地選為11.0592MHz,即可滿足系統(tǒng)對(duì)波特率誤差的要求。MAX232是RS-232收發(fā)器,用于實(shí)現(xiàn)TTL電平與微機(jī)串口的RS-232電平信號(hào)之間的轉(zhuǎn)換。采用單+5V電源供電,數(shù)據(jù)傳輸率為120Kbps。
4.3 通信接口電路
在測(cè)控系統(tǒng)中,下位機(jī)的實(shí)時(shí)性較高,因而一般采用串行中斷的方式進(jìn)行通信。通信協(xié)議采用8個(gè)數(shù)據(jù)位、一個(gè)停止位,無(wú)奇偶校驗(yàn)位。AT89S51的串行口有四種工作方式,選取方式1即標(biāo)準(zhǔn)的10位異步通信方式,由串行口控制寄存器設(shè)置狀態(tài),將SCON設(shè)置為0X50H。采用定時(shí)器T1作為波特率發(fā)生器,工作于方式2。
4.4 PC機(jī)端組態(tài)軟件通信腳本程序設(shè)計(jì)
組態(tài)軟件的腳本程序用VB語(yǔ)言提供的通信控件MXCOMM可以方便地對(duì)串行通信的各項(xiàng)參數(shù)進(jìn)行設(shè)置,包括串口狀態(tài)、通信格式和協(xié)議等。一旦檢測(cè)到有發(fā)送或接收數(shù)據(jù)發(fā)生,則觸發(fā)OnComm事件,通過(guò)編程訪問(wèn)COM1的event屬性了解通信事件的類(lèi)型,并進(jìn)行相應(yīng)的處理。PC機(jī)串口對(duì)無(wú)線收發(fā)模塊收發(fā)狀態(tài)轉(zhuǎn)換的控制,采用的是Visual Basic的開(kāi)發(fā)環(huán)境,可通過(guò)設(shè)置MSComm控制的PTSEnable屬性來(lái)實(shí)現(xiàn)。RTSEnble屬性設(shè)為False時(shí),串口RTS輸出高電平,電平轉(zhuǎn)換后將PTR 2000置為發(fā)射狀態(tài);RTSEnble屬性設(shè)為T(mén)rue時(shí),串口RTS輸出低電平,電平轉(zhuǎn)換后將PTR 2000置為接收狀態(tài)。圖5所示為計(jì)算機(jī)端的Visual Basic接收程序流程圖。
本系統(tǒng)采用單片機(jī)控制,結(jié)構(gòu)簡(jiǎn)單、性能可靠,特別是在單片機(jī)控制系統(tǒng)上配全中文MCGS組態(tài)軟件,構(gòu)成實(shí)時(shí)監(jiān)控系統(tǒng),根據(jù)實(shí)際工況靈活組態(tài),作為良好的上位機(jī)人機(jī)界面,實(shí)現(xiàn)了動(dòng)態(tài)測(cè)試、檢測(cè)與報(bào)警,具有直觀、操作方便、控制靈活等優(yōu)點(diǎn)。經(jīng)生產(chǎn)實(shí)踐表明,該全自動(dòng)中央供暖系統(tǒng)設(shè)計(jì)思路正確、運(yùn)行可靠,能達(dá)到實(shí)際應(yīng)用的要求,在自動(dòng)化控制產(chǎn)品設(shè)計(jì)中應(yīng)用越來(lái)越廣泛。
評(píng)論