黎瓊 溫泉徹 鐵新城
摘? 要: 為提高道路照明系統(tǒng)控制的可靠性、便捷性和靈活性,并達(dá)到節(jié)能降耗的效果,設(shè)計(jì)了一套路燈遠(yuǎn)程監(jiān)控系統(tǒng)。系統(tǒng)包括路燈控制終端和上位機(jī)軟件兩大部分。路燈智能控制終端基于AVR單片微處理器開發(fā),集遠(yuǎn)程手動(dòng)控制、定時(shí)開關(guān)控制和光感自動(dòng)開關(guān)控制于一體,增加了路燈遠(yuǎn)程控制方式的多樣性;采用定時(shí)-光感協(xié)調(diào)控制技術(shù),彌補(bǔ)了獨(dú)立的光感自動(dòng)控制抗干擾(外界光源、遮擋等)能力差的不足。上位機(jī)軟件基于Visual C++ 6.0編程環(huán)境開發(fā),具有控制模式切換、參數(shù)配置、接收信息顯示等功能。采用無線通信方式,減小了布線的難度,縮短了建設(shè)的周期。
關(guān)鍵詞: 路燈; AVR單片機(jī); 遠(yuǎn)程監(jiān)控系統(tǒng); 節(jié)能; 無線通信; 自動(dòng)控制
中圖分類號(hào):TP39? ? ? ? ? 文獻(xiàn)標(biāo)志碼:A? ? 文章編號(hào):1006-8228(2019)02-34-05
Design of street-lamp remote monitoring system with AVR microcontroller and VC++ 6.0
Li Qiong1, Wen Quanche2, Tie Xincheng1
(1. School of Information Engineering, Lingnan Normal University, Zhanjiang, Guangdong 524048, China;
2. School of mathematics and statistics, Lingnan Normal University)
Abstract: In order to improve the reliability, convenience and flexibility of road-lighting system, and save the electrical energy, a street-lamp remote monitoring system is designed in this paper. This system is consisted of a terminal controller and a monitoring program in host computer. The terminal controller is developed by using AVR microcontroller, and remote manual mode, timing mode and light-dependent mode are integrated, which improve the diversity of street-lamp remote controlling. Meanwhile, a coordination control method combined with the timing and light-dependent modes is presented, which overcomes the defects in resistance to interference (irradiated and sheltered conditions, etc.) of traditional light-dependent mode. The monitoring program is developed with Visual C++ 6.0. This program can switch the operating mode, set the parameters and display the receiving data. The wireless communication is adopted and as a result, the work of cabling can be saved and the construction cycle of system can be reduced.
Key words: street-lamp; AVR Microcontroller; remote monitoring system; power-saving wireless communication; automatic control
0 引言
道路照明系統(tǒng)是小區(qū)、學(xué)校、公園等場(chǎng)所的重要組成部分,對(duì)其開關(guān)時(shí)刻進(jìn)行可靠、有效的控制,將有助于人們出行方便和安全,同時(shí)提高能源的有效利用率,實(shí)現(xiàn)節(jié)能照明?,F(xiàn)有的路燈照明大多采用人工手動(dòng)開關(guān)、定時(shí)自動(dòng)開關(guān)或光感自動(dòng)開關(guān)的控制方式[1-4]。手動(dòng)控制方式存在電能浪費(fèi)大、路燈使用壽命短、無法遠(yuǎn)程監(jiān)測(cè)和控制,人工作業(yè)量大等問題;定時(shí)自動(dòng)控制存在無法適應(yīng)季節(jié)變化,或者陰雨天氣對(duì)路燈開關(guān)時(shí)間的動(dòng)態(tài)需求等問題;光感自動(dòng)控制存在抵抗外界光源、遮擋等干擾的能力差等問題。
本文設(shè)計(jì)了一種路燈遠(yuǎn)程監(jiān)控系統(tǒng)。該系統(tǒng)由路燈智能控制終端和主機(jī)軟件兩大部分組成。其中,路燈智能控制終端的主控芯片采用了AVR單片微處理器,集成了遠(yuǎn)程手動(dòng)開關(guān)控制、定時(shí)開關(guān)控制和光感自動(dòng)開關(guān)控制等功能,采用定時(shí)-光感協(xié)調(diào)控制技術(shù),彌補(bǔ)了單純的光感自動(dòng)控制抗干擾能力差的不足,同時(shí)提高了路燈控制的靈活性。主機(jī)軟件與控制終端之間的數(shù)據(jù)交換采用的是無線通信技術(shù),避開了RS485總線通信方式布線難度大[5]、布線要求高,以及電力載波通信中干擾的繁雜性和不確定性等問題[6],縮短了系統(tǒng)的建設(shè)周期,提高了系統(tǒng)的穩(wěn)定性和可靠性,具有更好的適用性。
1 系統(tǒng)構(gòu)成
系統(tǒng)基本組成如圖1所示。主機(jī)軟件通過串口/無線信號(hào)轉(zhuǎn)換器將配置、控制、查詢等指令,以無線通信的方式發(fā)送給路燈控制終端,路燈控制終端在接收到指令信息后將做出相應(yīng)的響應(yīng),在滿足開關(guān)條件或接收到主機(jī)軟件發(fā)送的實(shí)時(shí)開關(guān)指令時(shí),智能控制終端將控制交流接觸器,做出相應(yīng)的開關(guān)動(dòng)作,從而實(shí)現(xiàn)對(duì)路燈的自動(dòng)開關(guān)或遠(yuǎn)程實(shí)時(shí)開關(guān)控制。
2 路燈控制終端的硬件設(shè)計(jì)
2.1 MCU及外圍電路
控制終端的主控制器采用ATMEL公司的AVR單片機(jī),型號(hào)為Atmega8。Atmega8內(nèi)部集成了較大容量的存儲(chǔ)器和豐富的硬件接口電路,并且在軟件上能有效的支持C語言及匯編語言。由于其先進(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,Atmega8可獲得高達(dá)1MIPS/MHz的數(shù)據(jù)吞吐速率[7-9]。其主要特點(diǎn)如下。
⑴ 高性能、低功耗。采用先進(jìn)的RISC指令集結(jié)構(gòu);有130條功能強(qiáng)大的指令,大多數(shù)為單周期指令;內(nèi)有32個(gè)8位通用工作寄存器。
⑵ 大容量的片內(nèi)存儲(chǔ)器,編程方便。8K字節(jié)的Flash和512個(gè)字節(jié)的EEPROM;支持在線編程ISP和在應(yīng)用編程IAP。
⑶ 豐富強(qiáng)大的片內(nèi)外設(shè)。兩個(gè)具有獨(dú)立預(yù)分頻器的8位定時(shí)器/計(jì)數(shù)器,其中一個(gè)具有比較功能;另一個(gè)具有預(yù)分頻器、比較功能和捕獲功能的16位定時(shí)器/計(jì)數(shù)器;3通道PWM;多路通道10/8位A/D轉(zhuǎn)換;面向字節(jié)的兩線接口;可編程的串行USART;可工作于主機(jī)從模式的SPI接口;具有獨(dú)立片內(nèi)振蕩器的可編程看門狗定時(shí)器;片內(nèi)模擬比較器。
⑷ 特殊的微控制器性能。上電復(fù)位以及可編程的掉電檢測(cè);片內(nèi)經(jīng)過標(biāo)定的RC振蕩器;5種休眠模式(空閑、ADC噪聲抑制、省電、掉電和Standby模式)。
Atmega8單片機(jī)的上述技術(shù)特點(diǎn),使其能很好地滿足路燈控制終端的設(shè)計(jì)要求。
2.2 無線數(shù)據(jù)收發(fā)模塊
控制終端和主機(jī)軟件之間的無線通信采用SM43型低功率ISM(Industrial Scientific Medical)波段無線通信模塊。其主要特點(diǎn)如下:
⑴ 低發(fā)射功率。發(fā)射功率僅為150mW。
⑵ 符合ISM頻段通信標(biāo)準(zhǔn),無需申請(qǐng)頻點(diǎn)。載頻頻率在300-365MHz,400-480MHz,800-960,2400-
2500MHz范圍內(nèi)可選。
⑶ 多信道,多速率。提供多個(gè)通信信道,有1200、2400、4800、9600、19200Bit/s等11種通信速率可選。
⑷ 傳輸距離遠(yuǎn)。天線高度大于1.5米,增益為3dBi的情況下,傳輸距離可達(dá)1500m。
⑸ 高抗干擾能力和低誤碼率。GFSK調(diào)制方式,采用高效前向糾錯(cuò)信道編碼技術(shù),提高了數(shù)據(jù)抗突發(fā)干擾和隨機(jī)干擾的能力,在信道誤碼率為10-3時(shí),可得到10-5~10-6的實(shí)際誤碼率。
因此,該型無線通信模塊已被廣泛應(yīng)用于工業(yè)遙控、無線數(shù)據(jù)采集和傳輸、政府路燈節(jié)能設(shè)備、智能家居、樓宇自動(dòng)化等方面,滿足路燈控制終端的設(shè)計(jì)要求。
2.3 光感模塊設(shè)計(jì)
光敏元件采用光敏電阻器。光敏電阻是利用半導(dǎo)體的光電效應(yīng)制成的一種電阻值隨入射光的強(qiáng)弱而改變的電阻器。光敏電阻器的阻值隨入射光線(可見光)的強(qiáng)弱變化而變化,在黑暗條件下,它的阻值(暗阻)可達(dá)1-10M歐,在強(qiáng)光條件(100LX)下,阻值(亮阻)僅有幾百至數(shù)千歐姆。光敏電阻器對(duì)光的敏感性(即光譜特性)與人眼對(duì)可見光的響應(yīng)很接近,只要人眼可感受的光,都會(huì)引起它的阻值變化。
利用Atmega8提供的10位逐次比較的ADC實(shí)時(shí)采集光敏電阻的阻值變化,以此判斷環(huán)境亮度的變化情況。光控電路如圖2所示。
在圖2中,由于10K電阻和光敏電阻RG1串聯(lián)分壓,可得PC0端的電壓VPC0:
則轉(zhuǎn)換后的數(shù)字量為:
其中,VPC0表示選定的輸入引腳上的電壓,VAREF表示選定的參考電源的電壓(本設(shè)計(jì)選為VCC)。
2.4 繼電器驅(qū)動(dòng)電路
采用固態(tài)繼電器來控制交流接觸器的開通與判斷,從而實(shí)現(xiàn)對(duì)路燈的遠(yuǎn)程開關(guān)控制。繼電器型號(hào)為SSR-S203ZA[10],該型繼電器需要大于5mA的驅(qū)動(dòng)電流。因此,為了提供充足的驅(qū)動(dòng)力,保證繼電器的可靠工作,采用三極管驅(qū)動(dòng)方式,如圖3所示。當(dāng)PB0引腳輸出高電平時(shí),繼電器輸出端閉合,從而控制交流接觸器主觸點(diǎn)閉合為路燈送電;反之,則斷開路燈的工作電源。
2.5 時(shí)鐘芯片電路
定時(shí)芯片為DS1302,它是美國(guó)DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,可以對(duì)年、月、日、周日、時(shí)、分和秒進(jìn)行計(jì)時(shí),并具有閏年補(bǔ)償功能,工作電壓為2.5V~5.5V。DS1302與單片機(jī)之間能簡(jiǎn)單地采用同步串行的方式進(jìn)行通信,僅需用到RST(復(fù)位)、I/O(數(shù)據(jù)線)和SCLK(串行時(shí)鐘)三個(gè)引腳[11-12],分別連接到Atmega8的PD7、PD6和PD6引腳。DS1302的引腳和連接方法如圖4所示。X1和X2是振蕩源,必須外接32.768kHz晶振。VCC1為后備電源,VCC2為主電源,當(dāng)VCC2大于VCC1+0.2V時(shí),VCC2給DS1302供電;當(dāng)VCC2小于VCC1時(shí),DS1302由VCC1供電。因此,將VCC2連接系統(tǒng)的+5V供電電源,VCC1接3.3V鋰電池,這樣能夠保證芯片不間斷計(jì)時(shí)。
3 路燈控制終端的軟件設(shè)計(jì)
3.1 主程序架構(gòu)
定時(shí)-光感協(xié)調(diào)控制模式下的主程序流程如圖5所示。
圖5中,開燈時(shí)間段1的值可設(shè)定為冬季的天黑時(shí)刻;開燈時(shí)間段2的值可設(shè)定為夏季的天黑時(shí)刻;關(guān)燈時(shí)間段1的值可設(shè)定為夏季的天黑時(shí)刻;關(guān)燈時(shí)間段2的值可設(shè)定為冬季的天黑時(shí)刻。下面舉例說明這樣設(shè)置的好處(假設(shè)開燈時(shí)間1和2分別設(shè)為17:30和19:00,關(guān)燈時(shí)間1和2分別設(shè)為5:30和7:00)。
情況1:假設(shè)自17:00起,光敏探頭被長(zhǎng)時(shí)遮擋,此時(shí)雖然根據(jù)亮度值判斷已滿足開燈條件,但是由于時(shí)間未到開燈時(shí)間1,系統(tǒng)將不會(huì)做出開燈動(dòng)作,直到17:30。
情況2:假設(shè)自17:00起,光敏探頭被外界光源長(zhǎng)時(shí)照射,直到19:00,此時(shí)雖然根據(jù)亮度值判斷不滿足開燈條件,但是由于時(shí)間已到開燈時(shí)間2,系統(tǒng)將做出開燈動(dòng)作。
從上述案例的分析可知,定時(shí)-光感協(xié)調(diào)控制模式可以有效的防止外界強(qiáng)光源、遮擋等干擾條件下系統(tǒng)的誤動(dòng)作,保證系統(tǒng)的可靠工作。對(duì)于關(guān)燈控制的分析不再贅述。
3.2 MCU的端口及串口初始化
Atmega8有23個(gè)I/O引腳,分成3個(gè)8位的端口B、C和D,其中C口只有7位。I/O端口作為通用數(shù)字輸入/輸出口使用時(shí),都具備真正的讀-修改-寫特性[7]。Atmega8采用方向寄存器DDRx、數(shù)據(jù)寄存器PORTx和輸入引腳寄存器PINx(x為B、C或D,分別代表B口、C口或D口)3個(gè)8位寄存器來控制I/O端口。DDRx的每一位用于控制一個(gè)I/O引腳的輸入輸出方向。當(dāng)DDRx.n=1時(shí),I/O的Pxn引腳處于輸出模式。此時(shí),如果PORTx.n=1,I/O引腳將呈高電平,可提供20mA的輸出電流;當(dāng)PORTx.n=0時(shí),I/O引腳呈低電平,可吸收20mA的輸入電流。當(dāng)DDRx.n=0時(shí),I/O的Pxn引腳處于輸入模式。此時(shí)引腳寄存器PINx.n中的數(shù)據(jù)就是外部引腳的實(shí)際電平。此時(shí)可以通過PORTx.n的設(shè)置來控制內(nèi)部的上拉電阻的使用與否。本文的Atmega8引腳初始化函數(shù)如下:
void port_init (void)
{ PORTB=0x00;
DDRB=0x01;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0xE0;
}
Atmega8帶有一個(gè)全雙工通用同步/異步串行收發(fā)模塊USART,其可以分為三部分:時(shí)鐘發(fā)生器、數(shù)據(jù)發(fā)送器和接收器。USART涉及到寄存器有:
USART控制和狀態(tài)寄存器A:UCSRA
USART控制和狀態(tài)寄存器B:UCSRB
USART控制和狀態(tài)寄存器C:UCSRC
波特率寄存器:UBRRL和UBRRH
本文中,串口的配置參數(shù)為:波特率9600 bit/s,8位數(shù)據(jù)位,1位停止位。程序代碼如下:
void uart0_init(void)
{ UCSRB=0x00;
UCSRA=0x00;
UCSRC=BIT(URSEL) | 0x06;
UBRRL=0x2F;? //設(shè)置波特率為9600
UBRRH=0x00;
UCSRB=0x98;
}
3.3 無線通信程序設(shè)計(jì)
DS1302控制字節(jié)的最高有效位(位7)必須是邏輯1才能寫入數(shù)據(jù);位6為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫操作,若為1表示進(jìn)行讀操作[11]。讀寫流程如圖6所示。
4 上位機(jī)軟件設(shè)計(jì)
上位機(jī)軟件基于Visual C++ 6.0編程環(huán)境開發(fā)[13-15]。通過上位機(jī)軟件,監(jiān)控中心可以發(fā)送配置、查詢、控制等指令給路燈控制終端,并接收控制終端返回的數(shù)據(jù)信息;根據(jù)采集到的數(shù)據(jù)信息,分析路燈的實(shí)時(shí)工作狀態(tài)、配置情況等,并以良好的界面將接收到的重要參數(shù)顯示出來,并存入數(shù)據(jù)庫中,便于查詢和管理。上位機(jī)軟件界面如圖7所示。在軟件界面中,可以完成串口的參數(shù)配置,路燈控制模式(手動(dòng)、定時(shí)、光控和定時(shí)/光控混合控制四種模式)的選擇和相關(guān)參數(shù)的配置(開關(guān)時(shí)間、開燈亮度值、關(guān)燈亮度值等),路燈控制終端時(shí)鐘芯片的校時(shí),路燈實(shí)時(shí)狀態(tài)的查詢等功能;同時(shí)提供了接收信息代碼的顯示功能,便于系統(tǒng)的調(diào)試。
下面以定時(shí)控制為例,簡(jiǎn)要介紹上位機(jī)軟件的操作方法:在路燈編號(hào)下拉框中選擇或填入正確的路燈控制器編號(hào)(以08為例),選中“定時(shí)”,如圖7,如果信息接收框中接收到信息,且BE位后的第1-4位依次為“08 83 01 01”(FE為前導(dǎo)碼,BE為起始碼,ED為結(jié)束碼,最后一個(gè)字節(jié)為和校驗(yàn)碼),則表示通訊成功,此時(shí)路燈控制器即被設(shè)置為定時(shí)控制狀態(tài);繼續(xù)在定時(shí)開關(guān)時(shí)刻編輯框中輸入相應(yīng)的時(shí)間值,并選擇相應(yīng)的星期值(0-6分別代表星期日-星期六,如果選擇9則表示每天都采用相同的時(shí)間配置)如圖8,點(diǎn)擊“設(shè)定”,如果信息接收框中接收到信息,且BE位后的第1-4位依次為“08 83 01 01”,則表示參數(shù)設(shè)置成功。
5 結(jié)束語
本文針對(duì)現(xiàn)有路燈控制系統(tǒng)存在的不足,設(shè)計(jì)了一種路燈遠(yuǎn)程監(jiān)控系統(tǒng)?;贏VR單片機(jī)開發(fā)了控制終端,該終端集遠(yuǎn)程手動(dòng)開關(guān)控制、定時(shí)開關(guān)控制和光感自動(dòng)開關(guān)控制功能于一體,并采用定時(shí)-光感協(xié)調(diào)控制技術(shù),彌補(bǔ)了單純的光感自動(dòng)控制抗干擾能力差的不足?;赩isual C++ 6.0編程環(huán)境開發(fā)了上位機(jī)監(jiān)控軟件。監(jiān)控軟件中可以完成路燈控制模式(手動(dòng)、定時(shí)、光控和定時(shí)/光控混合控制四種模式)的選擇和相關(guān)參數(shù)的配置(開關(guān)時(shí)間、開燈亮度值、關(guān)燈亮度值等),路燈控制終端時(shí)鐘芯片的校時(shí),路燈實(shí)時(shí)狀態(tài)的查詢等功能;同時(shí)提供了接收信息代碼的顯示功能,便于系統(tǒng)的調(diào)試。
參考文獻(xiàn)(References):
[1] 崔佳民,秦會(huì)斌,羅友.無線路燈控制系統(tǒng)的研究[J].電子與封裝,2007.7(12):42-45
[2] 郭瓊,蔡亞輝,姚曉寧.基于Zigbee的路燈控制系統(tǒng)設(shè)計(jì)[J].照明工程學(xué)報(bào),2012.23(2):86-90
[3] 黎洪生,劉蘇敏,胡冰等.基于無線通信網(wǎng)絡(luò)的智能路燈節(jié)能系統(tǒng)[J].計(jì)算機(jī)工程,2009.35(14):190-191,214
[4] 萬飛.基于FPGA的路燈控制系統(tǒng)[J].照明工程學(xué)報(bào),2012.23(5):121-127
[5] 聶可富.基于RS-485總線的抄表系統(tǒng)設(shè)計(jì)[D].南京航空航天大學(xué),2011.
[6] 張?jiān)氏?基于載波通訊的智能路燈控制系統(tǒng)研究[D].哈爾濱工業(yè)大學(xué),2008.
[7] 馬潮等.ATmega8原理及應(yīng)用手冊(cè)[M].清華大學(xué)出版社,2003.
[8] 張文泉,彭建怡,張志璐等.基于AVR單片機(jī)的檢測(cè)設(shè)備通訊系統(tǒng)設(shè)計(jì)[J].計(jì)算技術(shù)與自動(dòng)化,2013.32(2):76-80
[9] www.atmel.com. Atmel's ATmega8 Datasheet.
[10] http://www.lt-dz.com/erji/s203za.htm.A外型固態(tài)繼電器.
[11] www.alldatasheet.com. DS1302 Datasheet.
[12] 張寧丹,金桂.基于STC89C52單片機(jī)DS1302時(shí)鐘芯片定時(shí)開關(guān)的設(shè)計(jì)與仿真[J].現(xiàn)代電子技術(shù),2013.36(8):4-6
[13] 黃金明.Visual C++ 6.0 基礎(chǔ)與實(shí)例教程[M].中國(guó)電力出版社,2007.