<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • x
    x

    DIY:用Arduino 改造溫度計

    發布時間:2016-3-21 09:27    發布者:designapp
    關鍵詞: Arduino , 溫度計
    Arduino 是創客們DIY的必備法寶。借助Arduino 開發板,創客們通過簡單的代碼程序就可以實現一些常用電子設備的運行功能。今天為大家帶來一款Arduino 溫度計。這款溫度計既可以作為日常溫度計使用,又可以進行家用裝飾,特別適合愛畫畫的小創客們動手制作。那么,它究竟是如何實現的呢?


    最終作品照

    一、材料準備

    Arduino UNO  x1
    Arduino擴展板  x1
    Lm35溫度傳感器  x1
    9g舵機  x1
    導線若干
    A4白卡紙  x1


    所需材料

    二、盒子制作

    準備好工具和卡紙

    首先,我們要用尺子和鉛筆把要做的方盒子的平面圖按照下面示意圖,在紙上畫出來,盒子的尺寸大小按照可以放得下一個Arduino板的尺寸,這里非?简灴臻g想象力和盒子的構造。


    方紙盒子展開圖

    畫好之后,我們就可以用剪刀把它剪下來,如下圖所示:


    剪好后的展開圖

    大家可以看到上面有一個小水滴樣子的指針,這個非常簡單,大家在剩下的卡紙料上隨手剪一個上色就行。

    接下來直接按照原來畫的邊線進行對折即可,記得有畫線的一面向里面,這樣可以保證外觀的整潔度。在這里大家記得拿出自己的彩色筆哦!給它設計一個好看的涂裝,刻度劃分可以自己去設計。


    盒子制作完成

    三、Arduino電路搭建及組裝

    完成上一步的盒子制作之后,這一步我們要完成的就是整個作品的核心部分,傳感器連接與電路搭建,連接圖如下所示:


    電路連接圖


    電路實物連接

    連接好電路之后,把舵機裝在盒子里面,安裝前要在盒子前面開一個小孔,然后用熱熔膠把舵機固定在紙盒上,如圖所示:



    安裝舵機

    小水滴指針是如何安裝到舵機上的呢?這里就要用到舵機自帶的舵盤啦!直接用雙面膠就把指針固定在舵盤上了,請看下圖:



    多盤與指針安裝


    安裝舵機、舵盤、指針到紙盒

    在這里就完成了硬件的所有制作,接下來就是寫驅動程序。

    四、程序編寫

    Arduino驅動程序編寫,我們還是用到Arduino IDE來寫這個程序,下面就是這個美美的Arduino溫度計的驅動程序,就讓我們一起DIY來讓這個寒冷的冬天變更即視。下面這個代碼大概的運行的原理是先通過LM35溫度傳感器采集到模擬值,將模擬值通過變換公式轉換出溫度值,因為表盤用的是舵機,所以這里會用到一個映射函數map,將溫度值映射到相應的角度值,從而控制指針旋轉到相應的位置。代碼如下:

    #include
    #include
    Servo myservo;
    int a,val;   //定義變量
    float temperature;     //定義浮點型變量,用于存放轉換后的溫度
    int B=3975;              //熱敏電阻的基礎參考值B
    float resistance;
    void setup()
    {
      myservo.attach(4); //定義舵機驅動端口
    }
    void loop()
    {
      a=analogRead(0); //讀取溫度傳感器的模擬值
      resistance=(float)(1023-a)*10000/a; //計算出傳感器的電阻值
      temperature=1/(log(resistance/10000)/B+1/298.15)-273.15;//將電阻值轉換成溫度值
      delay(500); //延時500毫秒
      val=map(temperature,0,50,0,180); //將轉換的溫度值映射到舵機的角度值
      myservo.write(val); //舵機轉到相應的角度
    }
    本文地址:http://www.portaltwn.com/thread-162195-1-1.html     【打印本頁】

    本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
    您需要登錄后才可以發表評論 登錄 | 立即注冊

    廠商推薦

    • Microchip視頻專區
    • EtherCAT®和Microchip LAN925x從站控制器介紹培訓教程
    • MPLAB®模擬設計器——在線電源解決方案,加速設計
    • 讓您的模擬設計靈感,化為觸手可及的現實
    • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
    • 貿澤電子(Mouser)專區

    相關視頻

    關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
    電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
    快速回復 返回頂部 返回列表
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷