鄧琳星,楊宇苑,嚴祥安*,王晨潔,楊文龍,劉 燦,張設林,吳 軍
(1. 西安工程大學 理學院,陜西 西安 710048;2. 武漢威士訊科技有限公司,湖北 武漢 430000)
多年以來,路燈的發展史映射著人們對光明的探索與追求。隨著我國城鄉規劃建設的飛速發展,普通照明化體系已經無法滿足社會日趨增長的需求[1]。同時傳統路燈也暴露出高耗能、控制維修復雜、安全系數低等問題。相較于傳統路燈系統而言,智能路燈系統在資源利用以及操作維護等方面做了極大程度的優化,現如今在越來越多的場合中得到廣泛的應用。
相比較其他智能路燈實現方案[2],本文設計的系統提出一種通用化底板+核心模塊+擴展模塊的節點實現模式,增加了系統平臺的靈活性及可開發性,為后續升級擴展預留了充足的空間,節約了檢修和維護的時間和成本。
系統采用 ZigBee 技術來實現無線傳感網絡的組網[3],采用 GPRS[4]模塊來實現網絡控制和信號采集。兩種無線通信技術都很成熟,成本低廉而且可靠性高,可以有效節約時間成本。系統設計包含硬件節點模塊和上位機控制軟件兩個部分。
硬件節點模塊由若干個協調器節點和智能路燈終端節點組成。在節點模塊的設計上,本系統摒棄了傳統的單一模塊設計模式,采用通用化底板+核心模塊+擴展模塊的方式來進行硬件開發,雖然結構上復雜了,但模板具有通用性,特別是核心模塊的可拓展研發性高,可根據大數據的更新及信息化需求對核心模塊進行拓展研發,達到提高資源利用率降低成本的目的。
上位機控制軟件同時實現串口通信和 TCP 通信,在無線傳感網內采用串口通信,需要連接到 Internet 時,用 GPRS 模塊進行穿透,實現 TCP 通信。上位機控制軟件通過串口連接協調器,協調器接收從智能路燈傳感器模塊采集的數據,進行信息處理后傳遞給路燈終端進行開關燈控制,命令執行結果返回協調器傳遞給上位機。智能路燈系統通信設計如圖 1 所示。

圖1 系統通信設計圖
通用底板作為節點模塊的組成模塊之一,可以通過 USB 串口連接 PC,主要功能是為系統供電以及提供接口[3]。通用底板設計了兩對管腳定義完全相同的通用接口,用來連接核心模塊和擴展模塊。通用接口提供 5 V/1 A 和 3.3 V/1 A 兩組電源,為核心模塊和擴展模塊供電;定義了通用 I/O、串口、SPI 接口、模擬輸入接口等,方便連接不同類型的擴展模塊。為了適應物聯網[5]終端的移動需求,通用底板上還配備了鋰電池供電和充電保護電路,可以根據應用場合來選擇外部供電或者鋰電池供電。
2.1.1 USB 串口電路

圖2 串口設計原理圖
考慮到現在的計算機大多為 USB 接口,通用底板上采用接口轉換器 PL2303 實現接口轉換,做成 USB 串口。串口設計原理圖如圖 2 所示,它包括 USB 轉串口主芯片 PL2303[6]、USB 接頭、晶體振蕩電路以及由兩個上拉電阻組成的串行器電路。
2.1.2 電源電路
通用底板設置了電源適配器供電、 USB 供電和鋰電池供電三種供電方式,為保護電源和板上器件,進行了相應的隔離和保護處理。Q3 和 D1 被用于在電源適配器和 USB 端口同時接入時防止電壓反串, 6.3 V TVS D8 被用于防止電源適配器接入電壓過高時損壞充電管理[7]芯片,R7、R8 和 Q2 則用來增大充電電流,以達到快速充電的目的。
鋰電池電路由充電電路與升壓電路組成,如圖 3所示。NCP1450A 作為升壓電路的主要部分,將鋰電池提供的 3.7 V 升至 5 V,輸出電流高達 1 A。NCP1450A 芯片有較高的換效率,有利于延長鋰電池續航時間。

圖3 電源電路
鋰電池充電電路采用 TP4056,通過一個外部電阻對充電電流進行調節[8],當充電電流在達到最終浮充電壓之后降至設定值 1/10 時,TP4056 將自動終止充電循環。芯片還具有電池溫度檢測等功能。
為有效保護鋰電池使用壽命,通用底板上還設計了鋰電池保護電路。DWO1A 與 8205A 構成鋰電池保護電路,如圖 4 所示。當電芯電壓在 2.5 V 至 4.3 V 之間時, DW01 的第 1 腳、第 3 腳均輸出高電平(等于供電電壓),第2腳電壓為 0 V。此時 DW01 的第 1 腳、第 3 腳電壓將分別加到8205A 的第 5、4 腳,8205A 內的兩個電子開關因其 G 極接到來自 DW01 的電壓,故均處于導通狀態,即兩個電子開關均處于開狀態。當電池進行充放電時,隨著電芯電壓的變化,DWO1A 與 8205A 間的相應引腳的輸出電壓斷開,引起充放電回路的斷開即可進行充放電及短路保護。

圖4 鋰電池保護電路
ZigBee核心模塊是協調器節點與智能路燈終端節點的重要組成部分,其功能是對板上資源和智能路燈模塊的傳感器數據進行采集和控制[9],并組建無線傳感網絡,實現數據和指令的上傳下達[10]。
CC2530 是 ZigBee 核心模塊的重要組成芯片,集成 8051 內核與 ZigBee 技術,有40個引腳,其中有21個數字I/O端口。 P1_4 口控制智能路燈終端路燈的開關, P0_1 口接收傳感器反饋狀態;RF 口連接差分轉單端的射頻鏈路實現射頻信號的收發,在使用單端天線時單端負載50Ω以達到最佳收發效果。本系統所用到的 2 個 USB 轉串口 USART0 和 USART1,均為串行通信接口且功能相同,能分別運行于異步 UART 模式或同步 SPI 模式,可以配置選擇控制腳,所用到的 I/O 端口有 P0_2, P0_3,P0_5,P0_4,P1_5,P1_7,P1_6。 CC2530 共有 5 個定時/計數器,實現定時或計數功能且在整個工作過程中將 CPU 從相關任務中解放出來,提高了 CPU 效率,在應用中優先選用功能最全的定時器 1。模塊與通用底板通過通用接口進行連接,模塊的原理圖如圖 5 所示。ZigBee 核心模塊利用 CC2530 控制路燈[11],ZigBee 的通訊方式主要有點播、組播、廣播,本系統主要采用組播和點播。協調器接收上位機送出的指令,通過組播方式把指令傳送給路燈終端,路燈終端判斷指令進行對應的打開或關閉操作。終端通過傳感器檢測電壓值即工作狀態信息,并將命令執行結果通過點播方式回饋給協調器,協調器經 GPRS 網絡或串口將信號處理后傳給上位機[12]。上位機可設置一定時間間隔接收信息[13]。如光敏傳感器連接到 ZigBee 模塊上,每隔 1 h 采樣傳感器的電壓值,將數據傳送到上位機。

圖5 ZigBee核心模塊原理圖
智能路燈終端節點在底板模塊與 ZigBee核心模塊的基礎上增加了智能路燈模塊。智能路燈模塊包含一個執行器和一個傳感器,由繼電器控制的高亮 LED 和一個光敏傳感組成[14]。其原理如圖 6所示。圖中 R1、R3、R4 均為定值電阻,R2 是可調電阻;Q1 是 NPN 型三極管,作為開關使用;D1 是 1210 封裝的高亮 LED,是本設計中的執行器——路燈; D2 是光敏電阻,用來檢測路燈 D1 的“亮滅”狀態。當 P1_3 為高電平時,三極管 Q1 導通使繼電器線圈通電,常開節點閉合,路燈 D1 被點亮;反之當 P1_3 為低電平時,路燈 D1 被熄滅。D1 的“亮滅”狀態由光敏電阻 D2 檢測,并通過檢測端P0_1將結果上報給CC2530。在光敏電阻支路中可調電阻 R2 除了限流,還可以調節檢測的靈敏度。當 R2 減小時,電流增大,檢測端的電壓變化就會更加明顯,靈敏度就會提高;反之適當增大 R2,靈敏度就會降低。

圖6 智能路燈模塊原理圖
上位機控制軟件主要用來從協調器獲取路燈工作狀態信息和下達路燈控制指令,可手動控制路燈亮滅,也可以根據實際情況設置自動控制[15]。針對通信協議,有串口通信和 TCP 兩種方式。無論是選擇 “本地串口”還是“TCP 通信”通信方式,配置成功后都可直接進行智能路燈的網絡控制,通信方式只是作為控制數據傳輸通路的選擇。
上位機軟件可以在電腦 Windows 系統和手機移動設備上運行,軟件操作流程如圖 7 所示。上位機軟件可以對接受到的信息進行處理,主要功能如下:
1)實現串口通信和 TCP 通信(本系統主要實現服務器通信)。
2)實現路燈的開關控制。
3)接收終端傳感器返回狀態消息。
4)控制方式:時間區分白天和晚上。白天默認路燈關閉,光敏傳感器應該檢測到有光;晚上光敏傳感器應該檢測到無光,在此狀態下應該打開對應路燈,發送打開路燈的指令。路燈開,對應光敏傳感器檢測到有光。
5)故障處理:如果晚上路燈開的狀態下,對應的光敏傳感器檢測到無光,那么對應路燈狀態應該顯示故障。

圖7 主程序流程圖
系統設計主要完成了基于 ZigBee 技術及 GPRS 網絡的智能路燈控制系統的組建,實現了終端控制和路燈自動檢測工作狀態信息,并通過上位機軟件進行反饋信息的處理與控制。與傳統路燈控制系統相比,本系統更節能,智能化程度高,模板通用性強,具有較好的適應研發性。