网站建设技术员,手机网站建设哪家公司好,宁波搜索引擎优化seo,家庭带宽100m做网站摘要
随着现代化进程的日益推进#xff0c;科技越来越发达#xff0c;人们的生活水平也提高了#xff0c;城市化程度越来越高#xff0c;与此同时也带了许多问题#xff0c;生活垃圾越来越多垃圾设施却不够完善。无论是在公共场合还是家庭厨房的垃圾大都是没有盖或者有盖…摘要
随着现代化进程的日益推进科技越来越发达人们的生活水平也提高了城市化程度越来越高与此同时也带了许多问题生活垃圾越来越多垃圾设施却不够完善。无论是在公共场合还是家庭厨房的垃圾大都是没有盖或者有盖但需要人用手打开的比如夏天的家庭厨房没有及时清理的垃圾放在垃圾桶里就可能会散发出刺鼻的异味。而医院的垃圾更是会滋生病毒传播疾病。那么实现垃圾桶的自动开启闭合就显的非常必要。
本次毕业设计的主要内容是利用单片机设计并制作一套智能垃圾箱。该系统具有自动感应并自动开关的功能。即当有人扔垃圾时可以自动感应实现圾箱盖自动打开。实验测试该系统操作简单确实方便了在日常生活中对垃圾的处理。
关键词:步进电机;单片机;垃圾箱;红外对管 第一章 绪论
1.1 智能垃圾桶的背景
随着现代化进程的日益推进科技越来越发达人们的生活水平也提高了开始追求健康、和谐的生活环境重视生活周边的环境卫生因此环保产品与设备也应运而生。在公司、办公室或者是家庭中垃圾的存放经常是困扰我们的一个问题。无论是在公共场合还是家庭厨房的垃圾大都是没有盖或者有盖但需要人用手打开的比如夏天的家庭厨房没有及时清理的垃圾放在垃圾桶里就可能会散发出刺鼻的异味。而医院的垃圾更是会滋生病毒传播疾病。虽然国家早就提出了保护环境不乱丢垃圾以及废物资源回收再利用的倡导但仍旧屡禁不止其主要原因是由于垃圾桶很不卫生大多数人都不愿直接接触垃圾桶去扔垃圾有的人甚至直接将垃圾丢在垃圾桶盖_上或者垃圾桶周围使得垃圾桶内“无垃圾”桶外“垃圾遍地”和资源再回收的现象变得十分困难。而大量堆积在外的垃圾还会发出刺鼻的异味既污染了环境也增加了人与细菌接触的几率。那么实现垃圾桶的自动开启闭合就显的非常必要。
1.1.2 垃圾桶的现状与发展
垃圾桶是人们生活中“藏污纳垢”的容器。垃圾桶是社会文化的一种折射。垃圾桶就使用场合可分为公共垃圾桶和家庭垃圾桶。就盛放垃圾形式可分为独立垃圾桶和分类垃圾桶。据调查现在使用的垃圾箱主要存在垃圾桶对垃圾的密封效果不好导致垃圾桶附近异味较大并且极易滋生细菌、寄生虫等人们的健康造成较大的危害。
目前市场上各种各样的垃圾箱看了让人眼花缭乱功能无非就是用脚压或者在根本就不用盖子的“露天”式垃圾箱这些垃圾箱都不可避免的要与垃圾箱接触不能满足人们高节奏的工作和生活需要。在计算机和各种传感技术高速发展的今天各种智能仪器仪表自动化设备也快速进入人们的日常生活中各种智能机械设备为人类节省了不少的人力、财力资源然而以后智能化、自动化也将在各行各业得到更完美的应用真正实现智能化社会。
2.1 系统框架
硬件主要以单片机为核心通过软件和硬件的结合实现检测到人自动打开垃圾桶盖的效果并且垃圾桶满了之后有声光提醒。主要通过三大块来设计包括驱动电路、检测电路和声光报警电路等。
本设计的系统总框图如图2-1所示。 图2-1 总体设计框图
一、硬件方案
硬件构成本系统采用单片机红外传感器按键步进电机蜂鸣器发光二极管而成。 二、设计功能
1. 单片机型号STC89C52/51、AT89C52/51、AT89S52/51 都可通用
2、红外1放外部检测到有人时步进电机左转90度人离开2S后右转90度关闭。模拟自动开和关。
3、红外2放内部检测是否装满模拟安装在顶部如果持续时间4s都检测到有东西那么就led 蜂鸣器 报警提示
4、垃圾装满后检测到有人不会主动开盖只能通过手动按键控制打开垃圾箱盖倒垃圾。 三、实物图 方案选择 单片机的选择
方案一AT89C52是美国ATMEL公司生产的低电压高性能CMOS型8位单片机器件采用ATMEL公司的高密度、非易失性存储技术生产兼容标准MCS-51指令系统片内置通用8位中央处理器(CPU)和Flash存储单元功能强大。其片内的8K程序存储器是FLASH工艺的这种单片机对开发设备的要求很低开发时间也大大缩短。写入单片机内的程序还可以进行加密这又很好地保护我们的劳动成果。再者AT89C52目前的售价比8031还低市场供应也很充足。AT89C52可构成真正的单片机最小应用系统缩小系统体积增加系统的可靠性降低系统的成本。只要程序长度小于8K四个I/O口全部提供给用户。可用5V电压编程而且擦写时间仅需lOms。AT89C51芯片提供三级程序存储器加密提供了方便灵活而可靠的硬加密手段能完全保证程序或系统不被仿制。PO口是三态双向口通称数据总线口因为只有该口能直接用于对外部存储器的读/写操作。
方案二STC89C52系列单片机的指令系统和AT89C52系列的完全兼容但实际操作起来却存在很多问题
1AT89C52不带ISP下载要用下载器才行STC89C52可以用你的USB转串口下载下载软件可以到STC厂家网上去下。
2STC单片机执行指令的速度很快大约是AT的3-30倍尽管快是好事但这样一来你在AT上好使的程序在STC上不一定好用最典型的例子就是那些对时序有严格要求的模块用STC时注意得加长延时大约是AT的10—30倍就差不多这一点自己调试就知道了。
3STC单片机对工作环境的要求比较低电压低于5伏时仍然正常工作甚至3伏到4伏之间都还可以工作然而这样的环境下AT肯定不行了所以当一个系统用STC单片机好用但用AT的单片机不工作时直接查最小系统看单片机的供电是否正常。
比较这两种方案由于在学校期间学过数字电路、单片机原理、C语言程序设计综合考虑单片机的各部分资源和作为学生能够获得的资源经过对比此次设计要求我选择用STC系列芯片完成。而且学校也提供了相应的硬件操作平台实际操作起来比较方便故STC为更合理的选择。本系统选择STC89C52单片机作为主控芯片。足够本设计运行且价格便宜下载程序方便。
3.2主控模块设计
单片微型计算机是随着微型计算机的发展而产生和发展的。自从1975 年美国德克萨斯仪器公司的第一台单片微型计算机 简称单片机TMS-1000 问世以来迄今为止单片机技术已成为计算机技术的一个独特分支单片机的应用领域也越来越广泛特别是在工业控制中经常遇到对某些物理量进行定时采样与控制的问题在仪器仪表智能化中也扮演着极其重要的角色。
如果将8位单片机的推出作为起点那么单片机的发展历史大致可以分为以下几个阶段
第一阶段1976—1978单片机的探索阶段。以Intel公司的MCS-48为代表。MCS-48的推出是在工控领域的探索参与这一探索的公司还有Motorola、Zilog等。都取得了满意的效果。这就是SCM的诞生年代“单片机”一词即由此而来。
第二阶段1978—1982单片机的完善阶段。Intel公司在MCS-48基础上推出了完善的、典型的单片机系列MCS-51。它在以下几个方面奠定了典型的通用总线型单片机体系结构。
1完善的外部总线。MCS-51设置了经典的8位单片机的总线结构包括8位数据总线、16位地址总线、控制总线及具有多机通信功能的串行通信接口。
2CPU外围功能单元的集中管理模式。
3体现工控特性的地址空间及位操作方式。
4指令系统趋于丰富和完善并且增加了许多突出控制功能的指令。
第三阶段1982—19908位单片机的巩固发展及16位单片机的推出阶段也是单片机向微控制器发展的阶段。Intel公司推出的MCS-96系列单片机将一些用于测控系统的模数转换器、程序运行监视器、脉宽调制器等纳入片中体现了单片机的微控制器特征。
第四阶段1990—微控制器的全面发展阶段。随着单片机在各个领域全面、深入地发展和应用出现了高速、大寻址范围、强运算能力的8位/16位/32位通用型单片机以及小型廉价的专用型单片机。
单片机是在集成电路芯片上集成了各种元件的微型计算机这些元件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时/计数器、中断系统、时钟部件的集成和I/O接口电路。由于单片机具有体积小、价格低、可靠性高、开发应用方便等特点因此在现代电子技术和工业领域应用较为广泛在智能仪表中单片机是应用最多、最活跃的领域之一。在控制领域中,现如今人们更注意计算机的底成本、小体积、运行的可靠性和控制的灵活性。在各类仪器、仪表中引入单片机使仪器仪表智能化提高测试的自动化程度和精度提高计算机的运算速度简化仪器仪表的硬件结构提高其性能价格比。
单片机引脚介绍
单片机主要特点
1有优异的性能价格比。
2集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上内部采用总线结构减少了各芯片之间的连线大大提高了单片机的可靠性和抗干扰能力。另外其体积小对于强磁场环境易于采取屏蔽措施适合在恶劣环境下工作。
3控制功能强。为了满足工业控制的要求一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。
4低功耗、低电压便于生产便携式产品。
5外部总线增加了I2CInter-Integrated Circuit及SPI(Serial Peripheral Interface)等串行总线方式进一步缩小了体积简化了结构。
6单片机的系统扩展和系统配置较典型、规范容易构成各种规模的应用系统。
优异的性能价格比。
1集成度高、体积小、有很高的可靠性。
单片机把各功能部件集成在一块芯片上内部采用总线结构减少了各芯片之间的连线大大提高了单片机的可靠性与抗干扰能力。另外其体积小对于强磁场环境易于采取屏蔽措施适合于在恶劣环境下工作。
此外程序多采取固化形式也可以提高可靠性。
2控制功能强。
为了满足工业控制要求一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。
单片机的系统扩展、系统配置较典型、规范容易构成各种规模的应用系统。 VCCSTC89C52电源正端输入接5V。
GND电源地端。
XTAL1: 单芯片系统时钟的反相放大器输入端。
XTAL2 系统时钟的反相放大器输出端一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了此外可以在两引脚与地之间加入一 20PF 的小电容可以使系统更稳定避免噪声干扰而死机。
RESETSTC89C52的重置引脚高电平动作当要对晶片重置时只要对此引脚电平提升至高电平并保持两个机器周期以上的时间AT89S51便能完成系统重置的各项动作使得内部特殊功能寄存器之内容均被设成已知状态并且至地址0000H处开始读入程序代码而执行程序。
EA/VppEA为英文External Access的缩写表示存取外部程序代码之意低电平动作也就是说当此引脚接低电平后系统会取用外部的程序代码存于外部EPROM中来执行程序。因此在8031及8032中EA引脚必须接低电平因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时此引脚要接成高电平。此外在将程序代码烧录至8751内部EPROM时可以利用此引脚来输入21V的烧录高压Vpp。
ALE/PROGALE是英文Address Latch Enable的缩写表示地址锁存器启用信号。STC89C52可以利用这支引脚来触发外部的8位锁存器如74LS373将端口0的地址总线A0A7锁进锁存器中因为STC89C52是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序代码时此引脚会被当成程序规划的特殊功能来使用。
PSEN此为Program Store Enable的缩写其意为程序储存启用当8051被设成为读取外部程序代码工作模式时EA0会送出此信号以便取得程序代码通常这支脚是接到EPROM的OE脚。STC89C52可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。
PORT0P0.0P0.7端口0是一个8位宽的开路汲极Open Drain双向输出入端口共有8个位P0.0表示位0P0.1表示位1依此类推。其他三个I/O端口P1、P2、P3则不具有此电路组态而是内部有一提升电路P0在当做I/O用时可以推动8个LS的TTL负载。
PORT2P2.0P2.7端口2是具有内部提升电路的双向I/O端口每一个引脚可以推动4个LS的TTL负载若将端口2的输出设为高电平时此端口便能当成输入端口来使用。P2除了当做一般I/O端口使用外若是在STC89C52扩充外接程序存储器或数据存储器时也提供地址总线的高字节A8A15这个时候P2便不能当做I/O来使用了。
PORT1P1.0P1.7端口1也是具有内部提升电路的双向I/O端口其输出缓冲器可以推动4个LS TTL负载同样地若将端口1的输出设为高电平便是由此端口来输入数据。如果是使用8052或是8032的话P1.0又当做定时器2的外部脉冲输入脚而P1.1可以有T2EX功能可以做外部中断输入的触发脚位。
PORT3P3.0P3.7端口3也具有内部提升电路的双向I/O端口其输出缓冲器可以推动4个TTL负载同时还多工具有其他的额外特殊功能包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
其引脚分配如下
P3.0RXD串行通信输入。
P3.1TXD串行通信输出。
P3.2INT0外部中断0输入。
P3.3INT1外部中断1输入。
P3.4T0计时计数器0输入。
P3.5T1计时计数器1输入。
P3.6WR外部数据存储器的写入信号。
P3.7RD外部数据存储器的读取信号。
RST复位输入。当振荡器复位器件时要保持RST脚两个机器周期的高电平时间。
ALE/PROG当访问外部存储器时地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间此引脚用于输入编程脉冲。在平时ALE端以不变的频率周期输出正脉冲信号此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时 ALE只有在执行MOVXMOVC指令是ALE才起作用。另外该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止置位无效。
PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间每个机器周期两次/PSEN有效。但在访问外部数据存储器时这两次有效的/PSEN信号将不出现。
EA/VPP当/EA保持低电平时则在此期间外部程序存储器0000H-FFFFH不管是否有内部程序存储器。注意加密方式1时/EA将内部锁定为RESET当/EA端保持高电平时此间内部程序存储器。
单片机最小系统
单片机芯片内还有一项主要内容就是并行I/O口。STC89C51共有4个8位的并行I/O口分别记作P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上它们已被归入专用寄存器之列并且具有字节寻址和位寻址功能。在访问片外扩展存储器时低8位地址和数据由P0口分时传送高8位地址由P2口传送。在无片外扩展存储器的系统中这4个口的每一位均可作为双向的I/O端口使用。
单片机的4个I/O口都是8位双向口这些口在结构和特性上是基本相同的但又各具特点。
STC89C51单片机的时钟信号通常有两种方式产生一是内部时钟方式二是外部时钟方式。在单片机内部有一振荡电路只要在单片机的XTAL1和XTAL2引脚外接石英晶体简称晶振就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频率和快速起振电容值在5-30pF典型值为30pF。晶振CYS的振荡频率范围在1.2-12MHz间选择典型值为12MHz和11.0592MHz。
当在STC89C51单片机的RST引脚引入高电平并保持2个机器周期时单片机内部就执行复位操作若该引脚持续保持高电平单片机就处于循环复位状态。
复位电路通常采用上电自动复位和按钮复位两种方式。最简单的上电自动复位电路中上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。时钟频率用6MHZ时C取22uF,R取1KΩ。除了上电复位外有时还需要按键手动复位。本设计就是用的按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经过电阻与电源Vcc接通而实现的。
四、原理图
在本设计做的过程中硬件和软件方面都遇到了许多问题但是相比于软件在硬件方面还是比较快解决的方面因为硬件是比较容易检查出来错误的软件比较晦涩难懂还是有一定难度。 在硬件调试问题上首先焊接好了元器件实物板后先用万用表测量这个工业板子的电源方面电源方面是最重要的问题应该是特别需要检查的地方以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题或者有没有虚焊或者没有焊接到的地方然后核对一下元器件的安装是否有问题安装上去是否符合规定由于已经是大学四年都是做过了很多实训过来了对于这些还是游刃有余的但是在上机调试后还是发现了很多的问题。 五、PCB图
在本设计做的过程中硬件和软件方面都遇到了许多问题但是相比于软件在硬件方面还是比较快解决的方面因为硬件是比较容易检查出来错误的软件比较晦涩难懂还是有一定难度。 在硬件调试问题上首先焊接好了元器件实物板后先用万用表测量这个工业板子的电源方面电源方面是最重要的问题应该是特别需要检查的地方以防止电源的短路和正负极的错误。然后在仔细检查电路的连接是否有问题或者有没有虚焊或者没有焊接到的地方然后核对一下元器件的安装是否有问题安装上去是否符合规定由于已经是大学四年都是做过了很多实训过来了对于这些还是游刃有余的但是在上机调试后还是发现了很多的问题。 六、Proteus仿真 七、程序源码
Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统与汇编相比C语言在功能上、结构性、可读性、可维护性上有明显的优势因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案通过一个集成开发环境μVision将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程那么Keil几乎就是你的不二之选即使不使用C语言而仅用汇编语言编程其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 资料包括 需要完整的资料可以加入我的纷传圈子里面有资源压缩包的百度网盘下载地址及提取码。
纷传点击用微信打开即可过程有点繁琐请见谅。