王啟明 劉冬梅 周艷艷
【摘 要】為了解決傳統風扇無法進行人體感知從而導致損耗大量的電力資源且存在安全隱患,設計開發了一個智能風扇系統。該系統以單片機為核心,采用DS18B20溫度傳感器采集數據,將周圍環境溫度在LED數碼管上實時顯示,根據實時溫度與系統設置的閾值,同時人體紅外模塊監測周圍環境是否有人,來決定風扇是否開啟,當沒有人在房間時,風扇自動關閉。該智能風扇系統不僅克服了傳統風扇的缺點,還具有很好的安全性,低功耗,低成本以及自動監測溫度等優點,為人們生活帶來了便捷。
【關鍵詞】智能控制;單片機;紅外傳感器
中圖分類號: TM925.11;TP368.12文獻標識碼: A文章編號: 2095-2457(2019)16-0011-003
DOI:10.19694/j.cnki.issn2095-2457.2019.16.004
Design and Implementation of Intelligent fan Based on Single Chip Microcomputer
WANG Qi-ming LIU Dong-mei ZHOU Yan-yan
(School of information engineering, pingdingshan university, pingdingshan Henan 467000,China)
【Abstract】In order to solve the problem that the traditional fan can not perform human perception, which leads to the loss of a large amount of power resources and has potential safety hazards, an intelligent fan system is designed and developed. The system takes the single-chip microcomputer as the core, uses DS18B20 temperature sensor to collect data, and displays the ambient temperature on the LED digital tube in real time. According to the real-time temperature and the threshold set by the system, the human body infrared module monitors whether there is someone in the surrounding environment to determine whether the fan is turned on. When no one is in the room, the fan automatically turns off. The intelligent fan system not only overcomes the shortcomings of the traditional fan, but also has the advantages of good safety, low power consumption, low cost and automatic temperature monitoring, which brings convenience to peoples lives.
【Key words】Intelligent control; Single chip microcomputer; Infrared sensor
0 緒論
如今的社會日新月異,人們對生活質量的追求不斷提高的同時,人身安全和節約資源也成了重要問題。電風扇作為一種小型的家用電器,一直廣受人們的歡迎,由于大部分家庭消費水平的限制,電風扇在中小城市以及鄉村未來將仍然會占有市場大部分份額。面臨龐大的市場需求,提高風扇的功能性,讓電風扇產業在市場上更有競爭力,是現在面臨的主要問題。傳統風扇不能根據外界溫度的變化對風扇的工作狀態進行調整,也不能對風扇的開關與否進行自動控制。尤其對于晝夜溫差相對較大的地區,在使用風扇時常常會遇到這樣的問題:當凌晨氣溫已經下降,不再需要風扇進行降溫,但人們已經熟睡而無法察覺。對于體質較弱的群體就會面臨著涼感冒的風險。不僅對身體造成一定的影響,同時也浪費了一些不必要的電力資源。該系統在傳統風扇的基礎上開發設計出了一些創新功能,解決了傳統風扇耗電量大以及使用當中存在安全隱患等問題,從而提高人們的生活質量,節約電力資源。
1 系統總體設計
圖1 系統功能結構圖
該系統以STC89C51單片機為核心,通過溫度采集模塊、LED數碼管顯示模塊、HC-SR501人體感應模塊、按鍵調速模塊以及ESP8266 WIFI控制模塊構成。溫度采集模塊主要將采集到的溫度值與系統設置的初始溫度值進行比較。若采集到的溫度值大于初始溫度值,則風扇將會開啟;若采集到的溫度值小于初始溫度值,風扇將一直保持關閉狀態[1]。LED數碼管主要顯示溫度數據。HC-SR501人體感應模塊監測是否有人,若有人并且采集到的溫度大于初始溫度值,則風扇轉動;反之,風扇關閉。ESP8266 WIFI控制模塊用來發出ESP8266 WIFI信號,通過手機終端連接相應的WIFI信號,實現相應的系統功能。按鍵調速模塊通過設置不同檔位實現控制風扇的轉速。系統功能結構圖如圖1所示。
2 系統硬件設計
2.1 STC89C51控制芯片
本設計采用STC89C51單片機為中心控制元件,它包含中央處理器(CPU)、程序存儲器(Flash)、數據存儲器(SRAM),定時/計數器、UART串口、I/O接口、EEPROM、看門狗等模塊。STC89C51單片機幾乎包含了數據采集和控制中所需的所有單元模塊,稱得上一個片上系統[2]。因為其工作電壓低、開發周期短和保留數據時間長等優點,經常用于學習與開發。
2.2 溫度采集模塊
DS18B20數字溫度傳感器提供9位溫度讀數,指示器件的溫度。數據信息經過單線接入口送入DS18B20或從DS18B20送出,因此從中央處理器到DS18B20僅需連接一條線。讀、寫和完成溫度變換所需的電源可以由數據線本身提供,而不需要外部電源。所有讀時序必須最少60us,包括兩個讀周期間至少1us的恢復時間。當總線控制器把數據線從高電平拉到低電平時,讀時序開始,數據線必須至少保持1us,然后總線被釋放。DS18B20通過拉高或拉低總線上來傳輸”1”或”0”。當傳輸邏輯”0”結束后,總線將被釋放,通過上拉電阻回到上升沿狀態。從DS18B20輸出的數據在讀時序的下降沿出現后15us內有效。因此,總線控制器在讀時序開始后必須停止把I/O口驅動為低電15us,以讀取I/O口狀態。
該模塊主要用來測量周圍環境溫度,中間管腳為輸出管腳。兩端管腳分別用來接地和電源。DS18B20溫度傳感器電路圖如圖2所示。
2.3 人體感應模塊
該模塊正常工作只需要接通地線和電源線,當人進入感應范圍內,輸出信號RIR0輸出為高電平1,人離開感應范圍為則會自動延時,然后輸出低電平0。人體具有恒定的溫度,一般為37度,因此會發出紅外探頭所能探測到的10uM左右的紅外線。人體發射的紅外線聚集到紅外感應源上,這種元件就會接收到[3]。由于人體紅外一般用于控制燈光或報警,所以具有延時功能。只要監測到有人,即使人已經離開但是仍然會延時3秒。HC-SR501人體感應模塊硬件電路如圖3所示。
2.4 遠程控制模塊
ESP8266 WIFI控制模塊是一款超低功耗的UART-WIFI透傳模塊,專為移動設備和物聯網應用設計,擁有超低能耗技術,可將用戶的物理設備連接到無線網絡上,進行互聯網或局域網通信,實現聯網功能[4]。它支持三種天線接口形式,串口透傳主要負責數據傳輸,若正常使用,服務器和客戶端需搭載在同一個網絡上,則需要一些常用指令,包括加入接入點指令:AT+CWJAP,當前可用接入點指令:AT+CWLAP,退出接入點指令:AT+CWQAP。
3 系統軟件實現
3.1 溫度數據讀取實現
溫度傳感器不斷采集周圍環境溫度,通過datapros()溫度讀取轉換函數將采集到的溫度值轉換為十進制溫度值,因為讀取的溫度是實際溫度補碼,通過減1,再取反求出原碼。在主程序中,通過在while循環中調用該函數,實現不斷的實時檢測當前環境溫度。如果指令執行完畢,單片機系統就開始接收數據,并將接收到的數據信息按照十進制的方式存放到特定的數組中,信號采集完畢后,系統對采集到的數據進行保存且保持信號采集指令持續執行。
3.2 紅外檢測實現
人體紅外傳感器通過將人或動物發出的紅外線聚集到紅外感應源上,將感應的紅外信號轉化為電信號,在程序中通過digitalRead()函數來獲取人體紅外傳感器讀到的狀態,在主程序中,在while循環中,不斷調用該函數,用is接收并判斷它的值,若is等于1,則人體紅外傳感器檢測到有人,只有在這種條件成立的前提下,配合溫度傳感器獲取的溫度值,若兩者同時滿足設定的條件,則智能風扇系統自動啟動,若有任意一個條件不成立,則系統都無法自動開啟。
3.3 按鍵功能實現
在該設計中,使用按鍵進行控制風扇的轉速,通過KEY_Detect()按鍵掃描函數,不斷使用if(ucTemp!= 0xFF)判斷是否有按鍵按下,若有按鍵按下,由于按鍵工作存在抖動現象,容易導致誤判,故需要調用延時函數Delay()進行消抖后再次判斷,否則等待直到有按鍵按下才繼續執行程序,然后通過switch和case語句確定具體按鍵值,該函數的返回值為key。在主函數中,通過在while循環中不斷檢測按鍵是否被按下,然后調用KEY_Detect()函數獲取key值,從而改變電機運行狀態,實現按鍵調速的目的。
3.4 整體功能實現
經過多次的軟件調試和硬件仿真,最終該系統順利完成,各個模塊功能基本實現,智能風扇系統順利工作。該系統的整體實物圖如圖5所示。
4 結束語
該系統以STC89C51單片機為核心,采用溫度傳感器實現了風扇自動監測室內溫度,當監測到的溫度小于系統設置閾值時,風扇將自動停止轉動,同時采用人體感應模塊實現了無人時風扇自動關閉,有人時風扇自動開啟。相比較傳統電風扇多采用機械方式控制,功能少,無法判別是否有人在使用電風扇,存在無人狀態下持續工作的安全隱患。本項目設計的智能風扇不僅克服了傳統風扇的缺點,還具有很好的安全性,精確的溫度控制,低功耗,低成本,自動監測溫度等優點。隨著我國電子技術的發展,該智能風扇將會走進千千萬萬普通人的家里,為廣大人民帶來生活上的便捷。
【參考文獻】
[1]王蕊.基于單片機的多功能自動調溫風扇系統設計[D].鄭州大學,2014.
[2]陳大新.單片機應用技術[J].C51,2014,20(1):30-35.
[3]徐科軍.傳感器與檢測技術(第4版)[M].北京:電子工業出版社,2016:55-56.
[4]史嘉瑞,馬一諾,王哲.基于Wifi控制的電動風扇的智能尋蹤系統設計[J].電子制作,2018(23):19-21.
[5]張凱強,李紅嶺,王浩,李盼盼,林曉慶.智能溫控風扇調速系統的設計[J].電子技術與軟件工程,2019(06):68-69.
[6]周常偉.客車發動機冷卻風扇智能控制系統的研發[D].山東建筑大學,2016.