一、目的

这一节我们学习如何使用我们的ESP32开发板来控制温度传感器(DS18B20)实时检测当前环境的温度。

二、环境

ESP32 + 温度传感器 + Thonny IDE + 几根杜邦线

接线示意图:

+ 号连接开发板VIN,-号连接开发板的GND,out连接开发板的D13

三、代码

MicroPython有现成的API:Quick reference for the ESP32 — MicroPython latest documentation

注意:一条线上可以接多个温度传感器设备,所以用到了scan来读取连接的设备列表。

from machine import Pin
import onewire, ds18x20
import timeds_sensor = ds18x20.DS18X20(onewire.OneWire(Pin(13)))def read_ds_sensor():  # 创建一个读取温度的函数roms = ds_sensor.scan()  # 扫描总线上的设备print('扫描发现的设备: ', roms)ds_sensor.convert_temp()  # 温度转换for rom in roms:  # 循环打印出设备列表temp = ds_sensor.read_temp(rom)  # 读出该设备的温度if isinstance(temp, float):  # 以小数点后2位输出,例如23.35temp = round(temp, 2)return tempreturn 0while True:if(read_ds_sensor() < 25):print("温度低了,请开启加热器!")if(read_ds_sensor() > 30):print("温度高了,请开启制冷器!")    time.sleep(1)

四、演示效果

五、温度传感器购买

同样我们淘宝上收到一家,推荐给大家,大家也可以货比三家:

DS18B20是美国DALLAS半导体公司推出的第一片支持“一线总线”接口的温度传感器,它具有微型化,低功耗,高性能,抗干扰能力强,易配微处理器等优点,可直接将温度转化成数字信号处理器处理。

测量的温度范围是-55~125℃,测温误差0.5℃。可编程分辨率9~12位,对应的可分辨温度分别为0.5℃0.25℃0.125℃0.0625℃

https://item.taobao.com/item.htm?spm=a230r.1.14.60.4b004883c18wl8&id=611368710720&ns=1&abbucket=8#detail

产品特点:

一、长尺寸:28mm X宽12mm X高10mm
二、主要芯片:18B20温度传感器
三、工作电压:直流5V

四、特点:

1、分辨率调整范围:9-12位

2、带安装孔方便安装,孔径:2.5

3、温度测量范围:-55~+125℃

4、温度测量精度:0.5℃

5、工作电压:DC5V

6、数字信号输出

物联网开发笔记(38)- 使用Micropython开发ESP32开发板之控制温度传感器(DS18B20)相关推荐

  1. MLX90640开发笔记(一)概述及开发资料准备

    现在自己在做红外成像仪的越来越多了,两年前有个井下机电设备运行状态的科研项目,当时使用了AMG8833(8*8像素).前段时间因为公司生产电路板测试需要,打算买一台红外成像仪测量电路板发热是否正常,商 ...

  2. 物联网开发笔记(9)- 使用Wokwi仿真MicroPython on ESP32开发板实现温度和湿度检测并使用屏幕显示

    一.测试环境 我们同样使用在Wokwi网站上选择Micropython with ESP32进行仿真,来进行温度和湿度的检测. ESP32官方技术参考手册: https://www.espressif ...

  3. 基于MicroPython的ESP32开发

    很久前入手了一块ESP32 DEVKIT V1,当时基于C_SDK开发.最近想搞下MicroPython,就又把这块板子找出来了. 一.先下载支持MicroPython的ESP32固件 去MicroP ...

  4. Android开发笔记(七十一)区分开发模式和上线模式

    为什么要区分两种模式 许多开发者(包括博主在内)都是闷骚的程序员,为了开发调试方便,常常在代码里加上日志,还经常在页面上各种弹窗提示.这固然有利于发现bug.提高软件质量,但过多的调试信息往往容易泄露 ...

  5. 【Visual C++】游戏开发笔记三十一 回归季 游戏开发资料整理打包下载 专栏行文思路整理

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...

  6. 外设驱动库开发笔记38:RTD热电阻测温驱动

      我们已经讨论过多种温度检测方式,但我们尚未关注热电阻温度检测,但热电阻测温在工业环境中是非常常见的.尽管有很多集成的数字式的热电阻接口元器件,但这些器件不但成本较高,灵活性也大打折扣.所以我们有时 ...

  7. Modbus协议栈开发笔记之六:Modbus RTU Master开发

    这一节我们来封装最后一种应用(Modbus RTU Master应用),RTU主站的开发与TCP客户端的开发是一致的.同样的我们也不是做具体的应用,而是实现RTU主站的基本功能.我们将RTU主站的功能 ...

  8. Modbus协议栈开发笔记之五:Modbus RTU Slave开发

    Modbus在串行链路上分为Slave和Master,这一节我们就来开发Slave.对于Modbus RTU从站来说,需要实现的功能其实与Modbus TCP的服务器端是一样的.其操作过程也是一样的. ...

  9. Modbus协议栈开发笔记之四:Modbus TCP Client开发

    这一次我们封装Modbus TCP Client应用.同样的我们也不是做具体的应用,而是实现TCP客户端的基本功能.我们将TCP客户端的功能封装为函数,以便在开发具体应用时调用. 对于TCP客户端我们 ...

最新文章

  1. git学习指南_几十张动图告诉你 Git到底是怎么玩的
  2. Keep Walking!
  3. [Java]jdbc[转]
  4. Python--str与repr以及eval的使用方法
  5. axr_Lab1_scan_top_down_flow(下)
  6. PMCAFF| 产品设计,从警示框说起
  7. NFS文件锁一致性设计原理解析
  8. 计算机二级高级应用这么难,计算机二级考试越来越难的实锤!真实数据告诉你到底难在哪里?...
  9. Firefox 18周岁
  10. 我眼中的 NCC,WTM 寻亲之旅
  11. Node.js OS 模块
  12. 深度学习助力异常胸部 X 光片检测
  13. Arthur J.Riel的61条面向对象设计的经验原则[ZT]
  14. 企业在信息化建设上乘之选:软件快速开发框架
  15. appassembler-maven-plugin插件打包本地依赖的jar
  16. TCPIP详解之udp
  17. 德标螺纹规格对照表_德标、国标对照表
  18. 关于SMC的源式,汇式(漏式)。PNP和NPN的说明与区别
  19. HDU 3533 Escape
  20. 二. 再熟悉 Markdown 标准语法

热门文章

  1. linux antivir,Linux下安装和使用杀毒软件AntiVir (2)
  2. 敏捷.敏捷项目管理V2.Jim Highsmith
  3. n个评委给m个选手打分python_n个评委为m个选手打分(n个评委打分总次数mn)。请问如何评判m个选手的成绩?...
  4. 融360叶大清:互联网金融创新之路
  5. 3d游戏建模|3D电影、游戏角色是怎么制作的?
  6. 多边形区域填充算法--扫描线填充算法(有序边表法)
  7. LeetCode52N皇后||
  8. pycrypto 和 lua-resty-rsa 进行跨语言的RSA加密解密.md
  9. 从零搭建基于 Java 的服务器生产环境
  10. Substance Painter材质导入unity渲染通道配置更改