• 
    

    
    

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

      基于單片機(jī)智能風(fēng)扇的設(shè)計(jì)

      2020-03-02 11:36:35彭歡歡張琛松陳雪
      軟件 2020年1期
      關(guān)鍵詞:樹莓派控制系統(tǒng)單片機(jī)

      彭歡歡 張琛松 陳雪

      摘 ?要: 在炎熱的夏天,電風(fēng)扇給人們的生活帶來了很多的方便,一般的電風(fēng)扇只有機(jī)械檔的人工調(diào)速和手動(dòng)開關(guān),夏夜溫度下降后人們?nèi)菀滓蚴焖P(guān)風(fēng)扇而受涼,當(dāng)溫度升高時(shí),它又不能根據(jù)溫度的變化改變轉(zhuǎn)速。而智能溫控調(diào)速風(fēng)扇可自動(dòng)根據(jù)室內(nèi)環(huán)境溫度控制風(fēng)扇轉(zhuǎn)速。為了使風(fēng)扇更貼近人們的生活,開發(fā)一種新型溫感語音喚醒的智能電風(fēng)扇控制系統(tǒng)迫在眉睫。

      關(guān)鍵詞: 單智能溫控;樹莓派;單片機(jī);控制系統(tǒng)

      中圖分類號: TP368.1 ? ?文獻(xiàn)標(biāo)識碼: A ? ?DOI:10.3969/j.issn.1003-6970.2020.01.014

      本文著錄格式:彭歡歡,張琛松,陳雪,等. 基于單片機(jī)智能風(fēng)扇的設(shè)計(jì)[J]. 軟件,2020,41(01):6669

      【Abstract】: In hot summer, the electric fan brought a lot of convenience for people's life, the general electric fan only mechanical file manual speed regulation and manual switch. In the evening night, after temperature dropping, people easy to forget to turn off the fan and catch cold, when the temperature rises, it can not change the speed according to the change of temperature. The intelligent temperature control speed fan can automatically control the fan speed according to the indoor environment temperature. In order to make the fan closer to people's life, it is urgent to develop a new intelligent electric fan control system which can wake up by voice temperature sensing.

      【Key words】: Single intelligent temperature control; Raspberry PI; MCU; Control system

      0 ?引言

      自古以來,隨著人類現(xiàn)代社會(huì)和科技的飛速進(jìn)步、電子信息技術(shù)、控制技術(shù)等技術(shù)的不斷增加,社會(huì)信息逐漸加速,它使人們的生活、工作、學(xué)習(xí)和交流變得越來越相互關(guān)聯(lián)與密切。信息以及大數(shù)據(jù)的社會(huì)正在改變?nèi)藗兊姆N種生活習(xí)慣和各種工作方法[1]。與此同時(shí)我們發(fā)現(xiàn),它也挑戰(zhàn)了我們傳統(tǒng)的許多家用電器,經(jīng)過調(diào)查,我們知道了如今人們對家用電器的需求不再只是一個(gè)簡單的物質(zhì)需求與簡單的功能,更多關(guān)注和需求的是一種高度安全,令人感到舒適、美觀、并且易于操作的智能家電。因此,智能家電已成為一種令人向往的發(fā)展趨勢[2]。我們也知道:在炎熱的夏天,常見普通的風(fēng)扇為人們的生活帶來了很多便利,并且一般的電風(fēng)扇只有手動(dòng)去調(diào)速和機(jī)械檔的手動(dòng)開關(guān)來調(diào)速。在夏季和夜晚溫度下降后,人們有時(shí)候會(huì)因熟睡而忘記關(guān)閉電風(fēng)扇,當(dāng)溫度緩慢降低時(shí),普通風(fēng)扇卻不能依據(jù)溫度的變化而改變其轉(zhuǎn)速,然而智能溫控電風(fēng)扇可以做到這一點(diǎn),根據(jù)室內(nèi)環(huán)境溫度自動(dòng)控制風(fēng)扇轉(zhuǎn)速。為了讓風(fēng)扇更貼近人們的生活,開發(fā)一種以柔和的聲音和新型智能電風(fēng)扇控制系統(tǒng)是非常迫切的。

      通過數(shù)字溫度傳感器對外界環(huán)境溫度進(jìn)行數(shù)據(jù)采集,從而建立一個(gè)控制系統(tǒng),使電風(fēng)扇隨溫度的變化而自動(dòng)調(diào)節(jié)檔位,實(shí)現(xiàn)“溫度高、風(fēng)力大、溫度低、風(fēng)力弱”的性能。另外,通過紅外發(fā)射和接收裝置及按鍵實(shí)現(xiàn)各種功能的啟動(dòng)與關(guān)閉,并且可對各種功能實(shí)現(xiàn)遙控,用戶可以在一定范圍內(nèi)設(shè)置電風(fēng)扇的最低工作溫度,當(dāng)溫度低于所設(shè)置溫度時(shí),電風(fēng)扇將自動(dòng)關(guān)閉,當(dāng)高于此溫度時(shí)電風(fēng)扇又將重新啟動(dòng)[3]。

      1 ?系統(tǒng)總體設(shè)計(jì)

      1.1 ?功能介紹

      (1)風(fēng)速設(shè)為從低到高共2個(gè)檔位,可由用戶通過鍵盤設(shè)定。

      (2)每當(dāng)溫度低于下限值時(shí),則電風(fēng)扇風(fēng)速關(guān)閉。

      (3)每當(dāng)溫度在下限和上限之間時(shí),則電風(fēng)扇轉(zhuǎn)速緩慢。

      (4)每當(dāng)溫度高于上限值時(shí),則電風(fēng)扇風(fēng)速全速運(yùn)轉(zhuǎn)。

      1.2 ?整體設(shè)計(jì)思路

      利用溫度傳感器DSI8B20檢測環(huán)境溫度并直接輸出數(shù)字溫度信號給樹莓派或單片機(jī)進(jìn)行處理,在LED數(shù)碼管上顯示當(dāng)前環(huán)境溫度值以及預(yù)設(shè)溫度值。其中預(yù)設(shè)溫度值只能為整數(shù)形式,檢測到的當(dāng)前環(huán)境溫度可精確到小數(shù)點(diǎn)后一位。同時(shí)采用PWM脈寬調(diào)制方式來改變直流風(fēng)扇電機(jī)的轉(zhuǎn)速。并通過兩個(gè)按鍵改變預(yù)設(shè)溫度值,一個(gè)提高預(yù)設(shè)溫度,另一個(gè)降低預(yù)設(shè)溫度值[4-5]。

      可行性分析

      傳統(tǒng)電風(fēng)扇以及其轉(zhuǎn)機(jī)最致命的缺陷是不能依據(jù)外界環(huán)境溫度的變化來實(shí)施自動(dòng)調(diào)節(jié)風(fēng)機(jī)的轉(zhuǎn)速。所以說智能風(fēng)扇的發(fā)展將有效解決傳統(tǒng)風(fēng)機(jī)的不足,真正實(shí)現(xiàn)風(fēng)機(jī)的運(yùn)行受外部環(huán)境的控制,實(shí)現(xiàn)低耗能、高性能的智能風(fēng)機(jī),節(jié)約了很多的電力等資源,減少了許多人工消耗。這款智能風(fēng)扇適合所有家庭,特別適合老人和兒童,當(dāng)室內(nèi)溫度低于系統(tǒng)設(shè)定的一個(gè)閾值時(shí),它會(huì)強(qiáng)制并且自動(dòng)關(guān)閉此功能,從而實(shí)現(xiàn)保護(hù)老人和兒童的健康。智能風(fēng)扇控制系統(tǒng)開發(fā)的成本低,開發(fā)時(shí)間短,好上手。簡單地說,它不僅可以彌補(bǔ)傳統(tǒng)風(fēng)扇的缺點(diǎn)和不足,還可以在某些方面上增添新思路,新方向。如果可以大量投產(chǎn),將大大提高人們的生活質(zhì)量。因此,智能風(fēng)扇將具有非常良好的發(fā)展空間和前景,如果實(shí)現(xiàn)了這個(gè)技術(shù),將是一個(gè)很大的進(jìn)步。這個(gè)系統(tǒng)總的來說,主要從技術(shù)可行性和經(jīng)濟(jì)可行性的角度分析設(shè)計(jì),這確實(shí)可行。因此,該程序被開發(fā)用于根據(jù)室溫的溫度控制風(fēng)扇的旋轉(zhuǎn),并且還根據(jù)固定的溫度值與沒有溫度傳感器的風(fēng)扇旋轉(zhuǎn)調(diào)節(jié)方案 ?兼容。

      傳統(tǒng)電風(fēng)扇的直流風(fēng)讓人感到十分僵硬,人們很容易因長時(shí)間地吹而感冒,而自然風(fēng)又軟又寬,變化無常,讓人感到十分舒適,是既涼爽又舒適,人們很容易接受。與人工DC風(fēng)不同,自然風(fēng)速舒適,不規(guī)則變化,它不會(huì)讓人體表面的濕熱狀態(tài)一直處于加速流失狀態(tài),在經(jīng)過長時(shí)間對自然風(fēng)數(shù)字?jǐn)?shù)據(jù)的采集,可以用一些腳本語言模擬自然風(fēng)的這種無規(guī)律變化,吹出讓人心曠神怡的徐徐清風(fēng)。

      2 ?系統(tǒng)硬件設(shè)計(jì)

      2.1 ?實(shí)施計(jì)劃

      使用自動(dòng)識別溫度傳感器DS18B20的位置可以獲取溫度。

      根據(jù)溫差控制風(fēng)扇轉(zhuǎn)動(dòng)等的功能。

      日志文件(temperature_log)保存在python文件相同的目錄下。

      raspberry pie的操作系統(tǒng)以及我們熟悉的2012年12月之后產(chǎn)生的Raspbian系統(tǒng)已經(jīng)能夠非常完美的支持DS18B20單總線(1-wire)溫度傳感器。該傳感器由一個(gè)半導(dǎo)體封裝頭裝置和三個(gè)ping(引腳)組成,現(xiàn)在是一個(gè)非常精確并且成熟的數(shù)字設(shè)備。

      眾所周知,由于Raspberry Pi沒有ADC(模數(shù)轉(zhuǎn)換器),所以說我們無法直接讀取TMP36等模擬信號溫度傳感器。因此,DS18B20是非常適合這個(gè)場景的。

      2.2 ?硬件材料

      數(shù)字溫度傳感器加上一根延長線,它們也可以是濕度或高溫型號的其中一種。4.7K或10K歐姆電阻,一小塊面包板,一把跳線,擴(kuò)展板。

      DS18B20單線傳感器可通過非并聯(lián)連接進(jìn)行訪問,這與其他市售傳感器幾乎完全相同!所有傳感器共用相同的ping,所以說一個(gè)4.7K的電阻十分適合這里。

      這里的電阻我們來做的功能:拉出數(shù)據(jù)輸出線(數(shù)據(jù)線)和保持?jǐn)?shù)據(jù)傳輸過程中的穩(wěn)定。

      如果我們必須要使用DS18B20的防水版,則需要連接3個(gè)ping,它們分別是:紅色,黑色,黃色,并且未連接下一個(gè)ping(也就是引腳)。

      如果可以的話,利用高溫版本的防水版,需要橙色針腳(ping)連接到3.3V上面,白色接地線,藍(lán)色針腳連接到針腳4(4 ping)。

      在3.3V和數(shù)據(jù)引腳之間也需要4.7K-10K的 ?電阻。

      雖然DS18B20看起來像一般市面上的普通傳感器,但它卻有許多復(fù)雜的內(nèi)部組件。

      它的芯片包括這塊板專用的單總線串行接口、邏輯控制部分單元和核心部分溫度傳感器。

      它的輸出針腳輸出數(shù)字信息,以便Raspbian/ ococentalis可以在某一個(gè)針上。在運(yùn)行項(xiàng)目之前,使用SSH工具來進(jìn)行一次測試是最穩(wěn)妥的。

      sudo modprobe w1-gpio

      sudo modprobe w1-therm

      cd /sys/bus/w1/devices

      cd 28-xxxx (change this to match what serial number pops up)

      cat w1_slave

      系統(tǒng)會(huì)告訴我們有一個(gè)可供讀取的溫度數(shù)據(jù)。它也許像一個(gè)文個(gè)個(gè)文件,所以我們需要將這個(gè)數(shù)據(jù)讀取出來。

      在返回消息的第一行的結(jié)尾,將出現(xiàn)True或者是False,如果是,則第二行后面我們需要跟著溫度數(shù)據(jù)來結(jié)尾。

      如果主板連接了多個(gè)傳感器單元,我們將可以了解并看到多個(gè)28-xxx file(文件),插入傳感器,校檢新生成的文件名,然后標(biāo)記,將他們一一對應(yīng)給傳感器。這樣,我們就可以區(qū)分每一個(gè)傳感器對應(yīng)于的確定文件。

      3 ?系統(tǒng)軟件設(shè)計(jì)

      下面的Python腳本處理一些異?;蛘咤e(cuò)誤信息并且反饋給用戶界面,同時(shí)還會(huì)返回每秒的華氏和攝氏溫度數(shù)據(jù)。

      import os

      import glob

      import time

      os.system('modprobe w1-gpio')

      os.system('modprobe w1-therm')

      base_dir = '/sys/bus/w1/devices/'

      device_folder = glob.glob(base_dir + '28*')[0]

      device_file = device_folder + '/w1_slave'

      Def read_temp_raw():

      f = open(device_file, 'r')

      lines = f.readlines()

      f.close()

      return lines

      def read_temp():

      lines = read_temp_raw()

      while lines[0].strip()[-3:] != 'YES':

      time.sleep(0.2)

      lines = read_temp_raw()

      equals_pos = lines[1].find('t=')

      if equals_pos != -1:

      temp_string = lines[1][equals_pos+2:]

      temp_c = float(temp_string) / 1000.0

      temp_f = temp_c * 9.0 / 5.0 + 32.0

      return temp_c, temp_f

      while True:

      print(read_temp())

      time.sleep(1)

      在開始運(yùn)行腳本時(shí),需要先運(yùn)行modprobe命令以使得api運(yùn)行。

      接下來的腳本用于查找可以從哪些文件中讀取消息。

      現(xiàn)在有一個(gè)問題是有時(shí)候溫度會(huì)在在樹莓派下讀取。可以用以下代碼替換read-temp-ray方法。然后在程序開始時(shí)添加一行“導(dǎo)入子進(jìn)程”。

      def read_temp_raw():

      catdata = subprocess.Popen(['cat',device_file], stdout=subprocess.PIPE, stderr=subprocess.PIPE)

      out,err = catdata.communicate()

      out_decode = out.decode('utf-8')

      lines = out_decode.split('\n')

      return lines

      讀取溫度有兩種不同的方式。read_temp_ray通過接口交檢message的前兩行。read_temp封裝它并添加error消息檢測和重試,直到出現(xiàn)“True”為止。在第一行的末尾此方法返回兩個(gè)值,第一個(gè)是Celsius,第二個(gè)是Fahrenheit。

      可以像下面這樣把兩個(gè)值分開

      deg_c, deg_f = read_temp()

      主要的function只是一個(gè)循環(huán)體,用來讀取溫度數(shù)據(jù),(print)打印出來,然后sleep一秒鐘。然后繼續(xù)一次循環(huán)。

      要把這個(gè)程序傳到樹莓派上,你可以通過SSH在命令行里打開一個(gè)文本編輯器

      運(yùn)行 thermometer.py

      測試與配置

      運(yùn)行這個(gè)程序需要超級用戶權(quán)限,所以在命令行里運(yùn)行下面的命令

      sudo python thermometer.py

      設(shè)置項(xiàng):

      T_HIGH = 48

      溫度^ 48度開始轉(zhuǎn)動(dòng),在溫度傳感器失效/沒有傳感器時(shí)使用

      T_LOW = 42

      溫度^42度停止轉(zhuǎn)動(dòng),在溫度傳感器失效/沒有傳感器時(shí)使用

      T_DIFF_HIGH = 24

      溫差^ 24度開始轉(zhuǎn)動(dòng)

      T_DIFF_LOW = 18

      溫差^18度停止轉(zhuǎn)動(dòng)

      T_SENOR_DIFF = 0

      溫度傳感器和真實(shí)環(huán)境溫度矯正值,真實(shí)環(huán)境溫度傳感器實(shí)測溫度+校正值

      fan_pin = 12

      控制風(fēng)扇IO針腳BOARD編號

      NPN =真

      控制風(fēng)扇用的是NPN三極管,PNP三極管時(shí)改為假

      IS_LOG_FILE = True

      是否輸出溫度信息到文件

      IS_LOG_CONSOLE = True

      是否輸出溫度信息到控制臺

      time_interval = 5

      檢測溫度間隔時(shí)間單位秒

      log_file_duration = 12

      日志記錄保留時(shí)間長度,單位小時(shí)

      4 ?結(jié)束語

      本系統(tǒng)最大的優(yōu)點(diǎn)是解決了傳統(tǒng)風(fēng)扇不能實(shí)時(shí)根據(jù)外界溫度變化自動(dòng)調(diào)節(jié)風(fēng)扇轉(zhuǎn)速的缺點(diǎn),智能

      風(fēng)扇將有效改變傳統(tǒng)風(fēng)扇高功耗,低性能的缺點(diǎn)。該智能風(fēng)扇適用于所有家庭,尤其針對老人小孩設(shè)計(jì)的當(dāng)室內(nèi)溫度低于系統(tǒng)設(shè)置的閾值時(shí)自動(dòng)關(guān)閉這一功能,保護(hù)了老人和小孩的身體健康,更貼近于人們生活。

      參考文獻(xiàn)

      [1] 李麗, 大數(shù)據(jù)時(shí)代的意識形態(tài)話語權(quán): 挑戰(zhàn)及應(yīng)對, 2018-07-15.

      [2] 周技鋒. 嵌入式Linux平臺實(shí)現(xiàn)家電物聯(lián)網(wǎng)方案的研究與應(yīng)用[J]. 數(shù)字通信世界, 2017(09): 205.

      [3] 廖曉娟. 智能溫控風(fēng)扇設(shè)計(jì)[J]. 2016(22): 54-55.

      [4] 張寧子. 基于ITU總線的智能干濕球溫濕度測試系統(tǒng)研究[D]. 寧夏大學(xué), 2013.

      [5] 文海瓊, 卓朝松. 藍(lán)牙數(shù)據(jù)傳輸智能溫控風(fēng)扇系統(tǒng)的設(shè)計(jì)[J]. 電子世界, 2018, No.544(10): 145-146.

      [6] 曹巧媛. 單片機(jī)原理及應(yīng)用. 北京: 電子工業(yè)出版社, 2002. 2.

      [7] 王倫. 電風(fēng)扇原理與維修技術(shù)[M]. 北京: 新時(shí)代出版社, 1999.

      [8] 張毅剛. 新編MCS-51單片機(jī)應(yīng)用設(shè)計(jì). 哈爾濱工業(yè)大學(xué)出版社, 2006, 10.

      [9] 梁廷貴, 王裕琛. 可控硅觸發(fā)電路語音電路分冊[M]. 北京: 科學(xué)技術(shù)文獻(xiàn)出版社, 2003.

      [10] 王倫. 電風(fēng)扇原理與維修技術(shù)[M]. 北京: 新時(shí)代出版社, 1999.

      猜你喜歡
      樹莓派控制系統(tǒng)單片機(jī)
      基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
      電子制作(2019年13期)2020-01-14 03:15:28
      基于單片機(jī)的層次漸變暖燈的研究
      電子制作(2019年15期)2019-08-27 01:12:10
      基于單片機(jī)的便捷式LCF測量儀
      電子制作(2019年9期)2019-05-30 09:42:02
      Ka頻段衛(wèi)星通信自適應(yīng)抗雨衰控制系統(tǒng)設(shè)計(jì)
      智能安全防盜探測小車
      基于單片機(jī)的LED路燈控制系統(tǒng)設(shè)計(jì)
      一種基于樹莓派的門禁系統(tǒng)快速構(gòu)建方法
      基于PLC的鋼廠熱連軋感應(yīng)加熱爐控制系統(tǒng)實(shí)現(xiàn)
      礦井提升機(jī)控制系統(tǒng)發(fā)展的研究
      煙草物流中心工業(yè)無線網(wǎng)絡(luò)安全監(jiān)測系統(tǒng)設(shè)計(jì)
      淮阳县| 黑山县| 疏勒县| 晋州市| 上高县| 阳西县| 邓州市| 靖宇县| 清远市| 县级市| 兴宁市| 富裕县| 南平市| 封丘县| 河北省| 临猗县| 兴城市| 临江市| 乳源| 吴江市| 齐齐哈尔市| 黄山市| 东乡县| 石柱| 日土县| 金沙县| 临武县| 广东省| 太保市| 南丹县| 石渠县| 铅山县| 磴口县| 遵义市| 来安县| 延边| 白水县| 郯城县| 广元市| 和龙市| 凯里市|