,
(西安工業(yè)大學(xué),西安 710021)
伴隨著城市化和工業(yè)化的發(fā)展,空氣質(zhì)量急劇下降,2013年世界衛(wèi)生組織公布了一項調(diào)查結(jié)果顯示,保護環(huán)境,改善空氣質(zhì)量已經(jīng)到了刻不容緩的地步。每年大約有700萬人死了有環(huán)境污染而引起的疾病。空氣質(zhì)量與人們的生活息息相關(guān),在人類的生產(chǎn)生活中,伴隨中生產(chǎn)規(guī)模的不斷擴大,環(huán)境污染問題也越來越嚴(yán)重,空氣質(zhì)量急劇下降,傳統(tǒng)的多功能家庭安防報警系統(tǒng)一般需要手動開啟,而有些空氣加濕機又需要安裝在特殊位置,正是由于這種操作的局限性,抑制了多功能家庭安防報警系統(tǒng)的廣泛用,本文研究開發(fā)的基于WIFI的多功能家庭安防報警系統(tǒng)結(jié)合傳統(tǒng)多功能家庭安防報警系統(tǒng)的已有優(yōu)點,同時增加環(huán)境監(jiān)測模塊和網(wǎng)絡(luò)通信模塊,引入基于Android手機的遠程控制端使得用戶能夠利用手機對多功能家庭安防報警系統(tǒng)參數(shù)設(shè)置和功能設(shè)定,實現(xiàn)便捷控制智能報警監(jiān)控系統(tǒng),過濾加濕室內(nèi)空氣的目的。
基于WIFI的多功能家庭安防報警系統(tǒng)系統(tǒng)設(shè)計,采用嵌入式控制系統(tǒng)對多功能家庭安防報警系統(tǒng)硬件進行控制,同時結(jié)合物聯(lián)網(wǎng)技術(shù),加入遠程控制客戶端,打破傳統(tǒng)多功能家庭安防報警系統(tǒng)操作復(fù)雜、實時性差的桎梏,實現(xiàn)家用多功能家庭安防報警系統(tǒng)的智能化發(fā)展。
基于WIFI的多功能家庭安防報警系統(tǒng)系統(tǒng)設(shè)計的系統(tǒng)由微控制器(STM32F103ZET6)、空氣狀況檢測模塊、OLED顯示模塊、報警模塊、供電電路、信號傳輸模塊和手機終端構(gòu)成。圖1是基于WIFI的多功能家庭安防報警系統(tǒng)的系統(tǒng)模塊圖。
圖1 基于WIFI的家庭多功能家庭安防報警系統(tǒng)的系統(tǒng)模塊圖
空氣監(jiān)測模塊有多款傳感器組成,監(jiān)測空氣狀況并將數(shù)據(jù)存儲進微控制器,微控制器對這些數(shù)據(jù)進行進一步整合處理。并通過信號傳輸模塊將數(shù)據(jù)發(fā)送手機客戶端,本文采用基于Android智能手機作為遠程控制平臺,與多功能家庭安防報警系統(tǒng)硬件通過WIFI網(wǎng)絡(luò)互連,工作時,用戶登錄客戶端軟件,連接到多功能家庭安防報警系統(tǒng)的指定IP地址,即可就收智能報警監(jiān)控系統(tǒng)硬件回傳的空氣狀況參數(shù)。同時終端發(fā)送信號到智能報警監(jiān)控系統(tǒng)的微處理器上,多功能家庭安防報警系統(tǒng)即開啟加濕模塊進行加濕工作。
目前發(fā)展比較成熟的無線網(wǎng)路的組網(wǎng)方案主要有WIFI、ZIGBEE和Bluetooth,這三種組網(wǎng)方式各有個的特點。
1)WIFI是由AP和無線網(wǎng)絡(luò)組成的無線網(wǎng)絡(luò),AP即為無線接入熱點。他是無線局域網(wǎng)之中的樞紐。WIFI網(wǎng)絡(luò)是根據(jù)IEEE802.11協(xié)議構(gòu)建的,它主要包括三個層級:邏輯鏈路控制層、媒體訪問控制層和物理層,WIFI技術(shù)的突出優(yōu)點在于可提供較高的數(shù)據(jù)傳輸速率。另外WIFI組網(wǎng)方案可方便的接入互聯(lián)網(wǎng)。易于有遠程客戶端連接。
2)ZIGBEE協(xié)議是一種低功耗,近距離、易組網(wǎng)的無線通信標(biāo)準(zhǔn)。ZIGBEE網(wǎng)絡(luò)是根據(jù)IEEE802.15.4協(xié)議構(gòu)建的。ZIGBEE協(xié)議構(gòu)建的網(wǎng)絡(luò)突出優(yōu)點是低功耗,但相較WIFI而言,ZIGBEE的傳輸距離較短,另外ZIGBEE模塊的市場價格較高。
3)藍牙是工作在全球通用的2.4 GHZ的ISM頻段的一種通信協(xié)議,在不加擴展的情況下,他的通信距離是10米左右,具有一定的穿透性,藍牙技術(shù)規(guī)定了兩種組網(wǎng)方式,一種是微微網(wǎng),一種是散射網(wǎng)。藍牙是一種低功耗地速率的通信協(xié)議,目前市場上出售的一般模塊的通信距離要比WIFI短,另外同時,入網(wǎng)方式不如WIFI靈活
綜上所述,通過比較的三種不同的無線組網(wǎng)方式的有優(yōu)缺點,本設(shè)計最終采用WIFI方式,本設(shè)計中采用安信可生產(chǎn)的組網(wǎng)模塊ESP8266作為系統(tǒng)的WIFI通信模塊,通過TCP/IP協(xié)議與手機互聯(lián)。
1.3.1 煙霧傳感器選型
煙霧傳感器屬于氣敏傳感器。將氣體濃度轉(zhuǎn)化為模擬電壓信號,然后通過A/D轉(zhuǎn)換電路將模擬量轉(zhuǎn)換成數(shù)字量后送到單片機進行邏輯處理,進而通過單片機完成數(shù)據(jù)傳輸和報警等工作。MQ-5煙霧傳感器可以準(zhǔn)確的檢測出空氣中CO,煤氣等可燃性氣體的濃度,同時具有較高的性價比,一次非常適用于家庭多功能家庭安防報警系統(tǒng)設(shè)計中。
1.3.2 溫濕度傳感器選型
本設(shè)計要求測試空氣中的溫度和濕度作為用戶調(diào)控室內(nèi)空氣質(zhì)量的參數(shù)依據(jù),因此從檢查靈敏度、通信方式和成本等多方面考慮,最終確定采用AM2302溫濕度傳感器作為本系統(tǒng)檢測空氣溫度和濕度的傳感器。
該傳感器就有功耗低,傳輸距離遠,通信方便、穩(wěn)定等幾大亮點,下面是針對該傳感器做的幾項性能測試。
AM2302采用典型的單總線協(xié)議與處理器通信,這種通信協(xié)議具有通信距離長、占用系統(tǒng)資源少等特點。具體的數(shù)據(jù)讀取流程和方法請參閱第四章軟件設(shè)計。
表1 AM2302相對濕度性能表
表2 AM2302 相對溫度性能表
圖2 25℃時 AM2302 的相對濕度最大誤差
微控制器(STM32F103ZET6)、空氣狀況檢測模塊、OLED顯示模塊、報警模塊、供電電路、信號傳輸模塊和手機終端構(gòu)成。
在本系統(tǒng)中高壓靜電路和環(huán)境檢測與控制電路的在設(shè)計上采用完全分離的方案,控制模塊僅通過繼電器控制除塵電路的開啟與關(guān)閉這樣有利于系統(tǒng)的模塊化設(shè)計,便于分模塊進行調(diào)試,簡化了設(shè)計與調(diào)試過程,具體電路圖如圖3所示。
圖3 溫度傳感器的溫度最大誤差
本模塊的主要設(shè)計思路是交流220 V電源經(jīng)過整流變?yōu)橹绷?00 V,然后利用全橋逆變電路將直流電源逆變?yōu)楦哳l交流。本模塊中DBB2和B772三極管實現(xiàn)對PWM脈沖的調(diào)制與解調(diào)從而獲得較高的驅(qū)動能力,PWM脈沖通過51單片機產(chǎn)生,采用zn41185bb隔離變壓器實現(xiàn)對脈沖產(chǎn)生電路的保護,從而避免高頻電源產(chǎn)生一側(cè)對脈沖電路的沖擊和影響。另外本模塊中給單片機供電采用的是檢控模塊中的5 V電壓,同時本模塊自帶12 V交流電源用于對高頻MOSFET的驅(qū)動,以及200 V直流電源產(chǎn)生電路用于高頻電源的逆變源。
3.1.1 軟件模塊組成總覽
本文使用的STM32作為本系統(tǒng)的微控制器,開發(fā)環(huán)境采用Keil4,本系統(tǒng)的的軟件設(shè)計包括以下幾個模塊:系統(tǒng)初始化、外設(shè)、傳感器初始化、中斷服務(wù)子函數(shù)、傳感器數(shù)據(jù)處理、報警觸發(fā)、串口數(shù)據(jù)接收與處理、除塵器控制程序等。圖4為本系統(tǒng)的程序流程圖。
圖4 總程序流程圖
3.2.2 主控界面設(shè)計
主控界面的外觀設(shè)計如圖5所示。
圖5 主控界面
主控界面是本客戶端軟件的主要功能界面,在該界面下主要實現(xiàn)以下幾個功能:
通過點擊“連接”按鈕,使用設(shè)置好的IP和PORT 通過網(wǎng)絡(luò)遠程鏈接智能報警監(jiān)控系統(tǒng)硬件上的ESP8266 WiFi模塊。
1)數(shù)據(jù)接收顯示,接收多功能家庭安防報警系統(tǒng)硬件發(fā)送的傳感器參數(shù)幀,應(yīng)顯示在Android客戶端界面上。
2)發(fā)送控制命令幀,通過點擊“除塵”、“加濕”、“排氣”按鈕發(fā)送響應(yīng)的控制命令給智能報警監(jiān)控系統(tǒng)硬件。
3)點擊“設(shè)置”按鈕,與設(shè)置界面進行數(shù)據(jù)交互,并進入下一界面。
4)點擊“退出按鈕可退出主控界面”
以下是該功能界面的程序設(shè)計流程圖以及部分主要源代碼的分析:
class MyThread extends Thread {
public String IP; //定義需要連接設(shè)備的IP地址,port端口號
public int port;
public MyThread(String IP,int port) { //實例化本線程
this.IP=IP; //IP port 參數(shù)傳遞
this.port=port;
}
public void run() {
try {
SocketClient.connect(new InetSocketAddress(IP, port), 50000); //給實例化的SOCKET連接傳遞IP、port、//以及timeout
connect_flag=true; //連接成功則置標(biāo)志位
co=1;
new MyThread_receive().start(); //連接成功則開啟數(shù)據(jù)接收線程
} catch (Exception aa) {
co=2;
} }
}
class MyThread_send extends Thread {
public String msg;
public MyThread_send(String msg)
{
this.msg=msg;
}
public void run() {
try { //獲取輸出流
dos=new PrintWriter(SocketClient.getOutputStream(), true);
dos.print(msg);//發(fā)送給服務(wù)器
dos.flush();
} catch (SocketTimeoutException aa) {
// Toast.makeText(MainActivity.this, "發(fā)送失敗", 1000).show();
} catch (IOException e) {
e.printStackTrace();
} } }
3.2.3 參數(shù)設(shè)置界面設(shè)計
設(shè)置界面的外觀設(shè)計如圖6所示。
圖6 參數(shù)設(shè)置界面
本界面主要進行參數(shù)的設(shè)定,主要完成以下功能:
1)對SOCKERT網(wǎng)絡(luò)連接所需要的IP、port等參數(shù)的設(shè)定。
2)對煙霧濃度報警上限、溫濕度報警上限、風(fēng)塵濃度報警上限進行設(shè)置。
3)報警短信號碼進行設(shè)置。
4)對本地報警、短信報警、人體檢測能功能的執(zhí)行狀態(tài)進行設(shè)置,選擇性開啟這些功能。
以下是該功能界面的程序設(shè)計流程圖以及部分主要源代碼的分析:
ip_s=bundle.getString("IP"); //從中控界面的交互中獲取IP信息.
port_s=bundle.getString("PORT"); //從中控界面的交互中獲取port信息.
phone_s=bundle.getString("PHONE"); //從中控界面的交互中獲取port信息.
update();
public void onClick(View v) { //進入按鍵響應(yīng)函數(shù)
int tag = (Integer) v.getTag();
switch (tag)
{
case 1: //判斷是否為保存按鍵
Bundle bundle = new Bundle();
bundle.putInt("WENDU", wendu); //將設(shè)置信息與中控界面交互
bundle.putInt("SHIDU", shidu);
bundle.putInt("YANWU", yanwu);
bundle.putInt("FENCHEN", fenchen);
bundle.putInt("infrared", infrared_flag);
bundle.putInt("warning", warning_flag);
bundle.putInt("message", message_flag);
bundle.putString("IP", IP.getText().toString());
bundle.putString("PORT", PORT.getText().toString());
bundle.putString("PHONE", PHONE.getText().toString());
Setting.this.setResult(RESULT_OK, Setting.this.getIntent().putExtras(bundle));
Setting.this.finish();
break;
case 2: //如果觸發(fā)取消按鍵則不進行數(shù)據(jù)交互直接退出
Setting.this.setResult(RESULT_CANCELED);
Setting.this.finish();
break;
}
}
系統(tǒng)采用遠程客戶端實現(xiàn)隨多功能家庭安防報警系統(tǒng)進行設(shè)置和控制,比起傳統(tǒng)的多功能家庭安防報警系統(tǒng)的操作更加人性化,這也是本系統(tǒng)與傳統(tǒng)多功能家庭安防報警系統(tǒng)控制系統(tǒng)較,最明顯的優(yōu)勢所在。但是本系統(tǒng)在人機交互、系統(tǒng)的整體性能方面仍然具有許多改進的地方,本系統(tǒng)雖然屬于智能家居類別,但本系統(tǒng)設(shè)計的智能算法比較少,例如目前比較流行的大數(shù)據(jù)、指紋識別、人臉識別等均沒有過多的體現(xiàn),但是,系統(tǒng)智能化是智能家居發(fā)展的必然趨勢.因此,后續(xù)的工作可以在以下幾個方面深入研究。
1)提供系統(tǒng)的整體性能,增強實時性,尤其是要保證報警設(shè)備的實時性觸發(fā),因此在以后的改進過程中有必要加入實時操作系統(tǒng),例如ucosii。
2)可為本系統(tǒng)增加語音識別功能,就目前而言,語音識別技術(shù)仍處于瓶頸期,語言分辨與語音采集仍然是技術(shù)難題。在以后的設(shè)計過程中可以加深對語音識別算法的研究。本系統(tǒng)提供更好的人機交互系統(tǒng)。
3)由于時間關(guān)系以及作者水平有限,本系統(tǒng)中采用的傳感器大多為成品模塊,這樣就不可避免的降低了系統(tǒng)的穩(wěn)定性。因此在以后的研究中可以考慮對多款傳感器進行集成,從而提高系統(tǒng)的整體穩(wěn)定性,
4)目前該系統(tǒng)只能在局域網(wǎng)內(nèi)實現(xiàn)數(shù)據(jù)收發(fā),無法接入外網(wǎng)(缺少公網(wǎng)服務(wù)器支持)這極大的限制了用戶的使用范圍,因此在后續(xù)的設(shè)計過程中將該系統(tǒng)增加外網(wǎng)接入功能,使用戶能夠脫離局域網(wǎng)的限制,真正意義上實現(xiàn)遠程控制。
多功能家庭安防報警系統(tǒng)在百姓的人常生活中起著非常重要的作用,直接關(guān)系到居民的身體健康。本文完成了基于WIFI的家用多功能家庭安防報警系統(tǒng)系統(tǒng)的開發(fā)。包括系統(tǒng)的硬件設(shè)計、軟件編寫,Android上位機開發(fā)和系統(tǒng)整體調(diào)試,在論文的完成過程中主要做的工作有:
(1)以意法半導(dǎo)體(ST)公司的STM32單片機為核心進行系統(tǒng)硬件設(shè)計,結(jié)合溫濕度傳感器、煙霧傳感器、熱釋電紅外感應(yīng)開關(guān)、粉塵傳感器等檢測模塊為系統(tǒng)提供環(huán)境的參考數(shù)據(jù),通過PWM脈寬調(diào)節(jié)控制散熱扇的工作
(2)采用Android平臺作為多功能家庭安防報警系統(tǒng)系統(tǒng)的遠程監(jiān)控客戶端,采用Eclipise作為Android軟件的開發(fā)平臺,包括Android開發(fā)環(huán)境的搭建、軟件開發(fā)以及調(diào)試
(3)采用C語言對系統(tǒng)進行軟件編程,在開發(fā)過程中使用JTAG仿真器大大縮短了軟件的開發(fā)周期,另外結(jié)合本設(shè)計的實際需要,軟件的編寫采用模塊化的設(shè)計方法,便于系統(tǒng)功能模塊的修改和增刪。
[1] 李成濤.室內(nèi)空氣污染及加濕技術(shù)[J].武漢:武漢理工大學(xué),2013.
[2] 婁山林. 新型負離子多功能家庭安防報警系統(tǒng)的研制[D].大連:大連理工大學(xué),2012.
[3] 余榮發(fā).基于 Android 的移動視頻監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].廣州:華南理工大學(xué), 2011.
[4] 劉廣玉.新型傳感器技術(shù)及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2014.
[5] 張克豐嵌入式系統(tǒng)的調(diào)試方法研究及調(diào)試器后臺處理模塊設(shè)計[D].西安:西安電子科技大學(xué)今升算機學(xué)院,2012.
[6] 趙述龍,安宏雷,劉建平,智能化集成溫度傳感器原理與應(yīng)用[J].北京機械工業(yè)出版社,2013,27(8):744-749.
[7] 沙占友等四旋翼飛行器模型的氣動參數(shù)辨識電子測量與儀器學(xué)報[J],2012.
[8] Kate Gregory Visual C++6 開發(fā)使用手冊[Z] . 廣州:華南理工大學(xué),2011.
[9] 徐士良.十六路微控搶答器的設(shè)計[J].北京人民郵電出版社,2013.
[10] 尹長華,趙海鴻, 吳忠標(biāo),趙偉榮. C語言程序設(shè)計教程[M]. 北京:人民郵電出版社,2002.
[11] ZigBee Alliance.ZigBee specification[S].IEEE 802.15.4, 2014.
[12] 龍承志,馬玉秋.基于低速率的短距離無線通信網(wǎng)絡(luò)新技術(shù)--ZigBee[J].數(shù)據(jù)通信,2005(1):43-44.
[13] 但德忠.環(huán)境監(jiān)測(第三版)[M].北京:機械工業(yè)出版社,2015.
[14] 郭宗仁,吳亦鋒,郭 永.可編程控制器應(yīng)用系統(tǒng)設(shè)計及通信網(wǎng)絡(luò)技術(shù)[M].北京:人民郵電出版社,2012.
[15] 呂向陽,家庭多功能家庭安防報警系統(tǒng)的設(shè)計研究與實踐[D].北京:化學(xué)工業(yè)出版社,2015.
[16] Lai, E. L. C. International Intellectual Property Rights Protection and the Rate of Product Innovation [M]. Journal of Development Economics, 2015.