CAN(Controller area network)即控制器局域網(wǎng),是國際上應用最廣泛的現(xiàn)場總線之一。起先CAN-bus被設計作為汽車環(huán)境中的微控制器通訊,在車載的各電子控制裝置(ECU)之間交換信息形成汽車電子控制網(wǎng)絡。作為一種技術先進、可靠性高、功能完善、成本合理的遠程網(wǎng)絡通訊控制方式,CAN-bus已被廣泛應用于各個自動化控制系統(tǒng)中。
從高速的網(wǎng)絡到低價位的多路接線都可以使用CAN-bus。例如,在自動控制、智能大廈、電力系統(tǒng)、安防監(jiān)控等各領域,CAN-bus都具有不可比擬的優(yōu)越性。工業(yè)控制系統(tǒng)的分布化、智能化、信息化發(fā)展,要求企業(yè)從現(xiàn)場控制層到管理層實現(xiàn)全面無縫信息集成。工業(yè)以太網(wǎng)滿足這一要求,實現(xiàn)了工業(yè)控制網(wǎng)絡與企業(yè)信息網(wǎng)絡的無縫連接,成為控制網(wǎng)絡發(fā)展的主要方向,為全分散智能控制網(wǎng)絡系統(tǒng)實現(xiàn)遠程控制提供了可能`1`。本文作者主要介紹基于CAN總線與以太網(wǎng)互聯(lián)的實時溫度、濕度監(jiān)控系統(tǒng),從而實現(xiàn)監(jiān)控設備的網(wǎng)絡化和智能化。
1系統(tǒng)介紹
1.1 CAN總線與互聯(lián)網(wǎng)互聯(lián)的發(fā)展狀況CAN總線是一種有效支持分布式控制的串行通信網(wǎng)絡,是德國BOSCH公司從20世紀80年代初為解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換而設計的一種串行數(shù)據(jù)通信協(xié)議,歷經(jīng)技術規(guī)范2.0A和2.0B后已形成CAN國際標準(ISO11898)
。CAN遵循OSI模型,按照OSI基準模型,CAN機構分為2層:數(shù)據(jù)鏈路層和物理層。按照IEEE802.2和802.3標準,數(shù)據(jù)鏈路層又劃分為邏輯鏈路控制層(LLC)和媒體訪問控制層(MAC);物理層又劃分為物理信令層(PLS)、物理媒體附屬裝置層(PMA)和媒體相關接口層(MDI)。由于CAN具有獨特的優(yōu)點,使得它在工業(yè)領域中得到廣泛應用。
目前,基于CAN總線獲得廣泛應用的應用層協(xié)議有DeviceNet和CANOpen等。CAN具有以下主要特點`2`:(1)CAN為多主工作方式,網(wǎng)絡上任一節(jié)點均可在任意時刻主動地向網(wǎng)絡上其他節(jié)點送信息,而不分主從;
(2)在報文標識符上,CAN上的節(jié)點分成不同的優(yōu)先級,可滿足不同的實時要求;
(3)CAN采用非破壞總線仲裁技術。當多個節(jié)點同時向總線發(fā)送信息出現(xiàn)沖突時,優(yōu)先級較低的節(jié)點會主動地退出發(fā)送,而最高優(yōu)先級的節(jié)點可不受影響地繼續(xù)傳輸數(shù)據(jù),從而大大節(jié)省了總線沖突仲裁時間;(4)CAN節(jié)點只需通過對報文標識符濾波即可實現(xiàn)點對點、一對多點及全局廣播幾種方式傳送接收數(shù)據(jù);(5)CAN報文采用短幀結構,傳輸時間短,受干擾概率低,保證了數(shù)據(jù)出錯率極低;
(6)CAN節(jié)點在錯誤嚴重的情況下具有自動關閉輸出功能,以使總線上其他節(jié)點的操作不受影響。
現(xiàn)場總線網(wǎng)絡與工業(yè)以太網(wǎng)的結合使得企業(yè)的管理可以深入到測控現(xiàn)場,在這種互聯(lián)方式下,由以太網(wǎng)構建信息網(wǎng),通過兩者的有機聯(lián)接,從而構成一個中型/大型的遠程監(jiān)控/數(shù)據(jù)傳輸網(wǎng)絡`3`。
1.2系統(tǒng)架構系統(tǒng)由溫度、濕度測控器、CAN以太網(wǎng)通信轉換器、服務器和客戶端組成,如圖1所示。
溫度、濕度測控器主要負責現(xiàn)場溫度、濕度數(shù)據(jù)的采集、處理、控制、顯示、報警以及通過CAN總線與通信轉換器進行數(shù)據(jù)交換。
CAN、以太網(wǎng)通信轉換器主要負責CAN總線數(shù)據(jù)的發(fā)送和接收,并將CAN的數(shù)據(jù)通過局域網(wǎng)發(fā)送到服務器上。
服務器負責監(jiān)控結果數(shù)據(jù)的存儲和報表的存儲,同時,向客戶端提供訪問服務。
客戶端通過瀏覽器上因特網(wǎng)訪問服務器上的數(shù)據(jù)并進行通信和控制。
2硬件設計溫度、濕度測控器主要分為數(shù)據(jù)采集、控制和CAN總線通訊3部分
溫度、濕度測控器的溫度、濕度傳感器采用瑞士圖2溫度、濕度測控器的硬件框圖Fig.2 Structure of temperature and humidity controllerSENSIRION公司的SHT10,傳感器包括1個電容式聚合體測濕元件和1個能隙式測溫元件,并與1個14位A/D轉換器以及串行接口電路在同一芯片上實現(xiàn)無縫連接。SHT10具有超快響應、抗干擾能力強等優(yōu)點。
每個SHT10傳感器都在極精確的濕度校驗室中進行校準。校準系數(shù)以程序的形式儲存在OTP內(nèi)存中,傳感器內(nèi)部在檢測信號的處理過程中要調(diào)用這些校準系數(shù)。兩線制串行接口和內(nèi)部基準電壓,使系統(tǒng)集成變得簡易快捷。溫度、濕度測控器的MCU采用微芯公司的PIC18F2580,它是整個溫度、濕度測控器的運算控制單元,它采用16位的RISC指令系統(tǒng)、哈佛總線結構、兩級流水線取指等技術,具有32 KB快閃存內(nèi)存、4 KB的RAM、片內(nèi)看門狗、內(nèi)部EEPROM、CAN控制器等豐富的片內(nèi)資源,抗抗干擾性能強,功耗低,速度高`4`。PIC18F2580主要負責數(shù)據(jù)采集與控制,并與通信轉換層適配器進行實時CAN總線數(shù)據(jù)的通信。
CAN與以太網(wǎng)通信轉換層硬件框圖如圖3所示,它的處理器采用NXP公司的ARM7TDMI-S核的單片機LPC2378,是一款支持實時仿真和嵌入式跟蹤的16/32位ARM7TDMI-S CPU,處理器時鐘高達72MHz。片內(nèi)含有高達512 KB的片內(nèi)Flash和58 KB的片內(nèi)SRAM存儲器,具有強大的通信接口:10/100M以太網(wǎng)媒體訪問控制器(MAC),2路CAN-bus接口。
增強型外設4個32位捕獲/比較定時器、1個帶有2 KB電池SRAM的低功耗實時時鐘、看門狗定時器和1個片內(nèi)4 MHz的RC振蕩器。LPC2378的強大功能為CAN和以太網(wǎng)的通信轉換帶來了極大方便`5`。
3軟件設計軟件設計的對象主要包括3部分:溫度、濕度測控器的檢測控制和CAN通信,CAN以太網(wǎng)通信轉換,B/S平臺。
3.1溫度、濕度測控器的軟件設計溫度、濕度測控器的軟件流程
它主要包括初始化子程序、CAN數(shù)據(jù)的接收和發(fā)送程序、顯示程序、鍵盤掃描程序、控制程序。CAN數(shù)據(jù)的接收和發(fā)送對實時性要求比較高,故采用中斷方式進行處理。微處理器PIC18F2580在程序開始首先要對CAN控制器模塊進行初始化。主要通過測控器本身的地址標識的讀取來對CAN控制器的過濾器和屏蔽器進行配置。屏蔽器用于確定標識符中的哪一位被過濾器檢查,這樣,一旦1條有效的信息被信息緩沖器MAB接收,信息的標識符區(qū)域?qū)⑴c過濾器值相比較,若相匹配,則信息將被裝入接收緩沖器。微控制器收到CAN數(shù)據(jù)后,根據(jù)相應命令進行相應動作,如設置相應報警溫度濕度、執(zhí)行相應控制等,然后,做出相應的應答。
控制程序主要是通過串行接口對SHT10進行數(shù)據(jù)讀取,并把讀取數(shù)據(jù)與設定數(shù)據(jù)進行比較,運用bang-bang控制通過驅(qū)動電路控制中央空調(diào),使得房間保持一定的溫度和濕度。3.2 CAN與以太網(wǎng)通信轉換軟件設計3.2.1 LPC2378的CAN控制器與CAN總線間的數(shù)據(jù)傳輸LPC2378的CAN控制器帶有1個完整的發(fā)送和接收緩沖器串行接口,它是1個雙重接收緩沖器,有了這個雙重的接收緩沖器,芯片可以在對1個報文進行處理時,可接收另一個報文,但它不含有驗收濾波器。驗收濾波器是獨立的器件,它對所有CAN通道進行CAN標識符過濾。
以上是關于論基于CAN總線與以太網(wǎng)互聯(lián)的實時溫度和濕度監(jiān)控系統(tǒng)的研究已公布的相關信息,請自考生們認真查看,如果你想獲取最新的江蘇自考新聞或者江蘇自考問題答疑,可以掃描江蘇自考網(wǎng)公眾號二維碼,我們會最第一時間內(nèi)為你解答。
?自考有疑惑或想進學習群,請聯(lián)系江蘇自考網(wǎng)客服