找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
楼主: eagler8
打印 上一主题 下一主题
收起左侧

【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)

  [复制链接]
1361#
ID:513258 发表于 2019-7-27 11:39 | 只看该作者

回复

使用道具 举报

1362#
ID:513258 发表于 2019-7-27 11:51 | 只看该作者
模块电原理图



回复

使用道具 举报

1363#
ID:513258 发表于 2019-7-27 12:14 | 只看该作者
校准代码
1.在正式检测土壤湿度前,需要有一个校准过程。
2.上传校准代码至Arduino主控板
3.打开串口监视助手

  1. /*
  2. 【Arduino】66种传感器模块系列实验(71)
  3. 实验七十一:电容式土壤湿度传感器模块不易腐蚀宽电压工作(TL555I)
  4. 程序之一,湿度测试校验代码
  5. */

  6. void setup() {
  7.   Serial.begin(9600);
  8. }
  9. void loop() {
  10.   int val;
  11.   val = analogRead(0);
  12.   Serial.println(val);
  13.   delay(500);
  14. }
复制代码




回复

使用道具 举报

1364#
ID:513258 发表于 2019-7-27 12:22 | 只看该作者
测量干燥情况下的数值



回复

使用道具 举报

1365#
ID:513258 发表于 2019-7-27 12:39 | 只看该作者

回复

使用道具 举报

1366#
ID:513258 发表于 2019-7-27 13:00 | 只看该作者
干湿度校准
校准说明:通过分别读取传感器在空气中和水中的数值来限定一个测量范围。
打开串口监视器,将波特率根据程序设置为9600。
首先请将该传感器放置在空气中读取模拟值,代表干燥时的读数。然后拿一杯水,把传感器插入水中一定深度(做一下标记(红虚线),此深度为你将要插入泥土的深度),一定不能超过红色警戒线(红实线)!并记录此时读到的模拟值,代表100%湿度。(输出数据与湿度成反比,在水中的输出量最小)插入深度如图推荐(红虚线处)。




回复

使用道具 举报

1367#
ID:513258 发表于 2019-7-27 13:02 | 只看该作者
传感器上部零件区最好能做些防水处理,比如防水漆,热胶等。



回复

使用道具 举报

1368#
ID:513258 发表于 2019-7-27 13:14 | 只看该作者

回复

使用道具 举报

1369#
ID:513258 发表于 2019-7-27 13:21 | 只看该作者
区间设定
由于传感器数值会受到入土深度、土壤松紧度的影响,只能检测到土壤的相对湿度,我们把湿度的范围分为三等分,分别表示干燥、湿润、非常潮湿。之前记入的两个数据为湿度区间。例如:空气中读数为620,水中读数为308,这样就可以分为【620,516】,【516,412】,【412,308】这三个区间分别代表干燥、湿润、非常潮湿。

注意:由于此传感器会根据电容感应原理来监测土壤湿度,所以放到土壤湿度不同、松紧度不同、插入深度不同的地方,会体现出不同的湿度,即使在同一个地方,同样的深度,在第二次插入时,由于第一次拔出时已经造成了泥土的松动,可能读到的湿度会比第一次低。

备注:湿度与读数是成反比的。

回复

使用道具 举报

1370#
ID:513258 发表于 2019-7-27 13:43 | 只看该作者
  1. /*
  2. 【Arduino】66种传感器模块系列实验(71)
  3. 实验七十一:电容式土壤湿度传感器模块不易腐蚀宽电压工作(TL555I)
  4. 程序之二,土壤湿度测试实验
  5. 三个区间分别为干燥、湿润、非常潮湿
  6. */

  7. const int AirValue = 620;   
  8. const int WaterValue = 308;  
  9. int intervals = (AirValue - WaterValue)/3;   
  10. int soilMoistureValue = 0;

  11. void setup() {
  12.   Serial.begin(9600);
  13. }
  14.   
  15. void loop() {
  16. soilMoistureValue = analogRead(A0);  
  17. if(soilMoistureValue > WaterValue && soilMoistureValue < (WaterValue + intervals))
  18. {
  19.   Serial.println("非常潮湿");
  20. }
  21. else if(soilMoistureValue > (WaterValue + intervals) && soilMoistureValue < (AirValue - intervals))
  22. {
  23.   Serial.println("湿润");
  24. }
  25. else if(soilMoistureValue < AirValue && soilMoistureValue > (AirValue - intervals))
  26. {
  27.   Serial.println("干燥");
  28. }
  29. delay(2000);
  30. }
复制代码


回复

使用道具 举报

1371#
ID:513258 发表于 2019-7-27 13:46 | 只看该作者

回复

使用道具 举报

1372#
ID:513258 发表于 2019-7-27 13:48 | 只看该作者

回复

使用道具 举报

1373#
ID:513258 发表于 2019-7-27 17:36 | 只看该作者

回复

使用道具 举报

1374#
ID:513258 发表于 2019-7-27 17:38 | 只看该作者

回复

使用道具 举报

1375#
ID:513258 发表于 2019-7-27 17:54 | 只看该作者

回复

使用道具 举报

1376#
ID:513258 发表于 2019-7-27 17:55 | 只看该作者

回复

使用道具 举报

1377#
ID:513258 发表于 2019-7-27 19:15 | 只看该作者
实验七十二:HX1838红外无线遥控套件红外扩展模块(遥控器+接收板)

Arduino红外无线遥控扩展套件由Mini超薄红外遥控器和38KHz红外接收模块组成,Mini超薄红外遥控器具有17个功能键,发射距离最远可达8米,非常适合在室内操控各种设备。红外接收模块可接收标准38KHz调制的遥控器信号,通过对Arduino进行编程,即可实现对遥控器信号的解码操作,从而可制作各种遥控机器人以及互动作品。




回复

使用道具 举报

1378#
ID:513258 发表于 2019-7-27 19:42 | 只看该作者
红外线
又称红外光波,在电磁波谱中,光波的波长范围为0.01um~1000um。根据波长的不同可分为可见光和不可见光,波长为0.38um~0.76um的光波可为可见光,依次为红、橙、黄、绿、青、蓝、紫七种颜色。光波为0.01um~0.38um的光波为紫外光(线),波长为0.76um~1000um的光波为红外光(线)。红外光按波长范围分为近红外、中红外、远红外、极红外4类。红外线遥控是利用近红外光传送遥控指令的,波长为0.76um~1.5um。用近红外作为遥控光源,是因为目前红外发射器件(红外发光管)与红外接收器件(光敏二极管、三极管及光电池)的发光与受光峰值波长一般为0.8um~0.94um,在近红外光波段内,二者的光谱正好重合,能够很好地匹配,可以获得较高的传输效率及较高的可靠性。




回复

使用道具 举报

1379#
ID:513258 发表于 2019-7-27 19:59 | 只看该作者
红外遥控
红外线遥控是目前使用最广泛的一种通信和遥控手段。 由于红外线遥控装置具有体积小、 功耗低、 功能强、 成本低等特点, 因而, 继彩电、 录像机之后, 在录音机、 音响设备、 空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。 工业设备中, 在高压、 辐射、 有毒气体、 粉尘等环境下, 采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。红外遥控的发射电路是采用红外发光二极管来发出经过调制的红外光波;红外接收电路由红外接收二极管、三极管或硅光电池组成,它们将红外发射器发射的红外光转换为相应的电信号,再送后置放大器。




回复

使用道具 举报

1380#
ID:513258 发表于 2019-7-28 07:58 | 只看该作者
VS/HX1838
vs1838和HX1838均为红外接收头,两者的区别主要表现在接收距离上,vs1838的最大接收距离为18--20米,HX1838的最大接收距离为15米。
vs1838参数如下——工作电压:2.7-5.5V,接收距离:18-20M,vs1838具有高灵敏度,抗光、电磁干扰能力强等特性。广泛应该于机顶盒、DVD、AV、TV、空调等,是高档电器的理想选择。
HX1838参数如下——工作电压:2.7~5.5V,工作电流:1.4mA,距离:15M,频率:38K,角度:±45°,HX1838具有宽电压适应、低功耗、高灵敏度、优良的抗干扰特性;广泛应用于家用电器、空调、玩具等红外遥控接收。




回复

使用道具 举报

1381#
ID:513258 发表于 2019-7-28 08:06 | 只看该作者

回复

使用道具 举报

1382#
ID:513258 发表于 2019-7-28 08:17 | 只看该作者

回复

使用道具 举报

1383#
ID:513258 发表于 2019-7-28 08:26 | 只看该作者
特性
  ●小型设计
  ●内置专用IC
  ●宽角度及长距离接收
  ●抗干挠能力强
  ●能抵挡环境干挠光线
  ●低电压工作
应用
  ■视听器材(音箱,电视,录影机,碟机)
  ■家庭电器(冷气机,电风扇,电灯)
  ■其它红外线遥控产品


回复

使用道具 举报

1384#
ID:513258 发表于 2019-7-28 08:32 | 只看该作者

回复

使用道具 举报

1385#
ID:513258 发表于 2019-7-28 09:12 | 只看该作者
红外的简单发射接收原理
在发射端,输入信号经放大后送入红外发射管发射,在接收端,接收管收到红外信号后,由放大器放大处理后还原成信号,这就是红外的简单发射接收原理。




红外遥控系统结构
红外遥控系统的主要部分为调制、发射和接收。红外遥控是以调制的方式发射数据,就是把数据和一定频率的载波进行“与”操作,这样既可以提高发射效率又可以降低电源功耗。调制载波频率一般在30khz到60khz之间,大多数使用的是38kHz,占空比1/3的方波,如图2所示,这是由发射端所使用的455kHz晶振决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9kHz≈38kHz。38KH载波发射(完整的发射)如下图。




回复

使用道具 举报

1386#
ID:513258 发表于 2019-7-28 09:50 | 只看该作者
做实验的HX1838红外无线遥控三件套



回复

使用道具 举报

1387#
ID:513258 发表于 2019-7-28 10:31 | 只看该作者

回复

使用道具 举报

1388#
ID:513258 发表于 2019-7-28 10:56 | 只看该作者
超薄红外遥控参数
1.CR2025环保纽扣电池,容量160mah
2.发射距离:8m以上(具体和周围环境、接收端的灵敏度等因素有关)
3.有效角度:60度
4.面贴材料:0.125mmPET,有效寿命2万次。
5.品质稳定,性价比高
6.静态电流3-5uA,动态电流3-5mA。



回复

使用道具 举报

1389#
ID:513258 发表于 2019-7-28 10:58 | 只看该作者
  1. /*
  2. 【Arduino】66种传感器模块系列实验(72)
  3. 实验七十二:HX1838红外无线遥控套件红外扩展模块(遥控器+接收板)
  4. */

  5. #include <IRremote.h>

  6. int PIN_RECV = 7;
  7. IRrecv irrecv(PIN_RECV);
  8. decode_results results;

  9. void setup()
  10. {
  11.   Serial.begin(9600);
  12.   irrecv.enableIRIn();
  13. }

  14. void loop() {
  15.   if (irrecv.decode(&results)) {
  16.     Serial.println(results.value);
  17.     irrecv.resume();
  18.   }
  19. }
复制代码


回复

使用道具 举报

1390#
ID:513258 发表于 2019-7-28 11:03 | 只看该作者

回复

使用道具 举报

1391#
ID:513258 发表于 2019-7-28 11:21 | 只看该作者
  1. /*
  2. 【Arduino】66种传感器模块系列实验(72)
  3. 实验七十二:HX1838红外无线遥控套件红外扩展模块(遥控器+接收板)
  4. 程序之二,1和2键控制板载13脚LED灯的亮暗
  5. */

  6. #include <IRremote.h>

  7. int RECV_PIN = 7;
  8. int LED_PIN = 13;

  9. IRrecv irrecv(RECV_PIN);

  10. decode_results results;

  11. void setup()
  12. {
  13.   Serial.begin(9600);
  14.   irrecv.enableIRIn(); // Start the receiver
  15.   pinMode(LED_PIN, OUTPUT);
  16.   digitalWrite(LED_PIN, HIGH);
  17. }

  18. void loop() {
  19.   if (irrecv.decode(&results)) {
  20.     Serial.println(results.value, HEX);
  21.     if (results.value == 0xFFA25D) //开灯的值
  22.     {
  23.       digitalWrite(LED_PIN, LOW);
  24.     } else if (results.value == 0xFF629D) //关灯的值
  25.     {
  26.       digitalWrite(LED_PIN, HIGH);
  27.     }
  28.     irrecv.resume(); // Receive the next value
  29.   }
  30.   delay(100);
  31. }
复制代码


回复

使用道具 举报

1392#
ID:513258 发表于 2019-7-28 11:25 | 只看该作者

回复

使用道具 举报

1393#
ID:513258 发表于 2019-7-28 11:52 | 只看该作者
  1. /*
  2. 【Arduino】66种传感器模块系列实验(72)
  3. 实验七十二:HX1838红外无线遥控套件红外扩展模块(遥控器+接收板)
  4. 程序之三,查询红外数字与HEX编码值
  5. */

  6. #include <IRremote.h>

  7. int PIN_RECV = 7;
  8. IRrecv irrecv(PIN_RECV);
  9. decode_results results;

  10. void setup()
  11. {
  12.   Serial.begin(9600);
  13.   irrecv.enableIRIn();
  14. }

  15. void loop() {
  16.   if (irrecv.decode(&results)) {
  17.     Serial.print("数字编码= ");
  18.     Serial.println(results.value);
  19.     irrecv.resume();
  20.     Serial.print("HEX编码= ");            
  21.     Serial.println(results.value, HEX);
  22.     Serial.print("编码位数= ");           
  23.     Serial.println(results.bits);
  24.   }
  25.   delay(600);
  26. }
复制代码


回复

使用道具 举报

1394#
ID:513258 发表于 2019-7-28 11:54 | 只看该作者

回复

使用道具 举报

1395#
ID:513258 发表于 2019-7-28 12:00 | 只看该作者

回复

使用道具 举报

1396#
ID:513258 发表于 2019-7-28 13:18 | 只看该作者

回复

使用道具 举报

1397#
ID:513258 发表于 2019-7-28 13:21 | 只看该作者

回复

使用道具 举报

1398#
ID:513258 发表于 2019-7-28 13:26 | 只看该作者

回复

使用道具 举报

1399#
ID:513258 发表于 2019-7-28 14:21 | 只看该作者

回复

使用道具 举报

1400#
ID:513258 发表于 2019-7-28 15:01 | 只看该作者
实验七十三:人体秤50kg称重传感器模块(电阻应变半桥式)

应变片
是由敏感栅等构成用于测量应变的元件。电阻应变片的工作原理是基于应变效应制作的,即导体或半导体材料在外界力的作用下产生机械变形时,其电阻值相应的发生变化,这种现象称为“应变效应”。




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表