基于51单片机的智能垃圾桶

news2024/11/28 8:43:07

功能:
本实例是基于51单片机为核心的智能垃圾桶仿真,主要由51单片机最小系统、L298N电机驱动电路、开盖电机、超声波传感器、红外测速模块、直流电机、红外人体传感器、LCD1602显示屏、震动传感器、按键电路构成。
1.系统的传感器主要用人体感应和机体震动感应来控制电机转动(开启,90度),开启后人体感应(热敏)在感应范围内感应不到人体,电机反转90度。
2.超声波进行高度感应,在限定范围内直流电机启动,对射光电传感器感应电机转速,少于2圈/秒就控制电机停止转动,否则转5秒后电机停止转动,接着电机反转,到达光电限位后电机停止。
3.通过按键,可设定超声波阈值和压缩电机的转速;
原理图:
在这里插入图片描述

Protues仿真:
在这里插入图片描述
程序:

void main()
{
	init_1602();//初始化LCD
	HC_SRinit();//初始化超声波
	IT0=1;//跳变沿出发方式(下降沿)
	EX0=1;//打开INT0的中断允许。
	TMOD|=0X11;
	TH1=0XFC;//1MS
	TL1=0X18;	
	ET1=1;//打开定时器0中断允许
	EA=1;//打开总中断
	TR1=1;//打开定时器
	while(1)
	{
		if(!set1)//高度设置
		{
			high_lim++;
			 while(!set1);
		}
		if(!set2)//高度设置
		{
			high_lim--;
			 while(!set2);
		}
		if(!set3)//速度设置
		{
			speed_lim++;
			 while(!set3);
		}
		if(!set4)//速度设置
		{
			speed_lim--;
			 while(!set4);
		}
		//==================================
		if(mode==0)//等待
		{
			if(!k1 || !k2)//人体感应+震动
			{
				pwm=2;//开盖
				mode=1;				
			}
		}
		if(mode==1)
		{
			if(k1 && k2)//等待离开
			{				
				sec=3000;//等待3s
				while(sec>0);
				pwm=1;//关闭
				if(high<high_lim)//超声波判断
				{
					out1=0;
					out2=1;
					sec=2000;//等待2s
					while(sec>0);
					while(speed1>speed_lim);//等待压缩完成
					out1=1;//电机反转5s
					out2=0;
					sec=5000;
					while(sec>0);
					out1=1;//停止
					out2=1;
				}
				mode=0;
			}
		}
	}
}

关注公众号-电子应用学习馆,首页回复垃圾桶获取。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/741860.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

订单结算页+下单业务

一、订单结算页 1.业务分析 (1) 获取用户收货地址信息 一般的收货地址都是多个&#xff0c;使用时选中一个&#xff0c;所以收货地址使用List集合封装 (2)获取购物车商品信息 购物车商品也是多个&#xff0c;使用List集合封装 (3)查询商品库存 查询每个商品是否有库存&#…

VSCode安装及环境配置详细教程(windows版本)

目录 安装VSCode 安装Python 检查环境变量 检查Python是否能运行 VSCode环境配置 切换成简体中文 添加Python插件 编写代码运行 &#xff01;&#xff01;请先在官网下载Python和VSCode安装包&#xff0c;保存至本地 Python官网&#xff1a;https://www.python.org/do…

多元回归预测 | Matlab基于灰狼算法(GWO)优化高斯过程回归(GWO-GPR)的数据回归预测,matlab代码,多变量输入模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元回归预测 | Matlab基于灰狼算法(GWO)优化高斯过程回归(GWO-GPR)的数据回归预测,matlab代码,多变量输入模型 评价指标包括:MAE、RMSE和R2等,代码质量极高,方便学习和替换数据。要求2018版本及以上。 部分源…

APP测试要点有哪些?

我们日常购物、旅游、支付等活动都离不开手机&#xff0c;由此衍生了很多APP。 比如每天使用频率非常高的微信、支付宝、微博、抖音、王者荣耀等等。 APP测试主要进行功能测试、性能测试、自动化测试、安全性测试、兼容性测试、专项测试。 01、APP测试流程 APP测试流程与web测…

软考A计划-系统集成项目管理工程师-项目进度管理-上

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

python glob库glob函数返回为空时

这里的max函数会报空序列的错误&#xff0c;原因就是glob.glob函数读取不到文件的问题&#xff0c;推测是脚本所在文件夹与传入的文件夹地址不对造成的&#xff0c;比如C&#xff1a;/tor/data/jiaoben.py,而文件所在文件夹是C&#xff1a;/tor/biaobei/

自媒体13条监管新规来了:做自媒体还有前途吗?

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 各位自媒体人&#xff0c;大家一定要逐条逐句&#xff0c;认真研读&#xff0c;领会精神&#xff0c;掌握要求&#xff0c;规范运营好自己的账号&#xff0c;切莫越界踩线&#xff0c;多为广大网友…

邮箱推荐和(警告)使用qq邮箱的坏处

qq如果发布违规消息&#xff0c;比如群聊无意发布会导致你账号封号&#xff0c;而且随着次数增多&#xff0c;会导致永久封号&#xff0c;你的qq音乐&#xff0c;qq浏览器&#xff0c;qq游戏&#xff0c;{qq邮箱}&#xff0c;全部会无法登录&#xff0c;比如需要登陆邮箱验证码…

初学者也能轻松掌握的MQL4编程入门指南

MQL4编程是外汇交易中极为重要的一部分&#xff0c;掌握MQL4编程可以帮助交易者快速创建自己的交易算法&#xff0c;进而提高交易效率和盈利水平。但是对于初学者来说&#xff0c;MQL4编程可能会显得有些困难。本篇文章就是为初学者准备的&#xff0c;针对MQL4编程进行入门指导…

对RAM和ROM的理解

什么是RAM、ROM&#xff1f; RAM(Random Access Memory)随机存取存储器 ROM(Read Only Memory)只读存储器 先记住一件事 RAM断电将失去数据 ROM断电仍会保留数据 RAM、ROM、Flash、内存条、硬盘、SD卡到底怎么归类&#xff1f; 我们先来看下计算机的原理和计算机的需求 …

【Leetcode】59. 螺旋矩阵II

给定一个正整数 n&#xff0c;生成一个包含 1 到 n^2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 面试频率较高 1. 先定义一个空矩阵 2. startx表示行起始 starty表示列起始 3. 左闭右开…

信息安全-加密技术

一、概念 加密是利用数学方法将明文(plain text)转换为密文(cipher),从而达到保护数据的目的。 加密是一个使信息只对正确的接收者可读,其他用户看到的是乱码信息的过程。 加密技术作用 加密技术在网络上的作用就是防止私有化信息在网络上被拦截和窃取。通过加密可保…

性能测试:Jmeter-Beanshell请求加密实例

前言 进行性能测试时&#xff0c;有可能遇到一种场景&#xff1a;接口请求由于安全问题&#xff0c;需要进行加密发送。 这种场景下&#xff0c;使用Jmeter实现性能测试&#xff0c;则也需要使用同样的加密规则发送请求报文。 要实现此类性能测试有几种策略&#xff1a; 直…

纹理环绕方式

一般而言&#xff0c;纹理坐标范围(0,0)到(1,1)&#xff0c;若设置超出该范围&#xff0c;则会按照如下环绕方式处理。 设置纹理参数的函数原型为&#xff1a; 坐标信息&#xff1a; float vertices[] { // positions // colors // texture coords 0.9f, 0.9f, 0.0f, 1.0f,…

线上后端接口响应过慢排查记录_MySQLthread cache命中率过低导致的接口响应慢

文章目录 问题现象初步排查调整临时解决措施问题二次定位原因分析为什么会出现异常 问题现象 9点多&#xff0c;运营同学反馈系统某模块业务响应很慢&#xff0c;登录系统查看&#xff0c;后端接口响应耗时很久&#xff0c;需要好几秒&#xff1b; 查看对应的服务器资源情况&a…

纸箱视觉定位抓取软硬件方案

【检测目的】 产品定位抓取 【客户要求】 精度为0.1mm 【拍摄与处理效图一】 【拍摄与处理效图二】 【拍摄与处理效图三】 【拍摄与处理效图四】 【拍摄与处理效图五】 【实验原理及说明】 【实验原理及说明】 【实验原理及说明】 【方案评估】 根据目前的图像和处理结果来看…

数据结构与算法——数据结构有哪些,常用数据结构详解

数据结构是学习数据存储方式的一门学科&#xff0c;那么&#xff0c;数据存储方式有哪几种呢&#xff1f;下面将对数据结构的学习内容做一个简要的总结。 数据结构大致包含以下几种存储结构&#xff1a; 线性表&#xff0c;还可细分为顺序表、链表、栈和队列&#xff1b;树结…

云计算的学习(二)

二、计算虚拟化 1.计算虚拟化的介绍 1.1虚拟化简介 a.什么是虚拟化 将物理设备逻辑化&#xff0c;转化成文件或者文件夹&#xff0c;这个文件或文件夹一定包含两个部分&#xff1a;一部分用于记录设备配置信息&#xff0c;另一部分记录用户数据。 虚拟机摆脱了服务器的禁锢…

Centos7安装go语言环境

Centos7安装go语言环境 文章目录 下载解压缩配置变量验证已安装 下载 从go语言官网下载对应的二进制存档包 wget https://dl.google.com/go/go1.12.linux-amd64.tar.gz解压缩 解压缩到/usr/local&#xff0c;将自动在其中创建一个Go树 /usr/local/go tar -C /usr/local -xz…

HashMap学习总结

1. JDK 1.8 主要进行了哪些优化&#xff1f; 1&#xff09;底层数据结构从“数组链表”改成“数组链表红黑树”&#xff0c;主要是优化了 hash 冲突较严重时&#xff0c;链表过长的查找性能&#xff1a;O(n) -> O(logn)。 2&#xff09;计算 table 初始容量的方式发生了改…