劉智旸 陳華麗
摘 要:針對目前高校教室照明日光燈不合理使用而造成的電力資源浪費問題,提出了由MSP430單片機、光頻轉(zhuǎn)換器和人體感應(yīng)傳感器組成的節(jié)能控制系統(tǒng),通過合理安排時間以及綜合處理人體和光強信號,來實現(xiàn)燈光的智能開、關(guān),從而達到節(jié)能的智能化;通過C#編寫的窗口程序和MSP430單片機的結(jié)合,將下位機上傳的數(shù)據(jù)在上位機進行可視的實時監(jiān)控。
關(guān)鍵詞:C#;可視化控制;單片機
中圖分類號:TP273 文獻標(biāo)識號:A 文章編號:2095-2163(2014)02-
Intelligent and Visualization Design of University Classroom
Lighting Energy-saving Control System
LIU Zhiyang CHEN Huali
(College of Information Science and Engineering, Wuhan University of Science and Technology, Wuhan Hubei 430081, China)
Abstract: To solve the energy waste problem caused by the long time lighting in university classrooms,the energy-saving control system is proposed that composed of MSP430 single chip microcomputer, light-to-frequency converter and infrared sensor. Through making reasonable arrangements of time, processing physiology signal and light intensity comprehensively, the system saves significant energy and works intelligently. Combined c# application program with MSP430,PC can supervise data visually from lower computer in real time.
Keywords: C#; Virtual Control; MCU
0 引 言
中國可持續(xù)發(fā)展的關(guān)鍵在于資源的有效利用,節(jié)約能源則需要從生活的方方面面做起。以高校教室為例,由于教室日關(guān)燈的管理未盡實用科學(xué),造成大量電力資源的無端耗費。目前各高校的教室燈光還停留在人工控制狀態(tài),但由于教室數(shù)量多,每個教室的使用功能也各有不同,使得管理員無法對每個教室做到實時控制,經(jīng)常出現(xiàn)教室亮燈卻無人,光線充足也亮燈的現(xiàn)象,造成不必要的電力資源浪費。以作者所在學(xué)的教學(xué)區(qū)為例進行計算,大約有30 000盞燈,每盞燈36W,按每天亮燈(從早晨8點到晚上9點正常運行)13個小時計算,扣除一年三個月的假期,每年教室照明的耗電量大約為389.08萬度,依照現(xiàn)行電價0.573元/度,學(xué)校在教學(xué)樓耗電上要支出約222.94萬元。若按每天只浪費用電2小時,則憑空流失的就有61.24萬度電,也就是要多支出34.3萬元。若全國高校均如此計算那將是難以估量的巨大電力資源浪費。為了解決這種情況,設(shè)計出高校教室照明節(jié)能控制系統(tǒng),使教室日關(guān)燈能夠按教室使用模式亮燈,并且能通過上位機實時反映各個教室的亮燈情況,進而實現(xiàn)照明控制的智能化和可視化。
1 系統(tǒng)整體設(shè)計
系統(tǒng)采用由上/下位機組成的主從式結(jié)構(gòu),對教室進行分區(qū)域控制[1]。主機通過網(wǎng)絡(luò)控制各個教室之內(nèi)的下位機,并對不同區(qū)域安裝光頻轉(zhuǎn)換器和人體感應(yīng)傳感器,分別測量教室內(nèi)的光強和人員分布情況,控制教室內(nèi)不同區(qū)域的燈光開關(guān),從而實現(xiàn)節(jié)能的智能化。
各個教室中的下位機以時間作為啟動和關(guān)閉系統(tǒng)的依據(jù),而以光強及人體信號作為系統(tǒng)啟動后開關(guān)燈的判斷標(biāo)準(zhǔn)。在工作時間內(nèi),如有模式信號輸入,則系統(tǒng)進入相應(yīng)的模式;若沒有信號輸入,則進入自習(xí)模式。倘若不在工作時間,如有手動信號輸入,則根據(jù)手動任務(wù)的設(shè)定實現(xiàn)運行;若無,則關(guān)閉所有的照明燈。
系統(tǒng)預(yù)置有不同的工作模式,可分為兩種:講課模式和自習(xí)模式,供用戶根據(jù)需要自行選擇使用,且各模式之間可以自由切換,操作起來亦更加便捷。下面對這兩類模式展開具體論述
1.1講課模式
由于每個教室所排課程的不同,可通過上位機PC軟件將對應(yīng)課表下載到不同的教室,將“有課”、“無課”分別設(shè)置為“1”和“0”,并存儲在下位機的FLASH中[2]。下位機則處于定時工作狀態(tài),每堂課開始的前5分鐘,教室中的下位機會進行一次判斷,如果對應(yīng)有課,則開啟講課模式,教室燈光全開;如果沒有課,則關(guān)閉教室全部燈光,進入“自習(xí)模式”。
特別地,有時存在教師臨時更換上課地點,故講臺上也放置一個人體感應(yīng)傳感器,在進入講課模式后,每隔5分鐘探測一次講臺上是否有人上課,并依次執(zhí)行兩次同樣的操作,再將兩次的檢測結(jié)果取邏輯“或”運算。如果為“真”,則說明有人上課,繼續(xù)執(zhí)行“講課模式”;如果為“假”,則進入“自習(xí)模式”。下位機的判斷過程如圖1所示。
圖1 下位機的判斷過程框圖
Fig. 1 Judging process frame of lower computer
1.2自習(xí)模式
將教室分為A、B、C、D四個區(qū)域,如圖2所示,每個區(qū)域房頂正中放置一個人體感應(yīng)傳感器HC-SR501[3]和光頻轉(zhuǎn)換器[4]。
圖2 教室內(nèi)區(qū)域劃分圖
Fig. 2 Zoning plan in the classroom
當(dāng)下位機處于自習(xí)模式時,輸入?yún)?shù)為人體存在信號和光強度信號,若某區(qū)域的人體感應(yīng)傳感器檢測到有效信號,系統(tǒng)就判斷此時光頻轉(zhuǎn)換器采集到的光強,如果高于設(shè)定閾值(光線較弱),則打開對應(yīng)區(qū)域的日光燈;如果低于閾值(外界光線很強),無論教室是否有人,都不開燈,如圖3所示。
圖3 自習(xí)模式流程圖
Fig. 3 Flow chart of self-study mode
2系統(tǒng)具體設(shè)計
2.1上位機設(shè)計
用C#編寫含有以下2個功能的軟件[5]:
(1)能將課程表分別導(dǎo)入到各教室的下位機;
(2)能將各下位機的燈光開關(guān)狀態(tài)顯示在上位機界面。
將教學(xué)樓的所有教室組成網(wǎng)絡(luò)結(jié)構(gòu),如圖4所示。管理人員通過上位機PC上的軟件實現(xiàn)對各個教室的全程監(jiān)控,再用MSP430芯片制作一個中轉(zhuǎn)控制器[6],如圖5所示,將其作為上下位機間的樞紐,保證通信的有效性。
以一個教室為例,下位機接收并讀取課表信息,若顯示有課,則下位機工作在上課模式。開始工作時,系統(tǒng)默認(rèn)初始設(shè)置為所有的燈均是亮的,繼而判斷教室A,B,C,D四個區(qū)域的光強是否超過默認(rèn)閾值來決定該區(qū)域燈是亮還是滅,避免光強充足但仍然亮燈而造成的不必要浪費。若顯示無課,則下位機工作在自習(xí)模式,初始狀態(tài)設(shè)置四個區(qū)域燈全亮,A,B,C,D四個區(qū)域的人體感應(yīng)檢測器統(tǒng)計四個區(qū)域的人數(shù),記錄人數(shù)并和教室亮燈情況一同以數(shù)組形式回傳給上位機,使上位機可以直接查詢每個區(qū)域的亮燈情況和區(qū)域人數(shù),人工調(diào)節(jié)區(qū)域亮燈情況并將調(diào)整后的數(shù)據(jù)復(fù)傳給下位機,控制教室四個區(qū)域的燈亮燈滅,具體流程如圖6所示。
圖4 系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖
Fig.4 System network structure diagram
圖5 中轉(zhuǎn)控制器硬件圖
Fig.5 Relay controller hardware diagram
圖6 下位機控制某教室亮燈情況的流程圖
Fig.6 the lower computer controlling classroom flow
(1)上位機讀取Excel表格信息
將課表信息存儲在Excel表格中,并將此課表信息文件存放在指定位置,方便窗口程序讀取文件[7]。讀取Excel表格的程序如下:
public DataTable ExcelToDS(string Path,int i)
{
string s;
s = "Sheet" + Convert.ToString(i);
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended
Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
DataTable dt = null;
strExcel = string.Format("select * from [{0}$]", s);
myCommand = new OleDbDataAdapter(strExcel, strConn);
dt = new DataTable();
myCommand.Fill(dt);
return dt;
}
在窗口程序中選擇教室編號,讀取表格并將相應(yīng)教室上課列表信息顯示出來,使操作員能夠清晰地了解教室的課程信息。窗口程序效果圖如圖7所示。
圖7 上位機窗口顯示的課表信息
Fig.7 the schedule information of PC window
(2)傳輸課表信息給下位機
按照與下位機已有的約定,設(shè)置相應(yīng)數(shù)據(jù)包頭,將課表信息按順序放置在數(shù)組中,打開端口將數(shù)據(jù)傳輸給下位機,并檢查數(shù)據(jù)傳輸是否超時。傳輸數(shù)據(jù)的程序如下:
private void button5_Click(object sender, EventArgs e)
{ int l;
if (serialPort1.IsOpen == true )
{
if (button5.Text == "建立連接")
{
pictureBox1.BackColor= Color.Red;
data[0] = 0XA1;
serialPort1.Write(data, 0, 1);
Try_connect = true; timer1.Interval = 500;
timer1.Enabled = true;
}
else if (button5.Text == "傳輸")
{
progressBar1.Maximum = 10;
progressBar1.Value = 0;
data[0] = 0XA2;
data[1] = 0X01;
data[2] = Convert.ToByte(b);
for (m = 0, n = 3; m < 25; m++, n++)
{
data[n]= Convert.ToByte(b2[m]-48);
}
data[28] = 0XBB;
serialPort1.Write(data, 0, 29);
progressBar1.Value = 10;
Transmiting = true;
DATA_SUCCESS = false;
timer1.Interval = 500;
timer1.Enabled = true;
}
}
else
{
MessageBox.Show("請先連接串口");
}
}
通過該程序?qū)⒄n表傳給相應(yīng)教室的下位機,并完成存儲,同時也要實時地更新課表信息。
下位機將教室各區(qū)的亮燈情況,以及各區(qū)統(tǒng)計人數(shù)均以數(shù)組的形式回傳給上位機,上位機讀取數(shù)據(jù)后將相應(yīng)教室的信息顯示在窗口程序中,方便操作人員明確了解各個教室中各區(qū)的亮燈情況和各區(qū)人數(shù),進而做出相應(yīng)的亮燈調(diào)節(jié),操作人員的操作界面簡圖如圖8所示。
圖8 上位機的操作界面
Fig.8 The PC interface
2.2下位機設(shè)計
下位機的課表、燈光信息存儲在單片機FLASH中,以此來實現(xiàn)掉電保護。系統(tǒng)還加入密碼控制,從而增加系統(tǒng)運行的安全性。通過鍵盤完成設(shè)定密碼、初始化時間。時鐘模塊采用芯片DS1302[8],該芯片不僅能夠顯示秒、分、時、日期、月份和年份信息,還可實現(xiàn)掉電保護,為時鐘電路提供電源,如圖9所示。
圖9 下位機硬件圖
Fig.9 Hardware diagram
下位機以時間作為啟動和關(guān)閉系統(tǒng)的依據(jù),而以光強及人體信號作為系統(tǒng)啟動后開關(guān)燈的判斷標(biāo)準(zhǔn)。系統(tǒng)中將時間作為控制依據(jù)進一步加強了對節(jié)能的監(jiān)管,且明確了工作時間與非工作時間的界限。
具體來說,將6:00~22:00設(shè)置為工作時間,在工作時間段內(nèi)系統(tǒng)自動在“講課模式”和“自習(xí)模式”之間隨時間變化而不斷切換;在非工作時間內(nèi),系統(tǒng)自動關(guān)閉,實現(xiàn)節(jié)能。而系統(tǒng)在不同的模式下開關(guān)燈的標(biāo)準(zhǔn)不同,講課模式下燈光自動全開,也可根據(jù)需要手動強制開關(guān)燈;自習(xí)模式下,將人體感應(yīng)模塊HC-SR501參數(shù)設(shè)置為1分鐘延時和可重復(fù)觸發(fā),光頻轉(zhuǎn)換模塊閾值設(shè)定為白天不低于150lx,晚上不低于200lx。當(dāng)有人體信號后,判斷此時光強,若高于閾值不開燈,低于閾值開燈。這樣只要人仍在有效探測區(qū)域內(nèi),人體感應(yīng)傳感器便能不斷檢測到,延時也進行了重復(fù)觸發(fā),而不在時,該區(qū)域燈滅。如此即實現(xiàn)了人到燈開,人走燈滅。
3 結(jié)束語
系統(tǒng)設(shè)計從低碳、環(huán)保的理念出發(fā),立足于節(jié)能,適用于高校教室照明控制。采用多模式控制,實現(xiàn)各模式之間的自動轉(zhuǎn)換,滿足教室上課、自習(xí)、多媒體等多用途的需求。通過合理安排時間以及綜合處理人體和光強信號,來實現(xiàn)燈光的智能開、關(guān),從而達到節(jié)能的智能化;通過C#編寫的窗口程序和MSP430單片機的結(jié)合,下位機上傳的數(shù)據(jù)可在上位機中進行可視的實時監(jiān)控。智能化和可視化是該節(jié)能控制系統(tǒng)的兩大優(yōu)點。
參考文獻:
[1]秦龍.MSP430單片機應(yīng)用系統(tǒng)開發(fā)典型實例[M].北京:北京航空航天大學(xué)出版社,2008.
[2]黎洪生,劉蘇斂,胡冰,等.基于無線通信網(wǎng)絡(luò)的智能路燈節(jié)能系統(tǒng)[J].計算機工程, 2009,35(14):190-191,214.
[3]閆軍威,林海杰,彭響方.基于 LonWorks 技術(shù)的路燈節(jié)能控制系統(tǒng)[J].電力電子技術(shù), 2009,43(9):47-49.
[4]胡開明,李躍忠,盧傳華.智能路燈節(jié)能控制器的設(shè)計與實現(xiàn)[J].現(xiàn)代電子技術(shù),2009, 34(9):143-145.
[5]申田寶,呂儉榮,儲惠,等.智能照明節(jié)電器的技術(shù)特性與應(yīng)用[J].上海節(jié)能,2004, 10(3):29-31.
[6]吳瑤,姜建國.基于模糊控制的節(jié)電照明系統(tǒng)[J].工礦自動化, 2005, 25(12):82-85.
[7]吳永橋,金康進,施廣林.基于單片機的節(jié)電照明控制系統(tǒng)[J].世界電子元器件,2004, 22(4):47-49.
[8]劉三梅,程韜波,胡戰(zhàn)虎.基于GPRS/WEBGIS 的路燈節(jié)能監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2008,29(1):187-189.