当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]DS18B20 是一种数字温度传感器,有两种版本:小型 TO-922 包装版和防水型,后者通常被金属管封装,并配有长电缆。两者均能提供数字温度读数,适用于多种室内外项目。DS18B20 采用了一种称为“单线通信”(1-Wire)的协议,仅需一根数据线即可实现通信,并可在同一引脚上支持多个传感器。

DS18B20 是一种数字温度传感器,有两种版本:小型 TO-922 包装版和防水型,后者通常被金属管封装,并配有长电缆。两者均能提供数字温度读数,适用于多种室内外项目。DS18B20 采用了一种称为“单线通信”(1-Wire)的协议,仅需一根数据线即可实现通信,并可在同一引脚上支持多个传感器。

该传感器支持多种分辨率:9、10、11或12位。默认为12位分辨率,精度可达0.0625°C。较低的分辨率可加快读数速度,而较高的分辨率则能提供更详细的温度数据。DS18B20传感器测量温度范围为-55°C至+125°C(-67°F至+257°F)。

接线图

DS18B20 提供两种电源选项。它可以通过 VDDDD 引脚连接外部电源供电,也可以通过一种称为寄生模式的方法,直接从数据线上获取电源,从而无需单独的电源连接。

在两种电源模式下,必须在DQ(数据)引脚和VCC之间连接一个上拉电阻,以确保数据线在空闲时保持正确的状态。通常为此使用4.7kΩ的电阻。对于较长的电缆,例如防水版本,可能需要调整电阻值,但4.7kΩ通常可以正常工作。

你可以通过Arduino上的单个数字引脚读取多个DS18B20传感器的温度。只需将所有传感器的数据引脚连接在一起,并接入Arduino上的同一数字引脚即可。

标准模式

需要使用三线连接,电源直接供给至VDD引脚。以下是接线示意图,供您参考:

•VDD → Arduino 5V

•GND → Arduino GND

•DQ → Arduino D3(或任意数字引脚)

•DQ 与 VDD 之间的 4.7kΩ 电阻

寄生模式

仅需数据线和地线,因为传感器直接从数据线上获取电源。以下是此设置的接线图:

安装所需的Arduino库

在上传任何代码之前,你需要安装两个用于与DS18B20传感器通信的库:OneWire和DallasTemperature。

安装方法如下:

•打开Arduino IDE。

•转到“草图”菜单,选择“包含库”>“管理库”...

•在图书馆管理器中,将“OneWire”输入搜索框,找到该库并点击安装。

•接下来,搜索 DallasTemperatureTemperature 并安装该库。

•安装完成后,你就可以将它们包含在草图中,并开始使用传感器进行工作:

这些库负责通信协议,只需几行代码即可轻松获取温度读数。请参考原始的DallasTemperature库文件,其中包含了管理温度传感器所需的所有可用功能。

Arduino 代码

此示例将传感器设置在数字引脚3上,启动通信,并每秒读取一次温度值。串口监视器中显示的输出同时包含摄氏度和华氏度两种格式。

此示例从数据线上找到的第一个传感器读取数据。如果连接了多个传感器,可以通过索引或唯一的设备ID来分别寻址。

测试

代码上传后,Arduino IDE 中的串口监视器应打开,并将波特率设置为 115200。温度读数将以摄氏度和华氏度显示,如下图所示。

结论

DS18B2000 常用于家庭气象显示屏、温室监测、水族箱和智能供暖系统等项目。其数字输出能有效抵抗电气噪声,尤其在长距离布线时表现更佳。防水版本特别适用于需要将传感器放置于户外或接触液体的场合。如果使用多个传感器或计划进行较长的线路布设,请确保电阻值和线缆质量合适。不过对于大多数短距离应用,标准的 4.7kΩΩΩ 拉上电阻即可满足需求。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

我从事电能计量IC的研发已有段时间。在尝试了接口较为简单的BL0937之后,今天终于拿到了BL0940。两者在结构上相似,都是单相电能计量IC,但最让我感到意外的是其功能特性。与BL系列中较为简单的BL0937不同,BL...

关键字: Arduino 交流电能 BL0937

作为创客,我们常常会看到满堆的损坏电子设备,等待着被重新利用。与其直接丢弃这些废弃物品,我决定将一部旧的、损坏的智能手表改造成一个功能齐全、小巧如钥匙扣的游戏主机。我的目标是打造一个体积微小却极具娱乐性的装置,同时通过回...

关键字: 智能手表 ESP32 Arduino

想象一下,你的项目可以持续运行数月之久——完全独立于能源供应,彻底脱离电网。在本指南中,我们将利用太阳能的力量,为你的电子设备打造一个微型、自给自足的“发电站”。

关键字: 电子设备 物联网 Arduino

要将您的 Arduino 项目接入网络,您需要一种将它们与互联网连接起来的方法。这就是 Wi-Fi 物联网模块发挥作用的地方。这个小板能让像 Arduino 这样的微控制器与网络服务和云平台进行通信。

关键字: 物联网 Wi-Fi 传感器 Arduino

如果你曾尝试使用标准的 Arduino 或业余爱好者使用的 LoRa 板来构建工业物联网传感器节点,那你一定深有体会其中的困难。现实中的工业传感器,比如土壤氮磷钾监测器、流量计或气象站,很少使用简单的 I2C 或 SPI...

关键字: LoRa 板 工业物联网 传感器 Arduino

我们的鸟食器总是遭到松鼠、金花鼠以及其他非鸟类动物的频繁侵扰——以至于“鸟食器”这个名称几乎都不合适了。所以我想利用 Arduino UNO Q 强大的物体检测功能来制作一个只供鸟类使用的食器。

关键字: 喂食器 Arduino 显示器

我偶然发现了一款那种高端的道奇挑战者型闹钟,它的启动声音是那种充满力量感的引擎轰鸣声,而不是普通的闹钟铃声。老实说,它看起来超级酷——但看了它一会儿之后,我却觉得:

关键字: OLED 显示屏 Arduino DS3231

该项目展示了如何利用射频识别技术及一款 Arduino 板来构建一个智能考勤系统。用户无需使用人工登记表,只需扫描射频识别卡即可即时记录考勤情况。该系统会读取每张卡的唯一标识码并记录相关数据,适用于学校、办公室以及小型组...

关键字: Arduino 射频 RFID 读取器

乒乓球机器人:西蒙娜设计的基于Arduino的3D可打印乒乓球发射器模型(STL格式)——来自 Kickstarter 项目页面

关键字: Arduino 3D打印 步进电机

我想要为一个本地项目搭建一个简单的互动信息展示台,这个展示台能够当用户在屏幕上点击按钮时显示图片并播放音频内容。不需要使用树莓派,也不需要安卓平板电脑,只需要一块价格实惠、功能完备且能在几秒钟内启动的嵌入式电路板即可。

关键字: 播放器 Arduino ESP32-8048S050
关闭