(揚州大學 機械工程學院,江蘇 揚州 225127)
隨著城市的發(fā)展,各種通信、供電、供水、供氣網(wǎng)路越來越復雜,為了便于管理,節(jié)約地上空間,這些網(wǎng)路一般都布置在地下綜合管廊中,那么井蓋產(chǎn)生的安全隱患如井蓋被盜、通過井蓋入口盜取管廊內(nèi)的電線電纜等等,所以地下綜合管廊的井蓋安全就顯得極其重要。李志、徐文青等分別提出了基于Zigbee無線網(wǎng)絡的智能安全井蓋監(jiān)控系統(tǒng),實現(xiàn)了對井蓋的實時監(jiān)測、精確定位、自動報警[1-2]。王悅提出了基于綜合信息的一次編碼,對井蓋的位置及類型信息進行規(guī)整,基于百度地圖對井蓋位置狀態(tài)監(jiān)測,實現(xiàn)井蓋與地圖的匹配、井蓋移動軌跡顯示及移動范圍設定,實現(xiàn)越界報警[3]。還有采用 Microsoft Silverlight 和 GIS 技術相結合,Rational統(tǒng)一過程(RUP)為軟件開發(fā)方法[4-5],無線檢測等方法對井蓋實行檢測、報警[6-8]。本文對井蓋報警系統(tǒng)采用nRF24L01[9]無線通信和RS-485[10]通信方式,通過發(fā)送授權碼打開從機井蓋,并通過單片機實時檢測從機井蓋的行程開關信號,達到對井蓋的檢測、報警和打開的功能。
整個井蓋檢測報警系統(tǒng)包括置于中心控制室的主機控制盒、安裝在井蓋上的從機控制盒以及無線遙控器。系統(tǒng)工作過程如下:當需要打開井蓋時,主機控制盒(如圖1)通過nRF24L01無線模塊或RS-485將6位從機地址編號和2位動態(tài)密碼發(fā)送給從機控制盒(如圖2),nRF24L01無線通信和RS-485通信方式傳輸距離分別可達到1 km和 1.2 km,而城市井蓋間的距離大約50 m,從而可以保證通信的安全高效穩(wěn)定,從機控制盒接收動態(tài)密碼,并在從機數(shù)碼管的后兩位顯示;工作人員在無線遙控器上設定從機控制盒上的8位授權碼,并發(fā)送給從機控制盒;從機控制盒接收無線遙控器(如圖3)發(fā)來的信號,并通過STC89C58RD+單片機程序控制打開井蓋上的電磁鐵,最后工作人員便可安全打開井蓋;此時,井蓋屬于正常打開,從機控制盒將地址編號通過nRF24L01無線模塊或RS-485反饋給主機控制盒,這時主機控制盒上會顯示被打開的井蓋的地址編號,并亮綠燈。當井蓋被非法途徑被打開時,會觸發(fā)井蓋上的行程開關,從機控制盒會立即產(chǎn)生報警信號并將該從機地址編號通過前一編號的從機反饋給主機控制盒,主機控制盒上會顯示被非法打開井蓋的地址編號,亮紅燈并觸發(fā)蜂鳴器報警。整個系統(tǒng)最主要的是通信,正常授權、反饋以及報警檢測都是通過nRF24L01無線模塊和RS-485雙回路完成井蓋之間,井蓋與主機之間的通信。
圖1 主機控制盒 圖2 從機控制盒
圖3 遙控器
圖4 控制系統(tǒng)主要硬件電路圖
另外,系統(tǒng)還采用短信報警檢測功能。每個從機都裝有短信模塊,可以接收并發(fā)送短信,工作人員可以通過指定手機向從機發(fā)送從機編號便可打開該編號井蓋;當從機井蓋被非法打開時,該從機上的短信模塊會發(fā)送報警短信給指定手機,手機短信模塊功能的使用方便了工作人員隨時接收從機井蓋報警狀態(tài)并采取相應措施。
圖4為地下綜合管廊井蓋檢測報警系統(tǒng)主要硬件電路圖。
主控芯片是STC89C58RD+單片機,該款單片機具有內(nèi)存容量大、超強抗干擾、高速、低功耗等優(yōu)點,其指令代碼與傳統(tǒng)的8051單片機完全兼容,但速度是8051單片機的8~12倍,能夠實時接收主機、從機或者遙控器發(fā)出的信號,超強抗干擾能力和大容量內(nèi)存可保證系統(tǒng)持續(xù)長時間工作。數(shù)碼管配合ULN2003驅動模塊和三極管電路完成顯示工作,其中引腳接三極管電路的S4-2,由三極管電路控制。無線通信電路和有線通信電路是通過各自的nRF24L01無線模塊和RS-485實現(xiàn)從機與主機以及從機之間的通信,能提高系統(tǒng)的穩(wěn)定性。遙控器內(nèi)部配有nRF24L01無線模塊實現(xiàn)遙控器與從機的通信,經(jīng)測試,該模塊通信響應速度快,傳輸速率可達8 Mbps,穩(wěn)定可靠,而且此模塊發(fā)射模式下發(fā)射功率為0 dBm 時電流消耗為11.3 mA ,接收模式時為12.3 mA,掉電模式和待機模式下電流消耗更低,具有低功耗的優(yōu)點,降低了本系統(tǒng)的主要功耗。報警狀態(tài)響應的外部特征之一就是發(fā)出報警聲音,由此設計了三極管蜂鳴器電路。若使用單片機內(nèi)部晶振,可能會導致時序的不穩(wěn)定,因此設計的外部晶振電路,保證了在主機、從機和遙控器之間通信時有一個穩(wěn)定的波特率,提高整個系統(tǒng)通信的穩(wěn)定性。
2.2.1 無線通信模塊
此系統(tǒng)的無線通信硬件選擇了nRF24L01模塊,用于從機向主機發(fā)送報警信號、主機向從機發(fā)送授權碼以及遙控器向從機發(fā)送的動態(tài)密碼,該模塊是用ISM頻段接收發(fā)送信號的通信芯片,工作頻率為2.4~2.5 GHz,通用性高,適合大多數(shù)控制系統(tǒng)的信號接收發(fā)送無線通信方式。nRF24L01通信模塊的無線接收方式是通過SPI接口進行調(diào)試設置的,設置內(nèi)容包括:信號功率放大器、頻率發(fā)生器、調(diào)制調(diào)節(jié)器、晶體放大器、信號控制器、輸出功率和工作頻道的選擇以及相應的工作協(xié)議。在使用過程中,nRF24L01無線通信模塊的工作電流極低,當工作模式為發(fā)射時,模塊的發(fā)射功率為-6 dBm,相應的工作電流為11 mA;當工作模式為接收時,工作電流為12.5 mA;當無線模塊既不發(fā)送也不接收,處于掉電模式時或待機模式時的工作電流更低,僅為900 nA;極低的工作電流保證了nRF24L01無線通信模塊可以在長時間工作環(huán)境中正常工作。當無線通信模塊nRF24L01在通過SPI接口工作時,工作節(jié)點可以通過自動組網(wǎng)的方式與主控制芯片進行無線數(shù)據(jù)的接收和發(fā)送。
2.2.2 數(shù)碼管顯示
本控制系統(tǒng)主機和從機的顯示部分采用數(shù)碼管顯示,主機和從機系統(tǒng)的數(shù)碼管顯示包括數(shù)碼管、數(shù)碼管驅動芯片ULN2003、PNP三極管以及阻值為300 Ω和5 KΩ的電阻。數(shù)碼管顯示需要段碼和位碼組合控制要顯示的內(nèi)容,主控制芯片單片機P0位用于輸出段碼信號,單片機的P2位用于輸出位碼信號。段碼表示的是數(shù)碼管8位中哪一段顯示高亮,例如數(shù)碼管顯示的1,2,3等;位碼控制的是哪一個數(shù)碼管顯示(本系統(tǒng)有8個數(shù)碼管顯示)。本系統(tǒng)從機數(shù)碼管設定的工作方式分為兩種,前6個數(shù)碼管顯示的編號表示將要對某一井蓋控制的井蓋編號,最后2個數(shù)碼管顯示的內(nèi)容是打開此從機需要的動態(tài)密碼,及授權碼。
2.2.3 電源模塊
圖6 系統(tǒng)程序流程圖
本系統(tǒng)電源設計要滿足主控制芯片單片機和無線通信模塊nRF24L01的供電需求,其中主控制芯片所需工作電壓為5 V,無線通信模塊nRF24L01不同于一般的元器件,需要的工作電壓為3.3 V,其他元器件所需電壓均為5 V。主機和從機控制電路板都有無線通信模塊,電路板的輸入電源由穩(wěn)壓電源提供,電壓為24 V,原始24 V電源通過電壓轉換模塊將為5 V電壓電源,為控制芯片供電,另外將一路5 V電源通過電壓轉換模塊DC-DC降為3.3 V電源給給無線通信模塊供電。同樣,遙控器控制電路板也有無線通信模塊,電源部分的設計和主機從機控制電路板相同,將24 V電源降為5 V和3.3 V為主控制芯片和無線通信模塊供電。
圖5是井蓋檢測報警系統(tǒng)主機和從機流程圖。
如圖5(a)所示主機的工作流程,主機在中心控制室一直處于接收模式,即檢測狀態(tài),檢測從機井蓋是否被非法破壞,在整個系統(tǒng)中大部分時間都處于這種檢測狀態(tài),由于是有線和無線雙回路通信方式,檢測功能非常穩(wěn)定,并且由于模塊的特性,檢測時功耗極低,節(jié)能環(huán)保。主機另一個重要功能即主動發(fā)送授權碼給從機,從而可以合法打開井蓋。在程序中設計這一中斷,程序從檢測狀態(tài)到主動發(fā)送授權碼命令再回到檢測狀態(tài),程序條理清晰,可以及時準確響應這一中斷并返回檢測狀態(tài)。
如圖5(b)所示從機的工作流程,和主機一樣從機處于檢測狀態(tài),即檢測井蓋上行程開關信號。從機工作流程與主機是相輔相成,配合使用的,通信系統(tǒng)即是二者聯(lián)系的重要橋梁。不同于主機的是從機配有短信模塊,這使得從機在此模塊工作狀態(tài)下通信數(shù)據(jù)只有單方向通信,例如使用手機短信控制正常打開井蓋時,從機接收到的信號并不是主機傳送的,而是短信信號,但將狀態(tài)反饋給主機仍是通過雙通信方式。
圖5 程序流程圖
整個系統(tǒng)的流程如圖6所示,如上述,主機和從機處于檢測狀態(tài),即本系統(tǒng)檢測報警功能之一,主機和從機的工作過程相輔相成,二者不能分離,是一個整體,為對方服務。由此組成的系統(tǒng)最重要的是各部分之間的通信,雙回路通信配合短信通信使得系統(tǒng)檢測和報警功能穩(wěn)定、快速以及準確。
下面著重介紹該系統(tǒng)軟件設計中中斷函數(shù)程序設計和主機軟件程序中nRF24L01無線通信的軟件程序設計。
主機和從機系統(tǒng)的中斷函數(shù)程序設計,主控制芯片單片機定時器0中斷服務于8個數(shù)碼管的顯示,設計50 ms中斷一次并刷新數(shù)碼管,保證了數(shù)碼管持續(xù)高亮,通過人眼感受不到數(shù)碼管亮度的跳動。編寫該中斷程序時,定時器0每次循環(huán)需要重裝初值,采用的晶振頻率為11.059 2 MHz,代碼為TH0=0xFC;TL0=0x02;中斷程序過后即調(diào)用數(shù)碼管顯示子程序,顯示數(shù)碼管內(nèi)容。主控制芯片的外部中斷0服務于數(shù)碼管的按鍵調(diào)節(jié),當按下數(shù)碼管換位鍵時,第一位數(shù)碼管數(shù)字開始跳動,準備更改此位數(shù)碼管的內(nèi)容,當再次按下數(shù)碼管換位鍵時,第二位數(shù)碼管數(shù)字開始跳動,其他位數(shù)碼管保持高亮狀態(tài),第二位數(shù)碼管內(nèi)容準備更改,以此類推可以確定某位數(shù)碼管內(nèi)容需要被更改,程序代碼調(diào)用函數(shù)為void Int0ISR(void) interrupt 0。主控制芯片外部中斷1服務于數(shù)碼管增加減少按鍵的調(diào)節(jié),當確認到第一位數(shù)碼管內(nèi)容需要被更改時,按下數(shù)碼管增加鍵或者減少鍵該位數(shù)碼管的數(shù)字相應的增加或者減少,數(shù)字變化的范圍為0-9,無限循環(huán),程序代碼調(diào)用函數(shù)為void Int1ISR(void) interrupt 2。數(shù)碼管換位鍵和數(shù)碼管增加減少鍵配合工作就可以設定數(shù)碼管內(nèi)容,及從機編號和動態(tài)密碼等,其中斷是通過單片機的外部中斷0和外部中斷1實現(xiàn)的。
主機程序中無線通信nRF24L01模塊子程序的設計需要滿足其特定的條件,無線通信模塊nRF24L01的工作模式靈活多樣,配置寄存器的改變會影響到無線通信模塊的工作模式,另外某些引腳和FIFO緩沖器的狀態(tài)也會影響其工作模式。但是當FIFO緩沖器不論出于何種狀態(tài)時,PWR_UP和PRIM_RX寄存器值為1且CE引腳狀態(tài)為高電平時,無線通信模塊nRF24L01的射頻收發(fā)芯片處于接收模式,時刻接收周圍的無線信號,接收狀態(tài)也是無線通信模塊最主要的工作模式。在發(fā)送模式下,根據(jù)主機系統(tǒng)的需求,通過無線通信模塊nRF24L01將8位授權碼發(fā)送給從機,8位授權碼中前六位是從機編號,表示的是目標地址,后兩位是動態(tài)密碼。在程序中將0Xcc作為發(fā)送的幀頭,加上目標地址以及動態(tài)密碼存入發(fā)送緩沖區(qū)Tx_Buf,再將指令發(fā)送到從機的接收緩沖區(qū)Rx_Buf。
為了驗證所設計的井蓋檢測報警系統(tǒng)的性能,進行了如下試驗:準備一個主機和三個從機,模擬實際情況將它們分隔10 m布置,接線并通電,按上述原理及工作流程,測試主機發(fā)送授權碼功能,從機隨即響應,遙控器發(fā)送動態(tài)密碼,行程開關(即井蓋)正常打開,更換從機產(chǎn)生對比,動態(tài)密碼隨機更改,試驗時每臺從機動態(tài)密碼為27,35,68,每臺從機試驗次數(shù)為10次,記錄每次結果,成功率為100%;同理,測試通過手機短信打開從機行程開關以及測試從機被非法打開,進行相應試驗并記錄,成功率均為100%。
除了測試系統(tǒng)的可行性,還對無線通信系統(tǒng)進行了通信距離實驗,將無線通訊模塊nRF24L01在空曠操場進行等距離布置,通過實驗數(shù)據(jù)可得到無線通訊模塊最遠可接受信號距離為70 m;將無線通訊模塊nRF24L01布置在建筑物之間時,建筑物的阻礙使得無線通訊模塊接收距離明顯縮短,此時最優(yōu)的接收距離為20 m。具體實驗數(shù)據(jù)如表1所示。
表1 nRF24L01在不同距離下通信的丟包情況
由實驗結果可知該系統(tǒng)在特定距離下通信時速度快并且非常穩(wěn)定,在雙回路通信并配合短信通信方式下,系統(tǒng)的檢測、報警及反饋功能可以可靠的實現(xiàn),可以有效的對城市地下綜合管廊井蓋進行監(jiān)控,從而保證了城市地下管廊的安全,保護了人民的生命財產(chǎn)安全。但是也存在著不足,RS485通信雖然傳輸距離遠,速度快,但其通信需要線路支撐,線路的連接使整個系統(tǒng)復雜化,存在較多隱患,之后的改進中在保證檢測報警功能的前提下逐步淘汰有線通信方式,完全使用無線通信,主要從系統(tǒng)方案和程序中優(yōu)化,使檢測報警系統(tǒng)更加智能化,現(xiàn)代化。
由于系統(tǒng)設計還不夠全面,本系統(tǒng)只實現(xiàn)了通訊的基本功能,外部環(huán)境對系統(tǒng)的影響還很大,需要不斷完善系統(tǒng)的穩(wěn)定性和抗干擾性,例如在實際情況中,需要研究道路井蓋被汽車碾壓振動對從機的影響。此系統(tǒng)在工作時需要專業(yè)人員看護,浪費了人工,在以后的改進中需要添加手機APP控制,簡化操作;另外還需結合實際情況,研究道路井蓋被汽車碾壓振動對從機的影響。