资料介绍
描述
农村黑客工具包。
Rural Hack Kit 是一套完美的电子设备,可让您开始对您的农场、花园或阳台上的植物进行黑客攻击。
该套件包括监测我们的绿色沉默朋友环境的必需品:精确的土壤湿度传感器、精确的数字光传感器模块和温度和湿度传感器。
此外,为了使您的温室自动化,该套件具有一个继电器模块,您可以使用它来控制水阀、风扇或灯。
套件内容
- 湿度传感器 (DHT22)
- Miceuz 的土壤湿度传感器(又名纤细的啁啾)
- Seeed 的 Grove 中继模块
这是一系列教程中的第一篇,该教程将教授如何使用套件中的模块。在本教程中,我们将学习如何将传感器和执行器连接到 Arduino,读取它们的数据并与之交互。
在接下来的教程中,您将学习如何将传感器连接到云服务并远程照顾您的花园。
DHT22温湿度传感器
传感器规格
DHT22 是一款能够读取环境温度和湿度的数字传感器。
- 低成本
- 3 至 5V 电源和 I/O
- 转换期间使用的最大电流为 2.5mA(请求数据时)
- 适用于 0-100% 湿度读数,精度为 2-5%
- 适用于 -40 至 80°C 温度读数 ±0.5°C 精度
- 不超过 0.5 Hz 采样率(每 2 秒一次)
- 机身尺寸 27mm x 59mm x 13.5mm (1.05" x 2.32" x 0.53")
- 4 针,0.1" 间距
- 重量(仅 DHT22):2.4g
连接
连接到传感器非常容易。如图所示连接
- 板上 VCC 的第一个引脚。
- 第二个引脚是数据输出引脚,将其连接到板上的任何数字引脚。
- 让第三个引脚断开。
- 将第四个引脚接地。
设置和测试
在您尝试使用传感器之前,您需要安装其库。在库管理器上搜索 dht 并安装库。
现在您只需上传将从传感器获取数据并将其打印到串行端口的测试草图。
#include
// for DHT22,
// VCC: 5V or 3V
// GND: GND
// DATA: 6
int pinDHT22 = 6;
SimpleDHT22 dht22;
void setup() {
Serial.begin(115200);
}
void loop() {
// start working...
Serial.println("=================================");
Serial.println("Sample DHT22...");
// read without samples.
// @remark We use read2 to get a float data, such as 10.1*C
// if user doesn't care about the accurate data, use read to get a byte data, such as 10*C.
float temperature = 0;
float humidity = 0;
int err = SimpleDHTErrSuccess;
if ((err = dht22.read2(pinDHT22, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
Serial.print("Read DHT22 failed, err="); Serial.println(err);delay(2000);
return;
}
Serial.print("Sample OK: ");
Serial.print((float)temperature); Serial.print(" *C, ");
Serial.print((float)humidity); Serial.println(" RH%");
// DHT22 sampling rate is 0.5HZ.
delay(2500);
}
您现在可以打开串行监视器,您应该能够看到那里打印的温度和湿度值。
I2C土壤湿度传感器
套件随附的土壤湿度传感器可能是市场上用于 DIY 土壤湿度测量的最可靠且价格最低的传感器之一。
经典的土壤湿度传感器(看起来像带有两个电极的叉子)测量种植在土壤中的两个电极之间的电阻;电极之间的高电阻意味着土壤不导电,因此它可能是干燥的;低电阻意味着电流在两个电极之间很容易流动,这就是传感器在水中或潮湿土壤中时发生的情况。
所描述技术的缺点是电极上的铜很快就会生锈,因此过了一段时间,这些传感器的读数就不再准确了。
套件中提供的传感器使用电容感应来测量其周围介质的电容:例如,湿土壤的电容比干土壤或空气的电容高。它没有电极,而是采用电容式天线,无需与土壤直接接触,这可以保护传感器,使其读数可靠且及时。
传感器可以通过 I2C 协议读取并提供以下功能:
- 土壤湿度传感
- 光感应
- 温度感应
- 复位芯片
- I2C地址更改
- 沉睡
传感器规格
- 版本 2.7.5
- 供电电压 3.3V - 5V
- 电流消耗:1.1mA @ 5V, 0.7mA @ 3.3V 空闲时, 14mA @ 5V, 7.8mA @ 3.3V 测量时。全速持续轮询传感器时,电流消耗平均为 4.5mA @ 5V、2.8mA @ 3.3V
- 工作温度 0°C - 85°C
- 湿度读数随温度漂移 - 在整个温度范围内 <10%
- 不要忘记为 SCL 和 SDA 线提供上拉
- 默认 I2C 地址为 0x20(十六进制)
连接
与传感器的连接是通过 i2c 完成的,根据您使用的电路板,您可能有不同的引脚分配给 I2C;
如果您使用 MKR1000 连接:
- VCC 到 VCC
- 地到地
- SCL 到 12
- SDA 到 11
设置和测试
首先安装I2CSoilMoistureSensor 库:打开库管理器,搜索 I2CSoilMoistureSensor 并安装库。
现在上传示例草图,您应该能够看到测量数据。
#include <I2CSoilMoistureSensor.h>
#include <Wire.h>
I2CSoilMoistureSensor sensor(0x60);
void setup() {
Wire.begin();
Serial.begin(9600);
sensor.begin(); // reset sensor
delay(1000); // give some time to boot up
Serial.print("I2C Soil Moisture Sensor Address: ");
Serial.println(sensor.getAddress(),HEX);
Serial.print("Sensor Firmware version: ");
Serial.println(sensor.getVersion(),HEX);
Serial.println();
}
void loop() {
while (sensor.isBusy()) delay(50); // available since FW 2.3
Serial.print("Soil Moisture Capacitance: ");
Serial.print(sensor.getCapacitance()); //read capacitance register
Serial.print(", Temperature: ");
Serial.print(sensor.getTemperature()/(float)10); //temperature register
Serial.print(", Light: ");
Serial.println(sensor.getLight(true)); //request light measurement, wait and read light register
sensor.sleep(); // available since FW 2.3
}
GA1A12S202 对数刻度模拟光传感器
这种由 Adafruit 生产的非常便宜的传感器模块比您可能在其他项目中使用的老式光敏电阻要准确得多。
大多数光传感器与光照水平呈线性关系,这意味着它们对黑暗区域的变化不是很敏感,并且当有很多光时很容易“最大化”。
该传感器在 3 到 55,000 Lux 的大动态范围内是对数的,因此它在低光照水平下具有很高的灵敏度,但也几乎不可能“最大化”,因此您可以在室内或室外使用它而无需更改代码或校准。
传感器规格
- 2.3-6V电源
- 板载 68K 负载电阻,最大 3V 模拟输出
- 0.2克
- 0.4 英寸 x 0.5 英寸 x 0.06 英寸(10 毫米 x 13 毫米 x 1.5 毫米)
- 0.1” (2.5mm) 安装孔
您可以在此处获取完整的数据表
连接
使用此传感器读取光强度就像从模拟传感器读取模拟一样容易。
只需通过 VCC 和 GND 连接电源,然后将 OUT 引脚连接到板上的模拟输入。
- VCC 至 3.3V 或 5V,具体取决于您的电路板电压
- OUT到你板上的AO
- GND 到板上的 GND
设置和测试
您不需要任何库来使用它,只需使用 analogRead() 函数从 A0 引脚读取值。
该传感器的最大输出值为 3.3V,如果您使用的是 mkr1000 之类的 3.3V 板,则开箱即可获得准确的读数。
!!!如果您的电路板工作电压为 5v,请查看此 adafruit 教程,您会发现有关如何使用外部模拟参考值的便捷技巧。
在下面提供的示例草图中完成了从模拟读数到勒克斯的简单转换。
将其上传到您的电路板,您应该能够准确测量房间内的光线。
/*
Test sketch for the Adafruit Analog Light Sensor
by Bill Earl
for Adafruit Industries
Connect sensor output to Analog Pin 0
Connect VCC to VCC and GND to GND
*/
int sensorPin = A0; // select the input pin for the potentiometer
float rawRange = 1024; // 3.3v
float logRange = 5.0; // 3.3v = 10^5 lux
void setup()
{
analogReference(EXTERNAL); //
Serial.begin(9600);
Serial.println("Adafruit Analog Light Sensor Test");
}
void loop()
{
// read the raw value from the sensor:
int rawValue = analogRead(sensorPin);
Serial.print("Raw = ");
Serial.print(rawValue);
Serial.print(" - Lux = ");
Serial.println(RawToLux(rawValue));
delay(1000);
}
float RawToLux(int raw)
{
float logLux = raw * logRange / rawRange;
return pow(10, logLux);
}
凹槽继电器
套件的最后一个重要部分是继电器。继电器是一个机电组件,可用于控制 Arduino 的大负载。您可以连接水泵、风扇以及基本上可以打开或关闭的任何东西。
!!!小心 !!!连接像220V灯这样的大负载很危险!!!如果您使用超过 120V 的电压,请采取所有必要的预防措施。
套件中提供的继电器也可以由 3.3v 设备控制,因此很容易将其连接到 MKR1000。
连接
将继电器连接到 Arduino 非常简单,只需将随附的 3 根电线连接到 Arduino 即可。
- VCC 到 VCC
- 地到地
- SIG 到 Arduino 上的 pin9。
模块上的两个螺丝端子是您应该连接负载的地方:风扇、泵、灯条或其他任何东西。
设置和测试
为了测试一切是否正常,我们将在我们的板上上传一个眨眼草图。
每次打开或关闭 LED 时,您都会听到继电器外壳内的机械噪音。
int RELAY_PIN=9;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
// initialize digital pin RELAY_BUILTIN as an output.
pinMode(RELAY_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
pinMode(RELAY_PIN, HIGH); // open the circuit
delay(1000);
digitalWrite(LED_BUILTIN, LOW); // close the circuit
pinMode(RELAY_PIN, LOW);
delay(1000); // wait for a second
}
- LabView工具包WebSocket-API主机下载 68次下载
- SM2246XT工具包 22次下载
- PIC32通用入门工具包开发工具的详细中文资料概述
- 用于实现PIC24F MCU器件的功能和特性的入门工具包详细中文资料概述
- 如何使用入门工具包开发工具在目标板上仿真和调试固件的详细资料概述
- 如何将MCP2210评估工具包作为开发工具使用的详细中文资料概述
- 数字电源入门工具包的详细中文资料概述
- 如何使用高性能工具包作为开发工具在目标板上仿真和调试固件
- PIC32以太网入门工具包的中文介绍和使用的详细概述
- 如何使用PIC32MZ嵌入式连接(EC)入门工具包的详细使用说明
- 低成本mTouch评估工具包的详细中文资料概述
- PIC32功能特性及以太网工具包用户指南
- PICDEM™ Z演示工具包用户指南资料下载
- 固件工具包
- 并口开发调试工具包 (推荐)
- NPOI WEG报表工具包简介 807次阅读
- 搭建一套优秀的嵌入式软件框架必备的通用工具包 835次阅读
- 固态电池设计与性能估算工具 1046次阅读
- Arm®ML处理器 嵌入式评估工具包介绍 1796次阅读
- firefly NCC S1--MDK - SSD模型工具包介绍 2067次阅读
- 关于8个流行的Python可视化工具包 3264次阅读
- LabVIEW的优势体现在以下几个方面 3w次阅读
- 计算机视觉开源库集锦 5084次阅读
- Facebook开源了增强版的NLP工具包LASER 4504次阅读
- 北大语言计算与机器学习研究组推出一套全新中文分词工具包pkuseg 3647次阅读
- 一款获得Amazon认证的领先音频前端开发工具包 4496次阅读
- NVIDIA迁移学习工具包 :用于特定领域深度学习模型快速训练的高级SDK 3031次阅读
- 街机游戏《街头霸王 3》中进行模拟来训练改进强化学习算法的工具包 4000次阅读
- 如何利用Matlab软件数字信号处理工具包处理音频文件的详细概述 1w次阅读
- 细数工具包Kanzi® UI及Kanzi Connect®其中每个插件实现的功能 1w次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多