一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣用LED和Arduino制作智能馬克杯

454398 ? 來源:工程師吳畏 ? 2019-08-05 11:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

關(guān)于DS18B20的簡短說明

DS18B20數(shù)字溫度計(jì)提供9位到12位位攝氏溫度測量并具有報(bào)警功能,具有非易失性用戶可編程的上下觸發(fā)點(diǎn)。 DS18B20通過1-Wire總線進(jìn)行通信,根據(jù)定義,它只需要一條數(shù)據(jù)線(和地)與中央微處理器進(jìn)行通信。此外,DS18B20可以直接從數(shù)據(jù)線獲得電源(“寄生電源”),從而消除了需要外部電源。每個(gè)DS18B20都有一個(gè)獨(dú)特的64位串行代碼,允許多個(gè)DS18B20在同一條1-Wire總線上運(yùn)行。因此,使用一個(gè)微處理器控制分布在大面積上的幾個(gè)DS18B20很簡單??梢詮拇斯δ苤惺芤娴膽?yīng)用包括HVAC環(huán)境控制,建筑物內(nèi)部的溫度監(jiān)控系統(tǒng),設(shè)備或機(jī)器,以及過程監(jiān)控和控制系統(tǒng)

關(guān)于將技術(shù)與生活相結(jié)合,使用彩色燈光令人驚嘆且極具吸引力用顯示器代替RGB LED發(fā)送信息或報(bào)警可以使項(xiàng)目更美觀,也更簡單。在這個(gè)項(xiàng)目中,我們想讓杯子變得聰明,這樣你就可以向你展示咖啡或軟飲料的溫度并報(bào)警它已經(jīng)準(zhǔn)備好了。作為熱電堆,我們將使用DS18B20并將其粘在杯子的底部。它可以將數(shù)字?jǐn)?shù)據(jù)中的杯子中的液體溫度發(fā)送到控制器。 Arduino Nano因其小巧的尺寸和板載迷你USB連接器而成為我們的控制器選擇。因此,它可以編程,電池可以通過USB端口充電。為了顯示溫度,我們使用2個(gè)簡單的4針RGB LED,并將它們連接到Arduino Nano中的獨(dú)立PWM單元?,F(xiàn)在,我們只需要一個(gè)電池,一個(gè)杯子和一個(gè)塑料外殼來放入組件。讓我們這樣做。

必需材料

此項(xiàng)目中使用的所有組件均可通過提供的鏈接購買。

電路

電池尺寸取決于LED和電池尺寸。 500mAh電池是一個(gè)不錯(cuò)的選擇。您可以使用聚合物或離子電池。這里使用的LED具有共同的陰極。如果您有共同的陽極,則必須對代碼進(jìn)行少量更改。如果您的LED在沒有電阻器的情況下無法工作,您有兩種方法。添加電阻或添加更多LED。您應(yīng)該將DS18b20的電壓和數(shù)據(jù)引腳連接到4.7K歐姆電阻。雖然可能沒有必要。

代碼

您應(yīng)該在Arduino IDE中復(fù)制以下代碼。但首先您必須添加庫然后上傳代碼。從附件下載“One Wire”和“Dallas”庫。如果這是您第一次運(yùn)行Arduino板,請不要擔(dān)心。只需按照以下步驟操作:

訪問www.arduino.cc/en/Main/Software下載您的操作系統(tǒng)軟件。按照說明安裝IDE軟件。

運(yùn)行Arduino IDE并清除文本編輯器并在文本編輯器中復(fù)制以下代碼。

導(dǎo)航到草圖并包含庫(從以下鏈接下載庫)。現(xiàn)在單擊添加ZIP庫并添加庫

選擇工具和板中的板,選擇Arduino Nano。

將Arduino連接到PC并設(shè)置工具和端口中的COM端口。

按上傳(箭頭標(biāo)志)按鈕。

/********************************************************************/

// First we include the libraries

#include “OneWire.h”

#include “DallasTemperature.h”

/********************************************************************/

// Data wire is plugged into pin 2 on the Arduino

#define ONE_WIRE_BUS 2

/********************************************************************/

// Setup a oneWire instance to communicate with any OneWire devices

// (not just Maxim/Dallas temperature ICs)

OneWire oneWire(ONE_WIRE_BUS);

/********************************************************************/

// Pass our oneWire reference to Dallas Temperature.

DallasTemperature sensors(&oneWire);

/********************************************************************/

float temp;

void setup(void)

{

// start serial port

Serial.begin(9600);

Serial.println(“Dallas Temperature IC Control Library Demo”);

// Start up the library

sensors.begin();

}

void loop(void)

{

// call sensors.requestTemperatures() to issue a global temperature

// request to all devices on the bus

/********************************************************************/

Serial.print(“ Requesting temperatures.。.”);

sensors.requestTemperatures(); // Send the command to get temperature readings

Serial.println(“DONE”);

/********************************************************************/

Serial.print(“Temperature is: ”);

Serial.print(sensors.getTempCByIndex(0));temp= sensors.getTempCByIndex(0); Serial.print(“ ”); Serial.println(temp);// Why “byIndex”?

// You can have more than one DS18B20 on the same bus.

// 0 refers to the first IC on the wire

if (analogRead(A0)》100)

{ if (temp》50)

temp=100;

if (temp《30) temp=0; temp=(12.5)*(temp-30); Serial.println(temp); if (temp》255)

temp=255;

if (temp《0)

temp=0;

analogWrite(6,temp);

analogWrite(9,temp);

analogWrite(3,255-temp);

analogWrite(11,255-temp);}

else

{analogWrite(6,0);

analogWrite(9,0);

analogWrite(3,0);

analogWrite(11,0);}

delay(100);

}

以下代碼行屬于顏色計(jì)算,這取決于你的杯子。如果你的杯子沒有足夠快地傳遞熱量,你應(yīng)該改變它以達(dá)到預(yù)期的效果。

if (temp》50)

temp=100;

if (temp《30)

temp=0;

temp=(12.5)*(temp-30);

組裝

最初,您必須鉆一下杯子的底部。孔的數(shù)量取決于電路以及如何實(shí)現(xiàn)它。我們考慮過這個(gè)項(xiàng)目的3個(gè)洞。一個(gè)用于溫度計(jì),兩個(gè)用于連接螺絲(電極)和杯子內(nèi)的液體。你可以在不刺穿馬克杯的情況下完成這個(gè)項(xiàng)目。將溫度計(jì)滴在馬克杯的底部,將電極的2根線連接到開/關(guān)開關(guān)。安裝溫度計(jì)和電極并密封后,是時(shí)候?yàn)轳R克杯的底部做一個(gè)框架了。使用膠水密封玻璃,這將不會被熱水或冷水解決。要制作杯子底部的外殼。你必須首先測量杯子的外徑。然后設(shè)計(jì)一個(gè)與杯子底部尺寸完全相同的圓圈,以及兩個(gè)外徑為3毫米的環(huán)(當(dāng)然還有杯子底部的直徑)。你可以使用有機(jī)玻璃和一個(gè)激光切割機(jī)制作規(guī)定的外殼。其中一個(gè)戒指必須是透明的,你可以根據(jù)自己的意愿選擇其他戒指的顏色。你應(yīng)該打磨透明戒指,以達(dá)到啞光效果。如圖所示粘貼它們?,F(xiàn)在將電池粘到外殼上并將其引腳連接到Arduino。將透明環(huán)的一部分切割為與Arduino micro USB端口一樣多,并將Arduino連接到電池,使連接器從環(huán)中掉出?,F(xiàn)在將LED焊接到Arduino并將其他電線連接到Arduino。最后,將shell粘貼到馬克杯的底部,然后將代碼上傳到Arduino。

下一步是什么?

現(xiàn)在,通過在代碼中添加新功能來改進(jìn)智能手機(jī)。例如,當(dāng)咖啡達(dá)到所需溫度并且可以飲用時(shí),您可以添加一些線來警告您。您可以點(diǎn)亮綠色LED以進(jìn)行報(bào)警。在下一步中,您可以在杯子的底部添加一個(gè)加熱器元件并寫下一些代碼來停止降低飲料的溫度。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23824

    瀏覽量

    673438
  • DS18B20
    +關(guān)注

    關(guān)注

    10

    文章

    782

    瀏覽量

    82145
  • Arduino
    +關(guān)注

    關(guān)注

    189

    文章

    6497

    瀏覽量

    191941
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    圓柱電池托:射頻識別RFID賦能圓柱電池生產(chǎn)線智能制造

    針對圓柱電池生產(chǎn)線的特殊工況,晨控智能推出比傳統(tǒng)識別不可替代的RFID +圓柱電池托RFID標(biāo)簽優(yōu)勢方案:
    的頭像 發(fā)表于 06-09 15:41 ?184次閱讀

    托卡馬克裝置:探索可控核聚變的前沿利器

    人類實(shí)現(xiàn)“能源自由”的終極解決方案。 托卡馬克裝置(Tokamak)作為一種重要的磁約束核聚變實(shí)驗(yàn)設(shè)備,在全球能源研究領(lǐng)域占據(jù)著舉足輕重的地位。中國在托卡馬克裝置的研發(fā)和應(yīng)用方面取得了顯著成就,為人
    發(fā)表于 03-10 18:56

    開源項(xiàng)目!手把手教你制作一個(gè)互動(dòng)式LED墻壁時(shí)鐘!

    在這篇教程中,將教你使用Arduino創(chuàng)建一個(gè)互動(dòng)式LED墻壁時(shí)鐘。這個(gè)項(xiàng)目結(jié)合了創(chuàng)意和技術(shù),設(shè)計(jì)出一個(gè)功能性強(qiáng)且視覺效果驚人的時(shí)鐘,它配備了互動(dòng)式的LED燈。無論你是Arduino
    發(fā)表于 02-08 17:47

    博聯(lián)智能斬獲智光兩項(xiàng)殊榮

    近日,由上海市浦東新區(qū)科學(xué)技術(shù)協(xié)會和上海浦東智能照明聯(lián)合會主辦的第八屆物聯(lián)網(wǎng)照明大會暨“智光”優(yōu)秀會員跨界頒獎(jiǎng)典禮在上海盛大舉行。博聯(lián)智能榮登“智光”榜單,斬獲“
    的頭像 發(fā)表于 01-15 09:56 ?614次閱讀

    NE555制作點(diǎn)焊機(jī)

    NE555制作點(diǎn)焊機(jī),電路簡單,容易制作。需要一個(gè)12v的鉛酸蓄電池。實(shí)際焊接效果很好。
    發(fā)表于 11-08 15:05 ?30次下載

    請問TAS5706如何用硬件控制I2C?

    TAS5706 的Control Interface可以HW,SW。我想問問怎樣用HW來控制呢?因?yàn)槲乙粋€(gè)板上預(yù)計(jì)8個(gè)TAS5706,MCU怎樣去識別?
    發(fā)表于 10-23 08:33

    多個(gè)TLV320AIC3254一路I2C總線對其配置可行嗎?

    一片CPU3片TLV320AIC3254做音頻處理,想用一路I2C總線對其配置可行嗎? 地址好像是唯一的 0011000沒法設(shè)置,手冊中又提到可使用10位地址但是沒找到說明怎樣用,哪位大俠用過
    發(fā)表于 10-22 07:54

    如何用5509A產(chǎn)生一個(gè)白噪聲,經(jīng)AIC23播放出來然后再用AIC23采集這個(gè)聲音?

    怎樣用5509A產(chǎn)生一個(gè)白噪聲,經(jīng)AIC23播放出來然后再用AIC23采集這個(gè)聲音
    發(fā)表于 10-15 06:26

    arduino(1)--ESP8266配置

    硬件準(zhǔn)備 首先需要準(zhǔn)備一個(gè)開發(fā)板,這里我準(zhǔn)備的是淘寶購買的兼容arduino的ESP8266模塊。 arduino配置 我使用的是arduino來編程實(shí)現(xiàn),故需要下載對應(yīng)的庫文件,打開
    發(fā)表于 09-06 11:00

    怎樣用THS3201實(shí)現(xiàn)輸出功率可調(diào)?

    怎樣用THS3201實(shí)現(xiàn)輸出功率可調(diào)?
    發(fā)表于 08-26 08:28

    OPA735加OPA333,怎樣用TINA TI去仿真?

    當(dāng)輸入信號VG1從7.06V慢慢變化到7.22V時(shí)。 輸出電壓Vout的變化必須是接近線性變化的。我想知道我該怎樣用TINA TI去仿真?怎樣設(shè)置那個(gè)輸入信號VG1才能達(dá)到我的目的。因?yàn)檫@個(gè)電壓源好像
    發(fā)表于 08-02 08:39

    怎樣用表測穩(wěn)壓管穩(wěn)壓值

    表是一種常用的電子測量工具,可以用來測量電壓、電流、電阻等多種參數(shù)。在測量穩(wěn)壓管的穩(wěn)壓值時(shí),我們可以使用萬表的直流電壓測量功能。以下是步驟和注意事項(xiàng): 準(zhǔn)備工具和材料 萬表 穩(wěn)壓管 電源
    的頭像 發(fā)表于 07-31 14:26 ?3090次閱讀

    怎樣用Arduino測試鋰電池容量

    本文詳細(xì)介紹了如何用Arduino測量鋰電池的容量。并附有電路圖和Arduino的程序代碼。
    的頭像 發(fā)表于 07-30 09:14 ?1644次閱讀
    <b class='flag-5'>怎樣用</b><b class='flag-5'>Arduino</b>測試鋰電池容量

    Arduino自制點(diǎn)焊機(jī)

    組裝18650電池組,要用到點(diǎn)焊機(jī),本文介紹Arduino控制點(diǎn)焊機(jī)的點(diǎn)焊時(shí)間。
    發(fā)表于 07-29 10:14 ?9次下載

    Arduino放回了一個(gè)空的schetch,重新打開了程序不斷重啟的原因?

    . 我arduino重新加載,就像照片2一樣,但它總是以相同的方式重新啟動(dòng)。 我將代碼切成兩半,重新加載,它有效。 我恢復(fù)原始代碼,加載它,它有效。 我將相同的程序與加載器放回原處,它會不斷重新啟動(dòng)
    發(fā)表于 07-10 07:22