本帖最后由 大连林海 于 2015-11-21 12:17 编辑

温度传感器
1.png



1、概 述
温度传感器是含有DS18B20 探测器的金属管温度计,抗干扰能力强,精度高且外部有橡胶管能防水。测量温度范围:-55°C + 125°C,可以将温度计连接到RJ25适配器模块,后将R25适配器连接到Makeblock Orion主控板进行温度的测量。
2、技术规格
l  工作电压:5V DC
l  传感器型号:DS18B20
l  温度范围:-55°C 到125°C
l  控制方式:单总线接口
3、功能特性
l  9位~12位A/D转换精度;
l  高精度:±0.5°C(在-10°C + 85°C范围内);
l  探头直径6毫米, 长大约50毫米。 总长度(包括线)是1米;
l  温度转换延时时间小,最大750ms;
l  支持多点组网功能;
l  支持Arduino IDE编程,并且提供运行库来简化编程;
l  支持mBlock图形化编程,适合全年龄用户。
4、引脚定义
温度传感器模块有三个针脚的接头,每个针脚的功能如下表
  
  
  
序号
  
  
  
  
引脚
  
  
颜色
  
  
功能
  
  
1
  
  
GND
  
  
  
  
地线
  
  
2
  
  
VCC
  
  
  
  
电源线
  
  
3
  
  
SIG
  
  
  
  
温度信号输出
  
表 1 3-Pin 接口功能
5、接线方式
l  RJ25连接
如果想通过RJ25接口连接温度计,请将温度计链接到 RJ25适配器模块,然后将此模块连接到Makeblock Orion主控板,如图: 2.png
图 1温度传感器 与Makeblock Orion连接图
l  杜邦线连接
当使用杜邦线连接到Arduino Uno主板时,模块SIG引脚需要连接到DIGITAL(数字)引脚,如下图所示:
3.png
图 2 温度传感器与Arduino UNO连接图
6、编程指南
l  Arduino编程
如果使用Arduino编程,需要调用库Makeblock-Library-master来控制温度传感器。
本程序通过Arduino编程读取当前温度值。.
  
01
  02
  03
  04
  05
  06
  07
  08
  09
  10
  11
  12
  13
  14
  15
  16
  17
  
  
   
   
   
  
#include "MeOrion.h"
  #include <Wire.h>
  #include <SoftwareSerial.h>
   
  MeTemperature myTemp(PORT_4, SLOT2);
   
  void setup()
  {
      Serial.begin(9600);
  }
   
  void loop()
  {
      Serial.print("Temperature=");
      Serial.println(myTemp.temperature() );
      delay(1000);
  }
  


温度传感器函数功能列表
  
  
  
函数
  
  
  
  
功能
  
  
MeTemperature(uint8_t  port,uint8_t slot)
  
  
选定接口
  
  
void  reset(uint8_t port,uint8_t slot)
  
  
复位接口和端口
  
  
float  temperature()
  
  
读取温度值
  

本代码将读取温度传感器的读数,输出结果到Arduino IDE 串口监视器, 周期为 1s。
上传代码到Makeblock主板点击Arduino串口监视器。 您将看到运行结果如下
4.png
l  mBlock编程
温度传感器 模块支持mBlock编程环境,如下是该模块指令简介
    5.png
  
参数一:选定接口
  参数二:选定插槽

功能:读取温度数值;
以下是如何使用mBlock控制温度传感器模块的例子:
这个方程将会使小熊猫说出来自温度传感器的温度数据,运行结果如下:
6.png
7、原理解析
    本模块主要元件为DS18B20温度传感器,具有微型化,低功耗,高性能,抗干扰能力强,易配微处理器等优点,独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条总线即可实现微处理器与DS18B20的双向通讯。支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温,测量结果以9~12位数字量方式串行传送。和单片机通信时,可以通过配置寄存器来设置分辨率。
DS18B20中的温度传感器完成对温度的测量,用16位二进制形式提供,其中S为符号位。
7.png
例如:
+125℃的数字输出07D0H
(正温度直接把16进制数转成10进制即得到温度值 )
-55℃的数字输出 FC90H(负温度把得到的16进制数取反后加1 再转成10进制数)
8.png
8、相关链接
应用案例及原理图:


传送门
Makeblock官网
Makeblock淘宝
Makeblock常见问题解答

● Makeblock产品资料
learn.makeblock.cc
app.makeblock.cc
http://mblock.cc

微信公众号:Makeblock创客工场   



收藏
1 条回帖
wwzj新手会员2017-6-15 16:16:09
没代码下载啊
需要登陆后才可进行回复 登录

返回顶部
现在加入我们,注册一个账号 账号登陆 QQ账号登陆 微博账号登陆