CAN總線在停車場燈光智能控制系統(tǒng)中的應用
3.2 控制節(jié)點的軟件設計
3.2.1 控制節(jié)點軟件實現(xiàn)功能
控制節(jié)點軟件實現(xiàn)的主要功能如下:
1)系統(tǒng)的初始化:包括串口的初始化、CAN控制器的初始化、定時器的初始化以及系統(tǒng)主要變量的初始化。
2)外部存儲器資源的分配、管理:包括對FM25640讀寫的基本操作,以及建立在這些操作上的對節(jié)點控制方案的管理。
3)CAN命令的發(fā)送、接收及解釋:包括對其它節(jié)點發(fā)送的CAN命令的接收、識別、解釋,以及相應的應答命令的發(fā)送。
4)串口命令的發(fā)送、接收及解釋:包括串口命令的接收、識別、解釋,以及相應的應答命令的發(fā)送。
5)傳感器信號的檢測:包括傳感器組的連續(xù)檢測,以及檢測到信號時所進行的相應處理。
6)照明回路的控制。
7)定時器的管理。
3.2.2控制節(jié)點軟件工作流程
控制節(jié)點的程序采用C51設計,這樣可以大大簡化程序設計的復雜度。控制節(jié)點的主程序框圖如圖3所示。 本文引用地址:http://butianyuan.cn/article/163639.htm
在系統(tǒng)初始化后,程序循環(huán)查詢傳感器接口、串口和CAN接口。當檢測到傳感器有信號輸出時,程序在打開附近的照明回路的同時也通過CAN總線向其他節(jié)點發(fā)送該傳感器的信息。其余的控制節(jié)點一旦接收到該信息,便會查詢存儲在外部存儲器中的控制方案信息,然后打開與該傳感器相關聯(lián)的照明回路,從而實現(xiàn)控制方案指定的照明方式。
控制節(jié)點的CAN中斷程序的框圖如圖4所示。當節(jié)點接收到一條CAN幀,中斷處理程序讀出該命令,并置CAN命令接收標志,等待命令處理子程序的處理。
為了方便控制節(jié)點的安裝與調(diào)試,在主程序中特別加入了串口處理程序。使用者可以通過發(fā)送串口命令測試控制節(jié)點的各項功能,也可以通過串口上傳、下載控制方案。
3.2.3 現(xiàn)場可編程功能的實現(xiàn)
為了實現(xiàn)該系統(tǒng)的現(xiàn)場可編程功能,每一個控制節(jié)點都應該存儲本節(jié)點的照明回路與網(wǎng)絡中其他節(jié)點的傳感器的邏輯關系表。邏輯關系表的結(jié)構(gòu)如下:
照明回路 | ||||||||
傳感器 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | |
1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | |
2 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | |
3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
上表表示節(jié)點的各個照明回路與系統(tǒng)中某一節(jié)點的的傳感器(包括本節(jié)點)的互連關系。如果表項中對應值為1,則表示對應的照明回路與傳感器相關聯(lián),一旦傳感器有信號,相關的照明回路就會被打開。關系表中的各項的值可以隨時改變,并通過上位機或串口重新下載到存儲器中。
假設網(wǎng)絡中有N個控制節(jié)點,每一個節(jié)點中將會存儲N-1張關系表,對應于網(wǎng)絡中的其余N-1個節(jié)點。一旦某一節(jié)點在CAN上發(fā)送傳感器消息,其余的節(jié)點接收到該消息后就會從對應于發(fā)出消息的節(jié)點的關系表中查找與該傳感器關聯(lián)的照明回路并打開這些回路。這樣一旦有車輛進入停車場,該控制系統(tǒng)就會打開控制方案規(guī)定的所有的照明回路,實現(xiàn)照明的智能化。
4 結(jié)束語
通過對系統(tǒng)軟件、硬件的反復調(diào)試,該分布式燈光智能控制系統(tǒng)顯示出了傳統(tǒng)的停車場燈光控制系統(tǒng)無法比擬的優(yōu)越性,可以有效減少小區(qū)地下停車場照明系統(tǒng)的安裝和維護費用,具有良好的應用前景和推廣價值。
評論