“(RB-13K024A)基于Arduino 電子積木互動(dòng)套件”的版本間的差異

來(lái)自ALSROBOT WiKi
跳轉(zhuǎn)至: 導(dǎo)航搜索
?精選例程
?精選例程
第154行: 第154行:
 
* 【ArduBlock】
 
* 【ArduBlock】
 
[[文件:13K024A08.png|500px|有框|居中]]
 
[[文件:13K024A08.png|500px|有框|居中]]
 +
 +
===電子溫度計(jì)===
 +
* 【功能】
 +
空氣的溫度和濕度是最直觀、最常見(jiàn)的兩個(gè)物理量。能夠測(cè)量它們的傳感器非常多,我們的電子模塊使用LM35測(cè)量空氣溫度、DHT11測(cè)量空氣溫濕度。在這個(gè)案例中我們制作一個(gè)簡(jiǎn)單的電子溫度計(jì),串口監(jiān)視器就是我們的電子屏幕,輸出當(dāng)前的溫度和濕度。
 +
* 【硬件】
 +
我們使用LM35測(cè)量溫度,使用DHT11測(cè)量濕度。兩者的內(nèi)部結(jié)構(gòu)非常復(fù)雜,我們就不做介紹了。
 +
[[文件:13K024A09.png|500px|有框|居中]]
 +
LM35標(biāo)記為A,所以直接接到模擬口并使用analogRead讀取數(shù)值。LM35規(guī)定溫度每升高1℃,電壓增加10mV。而ADC的精度決定其檢測(cè)范圍是0到1023,對(duì)應(yīng)的就是0V到5V,那么假設(shè)當(dāng)前檢測(cè)的數(shù)值是n,那么當(dāng)前溫度=5×n÷1023×100。注意ADC最大量程5V可以通過(guò)AREF引腳修改。
 +
至于DHT11,我們僅在ArduBlock程序中進(jìn)行演示。如果要在代碼中使用,建議下載DHT11相關(guān)的庫(kù)函數(shù),然后根據(jù)庫(kù)文件的要求進(jìn)行使用即可。
 +
我們連接LM35電子積木到A0,DHT11到D8。
 +
[[文件:13K024A10.png|500px|有框|居中]]
 +
* 【軟件】
 +
打開(kāi)Arduino IDE,編寫并上傳如下程序:
 +
<pre style="color:blue">
 +
/***********************************************************
 +
奧松機(jī)器人  RobotBase  www.robotbase.cn
 +
目    的:  通過(guò)串口輸出空氣溫度值
 +
應(yīng)用硬件:  Carduino UNO R3 控制器
 +
應(yīng)用軟件:  Arduino IDE 1.7.8
 +
發(fā)布時(shí)間:  2016-02-17
 +
創(chuàng) 建 人:  李澤
 +
版 本 號(hào):  1.0
 +
說(shuō)    明:  若用于商業(yè)用途,請(qǐng)保留此段文字或注明代碼來(lái)源
 +
          哈爾濱奧松機(jī)器人科技有限股份公司保留所有版權(quán) 
 +
***********************************************************/
 +
void setup()
 +
{
 +
  Serial.begin(9600);
 +
}
 +
 +
void loop()
 +
{
 +
  Serial.print("Temperature: ");
 +
  Serial.println(analogRead(0)*5.0/1023*100);  // 注意此處的公式和類型轉(zhuǎn)換
 +
  delay(100);
 +
}
 +
</pre>
 +
* 【ArduBlock】
 +
[[文件:13K024A11.png|500px|有框|居中]]
  
 
==產(chǎn)品相關(guān)推薦==
 
==產(chǎn)品相關(guān)推薦==

2016年4月8日 (五) 10:58的版本

13K024A01.png

目錄

產(chǎn)品概述

Arduino Uno是開(kāi)源的USB接口Simple I/O接口板(包括12個(gè)數(shù)字IO,6個(gè)PWM輸出,6通道10位ADC)。它使用C/C++語(yǔ)言的IDE集成開(kāi)發(fā)環(huán)境進(jìn)行編程,讓你快速使用Arduino制作互動(dòng)作品。本產(chǎn)品使用便于插接的電子積木,使得原型搭建和驗(yàn)證更加輕松。
基于Arduino互動(dòng)電子積木套件是哈爾濱奧松機(jī)器人科技有限公司專門為Arduino與單片機(jī)電子制作愛(ài)好者精心打造的一款電子學(xué)習(xí)套件,本套件充分考慮到了愛(ài)好者初學(xué)電子遇到的困難,從簡(jiǎn)到繁,由淺至深,從數(shù)字到模擬傳感器實(shí)驗(yàn)的階梯式學(xué)習(xí)。即使你沒(méi)有學(xué)過(guò)電子、不懂單片機(jī)也沒(méi)有關(guān)系,只要你有足夠創(chuàng)意,肯于動(dòng)手,相信你很快就能創(chuàng)造出令人驚艷的互動(dòng)作品。 整套基于Arduino電子積木互動(dòng)套件無(wú)需焊接,只要像玩積木一樣插接就可以完成實(shí)驗(yàn),避免了初學(xué)者焊接元件浪費(fèi)原料不環(huán)保的習(xí)慣。傳感器使用放插反接口,大大降低接錯(cuò)的可能性。 電子積木套件中使用Arduino IDE編程的同時(shí),還會(huì)介紹如何使用ArduBlock實(shí)現(xiàn)相同的效果。ArduBlock是一款圖形化編程工具,因此不需要代碼也能實(shí)現(xiàn)某些功能。還包括了Processing、Arduino IDE、Fritzing、串口調(diào)試助手等常用軟件。使愛(ài)好者完全無(wú)后顧之憂,輕松學(xué)習(xí)并啟發(fā)創(chuàng)新思維,領(lǐng)悟開(kāi)源創(chuàng)意文化,這款套件是帶你進(jìn)入互動(dòng)新媒體領(lǐng)域和電子世界的必備之選。

主控器技術(shù)參數(shù)

  1. 微處理器:ATmega328P-PU
  2. 尺寸:75×55×15mm
  3. 工作電壓:5V
  4. 輸入電壓:接上USB 時(shí)無(wú)須外部供電或外部7V~12V DC輸入
  5. 輸出電壓:5V DC輸出或3.3V DC輸出
  6. 時(shí)鐘頻率:16 MHz
  7. 輸入電壓:7-12V(推薦)
  8. 輸入電壓:6-20V(極限)
  9. 支持USB供電及接口協(xié)議(不需外接電源)
  10. 支持ISP下載功能
  11. 數(shù)字I/O端口:14個(gè)(6個(gè)PWM輸出口)
  12. 模擬輸入端口:6個(gè)
  13. 直流電流:40mA(I/O端口)
  14. 直流電流:50mA(3.3V端口)
  15. Flash內(nèi)存:32 KB(ATmega328,其中0.5 KB用于引導(dǎo)程序)
  16. SRAM:2 KB(ATmega328)
  17. EEPROM:1 KB(ATmega328)

產(chǎn)品清單

  1. RB-01C076 CarDuino UNO R3 * 1 個(gè)
  2. RB-01C015A Arduino XBee Sensor Shield * 1 個(gè)
  3. RB-02S032A 按壓式大按鈕模塊 * 1 個(gè)
  4. RB-03T004A 紅外發(fā)射模塊 * 1 個(gè)
  5. RB-02S005A LED發(fā)光模塊(紅色) * 1 個(gè)
  6. RB-02S024A 旋轉(zhuǎn)角度電位計(jì)傳感器 * 1 個(gè)
  7. RB-02S031A 蜂鳴器發(fā)聲模塊 * 1 個(gè)
  8. RB-03T005A 紅外接收模塊 * 1 個(gè)
  9. RB-02S023A 光線傳感器模塊 * 1 個(gè)
  10. RB-02S025A 大功率繼電器模塊 * 1 個(gè)
  11. RB-02S002A Mini紅外尋線傳感器 * 1 個(gè)
  12. RB-02S027A 綠色單向傾角傳感器 * 1 個(gè)
  13. RB-02S030A 藍(lán)色震動(dòng)傳感器 * 1 個(gè)
  14. RB-02S022A 火焰?zhèn)鞲衅?/a> * 1 個(gè)
  15. RB-02S019A LM35線性溫度傳感器 * 1 個(gè)
  16. RB-02S014A DHT11溫濕度傳感器 * 1 個(gè)
  17. RB-02S009A 電壓檢測(cè)傳感器 * 1 個(gè)
  18. RB-02S017A 紅外熱釋電傳感器 * 1 個(gè)
  19. RB-02S048A 水位傳感器 * 1 個(gè)
  20. RB-02S047A 土壤濕度傳感器 * 1 個(gè)
  21. RB-02S003A Mini紅外避障傳感器 * 1 個(gè)
  22. RB-03T003 超薄紅外遙控器 * 1 個(gè)
  23. RB - 12C229 單頭放插反 3P 連接線 * 10 條
  24. RB - 10P017 6 節(jié) 5 號(hào)并排電池盒 * 1 個(gè)
  25. RB - 10P016 DC2.1 電源接線端子 * 1 個(gè)
  26. RB - 06L008 抗干擾 USB 數(shù)據(jù)連接線 * 1 條
  27. RB - 13K031 超大雙層元件盒 * 1 個(gè)
  28. RB - 12C199 黑色一字螺絲刀 * 1 個(gè)
  29. RB - 07B018 基于 Arduino 互動(dòng)電子積木資料光盤 * 1 張

編譯環(huán)境下載

  • Arduino .cc 當(dāng)前最新版 IDE:Arduino 1.6.8

下載地址: http://www.arduino.cc/en/Main/Software

  • Arduino .org 當(dāng)前最新版 IDE:Arduino 1.7.8

下載地址:http://www.arduino.org.cn/software

  • Ardublock 圖形化編譯軟件

下載地址:點(diǎn)擊下載 Ardublock 編程軟件

Arduino 基本語(yǔ)言

Arduino 軟件及驅(qū)動(dòng)安裝

從閃爍的 LED 開(kāi)始

  • 【功能】

LED閃爍程序要實(shí)現(xiàn)的功能是LED小燈點(diǎn)亮一秒,再熄滅一秒。這個(gè)程序是學(xué)習(xí)Arduino IDE的第一步。千里之行,始于足下,讓我們開(kāi)始吧!

  • 【硬件】

LED是發(fā)光二極管的英文縮寫。它可以發(fā)出不同波長(zhǎng)的電磁波,我們的產(chǎn)品發(fā)出的紅色的可見(jiàn)光。

13K024A02.png

硬件連接還是比較容易的,首先把擴(kuò)展板卡合到主控板的上方,注意此連接方法是唯一的,如果位置卡合錯(cuò)誤可能會(huì)造成主板損壞!

13K024A03.png

要實(shí)現(xiàn)LED閃爍的效果,我們只需要LED電子模塊即可,我們看到電子模塊上帶有標(biāo)記D,說(shuō)明是數(shù)字的(digital)傳感器,因此使用3P線將其連接到擴(kuò)展板。注意通常不使用D0、D1和D13。因?yàn)镈0和D1在程序上傳時(shí)不能被占用,D13內(nèi)置了1KΩ的電阻,默認(rèn)連接了板載的L小燈,常用作測(cè)試。本案例中把LED連接到D7。

13K024A04.png

注意3P線的線序要和擴(kuò)展板一一對(duì)應(yīng)。為黑色對(duì)應(yīng)G(接地,GND),中間的紅色對(duì)應(yīng)V(5V電源,可用跳線帽切換為3.3V),黃色對(duì)應(yīng)信號(hào)線,可能是A或D,主要取決于電子模塊的符號(hào)是A還是D。

  • 【軟件】

打開(kāi)Arduino IDE,編寫并上傳如下程序:

/***********************************************************
奧松機(jī)器人  RobotBase  www.robotbase.cn
目    的:  LED閃爍	
應(yīng)用硬件:  Carduino UNO R3 控制器
應(yīng)用軟件:  Arduino IDE 1.7.8
發(fā)布時(shí)間:  2016-02-16
創(chuàng) 建 人:  李澤
版 本 號(hào):  1.0 
說(shuō)    明:  若用于商業(yè)用途,請(qǐng)保留此段文字或注明代碼來(lái)源	
           哈爾濱奧松機(jī)器人科技有限股份公司保留所有版權(quán)   
***********************************************************/
void setup() {
  pinMode(7, OUTPUT);  // 設(shè)置D7為輸出模式,因?yàn)長(zhǎng)ED是輸出裝置
}

void loop() {
  digitalWrite(7, LOW);  // 設(shè)置D7為低電平,LED熄滅
  delay(1000);  // 延時(shí)等待1000毫秒,即1秒鐘
  digitalWrite(7, HIGH);  // 設(shè)置D7為高電平,點(diǎn)亮LED
  delay(1000);
}
  • 【ArduBlock】

如果不想敲入復(fù)雜的代碼,你還可以選擇相對(duì)比較簡(jiǎn)單的ArduBlock進(jìn)行編程。安裝和打開(kāi)方法參考之前的軟件介紹。

13K024A05.png

精選例程

火焰報(bào)警器

  • 【功能】

顧名思義,本電子裝置使用火焰?zhèn)鞲衅鳈z測(cè)是否存在火源,當(dāng)發(fā)現(xiàn)火焰后發(fā)出警報(bào)。你還可以結(jié)合氣體傳感器,甚至在掌握了更多編程方法后,實(shí)現(xiàn)發(fā)送微信消息這樣的功能。為了簡(jiǎn)單,這里我們使用蜂鳴器發(fā)出警報(bào)。為了得知閾值(也就是出發(fā)警報(bào)的臨界值),你應(yīng)當(dāng)先用串口輸出有無(wú)火焰的數(shù)值,然后給出一個(gè)合理的數(shù)值。

  • 【硬件】

火焰?zhèn)鞲衅鞯膶I(yè)稱呼應(yīng)為光電二極管。光電二極管利用雜質(zhì)半導(dǎo)體的性質(zhì)制成PN節(jié),從而對(duì)特定波長(zhǎng)的電磁波敏感。光電二極管工作在反向電壓下,在正向電壓下也能導(dǎo)電,但是效果非常差。

13K024A06.png

我們?cè)凇叭梭w紅外報(bào)警器”便知道具有溫度的物體可以發(fā)射紅外線?;鹧鏈囟雀?,當(dāng)然也會(huì)發(fā)出紅外線,但是和人體發(fā)出紅外線的波長(zhǎng)不同。火焰發(fā)出紅外線的波長(zhǎng)在大自然中并不常見(jiàn),但是它依然會(huì)受到人體、陽(yáng)光等因素的影響。該電子積木和紅外熱釋電傳感器類似,我們也可以用紙繞成圈后套在傳感器上以減少干擾。 我們把火焰?zhèn)鞲衅鬟B接到A0,蜂鳴器給到D8。

13K024A07.png
  • 【軟件】

打開(kāi)Arduino IDE,編寫并上傳如下程序:

/***********************************************************
奧松機(jī)器人  RobotBase  www.robotbase.cn
目    的:  當(dāng)發(fā)現(xiàn)火焰時(shí)報(bào)警
應(yīng)用硬件:  Carduino UNO R3 控制器
應(yīng)用軟件:  Arduino IDE 1.7.8
發(fā)布時(shí)間:  2016-02-17
創(chuàng) 建 人:  李澤
版 本 號(hào):  1.0 
說(shuō)    明:  若用于商業(yè)用途,請(qǐng)保留此段文字或注明代碼來(lái)源	
           哈爾濱奧松機(jī)器人科技有限股份公司保留所有版權(quán)   
***********************************************************/
void setup()
{
  pinMode(8, OUTPUT);  // 蜂鳴器是輸出裝置
  noTone(8);
  digitalWrite(8, HIGH);  // 關(guān)閉蜂鳴器
}

void loop()
{
  if(analogRead(A0) > 200) {  // 如果檢測(cè)到的火焰值超過(guò)了你設(shè)定的閾值
    digitalWrite(8, LOW); delay(2000);  // 那么就讓蜂鳴器響兩秒
    noTone(8);
    digitalWrite(8, HIGH);  // 然后再關(guān)閉蜂鳴器
  }
}
  • 【ArduBlock】
13K024A08.png

電子溫度計(jì)

  • 【功能】

空氣的溫度和濕度是最直觀、最常見(jiàn)的兩個(gè)物理量。能夠測(cè)量它們的傳感器非常多,我們的電子模塊使用LM35測(cè)量空氣溫度、DHT11測(cè)量空氣溫濕度。在這個(gè)案例中我們制作一個(gè)簡(jiǎn)單的電子溫度計(jì),串口監(jiān)視器就是我們的電子屏幕,輸出當(dāng)前的溫度和濕度。

  • 【硬件】

我們使用LM35測(cè)量溫度,使用DHT11測(cè)量濕度。兩者的內(nèi)部結(jié)構(gòu)非常復(fù)雜,我們就不做介紹了。

13K024A09.png

LM35標(biāo)記為A,所以直接接到模擬口并使用analogRead讀取數(shù)值。LM35規(guī)定溫度每升高1℃,電壓增加10mV。而ADC的精度決定其檢測(cè)范圍是0到1023,對(duì)應(yīng)的就是0V到5V,那么假設(shè)當(dāng)前檢測(cè)的數(shù)值是n,那么當(dāng)前溫度=5×n÷1023×100。注意ADC最大量程5V可以通過(guò)AREF引腳修改。 至于DHT11,我們僅在ArduBlock程序中進(jìn)行演示。如果要在代碼中使用,建議下載DHT11相關(guān)的庫(kù)函數(shù),然后根據(jù)庫(kù)文件的要求進(jìn)行使用即可。 我們連接LM35電子積木到A0,DHT11到D8。

13K024A10.png
  • 【軟件】

打開(kāi)Arduino IDE,編寫并上傳如下程序:

/***********************************************************
奧松機(jī)器人  RobotBase  www.robotbase.cn
目    的:  通過(guò)串口輸出空氣溫度值
應(yīng)用硬件:  Carduino UNO R3 控制器
應(yīng)用軟件:  Arduino IDE 1.7.8
發(fā)布時(shí)間:  2016-02-17
創(chuàng) 建 人:  李澤
版 本 號(hào):  1.0 
說(shuō)    明:  若用于商業(yè)用途,請(qǐng)保留此段文字或注明代碼來(lái)源	
           哈爾濱奧松機(jī)器人科技有限股份公司保留所有版權(quán)   
***********************************************************/
void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Serial.print("Temperature: ");
  Serial.println(analogRead(0)*5.0/1023*100);  // 注意此處的公式和類型轉(zhuǎn)換
  delay(100);
}
  • 【ArduBlock】
13K024A11.png

產(chǎn)品相關(guān)推薦

Erweima.png

產(chǎn)品購(gòu)買地址

基于Arduino互動(dòng)電子積木套件

周邊產(chǎn)品推薦

動(dòng)手玩兒轉(zhuǎn)Arduino書(shū)籍
Arduino從基礎(chǔ)到實(shí)踐

相關(guān)問(wèn)題解答

Arduino 驅(qū)動(dòng)安裝失???最全的解決辦法
如何利用Xbee模塊實(shí)現(xiàn)兩個(gè)Arduino UNO控制器的通信

相關(guān)學(xué)習(xí)資料

愛(ài)上Arduino與愛(ài)上Processing的互動(dòng)視頻教程
基于Arduino互動(dòng)電子積木教學(xué)課程(第一節(jié))
奧松機(jī)器人技術(shù)論壇