国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

動手做個(gè)溫度指示器

2017-01-07 02:53大姚
中學(xué)科技 2016年11期
關(guān)鍵詞:指示器舵機(jī)伺服電機(jī)

大姚

Arduino是創(chuàng)客們DIY的必備法寶。借助Arduino 開發(fā)板,創(chuàng)客們通過簡單的代碼程序就可以實(shí)現(xiàn)一些常用電子設(shè)備的運(yùn)行功能。本期我們介紹如何利用Arduino來制作家里的常用物品之一——溫度指示器。一起動手試做一下吧!

材料準(zhǔn)備

Arduino控制器,溫濕度傳感器 DHT11, 舵機(jī) DSS M15,杜邦線若干。

溫濕度傳感器是溫度指示器的感應(yīng)元件。因?yàn)楣P者地處南方地區(qū),本次制作采用DHT11溫濕度傳感器,它包括一個(gè)電阻式感濕元件和一個(gè)NTC測溫元件,并與一個(gè)高性能8位單片機(jī)相連接。傳感器可通過3P數(shù)字線直插Arduino控制器,Arduino控制器可以通過屏幕實(shí)時(shí)顯示該傳感器的讀數(shù)變化,其溫度感應(yīng)范圍為0~50℃。北方地區(qū)的讀者可以采用探測范圍更大的DHT22溫濕度傳感器,其溫度感應(yīng)范圍為-40~80℃。

溫度指示器選用 DSS M15舵機(jī)作為指示部件,它的舵盤的旋轉(zhuǎn)角度可達(dá)180°。

制作過程

1. 首先,我們要為溫度指示器制作一個(gè)外殼??梢赃x用一些小型的廢棄包裝盒作為外殼,然后用畫筆在盒子上畫出溫度指示范圍。根據(jù)舵盤的旋轉(zhuǎn)角度范圍,溫度指示范圍設(shè)計(jì)為一個(gè)半圓,均分成6等分,指示范圍標(biāo)注為-10~50℃。

2. 設(shè)計(jì)好外殼后,要把舵機(jī)裝在外殼里面。安裝前在半圓的圓心處開一個(gè)小孔,把舵機(jī)上的舵盤拆下,將舵機(jī)的傳動軸從小孔中穿過去。由于舵機(jī)的傳動軸較短,所以選取的外殼不宜太厚,以免影響舵機(jī)的正常運(yùn)行。

3. 接下來我們要完成的就是整個(gè)溫度指示器的核心部分。將溫濕度傳感器和舵機(jī)用杜邦線連接到Arduino控制器上,電路連接圖如圖3- 1、圖3- 2所示。

4. 用硬紙板剪一枚指針,用雙面膠固定到舵盤上。最后將Arduino控制器封到盒子里,將溫濕度傳感器DHT11用雙面膠固定在外殼上方,給Arduino控制器接上電源(電壓范圍為5~12V的直流電源適配器)。至此就完成了硬件的所有制作,接下來是編寫驅(qū)動程序。

程序編寫

驅(qū)動程序使用Arduino IDE開發(fā)平臺來編寫。在編寫溫度指示器的代碼之前,需要先導(dǎo)入兩個(gè)頭文件——舵機(jī)的庫文件 Servo.h 和溫濕度傳感器的頭文件 DHT.h。舵機(jī)的庫文件 Servo.h是Arduino標(biāo)準(zhǔn)庫頭文件庫,如圖5所示,圖中表示文件庫中已經(jīng)有包含舵機(jī)的庫文件。

溫濕度傳感器的頭文件DHT.h從下面的鏈接中下載:http://wiki.dfrobot.com.cn/index.php/(SKU:DFR0067)DHT11%E6%95%B0%E5%AD%97%E6%B8%A9%E6%B9%BF%E5%BA%A6%E4%BC%A0%E6%84%9F%E5%99%A8_V2。

下載后將它解壓縮到Arduino安裝路徑下的libraries中,如圖6所示。

程序代碼的運(yùn)行原理是先通過溫濕度傳感器DHT11采集到模擬值,通過Arduino控制器的模擬口A2(管腳2)輸入,將模擬值通過變換公式轉(zhuǎn)換為舵盤的指示角度,從而控制指針旋轉(zhuǎn)到相應(yīng)的位置。這里會有一個(gè)映射關(guān)系,將溫度值映射到相應(yīng)的舵盤旋轉(zhuǎn)角度值。

具體代碼如下:

#include //導(dǎo)入伺服電機(jī)頭文件

#include //導(dǎo)入溫濕度傳感器頭文件

Servo myservo; // 定義一個(gè)伺服電機(jī)的對象

DHT dht; // 定義另一個(gè)溫濕度的對象

void setup()

{

dht.setup(2); // 設(shè)置管腳2接受溫度信號

myservo.attach(9); //設(shè)置管腳9輸出伺服電機(jī)控制信號

}

void loop()

{

float temperature = dht.getTemperature(); //讀取溫度信號

myservo.write(180-(temperature+10)*3); //根據(jù)溫度信號輸出伺服電機(jī)的偏轉(zhuǎn)角,最大偏轉(zhuǎn)角為180°

delay(2000); //延時(shí)2s,方便伺服電機(jī)轉(zhuǎn)到相應(yīng)的角度

}

猜你喜歡
指示器舵機(jī)伺服電機(jī)
專利名稱:一種適應(yīng)壓鑄環(huán)境的伺服電機(jī)
含齒隙彈載舵機(jī)的全局反步模糊自適應(yīng)控制
生產(chǎn)線中的伺服電機(jī)定位控制
伺服電機(jī)控制技術(shù)的應(yīng)用及發(fā)展趨向分析
基于dsPIC單片機(jī)的飛艇舵機(jī)控制實(shí)現(xiàn)
基于高速同步485總線通信的多通道舵機(jī)控制器設(shè)計(jì)
柴油機(jī)儀表指示器的維修保養(yǎng)
接地故障指示器的10kV線路接地故障的判斷與分析研究
基于云模型的舵機(jī)同步控制
基于非接觸式電流互感器取電的故障指示器設(shè)計(jì)