简介
SHTC3是业内知名的Sensirion公司推出的新一代数字温湿度传感器,脱胎于久经市场考验并取得斐然成绩的 SHTC1。传承了盛思锐湿度和温度传感器在业界有口皆碑的质量和可靠性,SHTC3 可在广阔的测量范围内提供始终如一的高精确度,为用户带来最佳的性价比。
SHTC3凭借宽电源电压范围 (3.3 – 5 V) 和顶尖精度(±2% 相对湿度,±0.2℃),它拥有更出色的灵活性。
SHTC3可以测量 0 至 100% 的相对湿度以及 -40℃ 至 125℃ 的温度,可以达到 ±2%的湿度精度和 ±0.2℃温度精度。
凭借 3.3 V 至 5 V 的宽电源电压以及低于0.15mA的低功耗模式,SHTC3 非常适用于由电池供电的移动或无线应用。
特性
- 高精度
- 低功耗
- 体积小
- 响应快
应用场景
- 智能楼宇、家具
- 天气站
- 仓库存储
- 动物、植物养殖
- 动物孵化箱
- 植物种子发芽箱
技术规格
- 通信接口:I2C
- 工作电压:3.3V-5V
- 工作电流:0.34mA(3.3v) / 0.43mA(5v)
- 湿度测量范围:0~100%相对湿度
- 湿度测量精度:±2%
- 温度测量范围:-40~+125℃(-40~+275℉)
- 温度测量精度:±0.2℃
- 响应时间:8S(tau63%)
- 模块尺寸:14*17mm
- 安装孔尺寸:M2(2mm)
- 安装孔间距:10mm
引脚说明
序号 | 丝印 | 功能描述 |
---|---|---|
1 | VCC | 电源正极 |
2 | GND | 电源负极 |
3 | SCL | I2C时钟线 |
4 | SDA | I2C数据线 |
使用教程
准备
- 硬件
- 1 x Arduino UNO控制板
- 1 x SHTC3数字温湿度传感器
- 若干 杜邦线
- 软件
- Arduino IDE, 点击下载Arduino IDE
- 库文件和示例程序
关于如何安装库文件,点击链接
- 主要API接口函数列表
/**
* @brief 初始化Wire,并且对传感器进行软件复位,然后使传感器进入睡眠状态,需要使用时,在对其进行唤醒。
*/
void begin();
/**
* @brief 获取温度数据
* @return 温度值,单位:摄氏度
*/
float getTemperature();
/**
* @brief 获取湿度数据
* @return 湿度值,单位:%RH
*/
float getHumidity();
/**
* @brief 获取温湿度数据
* @param tem 存放温度数据的引用
* @param hum 存放湿度数据的引用
*/
void getTemHum(float &tem, float &hum);
/**
* @brief 设置传感器工作模式
* @param mode 传感器的工作模式
* @n SHTC3:
* @n PRECISION_HIGH_CLKSTRETCH_ON Clock Stretching Enabled
* @n PRECISION_HIGH_CLKSTRETCH_OFF Clock Stretching Disabled
* @n PRECISION_LOW_CLKSTRETCH_ON Clock Stretching Enabled & Low Power
* @n PRECISION_LOW_CLKSTRETCH_OFF Clock Stretching Disabled & Low Power
* @n SHT40:
* @n PRECISION_HIGH_HEATER_OFF measure T & RH with high precision (high repeatability)
* @n PRECISION_MID_HEATER_OFF measure T & RH with medium precision (medium repeatability)
* @n PRECISION_LOW_HEATER_OFF measure T & RH with lowest precision (low repeatability)
* @n PRECISION_HIGH_HEATER_1S activate highest heater power & high precis. meas. (typ. 200mW @ 3.3V) for 1s
* @n PRECISION_HIGH_HEATER_100MS activate highest heater power & high precis. meas. (typ. 200mW @ 3.3V) for 0.1s
* @n PRECISION_MID_HEATER_1S activate medium heater power & high precis. meas. (typ. 110mW @ 3.3V) for 1s
* @n PRECISION_MID_HEATER_100MS activate medium heater power & high precis. meas. (typ. 110mW @ 3.3V) for 0.1s
* @n PRECISION_LOW_HEATER_1S activate lowest heater power & high precis. meas. (typ. 20mW @ 3.3V) for 1s
* @n PRECISION_LOW_HEATER_100MS activate lowest heater power & high precis. meas. (typ. 20mW @ 3.3V) for 0.1s
*/
void setMode(uint16_t mode) ;
/**
* @brief 获取传感器的唯一标识符
* @return 获取成功返回传感器的唯一标识符,失败返回0
*/
uint32_t getDeviceID();
/**
* @brief software reset
*/
void softwareReset() ;
/**
* @brief Obtain raw data of temperature and humidity
* @param temp Pointer to the address of the original value of the temperature
* @param hun Pointer to the address of the original value of the humidity
* @return Is the data obtained correct? return true The data is correct ; return false The data is incorrect
*/
bool getTandRHRawData(uint16_t *temp, uint16_t *hum);
/**
* @brief 当传感器处于睡眠模式时,在进行任何进一步的通信之前,需要唤醒
*/
void wakeup();
/**
* @brief 设置传感器为睡眠模式,设置后,在未唤醒前无法进行数据采集
*/
void sleep();
接线图
样例代码 - 读取数据
烧录程序,获取当前的温度与湿度数据
/*!
* @file temperatureAndHumidity.ino
* @brief Measurement of temperature and humidity
* @n 本传感器可测量温湿度数据,温度的测量范围在-40~125 ℃ ,湿度的测量范围在 0~100 %RH。
* @n 本传感器可通过四种模式测量数据,分别是 开启时钟延展、不开启时钟延展、低功耗模式加时钟延展、低功耗模式不加时钟延展。
* @copyright Copyright (c) 2010 DFRobot Co.Ltd (https://www.dfrobot.com)
* @licence The MIT License (MIT)
* @author [yangfeng]<feng.yang@dfrobot.com>
* @version V1.0
* @date 2021-03-19
* @get from https://www.dfrobot.com
* @url https://github.com/DFRobot/DFRobot_SHTXX
*/
#include"DFRobot_SHTC3.h"
DFRobot_SHTC3 SHTC3;
uint32_t id = 0;
float temperature, humidity;
void setup() {
Serial.begin(9600);
SHTC3.begin();
SHTC3.wakeup();/*SHTC3传感器默认配置为睡眠状态,使用前请对它进行唤醒操作。 使SHTC3 进行睡眠请调用这个方法SHTC3.sleep();在SHTC3传感器进入睡眠状态后,将在被唤醒之前不工作*/
while((id = SHTC3.getDeviceID()) == 0){
Serial.println("ID retrieval error, please check whether the device is connected correctly!!!");
delay(1000);
}
delay(1000);
Serial.print("id :0x"); Serial.println(id, HEX);
/**
*
* mode 用来配置传感器的工作模式,不同的传感器有不同的工作模式
* SHTC3:
* PRECISION_HIGH_CLKSTRETCH_ON Clock Stretching Enabled
* PRECISION_HIGH_CLKSTRETCH_OFF Clock Stretching Disabled
* PRECISION_LOW_CLKSTRETCH_ON Clock Stretching Enabled & Low Power
* PRECISION_LOW_CLKSTRETCH_OFF Clock Stretching Disabled & Low Power
*/
SHTC3.setMode(/*mode = */PRECISION_HIGH_CLKSTRETCH_ON);
}
void loop() {
temperature = SHTC3.getTemperature();
humidity = SHTC3.getHumidity();
//SHTC3.getTemHum(temperature, humidity);
Serial.print("Temperature :"); Serial.print(temperature); Serial.println(" C");
Serial.print("Humidity :"); Serial.print(humidity); Serial.println(" %RH");
delay(1000);
Serial.println("----------------------------------------");
}
结果
打开串口显示当前的温度和湿度数据
常见问题
还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!
更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。