基于单片机的写字楼智能垃圾桶设计

摘 要

垃圾桶作为人类生活的必需品,随着人类时代的进步而不断改进。而最简单的开放式垃圾桶已经难以满足现代
人们的生活需求。针对写字楼中的垃圾桶设计,无盖式垃圾桶虽然方便简单,但存在污染,夏天的臭味,蚊虫难以
整治,而传统带盖式垃圾桶却又过于不方便与不卫生,开盖往往需要人去接触,也不符合现在的防疫理念。现在要
求设计的基于单片机的的写字楼智能垃圾桶,能通过检测是否有人倒垃圾并自动打开垃圾桶,垃圾桶满了还会发短
信给写字楼卫生管理员处理,极大程度的减少了人与垃圾桶的接触,也解决了垃圾桶的气味和夏天时的虫子聚集。
为写字楼的人们提供一个干净卫生的工作环境,对垃圾处理和当下疫情防疫有一定意义。
关键词:垃圾桶;智能;单片机

第1章 绪论

1.1垃圾桶的历史背景和发展
  最早的垃圾桶是既不实用也不美观的土坑桶,一般建立在村庄外围,以便于丢弃垃圾之后再掩埋,这是我国最
原始的公共垃圾桶。但堆满垃圾的土坑,风一吹过后,垃圾便到处乱飞,十分污染环境,并且会散发臭味,也成为
蚊虫的繁殖温床。
图1-1-1 近代土坑垃圾桶
在这里插入图片描述

到了后来,公共地区垃圾桶演变成了由栅栏或水泥搭建的垃圾桶。这类垃圾桶构造简单,很好的解决了垃圾乱
飞的问题,但却有着体积庞大,且多半都是固定垃圾桶的问题,仅适合用于户外,便利性极低,也极其不美观。特
别是水泥桶,体型大且无法移动,清理器来也极其费劲,十分的不方便。
图1-1-2 近代水泥垃圾桶在这里插入图片描述

再到后来,随着城市的发展和社会环境的需求,垃圾桶逐渐变的更加轻量化,公共区域有中型的分类垃圾桶,
造型美观并且适合垃圾分类的需求。居民居住区也改有大型的塑料带盖大垃圾桶,满足了居民的扔垃圾需求。但这
些垃圾桶都是要么是无盖开放式,要么是带盖接触式的,并且应为体型和设计问题,不适合用于写字楼。
图1-1-3 传统分类垃圾桶
   随着时代的发展,智能垃圾桶出现了,感应式垃圾桶的出现,彻底的改变了人们丢垃圾的放式,极大程度的减
少了人与垃圾桶的接触,解决了传统垃圾桶的大部分问题。但这类智能垃圾桶往往是家用垃圾桶的定位,满了会被
家人发现而进行清理,满足的仍然只是单纯的自动开袋功能而已。而针对在写字楼使用的垃圾桶,普通的家用垃圾
桶显得过于鸡肋,没有通知功能,使得垃圾无法及时得到清理,会造成垃圾的堆积,加剧污染,臭气熏天,而且针
对家用的智能垃圾桶往往容量较小,不适用于写字楼之类的公共场所。所以,针对家用的智能垃圾桶的缺陷针对改
进,在扩大容积的同时,加装具有通讯功能的GPRS通讯模块,使得垃圾桶在装满的时候能及时通知管理人员来清
理,解决了垃圾长时间堆积会造成的二次污染问题,同时GPRS的通讯功能可以突破距离的限制,使管理人员可以同
时收到写字楼中所有垃圾桶的通知,使垃圾桶更智能,使用起来更加方便。在这里插入图片描述

图1-1-3 现代智能垃圾桶
1.2 本课题研究的意义、主要内容
1.2.1 研究的意义

  1. 关于学生自身角度 在如今毕业之际,以此设计来为四年所学做个检验,用所学知识做出这么一个设计,将学到
    的书本知识转化为实际应用,既是一份对过去的答卷,也是对未来自己能力的一个磨练。在学校手脑并用,学做合
    一的校训下,再结合自身实力,我选择这个题目,即是要身体力行的去践行校训,真正的达到学做合一,在做的同
    时也学会将所学内容灌注其中,并且当下社会,疫情肆虐,做这个智能垃圾桶如果能被广泛应用,也是回报社会,
    回报国家。
  2. 关于垃圾桶角度 随着社会的迅速发展,垃圾桶的需求也逐步改变,从能放垃圾,演变到能带盖,关住垃圾,再
    到智能垃圾桶的自动开盖。外观也逐步改进,变得越来越美观,不同的环境会设计不同外形的垃圾桶。垃圾桶也得
    与时俱进,不断发展。
      3. 关于社会角度 而且在无论是在家庭之中还是公共场所之中,怎么样做才能做到合理性的对垃圾进行处理一
    直都是一个很大的问题。特别是在当前社会疫情肆虐的情况下,这类无接触的垃圾桶就拥有了而外的意义。在炎热
    的夏天,如果不能及时处理食物的残渣和各种容易腐败腐化的垃圾,时间长了就会出现其发臭发霉等现象,使病菌
    滋生。特别是在像写字楼这样人流量较大,人群较为密集的公共场所之中,恶臭的垃圾桶显示极大的影响了人们的
    工作环境,就更应该花费时间与精力,用心的去解决关于垃圾处理的各种问题。目前市面上有的垃圾桶大都带有盖
    子,而在传统的垃圾桶设计中,垃圾桶的开盖必须要用脚开盖或者是手动开盖这两种方式,也确实并不利于和不符
    合卫生需求。为了更好地适应社会需求和社会环境,更好的解决人们的卫生健康问题,我的设计目标是打造出可以
    利用单片机控制,传感器检测,垃圾桶能自动开盖的设计产品,在垃圾桶装满时还没远程通知管理人员前来处理,
    能够极大改善人们的生活环境,提高人民的扔垃圾体验。
      通过查阅到的资料之中得知,我国大约有50%以上的城市深陷在垃圾存放和清理的问题之中。这些垃圾大多都是
    直接露天堆放在垃圾场中,没有而外的隔离和管理措施,严重的影响了人们的生活健康,垃圾长时间的堆放,不及时处理还会造成水资源、土壤和大气的污染。而且在实际生活中,当你需要丢垃圾时,面对一个又脏又臭的垃圾
    桶,你回去手动开盖扔垃圾吗?还是在破窗效应的影响下丢在垃圾桶外?毫无疑问时后者。那么关于改如何解决这
    一问题,让垃圾桶变得更加干净,更加符合当前人们的卫生需求,就需要认真的考虑,结合当前世界的科学技术来
    重新作出设计。
      随着人口的不断增长,人们生活产生的垃圾也越来越多,大量的垃圾为清理和回收工作也面临着很大的挑战。
    但是,基于目前社会,机械电子技术处于不断的发展中,各种各样的智能家具不断的进入市成,进入了大伙的视
    野。所以,我设计了一种基于单片机的智能垃圾桶。该垃圾桶可以实现垃圾桶自动开盖检测、垃圾装满提示、无线
    通讯监测等功能,可以有效提高垃圾处理的效率。在当今社会,人们越来越关注环境保护问题,而且垃圾分类及垃
    圾回收问题首当其冲,显得尤为关键且重要,在最近几年全国对垃圾分类的提倡和正确处理垃圾,解决垃圾遍地的
    现象使得垃圾桶的需求量剧增,并且对垃圾桶的需求出现了多样化,而智能垃圾桶成为当前社会的趋势。在投放垃
    圾时,智能垃圾桶能智能开盖既能节省人力物力,又能为环境保护作出贡献。
    4.国内外研究发展 针对基于单片机智能垃圾桶设计的问题,国外的许多相关专家也对此进行了研究,同时也提出了
    一些设计方案,现在国内也有许多人对此进行了研究。
    1.2.2 研究的主要内容
      在本次设计中主要利用STC89C51单片机作为开发基础来设计开发写字楼智能垃圾桶。该垃圾桶需要实现自动检
    测到人之后开盖,并且在垃圾装满后具有自动报警,发送短信给管理人员的报警功能。本次设计以单片机为控制基
    础,自动开盖功能使利用红外传感器对周围是否有人做出探测,当有人靠近的时候,人体红外传感器检测到信号之
    后,单片机会发出信号,控制步进电机正转90度来打开垃圾桶盖,在人离开一段延时之后,再自动关闭垃圾桶盖。
    垃圾桶内的红外检测模块检测到垃圾超过一定的高度一定时间之后会发送信号给单片机,如果已经装满,单片机会
    启动蜂鸣器并且控制GPRS通讯模块来通知管理人员前来清理垃圾。
  3. 垃圾桶的机械设计 根据垃圾桶的开盖需求,尽可能的以简单的机械结构来完成功能。垃圾桶的开盖方式采用电
    机驱动,需要计算电机的负载扭矩,能有效完成指定的开盖动作。
  4. 垃圾桶的电路设计 电路的设计需要满足由单片机控制,完成人体红外检测,垃圾桶内部完成红外检测,显示器
    显示垃圾已满,由蜂鸣器报警,通讯模块短信通知管理人员。在进行系统检测的过程中,单片机每间隔一段时间会
    对传感器的输出进行检测,这时需要一个用于定义定时器的中断函数。程序设计中规定设计循环为20次,每次为
    50ms的数值,定时器的初始值计算公式为:(216—X)×10—6=50×10—3,X的值为36260=3CB0H。

第2章 垃圾桶的设计

垃圾桶的设计是应用于写字楼的智能垃圾桶,外形设计方面不宜过于花哨,因此我对于垃圾桶的外形采用的原
始的方形设计,以一个中小型垃圾桶的定位来设计,显得沉稳。桶身尺寸为60厘米×60厘米,选用5毫米厚板材,桶
盖尺寸为59.5厘米×59.5厘米。
2.1总体设计方案
在最初的电路设计方案中,我提出了总共三个设计方案,其主要区别是在于单片机的选择上。
  方案一采用的是STC89C51单片机,将题目所需分为了红外检测模块,蜂鸣器模块,按键模块,开盖机构和步进
电机模块,将其所需完成功能按模块化分类,蜂鸣器模块完成报警功能,步进电机模块完成开盖,开盖模块属于机
械结构;按键模块包含了按键开盖功能和电源开关和复位按键;红外检测模块来完成检测人体靠近和垃圾桶内部容
量功能;GPRS通讯模块完成短信通知功能。
3.1-1 方案一
   方案二采用的是STC89C52单片机,与方案一的区别在于单片机的选择上,C51和C52单片机的内核结构完全一
样,两个单片机的区别在寄存器上,C51单片机的是128位的RAM,4K的ROM,而C52单片机是256位的RAM,8k的ROM。
还有C51具有6个中断源,C52具有8个;C51有T0,T1两个16位的定时器,而C52单片机有T0、T1、T2三个16位定时
器。总体上来说两者的功能相近,所以选择时没有特殊需求则可以看作两个单片机一样。
3.1-2 方案二
   方案三采用的依然是STC89C51单片机,但区别在于通讯模块上设计的是选用蓝牙模块。蓝牙模块的功能是可以
实现垃圾桶和手机连接,,可以利用模块在手机或其他移动设备上实现信息的实时传递,在经过模块处理之后,可
以提供两路PWM脉冲宽度调制波的输出,再结合了蓝牙传输系统来实现了微控制系统的串行口与其通信,最后将得到
的数据再通过蓝牙模块传送回手机端进行显示。
图3.1-3 方案三
  在三个方案中我最后选择了方案一,首先是单片机的选择区别,在日常的课程学习中,我接触的最多的是
STC89C51单片机,在教学演示中也是以51单片机为例,所以对51稍微比较熟悉,最终选择了STC89C51单片机。
  另一个区别是通选模块的选择。在方案三中提出了以蓝牙通讯模块为基础的通信,但我认为蓝牙模块的通信不
仅要在手机端搭建APP软件作为接收端,极大的增大了工作量,还收到距离的严重限制,以蓝牙为基础的通讯,接受
者不能离开蓝牙模块太远,而且也极其容易受环境干扰,比如隔了一两堵墙就会失去蓝牙信号,综合下来,蓝牙传
输的范围总共也就几米,实用性极差,单从这一点上来看就不适用于写字楼的环境。而GPRS通讯模块均是基于2g网
络的通讯,在其中插入SIM卡之后,程序运行之中即会自动的报告相关内容,摆脱了距离的限制。所以我最终选择了
方案一,基于STC89C51单片机的设计,选用GPRS协议的通讯模块。
2.2 垃圾桶结构设计
垃圾桶盖与电机的连接机械结构比较简单,采用电机与桶盖的轴直接连接,用电机的转动直接带动垃圾桶桶盖的开
合,降低成本。设计装配图详见附录。

9
10
2.2-2 垃圾桶设计图
2.3 垃圾桶材料选型
   垃圾桶模型选材时候选用的是常见的亚克力板材。亚克力又称为有机玻璃,化学名称为聚甲基丙烯酸甲酯,具
有良好的透明性,化学稳定性和耐候性,符合垃圾桶的材料需求,且易加工,易染色,可以进行自定义外观定制,
极其方便。亚克力板材密度为1.2克/立方厘米,材质轻便。所以垃圾桶总重约为1.65千克。桶盖重约为0.82千克。
2.4电机选型
因为在设计中,电机直接连接桶盖转轴来带动桶盖转动,桶盖重量为0.82千克,
  电机选用的是ULN2003步进电机。ULN2003步进电机的特点是价格便宜,负载大,承受电压高,适用性强的特
点。ULN2003步距角为5.625/64,减速比为1/64,为四相电机,该电机的启动转矩为大于等于300g.cm。因为桶盖属
于均匀负载,力臂去一半,用公式 得出M=0.845N/m,电机启动转矩满足力矩负载,所以电机能正常带
动。

第3章 垃圾桶的电路设计

3.1 单片机的最小系统设计
  单片机采用stc89c51,工作电压为3.4到5.5v。最高时钟频率达80MHZ,内含4Kbytes的可反复擦写1000次的
Flash只读程序储存器,器件兼容标准的MCS-51指令系统及80C51引脚结构,内含2个16位计数器,有40个引脚。单片
机的最小系统电路包括复位电路和晶振电路。晶振选择的是11.0592MHz,在单片机的XTAL1和XTAL2引脚外接一个
11.0592石英晶振和两个22pF的瓷片电容,即完成了晶振电路的设计。51单片机在教学使用中十分广泛,能很好的与
我们所学知识结合起来使用,是最好的选择。
  STC89C51单片机采用高电平复位,复位电路由上拉电容和下拉电阻以及独立的按键构成。复位接口接在电容和
电阻的连接处,在系统上电以后,电容开始充电,设计中电容的取值为10μF,电阻为10kΩ,构成的RC电路的时间
常数为0.1s,而单片机的复位高电平 的有效时间大于2μs,满足单片机的复位需求,加入按键是为了可以在需要时
随时进行复位。电路图如下。在这里插入图片描述

图3.1-1 最小系统电路图
3.2 显示器的电路设计
  在本次设计中,显示器仅需要显示垃圾桶是否已满,所以选用的是LCD1602显示器。该显示模块是专门用于显示
字母,数字元,符号等点阵型液晶显示模块,也可以用于汉字的显示,但受到设备硬件限制,仅仅只能显示简单汉
字,并且需要转码。分4位和8位数据传输方式。LCD1602提供的是5×7点阵加上游标的显示模式。提供显示数据缓冲
区DDRAM、字符发生器CGROM和字符发生器CGRAM,可以用CGRAM来存储自己定义的最多8个5×8点阵的图形字符的字模
数据。工作电压为+4.8v到+5.2v,工作电流24.0mA。显示器内部就有上电自动复位电路,当外加电源电压超过+4.5v
3.3 通讯模块的选型
   通讯模块上我选择的是SIM800L模块。SIM800L GPRS通讯模块的供电电压为3.2到4.8V,但是单片机电路系统中
的供电电压为5V,因此如果要在电路中直接给它供电,那么只能在电路设计中就要加入一个IN4007整流二极管和一
个1000μF的大电容。或者是外接一个3.7v的电池对SIM800L模块直接供电。IN4007整流二极管可以将系统的给的5V
电压降到4.3V左右,以此来满足通讯模块的供电需求;而且1000μF电容可以在模块处于通讯状态下提高峰值电流,
保证了通讯模块的稳定性。
3.4 人体红外感应电路设计
   人体红外感应元件我选择的是HC-SR505人体红外感应模块,人在进入感应范围就会输出高电平信号,人在离开
感应范围就会自动延时关闭高电平,输出低电平。感应范围为三米以内,感应角度为小于100度,该模块的工作电压
范围在4.5V-20V,更好满足设计需求,与电路供电相符。HC-SR505人体红外感应模块有三个引脚,依次是电源、
地、信号引脚,各引脚可以直接按照连接办法连接到单片机对应的引脚进行识别即可。
3.5蜂鸣器报警电路设计
   蜂鸣器报警选用的是5V的有源蜂鸣器。结构原理为电磁线圈和磁铁周期性震动产生声音。有源内置震荡电路,
直接加电源接上电压就可以发出固定频率的声音,只有电,地两个引脚。由单片机信号控制。
3.6 内部红外感应电路
   垃圾桶内部红外感应选用的是E3F-DS30C4漫反射光电开关,响应频率为50HZ,选择的是PNP三线常开式,三十
厘米内可调感应距离。壳体材料为阻燃的ABS,耐高温,抗氧化,防腐蚀,非常适合垃圾桶内部使用。常开式感应器
在没有检测到物体挡住式处于断开状态,有物体挡住时,开关会处于闭合状态,发出信号。接线模式是三线,电、
地和信号线,直接将其连接到单片机引脚进行识别即可满足设计需求。
3.7 电源电路设计
  元器件供电电压多为5V左右,设计采用的是用5V电池为电路供电,同时电源接口接上一个电源开关来控制电路
供电。
3.8 电机电路设计
   电机采用的是ULN2003电机,电路上搭载了电机驱动模块,电机的工作电压为5V。ULN2003为4相电机,参考电
机驱动模块,设计了D2,D3,D4,D5四个lED灯作为四相工作指示灯,并分别串联一个1KΩ的电阻来满足工作电流,
相当于植入了电机驱动模块。配合电机加入了五引脚的电机接口,使电机使用时可直接插拔,将驱动板功能完全移
植到电路上。电机电路如图。
图3.8-1 电机电路设计在这里插入图片描述

第4章 程序设计

4.1 编程软件介绍
  所选的C语言作为最常用的开发语言之一,由于其相对简单,易于掌握,因此比较适合用于单片机的开发。本设
计所用到的编程软件为Keil4。通过C语言完成。软件调试阶段先是利用Keil完成预先设置程序的烧录,完成后进行
编译,上述步骤均无报错后再展开相应软件调试。
  相对于其他软件编程环境,Keil4更加的轻便快捷,操作更加的简单,深受广大嵌入式软件开发者的喜爱,并且
在学习编程之时也运用的这款软件,所以在使用起来更加的方便。Keil4支持多种芯片,包括51单片机、STM32、
HC32、NXP等,生成的HEX文件,可通过烧录器直接烧录到单片机中,非常方便。另外,Keil4编译有三种,一种是单
编,一种是部分编译,还有一种是全部编译,这样给开发人员拥有更多的选择,并且编译的结果,显示在界面的最
下方,在出现相关错误时还可以之间点击错误,错误段落便会在程序中被标出来,调试修改十分方便。
4.2总体程序逻辑设计
  垃圾桶需要满足人靠近后自动检测开盖,手动按钮开盖,自动检测装满后报警并短信通知管理人员,显示器显
示已满。
从逻辑上来,最先满足的应该是人靠近之后开盖,首先,当人靠近之后,人体红外感应模块HC-SR505率先感应到,于是持续对单片机发出高电平信号,单片机收到信号后驱动电机正转90度打开桶盖;在人离开之后,HC-SR505模块
在未检测到人的情况下,在几秒延迟之后关闭高电平输出,改为输出低电平信号给单片机,单片机随机驱动电机反
转90
度,关上桶盖。此时SIM800L,蜂鸣器,均不工作,显示器显示“Empty”,提示人们垃圾桶未满,可以继续使用。
  然后是在垃圾桶已满的时候。垃圾桶满了之后将不再自动打开,在垃圾桶内部的红外探测器持续检测到物体
后,将由常开改为闭合,给单片机输出信号,单片机传出信号,同时对电机四相都供电,将电机锁死,不再转动。
同时让蜂鸣器开始工作报警,信号发送给SIM800L GPRS通讯模块,使其自动发送短信于指定的管理员手机号上,通
知管理员垃圾已满,此时1602显示器显示“Full Stop put in”,提醒人们此垃圾桶已满,不再正常工作。在管理
人员收到短信后,按下按键输出信号,单片机输出信号解除电机自锁,并正转90度打开桶盖,让工作人员清理垃
圾,在垃圾清理完毕后,垃圾桶内红外探测器没有检测到物体,程序正常运行,人体红外没有检测到人,持续输出
低电平,单片机接收后输出信号,步进电机反转90度关闭桶盖。显示器1602显示如图4.1-2.
在这里插入图片描述

图4.1-2 垃圾桶已满时1602显示器显示在这里插入图片描述

图4.1-3 程序流程图
4.3 各部分程序设计
  因为各部分的部件多半为模块化,在最初的程序编写调试过程中运用到了学习开发板,我用的是清翔的开发
板,并逐步对电机,显示器,GPRS等主要程序控制模块进行调试。在调试过程中逐步熟悉了各模块的使用方法,在
能分步完成其功能之后再完成PCB制作,将程序整合移植到电路板上,完成所有功能的连贯工作。
4.3.1 1602显示器程序设计
   1602显示器的控制相对简单,程序之中主要是先对各引脚进行定义。在开发板上,1602显示器模块被划分了单
独的模块区域,其引脚主要是接在P00、P01、P02、P03。在程序上主要是先定义在P0系列引脚上。1602显示器的难
点在于显示内容上,1602主要是针对字符类的限时,对中文显示的能力十分差,显示中文的话,首先要用中文转码
器将显示内容转码,并且笔画稍微复杂的汉字,1602并没有足够的位置去显示,1602显示器只能定义8个5×8点阵的
图形子模数据 ,只能显示类似于“王”字之类的简单汉字,并且非常占据显示空间。在调试过程中我发现了这个问
题,打消了在显示自己名字这一想法,转而使用数字和字母来完成调试测试,其主要的显示命令语句是类似于
“write_string(0,0,"Full ");”,其中“0,0”是定义显示的位置,第一个“0”意思是从初始第一位置开始显
示,若将第二个“0”改为“1”,则是转行显示,显示内容会被放到第二行。
   而将程序移植到自己的板子上时,我在电路设计时给1602显示器预留的单片机引脚是P27、P26、P25,在移植
时候,更改了引脚即可,但在后期的显示需求中,需要给1602显示加入条件,在检测到垃圾桶内部已满前,1602显
示器显示“Empty”,表示空,内部空间未满,正常使用。在垃圾桶已满时,显示“full stop put in”,表示垃圾
桶已满,无法再接收垃圾,这里面需要加入一个信号指令,而垃圾桶内部的红外探测属于常开式,只有在检测到的
时候闭合,即可以设定判定条件,当未接收到信号时,K=0,1602显示空,但当红外检测仪检测到物体时,转为闭
合,输出信号,单片机收到信息,K=1,1602转为显示垃圾已满,不再工作。
4.3.2 电机驱动程序设计
   电机在购买时直接搭配了驱动模块,驱动模块可以而外供电。电机是五口接线,在开发板上对应P0系接口,所
以在程序定义上直接用“#define MotorData P0”指令定义,后面的引脚为P00、P01、P02、P03,定义了前面的引
脚位置,后面的引脚编号改为16进制,“uchar phasecw[4] ={0x01,0x00,0x04,0x08};”,定义是先化为2进制,上
述引脚依次为00000001、00000010、00000100、00001000,再转化为16进制,即为0x01、0x02、0x04、0x08。由于
电机是四相电机,该指令使得这四相依次获得供电,带动电机正转,若要完成反转,则将指令中四个编号反过来,
成0x08、0x04、0x02、0x01,则四相反过来依次供电,带动电机反转。
   在调试过程中,因为还暂未安装红外检测模块,无法通过红外模块提供信号来带动电机转动,于是我便在调试
中加入按键控制来模拟信号,同时也顺带完成垃圾桶的按键开盖功能。在调试中,电机的转角90度需要被设置出
来,“Delay_xms(15);”指令可以完成对转速的设置来控制了电机转动角度,“15”是在计算和实验下得出来最接
近90度。同时因为引入了按键,要先定义按键,开发板自带按键模块,根据开发板的电路资料,4个独立按键均连接
在P30系接口上,这里引用了P31和P32引脚上的两个按键,来模拟信号控制电机正反转。首先定义按键,K1按键控制
正转,K2按键控制其反转,程序里用了if语句来判断,先定义所有K=0,当按键按下,给出信号之后,对应的K变为
了1,即输出了信号,对应的电机执行“MotorCCW();”正转,或者是执行“MotorCW();”发生反转。随后在移植到
自己的板子上之后,引脚定义发生改变,电机由P0系列引脚改为P2系引脚,分别为p20、P21、P22、P23,因为其后面
编号和开发板上的一样,所以后面的定义与之前一样,不需要再更改。但按键的引脚发生了变化,引脚由P32变为了
P12引脚,但这个引脚直接“sbit K1=P1^2;”指令定义就行,移植到板子上后,电机开盖功能直接由sw1按键直接控
制,再加入红外检测模块的信号输入之后即完成了电机驱动的程序设计。
4.3.3 GPRS通讯模块的程序设计
  GPRS通讯模块是用的SIM800L模块,以2g网络为基础的通讯,支持移动和联通的2g网络,但鉴于目前联通已经关
闭了2g信号,只能使用移动。对SIM800L的调试最先是基于电脑端直接通过串口给SIM800L发送指令,用的是AT指
令。首先在供电上遇到一个问题,开发板直接提供5V供电或者是3.3V供电,十分尴尬的是如果是直接供电的话,
SIM800L需要的是3.7V到4.4V供电,于是我买了个3.7v供电电池来协助完成调试。SIM800L调试过程中,仅用得到左
侧的引脚,从上往下依次是VCC(电源),RESET,RXD,TXD,GND(接地),右侧引脚为麦克风正负接口,耳机正负接
口,是本次设计中用不到的功能,不接入也并不影响其短信收发功能的使用。焊上接口和板载天线后,插入SIM卡,
这里要注意一个细节,目前的4G,5G卡用的最小规格卡并不能插入使用,因为过小而与SIM800L卡槽不契合,需要用
到原来的中等卡套来协助。SIM800L接上电之后,电源指示灯会开始亮,闪三下停一会意味着模块报错,其主要原因
是SIM卡未插入正确,电源电压不够等硬件问题,这个问题曾经困扰了我好几天,最后反复查错之后终于才发现这个
供电问题,因为SIM800若直接接入5V是需要一个1000uF的电容来调节电压的。排除硬件问题之后,电源指示灯进入
一个持续快闪的阶段,持续快闪代表着模块正在连接网络,快闪一会后变为慢闪,意味着连上了网络,注意这两个
阶段的闪烁都是规律的,且会一直进行,如果出现不规律的闪烁,也是在报错。接上串口之后,打开电脑调试软
件,SIM800L默认为115200HZ频率通讯,这个在接上单片机后会自动和单片机频率契合,但电脑调试时候还是要选
择。在电脑端调试助手中输入“AT”初始化模块,随后要定义SIM800L的短信发送模块的模式,中文选题PDU模式,
英文选用TEXT模式。输入“AT”,模块回复“OK”,初始化完成;串口软件输入“AT+CMGF=0”,设置模块未PDU,
回车发送,模块回复“OK”,设置成功;再输入“AT+CMGS=18”,这个定义短信内容长度,输入后,如果SIM800L正
常识别,会回复“>”符号,这时候就可以通过串口发送你要发送的内容了,但这时候也是重中之重。在教学实例
中,发送内容是进行了重新的编译,例如:
  “0891683108405505F011000B813149051546F50008A7044F60597D”,其中“683108405505F0”是当前所在区域
的中心号,示例的是大连的中心号码,成都移动的中心号码是“8613800280500”,这里中心号码和接收方号码不能
直接写入里面,需要进行一个编译,但这个编译也很简单,例如“86”,在输入时候要改为“68”,号码以两个为
单位互相颠倒,在最后一位号码时不足两位,最后一位用F补足,在上述例子中,尾号编译之后就是“F0”,然后是
“3149051546F5”即为接收方号码,也是用同样的方式编译。开头的“08”指的是从“91”开始到中心号码结束为8
个字节,而在定义发送内容长度时候的“18”,指的是从中心号码之后的包括接受号码在内的所有内容的字节,总
共18字节。在最后面的“044F60597D”这一串中,最前面的04代表的是后面发送内容的字符长度,内容要用转码器
进行转码,在示例中,“4F60597D”转换过来是“你好”两字。在发送完“AT+CMGS=18”并收到“>”回复之后,输
入这串编码之后的内容,在发送之前取消自动换行,手动发送,在没有得到回复的时候,等几秒钟,依旧没有回
复,这时选用HEX格式发送“1A”,这个“1A”用16进制显示就是“0X1A”,显示“ok”,则短信已成功发送的目标
号码上。这个步骤我在调试时已经尝试修改并且往自己手机上发送了 关于将程序移植到单片机上的话,其主要步骤
和电脑端发送一样,只是用程序自动运行来代替了手动发送步骤。“uchar code at[]=“AT\r”;”指令即是直接通过
串口发送指令时的发送“AT”指
令完成初始化,,以此为例,程序执行步骤也和电脑端一样,主函数如图。

总 结

智能垃圾桶既方便了生活,保护了环境,还进一步的促进垃圾收理,具有一定的发展前景。智能垃圾桶具有智
能进行自动开盖,垃圾满了自动通知管理人员,自动报警的优势。本文给出了智能垃圾桶的设计方案,详细的介绍
了研究的主要内容、关键技术、实验方案等。
  现在家用垃圾桶大部分的设计依然是无盖,或者是脚踩开盖的凡是,,目前市场上所有的智能垃圾桶大都千篇
一律,功能单一,大部分智能垃圾桶仅仅只能完成自动进行开盖,但也有少部分垃圾桶有能够实现自动封装的功
能,但是这类垃圾桶价格也非常的高,脱离了普通家庭的垃圾桶需求,而且不适用在写字楼的环境下,并且难以维
修。在节约成本的前提下,我提出一款便宜但实用的垃圾桶设计,并且很好地解决以上的问题,本文中给出了一个
基于51 单片机的智能垃圾箱,其价格便宜,并且采用模块化设计,出现故障时可以较快找到故障点,方便维修,符
合写字楼环境的设计,也可以用于家用。
  在研究过程中,基本上完成了任务要求,设计的成果能够对一些要求进行满足:该智能垃圾桶能够不断检测是
否有人存在,但有人要过来扔垃圾时候,人进入检测范围之后就会自动检测开盖,当检测到人在离开之后,它又可
以及时的自动关盖,无需人为操控。当垃圾桶内部垃圾满了,垃圾堆过一定高度并且持续被垃圾桶内红外模块检测
到,蜂鸣器报警功能就会启动,通讯模块会通知管理人员来处理。当有人需要将垃圾扔进垃圾桶内时,人靠近之后
人体红外传感器此时就会检测到并输出信号,将其信号传送给单片机,在单片机的处理后发送信号,控制电机正转
90度打开垃圾桶盖,人离开之后,人体红外传感器延时几秒钟没检测到人就会发送信号让单片机控制电机反转90度
关盖。电机在驱动过程中使用ULN2003模块,步进电机控制垃圾桶开盖,旋转角度能够得到有效控制。在垃圾桶内部
垃圾达到一定的高度并且持续被检测到的时候,红外传感器就会对单片机发出信号,信号被处理后会触发蜂鸣器报
警,并由通讯模块发送消息通知管理人员。
  目前的设计任然存在一些问题,例如报警功能使用的是蜂鸣器,可以考虑是否将其改为用语音报警模块来改善
报警功能。垃圾桶虽然能够开盖,满足报警的功能,但开盖的机械结构还可以进行改进,以提高垃圾桶的密封性,
或者更改得更加美观,除此以外,通讯模块也可以进行考究,毕竟基于2G网络的GPRS通讯已经逐渐落后,例如联通
已经停止了2G网络,只能使用移动。
  本文给出了一种基于单片机的智能垃圾桶设计方案,在基于51单片机的情况下,结合了红外感应模块,通讯模
块和电机驱动模块等,完成了其整体功能,实现了红外检测人体开盖,垃圾满了自锁,通讯模块的短信通知。

附录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值