基于Wemos D1的感应开盖垃圾桶

硬件平台介绍 WeMos D1

在这里插入图片描述

特性
  1. 基于ESP-8266EX
  2. Arduino兼容,使用arduino IDE来编程
  3. 11 * I/O 引脚
  4. 1 * ADC引脚(输入范围0-3.3V)
  5. 板载5V 1A开关电源(高输入电压24V)
工作中
  1. 和STM32模块开发类似,集成度高
  2. 更经济便宜

软件环境介绍

Arduino开发环境
优点:
  1. 集成很多开发库如串口,网络,sg90等各种硬件开发接口,迅捷开发
  2. 自带串口调试工具
缺点:
  1. 程序编译速度慢

超声波模块介绍

在这里插入图片描述

超声波传感器模块上面通常有两个超声波元件器,一个用于发射,一个用于接受。电路板上有4个引脚:VCC(正极)、Trig(触发)、Echo(回应)、GND(接地)

主要参数:
  1. 工作电压与电流:5V、15mA
  2. 感测距离:2~400cm
  3. 感测角度:不大于15°
  4. 被测物体的面积不要小于50cm²并且尽量平整
  5. 具备温度补偿电路

在超声波模块的出发脚位输入10微秒以上的高电位,即可发射超声波。发射超声波之后,与接收到传回的超声波之前,“响应”脚位呈现高电位,因此,程序可从“响应”脚位的高电位脉冲持续时间,换算出被测物的距离。

超声波模块原理:

在这里插入图片描述

在这里插入图片描述

响应测距核心代码
const byte trigPin = 10;
const int echoPin = 9;
unsigned long d;
unsigned long ping(){
    
    
	digitalWrite(trigPIN, HIGH)delayMicroseconds(10);	//发送一个10us脉冲
	digitalWrite(trigPin, LOW);
	return pulseIn(echoPin, HIGH);	//波传过程echo高点品,计算高电平时间就获取波传输时间,单位是us

}

void setup(){
    
    
	pinMode(trigPin, OUTPUT)
	pinMode(echoPin, INPUT);
	Serial.begin(115200);
}

void loop(){
    
    
	d = ping()/58;
	Serial.print(d);
	Serial.print("cm");
	Serial.printn();
	delay(1000);
}		
关于距离中除以58的说明

声音在干燥、20℃的空气中的传播速度大约为343m/s,即34300cm/s,换算单位,34300 / 1,000,000cm/us。即为0.0343cm/us,再换一个角度,1/0.0343cm/us,即29.15us/cm,这就意味这,291.5us表示10cm的距离,1cm就是29.15us, 但是从发送到接受,声音走过2倍的距离。所以实际距离就是1cm对应58.3us。实际整个测距过程是测的发出声波到收到回波的时间,程序里的时间是us,换成距离cm,要除以58(58.3)

SG90舵机

在这里插入图片描述
型号:SG90 重量13克 角度90°~270°
红色线为电压 棕色线为地线 橙色线为信号线
尺寸:21.5mm11.8mm22.7mm
重量:9克
五负载速度:0.12s/60° (4.8V)
堵转扭矩:1.2-1.4公斤/厘米(4.8V)
使用温度:-30℃~60℃
死区设定:7us
工作电压:4.8V-6V

接线

超声波测距模块

1.VCC接Wemos板的5V口
2.Trig接Wemos板的D8
3.Echo接Wemos板的D2
4.Gnd接Wemos板的GND

SG90舵机

1.橙色线接Wemos板的D5
2.红色线接Wemos板的3.3V
3.灰色线接Wemos板的另一个GND

成品如下

在这里插入图片描述

在这里插入图片描述

本项目基于陈立臣课程教学完成的,其他相关信息可关注CSDN账号:https://blog.csdn.net/chenlichenforlinux21
或抖音号:上官可编程

猜你喜欢

转载自blog.csdn.net/zouchengzhi1021/article/details/111880104