摘要:隨著經濟的發展和科技的進步,人們對照明燈具的節能和科學管理提出了更高的要求,智能照明控制在校園中的應用越來越廣泛。本文介紹了LIN總線技術及其在51系列單片機中的實現,并以此為基礎設計了一種基于普通單片機組成的LIN網絡實現智能教學樓照明控制系統,實現對整個系統的集中管理,降低系統的管理費用。
關鍵詞:智能照明;LIN總線;51單片機;傳感器
中圖分類號:TP393 文獻標識碼:A
[align=center]Application of LIN field bus in the illumination system of teaching building
ZHANG Jun-Li, CHEN Xing, HOU Dian-Hua
(School of Mechanical Engineering , Dalian University of Technology, Dalian, Liaoning, 116024, China)[/align]
Abstract: With the development and progress of economy and technology, people set a higher request to the energy conservation of illumination lamps and scientific management. Intelligent illumination control is getting more and more widespread in the campus application. The LIN bus technique and it’s realization in 51 series SCM was introduced in this article, take this as the foundation , an intelligent illumination control system was designed based on the LIN network consist of General SCM, which can realize the centralized management of the whole system, and reduce management costs.
Keywords: Intelligent illumination; LIN bus; 51 SCM; sensor
1 引言
據調查,目前大多高校教學樓照明用電的管理基本是處于一種粗放式的管理狀態。其管理有三種模式:1)無專人管理,由學生自行控制開啟,再由值日學生在中午、下午和晚自習后關閉燈具;2)利用定時開關,根據作息時間開啟和關閉整個教學樓的照明電源;3)由專人負責,即管理人員根據作息時間和天氣情況分樓或分層送電。這三種管理模式都不同程度地存在著布線復雜、浪費電能、無法及時地保證各個教室的照度以及控制的準確程度低等缺陷[1]。在教學樓中引入智能照明系統可以有效地提高管理水平,改善工作和學習環境,達到良好的節能效果。
目前,智能照明控制系統按網絡的拓撲結構主要分為總線式和以星形結構為主的混合式[2]。本文設計的教學樓智能照明系統采用CAN/LIN混合網絡體系結構,即干線采用CAN(Controller Area Network)總線,支線采用LIN(Local Interconnect Network)總線。CAN網絡是一種架構開放、廣播式的新一代網絡通信協議,具有很高的可靠性,高速、長距離傳輸,開發系統廉價。LIN總線最初用于實現汽車內部諸多電子控制單元之間的通信,作為子網絡,用于一些不需要諸如CAN總線的帶寬和多功能場合。但是LIN的應用并不局限于汽車領域,在諸如工業控制領域也占有廣闊的應用地位和前景。
由于LIN總線基于通用UART接口,幾乎所有微控制器都具備LIN必需的硬件,網絡采用極少的信號線(一根12V信號總線和一個無固定時間基準的節點同步時鐘線),設備硬件成本低。使用LIN總線作為總線型樓宇智能照明控制系統的子網絡,可以兼顧通訊可靠,節省成本。
2 LIN總線通信規則
LIN的工作原理是基于單主/多從概念。如圖1所示,在一個LIN網絡中,由一個主節點以及多個從節點構成,主節點由主機任務和從機任務組成。而所有從機節點只包含從機任務。主節點用于控制LIN總線,它通過對從節點進行查詢,將數據發布到總線上。從節點僅在主節點的命令下發送數據,從而在無需仲裁的情況下實現雙向通訊。
LIN協議的發送是由報文實現的,每個報文由主機節點發出的報文頭和主機或從機節點發出的報文響應組成。如圖2所示。報文的傳送是在主節點發出一個同步間隔場后開始的,然后跟隨的是同步場和標識符字節。主節點通過在發送同步場可設定整個總線時鐘。標識符字節告訴LIN總線隨后將發送的是什么數據,并指明哪個節點應該應答及應答的長度是多少。對于給定的命令,只有一個從節點可以應答。從機任務接收標識符后對標識符進行濾波確認,當標識符表明節點與本次通信有關時,發送由數據和校驗組成的響應。從節點僅在主節點的控制下在LIN總線上發送數據。一旦數據發布到總線上,任何節點都可以接收該數據。因此,一個從節點向其它從節點發送數據無需主節點干預。由于LIN協議使用低成本RC振蕩器,因此從節點必須檢測主節點每次發送的波特率,并調整為當前速率[3]。
[align=center]

圖1 單主多從原理圖

圖2 LIN報文幀結構[/align]
LIN總線可以用軟件編程實現各種特性,也可以通過軟/硬件功能增添新的特性,這樣不同的模塊就都可以用一個硬件或一個軟件平臺實現。LIN總線的靈活性有利于降低生產和軟/硬件維護方面的成本。因為LIN總線協議非常簡單,所以用質優價廉的8位單片機就可以實現,從而降低系統總成本。
3 系統實現
3.1系統組成
教學樓照明控制系統的基本組成包括主控中心、照明控制器、動態傳感器和照度傳感器等,系統使用通用計算機作為主控中心,通過通訊裝置與網絡實現通訊。計算機上可直接實現編程、監控、故障報警等功能。照明控制器是智能照明控制系統的核心部分,既可獨立工作,也可以由計算機中心控制。動態傳感器利用紅外線或超聲波的原理,自動識別房間內是否有人存在,從而給控制器發送信號,實現“人來燈亮,人走燈滅”的動態控制功能。照度傳感器核心部件是光電耦合器,照度傳感器通過感應外部自然光源的照度來調節室內照明的亮度,實現智能探測和智能調節的功能。
3.2 系統結構原理
系統總體結構如圖3 所示。每個教學樓的燈光控制系統干線采用CAN總線,支線采用LIN總線。每個教室內組成一個LIN網絡,根據需要設置LIN從節點的個數。
主機節點采集本地各控制開關的狀態,并接受上層網絡CAN總線上的遠程信息,據此產生控制指令,并將指令轉換為LIN報文幀,通過LIN網絡發送給相應從機節點。從機節點通過收發器TJA1020接收到與自己相關的報文幀后,對報文幀進行拆封、解讀,然后根據獲得的指令控制相應的執行器動作,從而實現對各個照明燈狀態的控制。同時,在需要時從機節點分別將其控制部件所處狀態反饋給主機節點,主機節點再將該狀態信息通過指示燈等形式通過CAN總線發給其他控制單元。
從節點的設計分為兩個模塊,即傳感器模塊和執行器模塊。傳感器用于檢測室內光線度等信息,當傳感器檢測到有人時,立刻判斷此時教室內的光線是否適合學習,并將此信息通過LIN總線傳給主節點,主節點收到消息后,判斷該情況對應的燈光控制模式,然后向LIN總線發送帶相應標識符場的報文頭,啟動一次主節點向從節點發送數據的LIN總線通信。等待LIN總線處理該報文幀之后,主節點啟動一次從節點向主節點發送數據的LIN總線通信,該從節點即為前一次LIN總線通信中,接收到主節點命令的從節點。如果主節點接收到的從節點數據與理論上應該收到的數據不符,主節點上的報錯指示燈點亮,并可以顯示發生故障的從節點號碼。
[align=center]

圖3 系統總體結構[/align]
3.3 LIN節點實現
LIN網絡的主機節點和從機節點采用MCS-51系列單片機AT89C51和PHLIP的TJA1020收發器組成,LIN協議控制器AT89C51是低功耗/低電壓、高性能CMOS 8位單片機。空閑方式停止CPU工作,但允許RAM,定時/計數器,串行通信口及中斷系統繼續工作。掉電方式保存RAM中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位。TJA1020是LIN主/從協議控制器和LIN物理總線之間的接口。它使用的波特率可從2.4到20Kbits/s。控制器在TXD管腳輸入的發送數據流通過LIN收發器轉換成LIN總線信號,并由收發器控制轉換速率和波形,減少EME。
3.3.1 LIN主節點設計
LIN主節點硬件原理如圖2所示。由LIN協議的分析可知,在一次幀通信過程中,主從節點在大部分時間里是以標準的串行通信數據幀的形式交換數據的,通信的關鍵是要實現主節點和從節點的同步。在同步過程中,主、從節點所執行的操作是不同的:主機節點的任務是要發送報文頭,從節點的任務是接收和判斷報文頭,實現與主節點的同步。
報文頭的間隔場是一個基于主機節點時鐘頻率的13個以上位時(bit time)和至少1個位時的間隔界定符。對主節點來講,這一部分是實現主節點功能的關鍵。一般情況下,串行口和I/O口(TXD,RXD)都是復用的,本系統中首先利用TXD管腳,將其作為I/O口使用,在程序中利用定時器在TXD/P3.1管腳上延時一個13個bit位定時的時間的低電平。也就是相當于在發送之前,控制TXD為高電平,在發送開始的時候,首先在該管腳輸出一個低電平,利用定時器延時13bit位的時間,然后再拉高。
[align=center]

圖4 LIN主節點硬件原理圖[/align]
同步場的作用是使LIN從機和主機位速率同步,從而正確接收報文。當利用中斷和定時器進行判別同步間隔后,就可以接收同步場。當主從節點的位速率相同時,同步場的數據可當串行數據發送和接收,沒有特殊的意義。
3.3.2 LIN從節點設計
LIN從節點硬件原理如圖3所示,從節點實現的關鍵是能夠正確實時地接收報文頭,達到與主節點的同步,為下一步的數據交換做好準備。
從節點對間隔場和同步字節場的接收完全采用中斷方式進行。為了能及時感受到主節點報文頭的起始階段,將串口接收數據端RXD端與單片機的一個外部中斷觸發端口(INT1或INT0)相連,這樣,當主節點發送過來的間隔場的下降沿到來時,就可以實時地觸發從節點進入對報文頭的接收程序段。從節點自總線電平下降沿到來之際,就對總線顯性電平(低電平)持續的時間進行累積計算,直到發現總線恢復為隱性電平(高電平)為止。如果此段持續時間大于11個主節點工作位時時間,那么從節點就斷定是一次幀通信的開始。接著從節點對同步字節場的接收作好準備,在同步字節場開始位的第一個下降沿起,連續對同步字節場的后4個下降沿進行計時累加,最后將得到的計時時間除以8,得到主節點發送數據的位時時間,即主節點下一步將要進行數據通信的波特率。從節點以此作為串口波特率設定值,通過串口與主節點交換數據。
間隔場和同步字節場的計時方法是將定時器T0設定成定時一個位時時間后中斷,在各個階段查詢定時器T0中斷次數,通過計算T0中斷次數的差值,可以間接算出各個階段的持續時間長度。
由于普通單片機的外部中斷觸發端只有下降沿和低電平兩種觸發方式,所以報文頭間隔場開始階段和同步字節場的下降沿可以觸發從節點,但報文信號的上升沿卻無法讓從節點感知。讓接收數據流分別經過1個三態門和1個三態非門再進入單片機的串口,2個三態門由單片機的兩個端口來控制,就可以解決這個問題。一般情況下,三態門導通,三態非門截止,數據流正常進入單片機串口。當間隔場的下降沿觸發單片機后,程序控制三態門截止,三態非門導通,數據流反相進入單片機,間隔場的上升沿經過三態非門后變成下降沿,同樣也可以觸發單片機中斷。在隨后的同步字節場的接收中,可以按照正常中斷方式進行,即可由同步字節場的5個下降沿觸發單片機中斷5次接收。
[align=center]

圖5 LIN從節點硬件原理圖[/align]
4 總結
本文所設計的教學樓照明控制系統是應用LIN總線技術構成的控制子網。這種利用LIN總線技術實現的照明控制系統通信實現簡單易行,成本低,便于網絡化管理,便于設備擴充,信號傳輸可靠性高,有一定先進性。該系統經擴展后有著非常廣闊的應用前景,不僅可以擴展到辦公大樓、商業中心等公共場所理想的智能照明控制系統,且在節能方面也有著重大的經濟價值。
參考文獻
[1] 李明.談高校教學樓照明管理中的節能措施,山西建筑,第33卷第31期,2007年11月
[2] 胡興軍.發展中的智能照明系統[J].光源與照明,2004,(3): 44~46.
[3] 廣州周立功單片機發展有限公司. LIN的規范(V1.2)
[4] 解小華,李浩,陳紅. LIN協議在MCS-51單片機中的實現.控制工程,第11卷增刊,2004年7月
作者簡介:
張俊麗(1984-),女,碩士研究生,研究方向:嵌入式開發
陳星(1963-),男,副教授,研究方向:嵌入式系統與現場總線
侯典華(1982-),男,碩士研究生,研究方向:嵌入式開發
Author brief introduction:
Zhang Jun-Li(1984-)female, Master, Research: Exploiture of Embedded system.
Chen Xing (1963-), male, Associate Professor, Research: Embedded System. And Field Bus
Hou Dian-Hua (1982- ), male, Master, Research: Exploiture of Embedded system.
通信地址:大連理工大學機械工程學院微電子中心 郵編:116023
E-mail:sharly1984@163.com