chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何在樹(shù)莓派上使用DS18B20來(lái)獲取溫度讀數(shù)

454398 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-02 15:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

Raspbian發(fā)行版包括對(duì)DS18B20 1線溫度傳感器的支持。這些傳感器采用晶體管等小的三引腳封裝,是精確的數(shù)字設(shè)備。

在本課程中,您將學(xué)習(xí)如何在Raspberry Pi上使用DS18B20來(lái)獲取溫度讀數(shù)。

從Raspberry開(kāi)始Pi沒(méi)有ADC模數(shù)轉(zhuǎn)換器),它不能直接使用TMP36之類的模擬溫度傳感器,這使得DS18B20成為溫度傳感的理想選擇。

硬件

DS18B20晶體管外形尺寸(TO-92)部件和防水有線型號(hào)的面包板布局如下所示。我們提供了較舊的20針和現(xiàn)代40針Raspberry Pi連接器的示例。此設(shè)置將適用于已發(fā)布的所有Raspberry Pi型號(hào),但不包含突破接頭的Pi計(jì)算模塊除外。

DS18B20“ 1-wire”傳感器可以并聯(lián)連接-與出售的幾乎所有其他傳感器不同!所有傳感器都應(yīng)共享相同的引腳,但是所有它們只需要一個(gè)4.7K電阻器

電阻器用作數(shù)據(jù)線的“上拉”,并且需要保持?jǐn)?shù)據(jù)傳輸?shù)姆€(wěn)定和快樂(lè)

請(qǐng)注意正確選擇DS18B20。彎曲的邊緣應(yīng)位于左側(cè),如下圖所示。如果使用錯(cuò)誤的方法,它將變熱然后破裂。

DS18B20 +都是溫度傳感器,但與TMP36完全不同。您不能在本教程中使用TMP36!

40針(A,B,B +和零)Cobbler Plus原理圖

-Pin(Raspberry Pi版本1和版本2)補(bǔ)鞋匠示意圖

防水40針[黑色]

如果您使用的是DS18B20的防水版本,則該設(shè)備具有三根引線,紅色,黑色和黃色。不需要連接的裸銅屏蔽線。

防水20針[黑色]

高溫防水[白色]

如果使用我們出售的DS18B20的“高溫”版本,將橙色條紋連接到3.3V,白色連接到地面,藍(lán)色條紋是數(shù)據(jù),引腳4。

您仍然需要?4.7K-10K從數(shù)據(jù)到3.3V的電阻

DS18B20

盡管DS18B20看起來(lái)像普通的晶體管,但實(shí)際上內(nèi)部有很多東西。

該芯片包括特殊的1有線串行接口以及控制邏輯和溫度傳感器本身。

其輸出引腳發(fā)送數(shù)字消息,而Raspbian包括讀取這些消息的接口。一旦我們?cè)赗aspberry Pi上使用“ raspi-config”工具啟用了1-Wire,將在隨后的重啟中加載正確的內(nèi)核模塊。

啟用1-Wire

下載:文件

復(fù)制代碼

sudo raspi-config sudo raspi-config

選擇接口選項(xiàng)

選擇 1-Wire 》

選擇是是是

退出raspi-config并重新啟動(dòng)Pi,以便加載1-wire內(nèi)核模塊。

下載:文件

復(fù)制代碼

sudo reboot sudo reboot

驗(yàn)證是否在下次啟動(dòng)時(shí)加載了1-Wire內(nèi)核模塊。運(yùn)行 lsmod 命令時(shí),您應(yīng)該會(huì)看到類似下面的輸出。

下載:文件

復(fù)制代碼

lsmod | grep -i w1_ lsmod | grep -i w1_

軟件

Python程序處理任何失敗的消息,并每秒報(bào)告攝氏度和華氏溫度。

下載:Project Zip 或 thermometer.py | 在Github上查看

復(fù)制代碼

import glob

import time

base_dir = ‘/sys/bus/w1/devices/’

device_folder = glob.glob(base_dir + ‘28*’)[0]

device_file = device_folder + ‘/w1_slave’

def read_temp_raw():

f = open(device_file, ‘r’)

lines = f.readlines()

f.close()

return lines

def read_temp():

lines = read_temp_raw()

while lines[0].strip()[-3:] != ‘YES’:

time.sleep(0.2)

lines = read_temp_raw()

equals_pos = lines[1].find(‘t=’)

if equals_pos != -1:

temp_string = lines[1][equals_pos+2:]

temp_c = float(temp_string) / 1000.0

temp_f = temp_c * 9.0 / 5.0 + 32.0

return temp_c, temp_f

while True:

print(read_temp())

time.sleep(1)

import glob

import time

base_dir = ‘/sys/bus/w1/devices/’

device_folder = glob.glob(base_dir + ‘28*’)[0]

device_file = device_folder + ‘/w1_slave’

def read_temp_raw():

f = open(device_file, ‘r’)

lines = f.readlines()

f.close()

return lines

def read_temp():

lines = read_temp_raw()

while lines[0].strip()[-3:] != ‘YES’:

time.sleep(0.2)

lines = read_temp_raw()

equals_pos = lines[1].find(‘t=’)

if equals_pos != -1:

temp_string = lines[1][equals_pos+2:]

temp_c = float(temp_string) / 1000.0

temp_f = temp_c * 9.0 / 5.0 + 32.0

return temp_c, temp_f

while True:

print(read_temp())

time.sleep(1)

接下來(lái)的三行,從中找到文件

下載:文件

復(fù)制代碼

def read_temp_raw():

catdata = subprocess.Popen([‘cat’,device_file], stdout=subprocess.PIPE, stderr=subprocess.PIPE)

out,err = catdata.communicate()

out_decode = out.decode(‘utf-8’)

lines = out_decode.split(‘ ’)

return lines def read_temp_raw():

catdata = subprocess.Popen([‘cat’,device_file], stdout=subprocess.PIPE, stderr=subprocess.PIPE)

out,err = catdata.communicate()

out_decode = out.decode(‘utf-8’)

lines = out_decode.split(‘ ’)

return lines

讀取溫度是通過(guò)兩個(gè)函數(shù)進(jìn)行的,read_temp_raw只是從接口獲取消息的兩行。 read_temp函數(shù)會(huì)對(duì)此進(jìn)行總結(jié),以檢查是否有錯(cuò)誤消息,然后重試直到收到第一行末尾帶有“ YES”的消息。該函數(shù)返回兩個(gè)值,第一個(gè)為攝氏度,第二個(gè)為華氏。

如果希望將這兩個(gè)值分開(kāi),如下例所示:

下載:文件

復(fù)制代碼

deg_c, deg_f = read_temp() deg_c, deg_f = read_temp()

程序的主循環(huán)只是循環(huán),讀取溫度并打印,然后睡眠一秒鐘。

要將程序上傳到Raspberry Pi上,可以使用 SSH連接到Pi ,使用以下行啟動(dòng)編輯器窗口:

下載:文件

復(fù)制代碼

nano thermometer.py nano thermometer.py

,然后粘貼上面的代碼,然后使用CTRL-保存文件x和Y。

配置和測(cè)試

該程序必須以超級(jí)用戶身份運(yùn)行,因此在終端中鍵入以下命令以啟動(dòng)該程序:

下載:文件

復(fù)制代碼

sudo python thermometer.py sudo python thermometer.py

如果一切順利,您將看到一系列讀數(shù),如下所示:

嘗試將手指放在傳感器上進(jìn)行加熱。

添加更多傳感器

您可以并行添加其他DS18B20傳感器-將所有傳感器的VCC,數(shù)據(jù)和接地引腳連接在一起。使用一個(gè)4.7K電阻。您將看到多個(gè) /sys/bus/w1/ devices/28-nnnnn 目錄,每個(gè)目錄都有唯一的序列號(hào)作為目錄名。 python示例代碼現(xiàn)在僅適用于一個(gè)傳感器,因此如果您希望一次從不同的傳感器讀取它,則必須對(duì)其進(jìn)行修改
責(zé)任編輯:wv

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

    關(guān)注

    10

    文章

    782

    瀏覽量

    82182
  • 樹(shù)莓派
    +關(guān)注

    關(guān)注

    121

    文章

    2005

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    單片機(jī)實(shí)例項(xiàng)目:DS18B20溫度傳感器

    單片機(jī)實(shí)例項(xiàng)目:DS18B20溫度傳感器,推薦下載!
    發(fā)表于 06-03 20:59

    人臉識(shí)別指南:如何在樹(shù)莓派上安裝和設(shè)置 Dlib

    學(xué)習(xí)如何在樹(shù)莓派上安裝Dlib并配置人臉識(shí)別功能,為您的AI項(xiàng)目奠定基礎(chǔ)。在樹(shù)莓派上安裝Dlib的詳細(xì)步驟要為
    的頭像 發(fā)表于 03-24 17:31 ?767次閱讀
    人臉識(shí)別指南:如<b class='flag-5'>何在</b><b class='flag-5'>樹(shù)莓</b><b class='flag-5'>派上</b>安裝和設(shè)置 Dlib

    基于FPGA的DS18B20數(shù)字溫度傳感器測(cè)溫實(shí)例

    本文將使用三段式狀態(tài)機(jī)(Moore型)的寫(xiě)法來(lái)對(duì)DS18B20進(jìn)行測(cè)溫操作,以便了解DS18B20和熟悉三段式狀態(tài)機(jī)的寫(xiě)法。
    的頭像 發(fā)表于 03-17 11:06 ?1487次閱讀
    基于FPGA的<b class='flag-5'>DS18B20</b>數(shù)字<b class='flag-5'>溫度</b>傳感器測(cè)溫實(shí)例

    DS18B20實(shí)時(shí)溫度傳感器中文資料

    DS18B20 是一種單總線數(shù)字溫度傳感器,它被廣泛應(yīng)用于各種領(lǐng)域,例如氣象監(jiān)測(cè)、室內(nèi)溫度控制、工業(yè)自動(dòng)化等。DS18B20 采用了單總線接口(One-Wire Interface),
    發(fā)表于 02-28 17:02 ?5次下載

    基于FPGA的溫度傳感器(ds18b20)驅(qū)動(dòng)設(shè)計(jì)

    本篇主要討論基于FPGA的溫度傳感器(ds18b20)驅(qū)動(dòng)設(shè)計(jì)---第一版 設(shè)計(jì)實(shí)現(xiàn):利用FPGA驅(qū)動(dòng)DS18b20,讀取到溫度數(shù)值顯示到數(shù)碼管上。 首先介紹
    的頭像 發(fā)表于 01-16 14:08 ?1274次閱讀
    基于FPGA的<b class='flag-5'>溫度</b>傳感器(<b class='flag-5'>ds18b20</b>)驅(qū)動(dòng)設(shè)計(jì)

    【正點(diǎn)原子STM32H7R3開(kāi)發(fā)套件試用體驗(yàn)】DS18B20、DHT11溫濕度采集

    環(huán)境溫濕度數(shù)據(jù)的主要流程和關(guān)鍵代碼,并對(duì)這兩款常見(jiàn)傳感器進(jìn)行了介紹。 DS18B20 DS18B20 數(shù)字溫度計(jì)是 DALLAS 公司生產(chǎn)的 1-Wire 單總線器件,具有線路簡(jiǎn)單、體積小的特點(diǎn)
    發(fā)表于 01-01 11:16

    《DNESP32S3使用指南-IDF版_V1.6》第二十九章 DS18B20實(shí)驗(yàn)

    第二十九章 DS18B20實(shí)驗(yàn) 本章,我們將介紹ESP32-S3如何讀取外部溫度傳感器的溫度,來(lái)得到較為準(zhǔn)確的環(huán)境溫度。我們將學(xué)習(xí)單總線技術(shù),通過(guò)它
    發(fā)表于 12-25 09:43

    CW32模塊使用 DS18B20溫度傳感器

    DS18B20數(shù)字溫度傳感器提供9位至12位精度的溫度測(cè)量,并具有非易失性用戶可編程上下觸發(fā)點(diǎn)報(bào)警功能。DS18B20通過(guò)單總線通信,根據(jù)定義,只需要一條數(shù)據(jù)線(和地線)即可與單片機(jī)通
    的頭像 發(fā)表于 11-26 17:47 ?674次閱讀
    CW32模塊使用 <b class='flag-5'>DS18B20</b><b class='flag-5'>溫度</b>傳感器

    DS18B20溫度傳感器的工作原理和硬件設(shè)計(jì)

    通過(guò)本文可以了解DS18B20溫度傳感器工作原理、硬件設(shè)計(jì)、DS18B20單總線接口驅(qū)動(dòng)編寫(xiě)。
    的頭像 發(fā)表于 10-24 14:38 ?1.2w次閱讀
    <b class='flag-5'>DS18B20</b><b class='flag-5'>溫度</b>傳感器的工作原理和硬件設(shè)計(jì)

    ds18b20傳感器的使用方法

    DS18B20是一種廣泛使用的數(shù)字溫度傳感器,它基于1-Wire(單總線)通信協(xié)議。這種傳感器因其高精度、易用性和低成本而受到歡迎。 DS18B20傳感器簡(jiǎn)介 DS18B20是由Max
    的頭像 發(fā)表于 10-18 14:52 ?2838次閱讀

    ds18b20溫度傳感器怎么接線

    DS18B20是一種廣泛使用的數(shù)字溫度傳感器,它基于1-Wire(一線)通信協(xié)議工作。這種傳感器因其高精度、易用性和低成本而受到歡迎。 DS18B20傳感器引腳介紹 DS18B20有三
    的頭像 發(fā)表于 10-18 14:50 ?4557次閱讀

    ds18b20溫度傳感器如何使用

    DS18B20是一款廣泛使用的數(shù)字溫度傳感器,它具有高精度、低功耗和易于使用的特點(diǎn)。 DS18B20溫度傳感器簡(jiǎn)介 DS18B20是由Max
    的頭像 發(fā)表于 09-03 16:51 ?1652次閱讀

    ds18b20溫度傳感器是什么類型

    DS18B20溫度傳感器是一種數(shù)字溫度傳感器,它屬于單總線(One-Wire)數(shù)字溫度傳感器類型。這意味著它僅需要一根數(shù)據(jù)線(加上電源線和地線,共三根線)就能與微處理器或其他數(shù)字電路進(jìn)
    的頭像 發(fā)表于 09-03 16:46 ?2121次閱讀

    ds18b20溫度傳感器和dht11的區(qū)別

    進(jìn)行通信。這種傳感器可以提供9位到12位的數(shù)字溫度讀數(shù),精度非常高。DS18B20的工作原理是通過(guò)測(cè)量其內(nèi)部溫度傳感器的電壓變化來(lái)計(jì)算
    的頭像 發(fā)表于 09-03 16:44 ?5026次閱讀

    MY18E20、MY1820 與 DS18B20 性能對(duì)比表

    MY18E20、MY1820 與 DS18B20 最高測(cè)溫精度一樣,都是±0.5℃,M1820Z 最高測(cè)溫精度±0.1℃。芯片感溫原理基于 CMOS 半導(dǎo)體 PN節(jié)溫度與帶隙電壓的特性關(guān)系,經(jīng)過(guò)
    的頭像 發(fā)表于 07-29 18:22 ?1662次閱讀
    MY<b class='flag-5'>18E20</b>、MY1820 與 <b class='flag-5'>DS18B20</b> 性能對(duì)比表