(RB-13K166)物聯(lián)網(wǎng)傳感器實(shí)踐大禮包

來自ALSROBOT WiKi
2016年5月3日 (二) 15:16Arduino77討論 | 貢獻(xiàn)的版本

(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉(zhuǎn)至: 導(dǎo)航、 搜索

目錄

產(chǎn)品概述

基于Arduino 傳感器互動(28 件)套件是哈爾濱奧松機(jī)器人科技股份有限公司專門為 對電子產(chǎn)品感興趣的愛好者精心打造的一款電子學(xué)習(xí)套件,其中包含28 中常用傳感器、 防插反連接線28 套、用戶手冊、所有實(shí)驗程序。用戶手冊中主要包括28 個傳感器的單 獨(dú)介紹和其詳細(xì)的使用方法,后面還有擴(kuò)展實(shí)驗,用這些傳感器做一些實(shí)際可以用到的 產(chǎn)品,當(dāng)然該套件中只例舉了一部分?jǐn)U展實(shí)驗,您也可以根據(jù)這些啟發(fā),來設(shè)計一些自 己喜歡的實(shí)驗。所有的實(shí)驗都是實(shí)際操作和測試過的,可以保證實(shí)驗和程序的正確性, 該套件中所有的實(shí)驗均不需要焊接,只需按照說明,用連接線插到Arduino 擴(kuò)展板相應(yīng)的 引腳即可,本套件的連接線均采用單頭防插反接頭,連接方便且不會出錯。另外,視頻 是挑選典型的實(shí)驗,手把手一步一步教你操作,即使以前從未接觸過電子產(chǎn)品,也可以 按照視頻步驟,完成實(shí)驗。

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

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

Arduino編譯環(huán)境下載

當(dāng)前最新版Arduino 1.7.8 下載地址:http://www.arduino.org.cn/software

第一個Arduino實(shí)驗

點(diǎn)亮13號引腳的LED燈,持續(xù)一秒,然后滅掉,再持續(xù)一秒,一直循環(huán)。
在這第一個實(shí)驗中,我們假設(shè)讀者使用控制器的型號是Arduino UNO,并獲取了Arduino開發(fā)環(huán)境,而且已經(jīng)安裝了USB驅(qū)動。

連接Arduino控制板和電腦

將USB線一端插在Arduino控制板上,一端插在電腦的USB接口上。(獨(dú)立工作時Arduino控制板可以選擇從USB供電, 也可以選擇由電源適配器供電)

打開LED blink例程


打開軟件選擇文件 - 示例 - 01.Basics - Blink

blink


設(shè)置板卡型號

Arduino包括多種版本的主控器,其中比較常見的是Uno、Leonardo以及Mega系列的控制器。在軟件上點(diǎn)擊工具然后在“板”一項下選擇相應(yīng)的型號,這時你需要根據(jù)自己的主控硬件的固件類型來選擇板卡。(樣例中選用的是以Uno為bootloader的控制器)
工具 - 板 - Arduino Uno

Tu2.png


設(shè)置串口

工具 > 串口 > xx,這里的xx應(yīng)選擇在你的電腦設(shè)備管理器中看到的一致。

Tu3.png


下載程序

如圖,點(diǎn)擊驗證,程序只進(jìn)行了驗證,而沒有下載到控制器中,下載需要再點(diǎn)擊上傳鍵;若直接點(diǎn)擊上傳鍵,將程序會先進(jìn)行驗證然后直接下載程序到你的Arduino控制板上。

Tu4.png


程序效果

程序運(yùn)行的效果就是:Adruino Uno板載的13號引腳LED燈在閃爍。

Arduino UNO驅(qū)動安裝

Arduino UNO驅(qū)動安裝方法1
Arduino UNO驅(qū)動安裝方法2

例程列表

基礎(chǔ)實(shí)驗

  • 串口通信控制LED燈實(shí)驗
  • 智能骰子實(shí)驗
  • 遠(yuǎn)紅外火焰?zhèn)鞲衅鲬?yīng)用
  • 干簧管控制繼電器實(shí)驗
  • 數(shù)字傳感器控制流水燈
  • 智能門鈴
  • PWM控制LED燈亮度實(shí)驗
  • 全彩LED模擬呼吸燈實(shí)驗
  • PWM控制電機(jī)轉(zhuǎn)速
  • 紅外熱釋電傳感器人體檢測報警實(shí)驗
  • 溫度報警器
  • 電子琴
  • 看誰搖的快
  • 指針亮度計
  • 記憶大考驗
  • 串行轉(zhuǎn)并行
  • 密碼解鎖

擴(kuò)展實(shí)驗

  • “Hello World!”實(shí)驗
  • 交通燈設(shè)計實(shí)驗
  • 搶答器設(shè)計實(shí)驗
  • 模擬值讀取實(shí)驗
  • 伺服舵機(jī)控制實(shí)驗
  • 紅外線通信實(shí)驗

精選例程

數(shù)字傳感器控制流水燈實(shí)驗

實(shí)驗簡介

單向傾角開關(guān)是一個可以檢測傾斜、晃動的特殊開關(guān),本例中使用傾角開關(guān)和干簧管作為觸發(fā),當(dāng)兩個傳感器中任何一個被觸發(fā)時,6 個LED 都會開始按照順序閃爍。傾角傳感器:傾角傳感器是姿態(tài)傳感器的一種,主要應(yīng)用在物體狀態(tài)的水平檢測,同樣他具備測量角度的大小。目前傾角傳感器主要分為幾個大類,有單軸傾角傳感器和雙軸傾角傳感器,以及利用傾角傳感器原理制作而成的傾角儀。

硬件設(shè)備

  • CarDuino UNO R3 控制器×1
  • USB 下載線×1
  • 大面包板×1
  • 跳線若干
  • LED燈×6
  • 470歐姆電阻×8
  • 干簧管×1
  • 單向傾角開關(guān)×1

硬件連接

數(shù)字傳感器控制流水燈實(shí)驗

Tu1.png

試驗程序

 /*****************************************************************
 奧松機(jī)器人RobotBase www.robotbase.cn
 目的: 數(shù)字傳感器控制流水燈實(shí)驗
 目標(biāo)系統(tǒng): ArduinoUNO R3 控制器
 應(yīng)用軟件: Arduino IDE 1.7.7
 發(fā)布時間: 2015-11-19
 說明: 若用于商業(yè)用途,請保留此段文字或注明代碼來源
 哈爾濱奧松機(jī)器人科技股份有限公司保留所有版權(quán)
 *****************************************************************/
 int i,j; //定義變量i
 void setup()
 {
     pinMode(2,INPUT);
     pinMode(3,INPUT);
     for(j=4;j<=9;j++)
     pinMode(j,OUTPUT);
 }
 void loop()
 {
     if (LOW==( digitalRead(2) && digitalRead(3) ) )
     {
         for(i=4;i<=9;i++)
        {
            digitalWrite(i,HIGH);
            delay(100); //延時0.1 秒
            digitalWrite(i,LOW);
            delay(100); //延時0.1 秒
        }
     }
 }

密碼解鎖游戲?qū)嶒?/span>

實(shí)驗簡介

人們使用的鎖具由傳統(tǒng)的機(jī)械式鎖逐漸發(fā)展為安全性能更好,功能更多的電子密碼鎖。密碼解鎖游戲的原理是通過一個旋轉(zhuǎn)變位器調(diào)制出對應(yīng)的密碼,用3 個紅色LED顯示相應(yīng)的位,蜂鳴器用于提示操作。

硬件設(shè)備

  • CarDuino UNO R3 控制器×1
  • USB 下載線×1
  • 大面包板×1
  • 跳線若干
  • 紅色LED×3
  • 黑色按鍵×1
  • 旋轉(zhuǎn)變位器×1
  • 蜂鳴器×1
  • 470歐姆電阻×4

硬件連接

密碼解鎖游戲?qū)嶒?br />

Tu2.png

試驗程序

 /*****************************************************************
 奧松機(jī)器人RobotBase www.robotbase.cn
 目的: 密碼解鎖游戲?qū)嶒? 目標(biāo)系統(tǒng): Arduino UNO R3 控制器
 應(yīng)用軟件: Arduino IDE 1.7.7
 發(fā)布時間: 2015-11-19
 說明: 若用于商業(yè)用途,請保留此段文字或注明代碼來源
 哈爾濱奧松機(jī)器人科技股份有限公司保留所有版權(quán)
 const int LED1 = 8;
 const int LED2 = 9;
 const int LED3 = 10; // 三盞LED 代表三個級別
 const int BTN = 11; // 游戲開始按鈕和確認(rèn)按鈕
 const int BUZ = 7; // 蜂鳴器給玩家提示
 const int POT = A0; // 通過電位計模擬解鎖的感覺
 bool btnState1;
 bool btnState2; // 獲取按鈕按下的狀態(tài)
 int r; // 單片機(jī)生成的隨機(jī)數(shù)
 int answer; // 玩家的回答
 void (*reset)(void) = 0; // 軟復(fù)位
 // 每一級需要不同的精確度
 bool isOK(int level, int r, int ans)
 {
     if(level == 0) return r - 2 < ans && ans < r + 2;
     if(level == 1) return r - 5 < ans && ans < r + 5;
     if(level == 2) return r - 10 < ans && ans < r + 10;
 }
 void setup()
{
     pinMode(LED1, OUTPUT);
     pinMode(LED2, OUTPUT);
     pinMode(LED3, OUTPUT);
     pinMode(BUZ, OUTPUT);
     pinMode(BTN, INPUT_PULLUP);
     randomSeed(analogRead(A1)); // 隨機(jī)種子
 }
 void loop() 
{
     // 初始化游戲,關(guān)閉小燈和蜂鳴器
     digitalWrite(LED1, LOW);
     digitalWrite(LED2, LOW);
     digitalWrite(LED3, LOW);
     noTone(BUZ);
     // 按下按鈕后游戲開始,避免直接進(jìn)入游戲,過于突然
     while(1) 
    {
        btnState1 = digitalRead(BTN);
        delay(20);
        btnState2 = digitalRead(BTN);
        if(btnState1 == HIGH && btnState2 == LOW) break;
    }
   // 接收玩家的回答并做判斷
   for(int level = 0; level < 3; level++)
   {
       // 生成隨機(jī)數(shù),使用蜂鳴器做提示
       r = random(0, 1024);
       while(1) 
      {
          answer = analogRead(POT); // 不斷更新玩家的輸入
          tone(BUZ, 2000, abs(r - answer)); // 輸入不同,蜂鳴器發(fā)聲不同
          // level = 0,第一級,范圍固定
          // level = 1,第二級,范圍勻速變化
          // level = 2,第三級,范圍變速變化
         if(level == 0) r = r;
         if(level == 1) r = (r+1)%1024;
         if(level == 2) r = (r+random(1,6))%1024;
         btnState1 = digitalRead(BTN);
         delay(20);
         btnState2 = digitalRead(BTN);
         // 如果玩家按下了確認(rèn)按鈕
         if(btnState1 == HIGH && btnState2 == LOW)
         {
         // 如果玩家回答正確
             if(isOK(level, r, answer))
             {
             // 點(diǎn)亮當(dāng)前級別的小燈
                 digitalWrite(LED1+level, HIGH);
                 break;
             }
             else // 如果回答錯誤
            {
                 // 直接重啟整個游戲
                 reset();
             }
         }
     }
 }
 // 游戲結(jié)束
 while(1);
 }

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

Erweima.png

產(chǎn)品購買地址

基于Arduino互動電子套件

周邊產(chǎn)品推薦

動手玩兒轉(zhuǎn)Arduino
基于Arduino魔法書互動套件

相關(guān)問題解答

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

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

愛上Arduino與愛上Processing的互動視頻教程
火焰?zhèn)鞲衅魇褂醚菔疽曨l
電壓傳感器使用演示視頻
奧松機(jī)器人技術(shù)論壇