俞青松,陳 晨,陳友忠
(浙江意博高科技術有限公司,浙江 杭州 311100)
隨著我國城鎮化建設的推進,路燈作為城市公共照明的一部分,已成為人們生活中不可缺少的一部分。 但路燈每年消耗的電能也是巨大的,因而對路燈進行高效管理, 實現按需照明具有重要的意義。 路燈控制管理系統使路燈能夠被遠程監測控制,提高了路燈應對突發天氣的靈活性、故障上報的及時性以及節能控制方式的多樣性。路燈控制管理系統一般由監控軟件平臺、遠程通信網絡、集中控制器、本地通信網絡和單燈控制器組成。 單燈控制器作為路燈的直接控制設備,其工作的可靠性和有效性會影響整個控制系統。本文設計了一種基于ZigBee 通信技術的單燈控制器, 通過采用多種機制,在實現其功能完整性和有效性的前提下,保證了其工作的可靠性。
目前市面上單燈控制器, 采用的通信方式有ZigBee,PLC,RS485,NB-IoT,LoRa 等。 ZigBee 采用免許可證頻段2.4GHz (全球)、915MHz (美國)和868MHz(歐洲),數據傳輸率可達250kb/s,節點間通信距離100m,加AP 后可以達到1000m,支持大量網上節點,支持星狀、片狀和網狀等多種網絡拓撲,具有低復雜度、快速、可靠、安全的特點。
表1 列舉了常見單燈控制器的通信方式及優缺點。 采用ZigBee 通信的單燈控制器在安裝便捷性、維護成本、網絡可靠性、通信實時性、通信距離(擴展后)上具備優勢。 本設計通過采用ZigBee 通信、高精度計量芯片、多重故障判斷方式、數據包重發機制等方式進行設計優化,在提高設備可靠性同時,提高了網絡的安全性和可維護性,同時降低了網絡設備的故障誤報率。

表1 單燈控制器各通信方式對比Table 1 Comparison of communication methods of single lamp controller
如圖1 所示為路燈控制管理系統框圖。控制節點也即單燈控制器,安裝在燈桿或燈頭上,直接對路燈進行控制,并采集路燈狀態信息,通過ZigBee通信技術與集中控制器進行數據交互。集中控制器通過4G 網絡和遠程服務器進行數據通信,接收遠程服務器控制命令,通過單燈控制器對路燈進行開關、調光等控制,并上報單燈控制器采集的路燈狀態信息。在遠程服務器端以可視化界面展示整個控制系統的工作狀況,以便工作人員及時了解路燈的工作情況,做出精確判斷。

圖1 路燈控制管理系統框圖Figure 1 Block diagram of street lamp control and management system
單燈控制器硬件框圖如圖2 所示,包含ZigBee控制模塊、開關模塊、計量模塊、調光模塊、電源、RTC (Real Time Clock)、EEPROM (Electrically Erasable Programmable read only memory) 、Watchdog 等部分。

圖2 單燈控制器硬件框圖Figure 2 Hardware block diagram of single lamp controller
硬件功能模塊主要包括ZigBee 控制模塊、開關模塊、計量模塊、調光模塊以及RTC。
ZigBee 控制模塊。 ZigBee 控制模塊電路如圖3所示, 采用TI 的CC2530 作為主控芯片, 外加RFX2401C 作為功放芯片, 通過外接天線阻抗匹配,使ZigBee 模塊的有效傳輸距離不低于300m。

圖3 ZigBee 模塊電路Figure 3 ZigBee module circuit
ZigBee 控制模塊作為主控模塊,采用TI 的ZStack 協議棧,是整個控制器的控制中心。 整個ZStack 采用分層的軟件結構,包括硬件抽象層、操作系統抽象層等。 硬件抽象層提供各種硬件模塊的驅動,包括定時器Timer、通用I/O 口GPIO、通用異步收發傳輸器UART、 模數轉換ADC 的應用程序接口API,提供各種服務的擴展集。 操作系統抽象層實現了一個易用的操作系統平臺, 通過時間片輪轉函數實現任務調度,提供多任務處理機制。 通過調用操作系統抽象層提供的相關API 進行多任務編程,將應用程序作為一個獨立的任務來實現。ZigBee 控制模塊在Z-Stack 的基礎上實現控制任務、接收控制命令和完成控制任務。 其通過串口與計量模塊進行數據通信,配置計量模塊參數,讀取保存計量數據,并檢測計量模塊的工作狀態;通過I2C 接口與EEPROM 和RTC 進行通信, 實現數據的存儲讀取和實時時鐘的讀取與配置; 通過給調光模塊提供PWM(Pulse Width Modulation)信號,實現調光0~10V 控制。
開關模塊。 采用超小型大功率繼電器,實現對負載供電的控制,同時通過提供負載供電電壓信號和電流信號給計量模塊。
計量模塊。 計量模塊電路如圖4 所示,采用電能計量專用芯片RN8209, 通過實時采集電壓信號和電流信號,實現檢測出負載電壓、電流、功率、功率因數及能耗的值;底層控制軟件會對檢測數據進行分析、判斷,獲取燈的狀態。數據精度優于1%,符合大部分場景應用。

圖4 計量模塊電路Figure 4 Metering module circuit
調光模塊。通過CJ431 電壓基準芯片及阻容濾波,把ZigBee 模塊輸出的PWM 信號轉換為0~10V電平信號,同時采用射極跟隨器進行阻抗調整,減小負載對電路輸出的影響。
RTC 采用PCF8563,配合超級電容,實現掉電維持時鐘的功能。
在整機硬件可靠性設計方面, 進行了以下設計:在AC 輸出加阻容吸收電路,減少感性負載對單燈控制器的影響; 在調光輸出加ESD(Electro-Static Discharge)芯片,進行ESD 保護;外置硬件看門狗,防止干擾引起死機;選用工業級芯片;在電路設計時考慮器件降額設計;選用電壓范圍比ZigBee模塊更大的EEPROM 芯片, 防止掉電時對EEPROM 數據的破壞。
單燈控制器程序流程如圖5 所示。 上電后,首先進行相應的初始化操作,接著開啟60s 定時器和3s 定時器,然后進入任務循環處理。 程序每隔60s進行失聯計數加1 操作, 一旦未收到命令超過5min,單燈控制器進入自動運行模式,比對RTC 時鐘和記錄的開關燈與調光時間是否一致。若一致則執行相應的動作, 保證單燈控制器在ZigBee 網絡異常時也能按照事先設置的策略運行。 同時,程序每隔3s 讀取一次負載的電參數, 并和記錄的報警閾值比較,若超過閾值,則進行報警處理。處理命令流程對接收的命令進行處理,包括開關、調光、數據上報、策略設置、參數設置等操作。

圖5 單燈控制器程序流程圖Figure 5 Program flow chart of single lamp controller
3.2.1 ZigBee 組網
ZigBee 組網流程如圖6 所示。一個區域的燈控有許多個ZigBee 網絡組成, 為了區分不同的控制網絡,不同的網絡需要選擇不同PANID 和信道。在選擇的信道上發送信標請求,掃描該信道上的網絡信息,若接收到符合要求的信標,則發送連接請求,等待對方應答,再進行數據請求獲取網絡地址。 在獲取網絡地址后,廣播本身的地址信息,讓處在網絡上的節點知道有新的節點加入。

圖6 ZigBee 組網流程圖Figure 6 ZigBee networking flow chart
3.2.2 命令處理模塊
命令處理模塊程序流程如圖7 所示。首先對接收的命令進行校驗和計算:若校驗和錯誤,則返回命令錯誤;若校驗和正確,則進行命令類型判斷,進行不同的處理,返回處理結果。

圖7 命令處理模塊程序流程圖Figure 7 Program flow chart of command processing module
3.2.3 報警判斷模塊
報警判斷模塊程序流程如圖8 所示, 進行電壓、電流、功率及控制器故障等報警的判斷。把采集的電參數和設置的電參數閾值進行比較,如果連續5 次超過閾值,則設置相應的報警標志,在平臺軟件來查詢時,上報報警信息。

圖8 報警判斷模塊程序流程圖Figure 8 Program flow chart of alarm judgment module
數據存儲的可靠性。 對于EEPROM 數據的存儲,采用一值多單元存儲的方式,在寫入和讀出時從多個單元獲取數據并進行比對,防止或降低讀寫錯誤的產生。
報警機制。 對于報警數據,通過連續多次的判斷,若結果都超過閾值,則生成報警數據。
異常數據處理。 保存異常數據,并在數據召測時,上報異常數據。
設備死機處理。 在設備出現異常死機時,軟件停止清硬件看門狗動作, 硬件看門狗復位設備,設備重啟后讀取EEPROM 數據,恢復復位前狀態。
設備離線(脫網)處理。 設備在離線時,按照設定的策略實現自動開關調光動作,并每隔一定時間嘗試入網,直到重新加入網絡。
關鍵數據處理。 采用定時更新的方式,保存到EEPROM,并做備份。
上傳數據及狀態和下傳命令可靠性。數據及命令采用CRC16 校驗及重發機制,保障可靠傳輸。
如圖9 所示,圓點代表裝配了單燈控制器的路燈,標簽代表集中控制器(集中管理單燈控制器,并與遠程服務器進行數據通信),此時路燈未開。
如圖10 所示, 圓點代表裝配了單燈控制器的路燈,標簽代表集中控制器,此時路燈已開。
如圖11 所示, 灰色圓點代表裝配了單燈控制器的路燈,黑色圓點代表單燈控制器異常或單燈控制器所控制的路燈異常, 標簽代表集中控制器,此時路燈已開。
隨著城市化建設,路燈作為城市基礎設施建設的一部分,對其進行高效管理維護,具有重要意義。目前, 越來越多的地方開始部署路燈控制管理系統。 本文設計的基于ZigBee 通信技術的單燈控制器, 在對路燈開關調光控制及狀態監測的同時,采用多種方法,提高了其可靠性,為路燈控制管理系統的穩定性提供了前端硬件保證。

圖9 非工作時段路燈狀態圖Figure 9 Street lamp state diagram during nonworking hours

圖10 工作時段路燈狀態圖Figure 10 Street lamp state diagram during working hours

圖11 異常情況路燈狀態圖Figure 11 Street lamp state diagram under abnormal conditions