<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)控制的新型智能控制系統(tǒng)設(shè)計(jì)

          基于單片機(jī)控制的新型智能控制系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2008-05-07 來(lái)源:微計(jì)算機(jī)信息 | 劉多林 收藏

            1 引言

          本文引用地址:http://www.ex-cimer.com/article/82237.htm

            是現(xiàn)代化教學(xué)環(huán)境和設(shè)施的重要組成部分,目前我國(guó)各類學(xué)校都建設(shè)了一批多媒體教學(xué)課室,勇于開展多媒體教學(xué),有力地推動(dòng)了教學(xué)手段的現(xiàn)代化。正在逐步改變教師的教授和學(xué)生的學(xué)習(xí)模式,加大了教學(xué)信息量,提高了教學(xué)效率和教學(xué)質(zhì)量,加快了教學(xué)改革步伐。而基于控制的智能教室控制系統(tǒng)主控制器溝通了控制計(jì)算機(jī)與教室控制器之間的聯(lián)系,起到橋梁的作用。作為分布式控制的系統(tǒng)的核心,主控制器的性能的優(yōu)劣直接影響到整個(gè)系統(tǒng)功能的實(shí)現(xiàn)。因此主控制器的設(shè)計(jì)至關(guān)重要,本文將對(duì)主控制器的硬件和軟件進(jìn)行設(shè)計(jì)研究。

            2 主控制器硬件總體設(shè)計(jì)

            主控制器通過總線與控制計(jì)算機(jī)相連,接收控制計(jì)算機(jī)發(fā)出的命令,經(jīng)過的處理,通過RS-485總線發(fā)送操作命令到教室控制器,完成控制計(jì)算機(jī)的操作動(dòng)作。系統(tǒng)主要功能電路有:主控制電路、與控制計(jì)算機(jī)接口電路、與教室控制器通訊接口電路、實(shí)時(shí)時(shí)鐘電路、紅外信號(hào)發(fā)射電路、存儲(chǔ)器擴(kuò)展電路及控制器供電電路等。其系統(tǒng)組成如圖1。

            3 硬件電路詳細(xì)設(shè)計(jì)

            3.1 主控芯片選擇與供電電源設(shè)計(jì)

            主控制器的核心控制芯片采用深圳宏晶電子公司STC89C52RC。該單片機(jī)以8051為核心電路,擁有三個(gè)定時(shí)器/計(jì)數(shù)器、兩個(gè)外部中斷、32個(gè)通用I/O接口并擁有高速的數(shù)據(jù)處理能力,同時(shí)內(nèi)部擴(kuò)展了256字節(jié)的RAM并帶有內(nèi)部看門狗,非常適合于工業(yè)級(jí)別的、對(duì)實(shí)時(shí)性要求不是非常高的場(chǎng)合。擴(kuò)展的RAM可以通過單片機(jī)外部數(shù)據(jù)讀寫的方式進(jìn)行操作,用來(lái)存放紅外自學(xué)習(xí)時(shí)大量的零時(shí)數(shù)據(jù)。

            對(duì)于一個(gè)電氣系統(tǒng),電源是不可缺少的部分。為+5V供電,而外圍觸發(fā)電路需要+12V的電源。在這種情況下,所需電壓的得到一般可通過外部開關(guān)電源或交流220V單相電經(jīng)變壓器、經(jīng)過橋式整流后再經(jīng)過電容、電感濾波直接得到。一般來(lái)講,這樣得到的+12V和+5V電源負(fù)載能力較強(qiáng)但波紋較大,很難直接應(yīng)用到系統(tǒng)中。因此,一般要經(jīng)過DC/DC變換將該電壓進(jìn)行隔離穩(wěn)壓處理。

                 

                                         圖1 主控制器硬件組成框圖

            3.2 復(fù)位電路與看門狗電路設(shè)計(jì)

            本次設(shè)計(jì)采用的復(fù)位芯片為C7705,它是電壓監(jiān)視器件,具有電源投入時(shí)的復(fù)位功能,并能夠監(jiān)測(cè)出電源瞬時(shí)短路和瞬間降壓而產(chǎn)生的復(fù)位信號(hào)。該芯片內(nèi)部具有電源上升時(shí)的復(fù)位信號(hào)解除功能,能正確地監(jiān)測(cè)降低的電壓(Vs=4.5-4.6V),其內(nèi)部附有溫度補(bǔ)償?shù)幕鶞?zhǔn)電壓,正負(fù)兩種邏輯輸出(集電極開路30mA ),原理圖如圖2所示。

                 

                              圖2 系統(tǒng)復(fù)位電路

            電路除了具有上電自動(dòng)復(fù)位功能外,還可以通過復(fù)位按鍵迫使RESET為低電平。當(dāng)系統(tǒng)掉電時(shí),復(fù)位電容里存儲(chǔ)的能量可以以二極管為通路迅速放電,這為單片機(jī)在復(fù)位上電的情況下可靠復(fù)位提供了保證。

            看門狗的作用就是防止程序發(fā)生死循環(huán),或者說程序跑飛。硬件看門狗是利用了一個(gè)定時(shí)器,來(lái)控制主程序的運(yùn)行,也就是說在主程序的運(yùn)行過程中,我們要在定時(shí)時(shí)間到之前對(duì)定時(shí)器進(jìn)行復(fù)位如果出現(xiàn)死循環(huán),或者說PC指針不能回來(lái)。那么定時(shí)時(shí)間到后就會(huì)使單片機(jī)復(fù)位。本次設(shè)計(jì)中,采用MAX813L芯片作為硬件看門狗,其RESET端與單片機(jī)復(fù)位端相連提供復(fù)位信號(hào),由單片機(jī)的P1.0提供喂狗信號(hào)??撮T狗硬件電路如圖3所示。

                  

                 圖3 硬件看門狗電路

            3.3 系統(tǒng)通訊接口設(shè)計(jì)

            8051單片機(jī)帶有一個(gè)異步通信串行接口,并具有一個(gè)通信可編程位,使用它可以很方便地完成單片機(jī)之間的多機(jī)通信。本系統(tǒng)的設(shè)計(jì)中,主控制器的主要任務(wù)是把控制計(jì)算機(jī)中的控制指令進(jìn)行處理,并通過異步通信串行接口把控制命令發(fā)送到下位機(jī)。但是,由于8051單片機(jī)本身只提供了一個(gè)串行口,因此為了實(shí)現(xiàn)上述目標(biāo),就必須再擴(kuò)展一個(gè)通信接口,本系統(tǒng)就使用8251擴(kuò)展8051串行通信接口。

            由于主控制器安裝在主控室內(nèi),與安裝在教室內(nèi)的教室控制器之間距離較遠(yuǎn),且工作環(huán)境復(fù)雜,兩者的通信存在很大的環(huán)境干擾。本系統(tǒng)的設(shè)計(jì)從經(jīng)濟(jì)條件、施工難度、傳輸距離等方面考慮,選擇了工業(yè)控制系統(tǒng)中常用的RS-485總線。使用RS-485總線,一對(duì)雙絞線就能實(shí)現(xiàn)多節(jié)點(diǎn)聯(lián)網(wǎng),構(gòu)成分布式系統(tǒng)。但是如果在工程中需要更長(zhǎng)的通信距離,超出RS-485接口能夠提供的可靠傳送數(shù)據(jù)范圍時(shí),單一的RS-485通信控制芯片對(duì)就無(wú)法完成了。這時(shí),必須在傳輸線路中增加中繼器。利用RS-485中繼器,可以將一個(gè)大型RS-485網(wǎng)絡(luò)分隔成若干個(gè)網(wǎng)段。RS-485中繼器就如同RS-485網(wǎng)段之間連接的“橋梁”。當(dāng)然每個(gè)網(wǎng)段還是遵循上面的485規(guī)范,即 1.2公里長(zhǎng)度,32個(gè)節(jié)點(diǎn)數(shù)。

            4 主控制器軟件設(shè)計(jì)

            系統(tǒng)的軟件設(shè)計(jì)是整個(gè)系統(tǒng)功能實(shí)現(xiàn)的關(guān)鍵所在,軟件設(shè)計(jì)的優(yōu)劣直接影響系統(tǒng)的性能,在相同硬件基礎(chǔ)上設(shè)計(jì)的軟件功能差異可以很大。由于本次設(shè)計(jì)要頻繁的對(duì)數(shù)據(jù)進(jìn)行讀寫和處理大量的數(shù)據(jù),占用了CPU的大量資源,因此在優(yōu)化軟件設(shè)計(jì)的同時(shí),還要注重核心芯片的選擇。

            系統(tǒng)軟件設(shè)計(jì)根據(jù)功能要求軟件控制模塊可分為。上電后系統(tǒng)開始運(yùn)行,系統(tǒng)先調(diào)用初始化,對(duì)各個(gè)接口狀態(tài)進(jìn)行自檢,對(duì)各個(gè)控制寄存器賦初值,然后進(jìn)入循環(huán)等待操作命令的到來(lái)并執(zhí)行命令。系統(tǒng)處于循環(huán)狀態(tài)運(yùn)行時(shí)則調(diào)用通訊子程序工作,接收控制計(jì)算機(jī)發(fā)送的控制命令,同時(shí)向教室控制器進(jìn)行轉(zhuǎn)發(fā);系統(tǒng)中斷時(shí)調(diào)用定時(shí)中斷服務(wù)子程序。主控制器程序運(yùn)行框圖如圖4所示。

            4.1 通訊子程序設(shè)計(jì)

            系統(tǒng)采用RS-485總線式網(wǎng)絡(luò)結(jié)構(gòu),主從式通信方式,即主控制器以查詢的方式與各子控制器通信,子控制器相互間不直接通信,而是通過主控制器,間接的相互通信。同時(shí),數(shù)據(jù)的交換過程(包括建立連接和交換數(shù)據(jù))采用一問一答的方式,主控制器詢問了子控制器,子控制器才給予應(yīng)答,收到應(yīng)答后,數(shù)據(jù)交換才繼續(xù)進(jìn)行下去。這樣的方式可以避免多個(gè)子控制器間沒有次序的數(shù)據(jù)通信,擾亂整個(gè)網(wǎng)絡(luò)上數(shù)據(jù)的傳輸。系統(tǒng)多機(jī)通信按以下協(xié)議進(jìn)行:

                  

                     圖4 主控制器程序運(yùn)行框圖

            (1) 首先初始化,使所有從機(jī)處于接收地址幀狀態(tài),即使SM2=1。

            (2) 主機(jī)先置TB8=1,發(fā)一幀地址信息,主機(jī)發(fā)出信息后馬上啟動(dòng)一個(gè)等待狀態(tài)定時(shí)器(定時(shí)幾十ms)。

            (3) 從機(jī)接收到地址幀后,各自產(chǎn)生串口接收中斷將接收到的地址與本機(jī)地址比較,地址相符的從機(jī)使SM2=0,處于接收數(shù)據(jù)狀態(tài),并屏蔽串口中斷,然后發(fā)回本機(jī)地址作為確認(rèn)信號(hào),其余從機(jī)不進(jìn)行任何動(dòng)作,繼續(xù)監(jiān)聽地址。

            (4) 主機(jī)收到對(duì)應(yīng)從機(jī)地址后,令TB8=0,開始發(fā)送數(shù)據(jù)信號(hào),主機(jī)與對(duì)應(yīng)從機(jī)通信建立。此時(shí)其他從機(jī)均無(wú)中斷響應(yīng),若主機(jī)長(zhǎng)時(shí)間未能接收到數(shù)據(jù),而導(dǎo)致等待狀態(tài)定時(shí)器中斷,此時(shí)主機(jī)應(yīng)強(qiáng)制退出與該從機(jī)的通信,并使從機(jī)復(fù)位。

            (5) 通信建立后,主機(jī)連續(xù)發(fā)送數(shù)據(jù)幀和校驗(yàn)幀,從機(jī)接收后進(jìn)行數(shù)據(jù)校驗(yàn),數(shù)據(jù)錯(cuò)誤接受錯(cuò)誤則返回錯(cuò)誤碼,主機(jī)重新發(fā)送數(shù)據(jù),重復(fù)三次,若三次均出錯(cuò)則報(bào)上位機(jī)系統(tǒng)出錯(cuò);若數(shù)據(jù)發(fā)送正確,則返回地址繼續(xù)進(jìn)行通信。

            (6) 通信結(jié)束后,主從機(jī)復(fù)位。主機(jī)使TB8=1,回到發(fā)送地址狀態(tài);從機(jī)使SM2=1,并打開串口中斷,回到接收地址狀態(tài)。

            4.2 實(shí)時(shí)時(shí)鐘子程序設(shè)計(jì)

            實(shí)時(shí)時(shí)鐘子程序設(shè)計(jì)能向控制計(jì)算機(jī)提供系統(tǒng)運(yùn)行時(shí)間。同時(shí)提供定時(shí)功能,當(dāng)定時(shí)時(shí)間達(dá)到時(shí),實(shí)時(shí)時(shí)鐘芯片DS 12887產(chǎn)生一個(gè)低電平觸發(fā)單片機(jī)中斷程序,完成定時(shí)操作功能。DS 12887狀態(tài)寄存器的參數(shù)設(shè)置如下:狀態(tài)寄存器A置為20H,表示開啟時(shí)鐘并禁止SQW管腳輸出方波。狀態(tài)寄存器B置為26H, 表示允許鬧鐘中斷,禁止其他中斷;二進(jìn)制數(shù)據(jù)表示;采取24小時(shí)格式;禁止方波輸出和夏令時(shí)服務(wù)。

            本文作者創(chuàng)新點(diǎn)

            本文設(shè)計(jì)了基于單片機(jī)控制的智能教室控制系統(tǒng)的主控制的外圍電路。采用了DS12887芯片,對(duì)系統(tǒng)時(shí)間模塊進(jìn)行了設(shè)計(jì)。重點(diǎn)討論了主控制器的通訊模塊設(shè)計(jì),對(duì)RS-485總線在通信節(jié)點(diǎn)擴(kuò)展方面進(jìn)行了全新的設(shè)計(jì)。同時(shí)對(duì)主控制器進(jìn)行了軟件設(shè)計(jì)。

            參考文獻(xiàn):

            [1] 郝銘,劉景泰,盧桂章.基于RS485總線分布式智能控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].自動(dòng)化與儀表,2005,(2): pp. 23-25

            [2] 劉富強(qiáng).單片機(jī)在多媒體系統(tǒng)中多功能控制卡的應(yīng)用研究[[J].東南大學(xué)學(xué)報(bào),1998年第三期,p66-70

            [3] 張小梅,陸俊,彭冰沁,劉宏. 嵌入式智能家居控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微計(jì)算機(jī)信息, 2007, 1-2: pp.55-56.

            [4] 姜地..RS-485多機(jī)通訊技術(shù)[J].中國(guó)科技信息,2006,(17):126-129



          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();