基于单片机AT90USB1286的垃圾称重计费控制系统
本文设计了一种基于单片机的垃圾称重计费控制系统。与其他控制系统相比,单片机系统具有体积小巧、成本低廉等优势。
系统工作原理如下:垃圾箱由3个不同的箱体组成,分别收集厨余垃圾(箱1)、纸张和塑料等可回收垃圾(箱2)以及其他不可回收垃圾(箱3)。每个箱体顶部安装大小合适的投入门,底部安装一个称重台。住户准备投放垃圾时,拿出充值卡,当卡内余额充足时,可以打开箱1、箱2或箱3,进行垃圾投放。其中箱1和箱3按照称重减费,箱2按照称重加费。为防止不同类别的垃圾投错,可以将各个箱的投入门做得各不相同,例如纸张投入箱控制门应当做成扁平口,只允许纸张或报纸杂志投入。控制系统硬件结构如图1所示。
与其他控制器相比,单片机具有体积小巧、价格低廉以及性价比高等优点,因此本控制系统选用目前应用最多的AT89S51单片机做为主控制器,可以方便地与射频电路、显示电路、通信电路、A/D转换电路接口连接,构成完整的控制系统。
IC卡及读卡电路
非接触式IC卡又称射频卡,与接触式IC卡相比,解决了无源和免接触的问题,具有可靠性高、操作方便的优点,本设计中选用目前流行的Mifare1卡,控制器内的专用读卡芯片连接的天线线圈不断向外发射一组13.56MHz固定频率的电磁波,Mifare1卡靠近时,卡内的LC串联谐振电路产生共振,使电容充电产生电荷,当电容充电达到2V时,该电容作为电源为卡上的电路提供工作电压,将卡内数据发射出去或接收控制器内的数据并予以保存[1]。
AT90USB1286是应用于13.56MHz的非接触式通信高集成度读卡芯片,集成了13.56MHz下所有类型的被动非接触通信方式和协议,支持Mifare1卡,与AT89S51的接口电路如图2所示。根据系统要求,相应部分的控制程序需要实现的功能如下:
(1)无刷卡时,系统处于等待状态;当有刷卡时,识别卡内信息,包括用户信息、卡内余额以及系统内部的存储区域,并调用显示程序。
(2)支付方式可选充值和记账。本设计采用充值方式,对厨余垃圾和不可回收垃圾进行扣费,而纸张、塑料垃圾可以向卡内充值。
称重模块和显示模块的设计
(1)称重传感器的选择
电子计价秤、平台称等场合适合选用铝合金悬臂梁式传感器,由弯曲引起的形变,在弯曲面集中的区域上下两面粘贴应变计,形成全桥的测量电路。图3为CYT-204系列悬臂梁称重传感器,选择量程为0~0.1T,精度高,漂移低;选择输出0~5V,易于和单片机接口;尺寸为130mm×32mm×32mm,安装方便[3]。
(2)A/D转换电路和显示电路的设计
号码和卡内余额。当用户按下箱体选择按钮,垃圾重量计费装置打开相应的投入门,用户投放垃圾完毕后,根据投放垃圾的种类和重量,卡内余额可以增加或扣减并进行显示。
存储模块和通信模块的设计
AT90USB1286是ATMEL公司的EEPROM存储器,它的接线极为简单,只需要2根信号线;其存储容量为1KB,1个存储模块可以储存几百个用户的信息,与单片机的接口电路如图4所示。
对每个住户的垃圾投放情况进行统计,需要将系统内存储的住户垃圾投放信息读出。单片机的串行通信接口可以扩展为USB接口、RS232接口和GPRS接口等。本系统内AT89S51的串行接口只有1个,考虑到系统的方便性,在本设计中采用USB口扩展。
L298N芯片是步进电机和直流电机的驱动芯片,很容易实现电机的正反转,本设计中选择Multiwatt15封装,易于实验室焊接。L298N芯片的引角图如图5所示。该芯片可接收标准TTL逻辑电平信号VSS,VSS可接4.5V~7V电压;4脚VS接电源电压,VS电压范围VIH为2.5V~46V。输出电流可达2.5A,可驱动电感性负载;1脚和15脚下发射极分别单独引出以便接入电流采样电阻,形成电流传感信号。L298可驱动2个电动机,OUT1和OUT2以及OUT3和OUT4之间可分别接电动机。输入信号端IN1接高电平、IN2接低电平,电机1正转;反之,电机1反转。输入信号端IN3接高电平、IN4接低电平,电机2正转;反之,电机2反转。因为不需要调速,调速端A、B可以直接接+5V。本装置中,有3个投入门需要控制,因此需要2片L298N,占用单片机6个I/O口。另外L298N对每个电动机都有使能控制端EnA和EnB,3个投入门需要3根单片机I/O口线,如果它们为低电平,则电机不会转动。
考虑到一片AT90USB1286的I/O口有限,且本系统需要的I/O口线较多,所以选用1片AT90USB1286来控制投入门电动机动作的正反转。AT90USB1286可以接收选择投入门的按键的信号;它是24引脚的CPU芯片,体积小,节省空间。投入门是否动作由系统中的主CPUAT90USB1286的一根口线和这片AT89C2051一根I/O口线相连作为信号线来决定。如果用户卡余额不足,则AT90USB1286的这根I/O口线输出高电平,与AT90USB1286相连的I/O口线也为高电平,禁止所有投入门动作。