本文摘要:摘要:設計了一款智能晾衣架系統(tǒng)。系統(tǒng)采用STC89C52RC單片機為控制器,利用直流電機正反轉,控制晾衣架的伸縮,主要由無線遙控模塊、光線檢測模塊、濕度檢測模塊和電機執(zhí)行機構組成。 無線遙控模塊主要采用315M無線收發(fā)模塊、SC2262-IR和SC2272-m4編解碼芯片
摘要:設計了一款智能晾衣架系統(tǒng)。系統(tǒng)采用STC89C52RC單片機為控制器,利用直流電機正反轉,控制晾衣架的伸縮,主要由無線遙控模塊、光線檢測模塊、濕度檢測模塊和電機執(zhí)行機構組成。
無線遙控模塊主要采用315M無線收發(fā)模塊、SC2262-IR和SC2272-m4編解碼芯片進行無線通信;光線檢測主要是利用光敏電阻來檢測光照度,經過三極管發(fā)射極送給單片機P1.0,滿足相應條件時,單片機輸出經繼電器驅動電機執(zhí)行機構;濕度檢測模塊,主要由DHT11傳感器控制電路來實現(xiàn),超過閾值時電機改變轉動方向,實現(xiàn)晾衣架的智能控制;電機執(zhí)行機構,主要由單片機P3.0和P3.5輸出,通過三極管驅動控制繼電器的吸合和關斷,從而控制電機的動作。經驗證,該系統(tǒng)通過按鍵調節(jié)可實現(xiàn)晾衣架的手動與自動模式切換,功能較全面,實用性強。
關鍵詞:智能,DHT11傳感器,光敏電阻,無線遙控,直流電機
0引言
隨著智能家居的快速發(fā)展與廣泛應用,對晾衣架的智能化也提出了更高的要求;趩纹瑱C的智能晾衣架系統(tǒng)有手動和自動兩種模式,手動模式與傳統(tǒng)晾衣架功能一樣,自動模式能自動識別白天和夜晚,雨天與晴天,使衣物在干燥晴天得到晾曬,夜晚或陰雨天自動收回,也可在一定距離范圍內通過遙控來控制晾衣架伸縮,通過限位開關將晾衣架的伸縮控制在合理的范圍之內[1]。該晾衣架系統(tǒng)結構簡單,功能豐富,可以滿足不同用戶的需求,具有一定的推廣使用價值。
1硬件原理框圖設計
智能晾衣架設計采用STC89C52RC為主控芯片,利用光敏電阻檢測光照強度,利用溫濕度傳感器檢測環(huán)境的濕度,超過閾值則晾衣架的電機進行動作實現(xiàn)晾衣架的智能化,濕度的測量值可通過兩位一體共陰極數(shù)碼管進行顯示,直觀方便,同時,通過遙控器按鍵也可控制晾衣架動作。
用紅黃藍三種顏色LED小燈指示晾衣架的工作狀態(tài),紅燈用于工作模式選擇指示,紅燈滅時,表示手動遙控模式,通過遙控按鍵控制晾衣架的伸縮功能;紅燈亮時,表示自動模式,當濕度大于80%RH或者光敏電阻檢測到是夜晚時,黃燈亮,電機反轉,執(zhí)行晾衣架收回功能,當藍燈亮時,說明濕度小于80%RH并且光敏電阻檢測到是白天,電機正轉執(zhí)行晾衣架伸出功能[2]。通過模式選擇開關按鍵進行模式切換,模式切換或者按下伸縮限位開關時,蜂鳴器報警提示。
2軟件編程
2.1濕度檢測模塊設計
濕度檢測模塊主要采用溫濕度傳感器DHT11來檢測,其濕度量程為20%-90%RH,溫濕度傳感器2腳是輸出引腳,接5K上拉電阻,與單片機P2.0相連接,定義為“sbitDATA=P2^0;”。
由于用光敏電阻對光照進行檢測,所以溫濕度傳感器主要用其濕度控制功能。DHT11采用單總線方式,即數(shù)據的讀寫都占用同一根總線,所以編寫操作程序都必須嚴格按照時序進行,即單片機發(fā)送一次開始信號后,DHT11從低功耗模式轉換到高速模式,等待主機開始信號結束后,DHT11發(fā)送響應信號,送出40bit數(shù)據,高位在先,并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據。
數(shù)據格式為“8bit濕度整數(shù)數(shù)據+8bit濕度小數(shù)數(shù)據+8bit溫度整數(shù)數(shù)據+8bit溫度小數(shù)數(shù)據+8bit校驗和”[3],由DHT11時序得知,主機先發(fā)送復位信號給從機,主機拉低總線至少18ms,通過執(zhí)行語句“DATA=0;delay_ms(20);”拉低20ms,然后再拉高總線,由上拉電阻拉高延時20us-40us,程序編寫可取中間值30us(“DATA=1;delay_us(30);”),主機發(fā)送完復位信號。
DHT11發(fā)送響應信號,檢測到復位信號后,觸發(fā)一次采樣,并拉低總線80us表示響應信號,通知主機數(shù)據已準備好,如果有低電平響應,則接著判斷從機DHT11是否拉高總線80us,如果拉高80us,之后開始傳輸數(shù)據進入數(shù)據接收狀態(tài)[4]。為了防止中斷干擾總線時序,操作前先關總中斷(“EA=0”),操作完畢再打開(“EA=1”)。
判斷DHT11響應的主要代碼如下:if(!DATA)//判斷從機是否有低電平響應{U8FLAG=2;while((!DATA)&&U8FLAG++);//等待DHT11拉低總線80USU8FLAG=2;while((DATA)&&U8FLAG++);//等待DHT11釋放總線80USCOM();//讀濕度函數(shù)U8RH_data_H_temp=U8comdata;//濕度整數(shù)部分COM();U8RH_data_L_temp=U8comdata;//濕度小數(shù)部分COM();U8T_data_H_temp=U8comdata;//溫度整數(shù)部分COM();U8T_data_L_temp=U8comdata;//溫度小數(shù)部分COM();U8checkdata_temp=U8comdata;
//校驗八位DATA=1;U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);//數(shù)據校驗如果數(shù)據校驗正確則有返回值(“return1”),否則DHT11傳感器不響應(“return0”)。
其中“COM”函數(shù)為濕度讀取函數(shù),設計思路是,當50US低電平后,拉高總線,判斷高電平持續(xù)時間,如果是“26-28US”表示數(shù)據“0”,“70US”則為數(shù)據“1”,然后按照高位在先的順序傳送數(shù)據。
2.2無線遙控模塊設計
數(shù)據發(fā)射時,按鍵分別和SC2262-IR的數(shù)據端11腳、12腳和13腳連接,實現(xiàn)模式切換、晾衣架伸出和收縮功能。數(shù)據發(fā)射模塊的工作頻率為315M,采用315M無線發(fā)射板,按鍵按下,SC2262-IR編碼芯片的17腳和發(fā)送模塊315M的3腳相連,通過315M模塊發(fā)送數(shù)據,SC2272-m4和315M無線接收模塊組合電路將接收到信號進行解碼,解碼的數(shù)據通過SC2272-m4的11腳、12腳和13腳輸出,再經過三極管反相后送到單片機P1.1、P1.2和P1.3端口,單片機處理后從P3.0和P3.5輸出控制繼電器的吸合與關斷,從而控制電機轉動方向。在仿真圖里直接用按鍵開關接到單片機的相應端口[5]。
P1.1是進行自動手動模式切換功能,當該位位“0”時,說明切換模式已選擇,同時設置切換標志位(“change_flag”),當切換標志位為“1”時,執(zhí)行手動模式選擇,即無線遙控操作,當切換標志位為“0”時,切換到自動模式。
遙控模式時,進一步判斷伸出按鍵是否按下,當伸出按鍵按下并且沒有按下伸出限位開關時,晾衣架伸出,同時,單片機的P3.0輸出為低電平,經與三極管Q1相連的繼電器吸合,電機正轉,伸出指示燈(P1.5)點亮,再按一次則停止伸出,伸出指示燈熄滅,操作完成后通過語句“while(!in_go);”釋放伸出按鍵開關[6]。
主要代碼如下:elseif(change_flag==1)//手動模式選擇{if((in_go==0)&&(limit_go==1))//伸出按鍵是否按下{delay(50);//延時去抖if((in_go==0)&&(limit_go==1))//再次判斷按鍵狀態(tài){buzz=0;delay(200);//按鍵音,蜂鳴器提示buzz=1;out_back=1;//禁止收回
out_go=~out_go;//按一下伸出,再按下,停止動作led_back=1;//收回指示燈滅led_go=out_go;//晾衣架伸出時,伸出指示燈亮flag_shan1=0;}while(!in_go);//釋放伸出按鍵}同樣思路,可以編寫遙控按鍵收回、按下伸出限位開關和按下收回限位開關程序。
2.3顯示模塊與主函數(shù)設計
程序編譯時從主函數(shù)開始執(zhí)行,主函數(shù)里設置開機默認為自動模式(“led_zhishi=0;”),在程序開始定義為“sbitled_zhishi=P1^7;”,初始化定時器,在“while”語句里調用工作模式切換函數(shù)和數(shù)碼管顯示函數(shù),用“if”語句判斷,當濕度轉換完成時,只讀取濕度的整數(shù)部分(“humidity=U8RH_data_H;”),并且設定濕度閾值為80%RH,數(shù)碼管上只顯示數(shù)值[7]。
數(shù)碼管顯示函數(shù)主要實現(xiàn)對濕度整數(shù)部分進行個位和十位的顯示,個位顯示語句為“P0=table[humidity%10];”,十位顯示語句為“P0=table[humidity/10];”,通過P0口進行段選顯示。位選由P2.2和P2.1控制,P2.2接數(shù)碼管個位位選引腳,個位顯示時P2.2為低電平,P2.1接數(shù)碼管十位位選引腳,十位顯示時P2.1為低電平,由于動態(tài)顯示速度快,所以看上去是同時點亮。
3電路仿真與實物制作
電路仿真時,為了形象直觀,用按鍵開關直接控制單片機來驅動電機的轉動。發(fā)送模塊主要由SC2262-IR和315M發(fā)射模塊分組成,對應的接收模塊電路主要由SC2272-m4和315M接收模塊組成,接收到的信號由SC2272-m4的11,12和13引腳輸出經三極管反相后送給單片機P1.1,P1.2和P1.3端口[8]。
仿真部分直接用按鍵開關連接到了單片機的P1.1,P1.2和P1.3,省略了遙控部分,效果與實物制作一致,當前仿真圖顯示自動模式狀態(tài),光敏電阻顯示為白天并且濕度小于閾值時(“if(light==1&&flag_HH==0)”),其中,定義光敏電阻經三極管輸出接單片機P1.0,聲明語句為“sbitlight=P1^0;”,變量“flag_HH”在主函數(shù)設置濕度閾值時賦值,超過閾值置1,不超過閾值清零。
其中左邊為系統(tǒng)控制板,右邊為遙控電路,實物制作安裝了無線接收與發(fā)送模塊,可以實現(xiàn)遠距離控制,實用性更強,實物圖中當前狀態(tài)顯示超過閾值范圍黃燈亮,電機反轉,晾衣架收回功能[10]。
4總結
基于STC89C52RC單片機的智能晾衣架,可以通過無線遙控控制晾衣架的伸縮,到一定程度按下限位開關時電機停轉,蜂鳴器報警,能夠自動根據環(huán)境的光線和周圍環(huán)境濕度調整電機轉動來控制晾衣架的伸縮,晾衣架伸縮時,或工作模式切換時,對應指示燈分別點亮指示[11]。經仿真與實驗驗證,該智能晾衣架系統(tǒng)設計優(yōu)良、使用方便、功能豐富,具有一定的推廣和實用價值。
參考文獻
[1]談敏.智能晾衣架創(chuàng)新設計與控制系統(tǒng)研究[J].機電工程技術,2018(5):133-135.
[2]荊海霞,李洪義.一種智能晾衣架系統(tǒng)的設計[J].機電一體化,2016(7):57-60.
[3]李素云,覃若寶.基于多傳感器的智能晾衣架設計[J].山東工業(yè)技術,2016(3):128.
[4]周靜紅.基于單片機控制的智能晾衣架控制系統(tǒng)的設計[J].電子技術,2014(10):68-69.
[5]王琪,許應風.基于單片機的智能晾衣架設計[J].現(xiàn)代計算機(專業(yè)版),2017(28):60-64.
電子論文投稿刊物:《山西電子技術》(雙月刊)創(chuàng)刊于1973年,由山西省電子研究院、山西省電子學會主辦。本刊是山西省電子信息產業(yè)唯一公開發(fā)行的專業(yè)技術期刊。在30年的辦刊過程中,刊物一直堅持電子信息行業(yè)交流信息,探討技術的園地,主要宣傳報道電子信息領域新技術、新成果;為我省電子信息產業(yè)發(fā)展服務的辦刊宗旨。
轉載請注明來自發(fā)表學術論文網:http:///dzlw/20693.html