• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STC89C52RC單片機的智能晾衣架設計與制作

      2019-10-23 03:20:30王法杰
      微型電腦應用 2019年10期
      關鍵詞:晾衣架光敏電阻遙控

      王法杰

      (西安航空職業(yè)技術學院 電子工程學院, 西安 710089)

      0 引言

      隨著智能家居的快速發(fā)展與廣泛應用,對晾衣架的智能化也提出了更高的要求。基于單片機的智能晾衣架系統(tǒng)有手動和自動兩種模式,手動模式與傳統(tǒng)晾衣架功能一樣,自動模式能自動識別白天和夜晚,雨天與晴天,使衣物在干燥晴天得到晾曬,夜晚或陰雨天自動收回,也可在一定距離范圍內通過遙控來控制晾衣架伸縮,通過限位開關將晾衣架的伸縮控制在合理的范圍之內[1]。該晾衣架系統(tǒng)結構簡單,功能豐富,可以滿足不同用戶的需求,具有一定的推廣使用價值。

      1 硬件原理框圖設計

      智能晾衣架設計采用STC89C52RC為主控芯片,利用光敏電阻檢測光照強度,利用溫濕度傳感器檢測環(huán)境的濕度,超過閾值則晾衣架的電機進行動作實現(xiàn)晾衣架的智能化,濕度的測量值可通過兩位一體共陰極數(shù)碼管進行顯示,直觀方便,同時,通過遙控器按鍵也可控制晾衣架動作。用紅黃藍三種顏色LED小燈指示晾衣架的工作狀態(tài),紅燈用于工作模式選擇指示,紅燈滅時,表示手動遙控模式,通過遙控按鍵控制晾衣架的伸縮功能;紅燈亮時,表示自動模式,當濕度大于80%RH或者光敏電阻檢測到是夜晚時,黃燈亮,電機反轉,執(zhí)行晾衣架收回功能,當藍燈亮時,說明濕度小于80%RH并且光敏電阻檢測到是白天,電機正轉執(zhí)行晾衣架伸出功能[2]。通過模式選擇開關按鍵進行模式切換,模式切換或者按下伸縮限位開關時,蜂鳴器報警提示,其原理框圖如圖1所示。

      圖1 智能晾衣架原理框圖

      2 軟件編程

      2.1 濕度檢測模塊設計

      濕度檢測模塊主要采用溫濕度傳感器DHT11來檢測,其濕度量程為20%-90%RH, 溫濕度傳感器2腳是輸出引腳,接5 K上拉電阻,與單片機P2.0相連接,定義為“sbit DATA=P2^0;”。由于用光敏電阻對光照進行檢測,所以溫濕度傳感器主要用其濕度控制功能。DHT11采用單總線方式,即數(shù)據(jù)的讀寫都占用同一根總線,所以編寫操作程序都必須嚴格按照時序進行,即單片機發(fā)送一次開始信號后,DHT11從低功耗模式轉換到高速模式,等待主機開始信號結束后,DHT11發(fā)送響應信號,送出40 bit數(shù)據(jù),高位在先,并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據(jù)。數(shù)據(jù)格式為“8 bit濕度整數(shù)數(shù)據(jù)+8 bit濕度小數(shù)數(shù)據(jù)+8 bit溫度整數(shù)數(shù)據(jù)+8 bit溫度小數(shù)數(shù)據(jù)+8 bit校驗和”[3],由DHT11時序得知,主機先發(fā)送復位信號給從機,主機拉低總線至少18 ms,通過執(zhí)行語句“DATA=0;delay_ms(20);”拉低20 ms,然后再拉高總線,由上拉電阻拉高延時20 us-40 us,程序編寫可取中間值30 us(“DATA=1;delay_us(30);”),主機發(fā)送完復位信號,DHT11發(fā)送響應信號,檢測到復位信號后,觸發(fā)一次采樣,并拉低總線80 us表示響應信號,通知主機數(shù)據(jù)已準備好,如果有低電平響應,則接著判斷從機DHT11是否拉高總線80 us,如果拉高80 us,之后開始傳輸數(shù)據(jù)進入數(shù)據(jù)接收狀態(tài)[4]。為了防止中斷干擾總線時序,操作前先關總中斷(“EA=0”),操作完畢再打開(“EA=1”)。DHT11進行溫濕度數(shù)據(jù)采集的流程圖如圖2所示:

      判斷DHT11響應的主要代碼如下:

      if(!DATA) //判斷從機是否有低電平響應

      { U8FLAG=2;

      while((!DATA)&&U8FLAG++);//等待DHT11拉低總線80US

      U8FLAG=2;

      while((DATA)&&U8FLAG++);//等待DHT11釋放總線80US

      COM();//讀濕度函數(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ù)據(jù)校驗

      圖2 DHT11溫濕度采集流程圖

      如果數(shù)據(jù)校驗正確則有返回值(“return 1”),否則DHT11傳感器不響應(“return 0”)。其中“COM”函數(shù)為濕度讀取函數(shù),設計思路是,當50US低電平后,拉高總線,判斷高電平持續(xù)時間,如果是“26-28US”表示數(shù)據(jù)“0”,“70US”則為數(shù)據(jù)“1”,然后按照高位在先的順序傳送數(shù)據(jù)。

      2.2 無線遙控模塊設計

      數(shù)據(jù)發(fā)射時,按鍵分別和SC2262-IR的數(shù)據(jù)端11腳、12腳和13腳連接,實現(xiàn)模式切換、晾衣架伸出和收縮功能。

      數(shù)據(jù)發(fā)射模塊的工作頻率為315M,采用315M無線發(fā)射板,按鍵按下,SC2262-IR編碼芯片的17腳和發(fā)送模塊315M的3腳相連,通過315M模塊發(fā)送數(shù)據(jù),SC2272-m4和315M無線接收模塊組合電路將接收到信號進行解碼,解碼的數(shù)據(jù)通過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]。主要代碼如下:

      else if(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ù)里設置開機默認為自動模式(“l(fā)ed_zhishi=0;”),在程序開始定義為“sbit led_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ā)送模塊的硬件連接部分如圖3所示。

      圖3 無線發(fā)送模塊

      發(fā)送模塊主要由SC2262-IR和315M發(fā)射模塊分組成,對應的接收模塊電路主要由SC2272-m4和315M接收模塊組成,接收到的信號由SC2272-m4的11,12和13引腳輸出經三極管反相后送給單片機P1.1,P1.2和P1.3端口[8]。仿真圖如圖4所示。

      圖4 智能晾衣架仿真電路圖

      仿真部分直接用按鍵開關連接到了單片機的P1.1,P1.2和P1.3,省略了遙控部分,效果與實物制作一致,當前仿真圖顯示自動模式狀態(tài),光敏電阻顯示為白天并且濕度小于閾值時(“if(light==1&&flag_HH==0)”),其中,定義光敏電阻經三極管輸出接單片機P1.0,聲明語句為“sbit light=P1^0;”,變量“flag_HH”在主函數(shù)設置濕度閾值時賦值,超過閾值置1,不超過閾值清零,圖中仿真為晾衣架伸出狀態(tài),通過調整光敏電阻的滑動端和DHT11的調節(jié)按鍵可以仿真出不同天氣條件下晾衣架的工作狀態(tài)[9]。實物制作如圖5所示。

      其中左邊為系統(tǒng)控制板,右邊為遙控電路,實物制作安裝了無線接收與發(fā)送模塊,可以實現(xiàn)遠距離控制,實用性更強,實物圖中當前狀態(tài)顯示超過閾值范圍黃燈亮,電機反轉,晾衣架收回功能[10]。

      圖5 智能晾衣架實物制作

      4 總結

      基于STC89C52RC單片機的智能晾衣架,可以通過無線遙控控制晾衣架的伸縮,到一定程度按下限位開關時電機停轉,蜂鳴器報警,能夠自動根據(jù)環(huán)境的光線和周圍環(huán)境濕度調整電機轉動來控制晾衣架的伸縮,晾衣架伸縮時,或工作模式切換時,對應指示燈分別點亮指示[11]。經仿真與實驗驗證,該智能晾衣架系統(tǒng)設計優(yōu)良、使用方便、功能豐富,具有一定的推廣和實用價值。

      猜你喜歡
      晾衣架光敏電阻遙控
      如何遙控引爆的
      淺談不同化學成分對光敏電阻薄膜特性的影響
      ——以高PbI2摻雜水平的鈣鈦礦光阻膜、Bi2S3光阻膜、ZnO光阻膜為例
      判斷:一邊高,一邊低
      孩子(2020年4期)2020-06-08 10:44:48
      他是如何遙控引爆的
      媽媽的晾衣架
      裝睡的秘訣
      淺析光敏電阻的應用
      山西青年(2017年8期)2017-01-31 02:45:46
      光敏電阻延時特性的驗證及光強對其影響的探究
      物理實驗(2014年8期)2014-09-12 00:35:56
      遙控賽車
      基于GSM的智能晾衣架
      基隆市| 焦作市| 连平县| 泉州市| 建阳市| 天祝| 海南省| 确山县| 齐齐哈尔市| 陆河县| 曲阳县| 永宁县| 华蓥市| 扶绥县| 绥化市| 繁昌县| 武穴市| 扶余县| 卢湾区| 成武县| 京山县| 九寨沟县| 邵阳市| 眉山市| 大田县| 花垣县| 南投市| 仁怀市| 泸州市| 英山县| 漳浦县| 泸定县| 通州区| 紫阳县| 民勤县| 富民县| 岳西县| 邢台市| 钟祥市| 贺州市| 渑池县|