基于单片机的电子秤.docx
- 文档编号:5103004
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:14
- 大小:502.52KB
基于单片机的电子秤.docx
《基于单片机的电子秤.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子秤.docx(14页珍藏版)》请在冰豆网上搜索。
基于单片机的电子秤
专业综合实训实习报告
课题:
基于单片机的电子秤
姓名:
***
学号:
**********
班级:
********
专业:
电子信息工程
2013年6月10日
目录
一:
电子秤的组成及工作原理
1:
电子秤的基本结构
2:
电子秤工作原理
3:
电子秤的计量性能
二:
各功能模块分析
1:
控制器及电源电路部分
2:
数据采集部分
2.1:
传感器的选择
2.2:
放大电路的选择
3:
显示部分
4:
按键部分
三:
软件流程框图分析
1:
主程序设计
2:
子程序设计
2.1:
A/D转换启动及数据读取程序设计
2.2:
显示子程序设计
2.3:
键盘扫描子程序的设计
附录电路原理图
一:
电子秤的组成及工作原理
1:
电子秤的基本结构
电子秤是利用物体的重力作用来确定物体质量(重量)的测量仪器,也可用来确定与质量相关的其它量大小、参数、或特性。
不管根据什么原理制成的电了秤均由以下三部分组成:
1.1:
承重、传力复位系统:
它是被称物体与转换元件之间的机械、传力复位系统,又称电子秤的秤体,一般包括接受被称物体载荷的承载器、秤桥结构、吊挂连接部件和限位减振机构等。
1.2:
称重传感器:
即由非电量(质量或重量)转换成电量的转换元件,它是把支承力变换成电的或其它形式的适合于计量求值的信号所用的一种辅助手段。
对称重传感器的基本要求是:
输出电量与输入重量保持单值对应,并有良好的线性关系;有较高的灵敏度;对被称物体的状态的影响要小;能在较差的工作条件下工作;有较好的频响特性;稳定可靠。
1.3:
测量显示和数据输出的载荷测量装置:
即处理称重传感器信号的电子线路(包括放人器、模数转换、电流源或电压源、调节器、补尝元件、保护线路等)和指示部件(如显示、打印、数据传输和存贮器件等)。
这部分习惯上称载荷测量装置或二次仪表。
在数字式的测量电路中,通常包括前置放大、滤滤、运算、变换、计数、寄存、控制和驱动显示等环节。
2:
电子秤工作原理
当被称物体放置在秤体的秤台上时,其重量便通过秤体传递到称重传感器,传感器随之产生力一电效应,将物体的重量转换成与被称物体重量成一定函数关系(一般成正比关系)的电信号(电压或电流等)。
此信号由放大电路进行放大、经滤波后再由模/数(A/D)器进行转换,数字信号再送到微处器的CPU处理,CPU不断扫描键盘和各功能开关,根据键盘输入内容和各种功能开关的状态进行必要的判断、分析、由仪表的软件来控制各种运算。
运算结果送到内存贮器,需要显示时,CPU发出指令,从内存贮器中读出送到显示器显示,或送打印机打印。
一般地信号的放大、滤波、A/D转换以及信号各种运算处理都在仪表中完成。
3:
电子秤的计量性能
电子秤的计量性能涉及的主要技术指标有:
量程、分度值、分度数、准确度等级等。
(1)量程:
电子衡器的最大称量Max,即电子秤在正常工作情况下,所能称量的最大值。
(2)分度值:
电子秤的测量范围被分成若干等份,每份值即为分度值。
用e或d来表示。
(3)分度数:
衡器的测量范围被分成若干等份,总份数即为分度数用n表示。
电子衡器的最大称量Max可以用总分度数n与分度值d的乘积来表示,即Max=n·d
(4)准确度等级
国际法制计量组织把电子秤按不同的分度数分成T、II、III、Ⅳ四类等级,分别对应不同准确度的电子秤和分度数n的范围,如表1所示:
表1不同准确度的电子秤和分度数
标志及等级
电子秤分类
分度数范围
特种准确度
基准衡器
n>100000
高准确度
精密衡器
10000 中准确度 商业衡器 1000 普通准确度 粗衡器 100 二: 各功能模块分析 系统由5个部分组成: 控制器部分、测量部分、数据显示部分、键盘部分、和电路电源部分,系统设计总体方案框图如图1所示: 图1设计思路框图 测量部分是利用称重传感器检测压力信号,得到微弱的电信号(本系统为电压信号),而后经处理电路(如滤波电路,差动放大电路,)处理后,送单片机中的A/D转换器,将模拟量转化为数字量输出,控制器接受来自A/D转换器输出的数字信号,经过复杂的运算,将数宁信号转换为物体的实际重量信号,并将其送到显示单元中。 1: 控制器及电源电路部分 本系统使用单片机作为系统的主控制器,而且以单片机为主控制器的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新型的只需要改变软件程序就可以更新换代的“智能化测量控制系统”。 这种新型的智能仪表在测量过程自动化、测量结果的数据处理以及功能的多样化方面,都取得了巨大的进展。 再则由于系统没有其它高标准的要求,又考虑到本设计中程序部分比较大,根据总体方案设计的分析,设计这样一个简单的的系统,可以选用带A/D转换器的单片机,由于应用程序不大,应用程序直接存储存片内,不用在外部扩展存储器,这样电路也可简化。 STC公司的12系列的单片机都可使用,在这里选用STC生产的STC12C5A60S2单片机。 STC12C5A60S2与MCS-51相比有如下优势: 第一,指令集与MCS-51系列单片机完全兼容。 第二,片内存储器采用闪速存储器,并且支持SPI-ISP在线编程,使程序写入更加方便,提高了调试效率,缩短了开发周期; 第三,提供了更小尺寸的芯片,使整个硬件电路体积更小。 此外价格低廉、性能比较稳定的MPU,具有64K8ROM、1RAM、2个16位定时计数器、5个8位I/O接口。 这些配置能够很好地实现本仪器的测量和控制要求。 第四,单指令周期,运行速度高。 第五,自带上电复位电路,可减低单片机外围电路的复杂程度。 第六,内置8路10位高速A/D转换,转换速度25万次/秒。 经过放大电路的信号是模拟信号即模拟量,需要把它变成数字量才能送入单片机控制系统受理,所以需要有A/D转换电路。 考虑到其他部分所带来的干扰,8位A/D无法满足系统精度要求。 作为一般小商品称重需求,我们只需要选择10位的A/D转换器就可以了。 最后我选择了STC12C5A60S2这个比较常用的单片机来实现系统的功能要求。 STC12C5A60S2内部带有60KB的程序存储器,并且带有8路10位精度的A/D转换器,基本上已经能够满足我们的需要。 主控制器是STC12C5A60S2单片机,其外围电路简单,只需要加上晶振电路和电源就可以工作。 根据系统需要,本系统中需要设计两种不同级别的电源,即传感器需要+12V的电源,而系统其他芯片使用的是+5V电源。 220V的交流电经过变压器后输出15V的电压,经整流滤波电路后,通过LM7805和LM7905进行DC/DC变换得到+12V和+5V、-5V供器和系统的其他芯片使用。 电源电路及控制器电路部分见附录。 2: 数据采集部分 电子秤的数据采集部分主要包括称重传感器、处理电路,因此这部分分析主要分这两方面。 2.1: 传感器的选择: 传感器的选择特别的重要,不仅要注意其量程和参数,还有考虑到与其相配置的各种电路的设计的难以程度和设计性价比等等。 传感器量程的选择可依据秤的最大称量值、选用传感器的个数、秤体的自重、可能产生的最人偏载及动载等因素综合评价来确定。 一般来说,传感器的量程越接近分配到每个传感器的载荷,其称量的准确度就越高。 但在实际使用时,由于加在传感器上的载荷除被称物体外,还存在秤体自重、皮重、偏载及振动冲击等载荷,因此选用传感器量程时,要考虑诸多方面的因素,保证传感器的安全和寿命。 传感器量程的计算公式是在充分考虑到影响秤体的各个因素后,经过大量的实验而确定的。 本设计要求称重范围0-600g,重量误差不大于0.1kg。 为保证电子秤称量结果的准确度,克服传感器在低量程段线性度差的缺点。 传感器的量程应根据皮带秤的最大流量来选择。 在实际工作中,要求称重传感器的有效量程在20%~80%之间.线性好,精度高。 重量误差应控制存±0.OIKg,又考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,根据设计需要,确定传感器的额定载荷为1Kg,允许过载为150%F.S,精度为0.05%,最大量程时误差±0.1kg,可以满足本系统的精度要求。 综合考虑,本设计采用SP20C-G501电阻应变式传感器,其最人量程为1Kg.称重传感器由组合式S型梁结构及金属箔式应变计构成,具有过载保护装置。 由于惠斯登电桥具诸如抑制温度变化的影响,抑制干扰,补偿方便等优点,所以该传感器测量精度高、温度特性好、工作稳定等优点,广泛用于各种结构的动、静态测量及各种电子秆的一次仪表。 该称重传感器主要由弹性体、电阻应变片电缆线等组成,其工作原理如图3所示。 图3称重传感器原理图 本设计的测量电路采用最常见的桥式测量电路,用到的是电阻应变传感器半桥式测量电路。 它的两只应变片和两只电阻贴在弹性梁上,测量电阻随重力变化导致弹性梁应变而产生的变化。 其测量原理: 用应变片测量时,将其粘贴在弹性体上。 当弹性体受力变形时,应变片的敏感栅也随同变形,其电阻值发生相应变化,通过转换电路转换为电压或电流的变化。 由于内部线路采用惠更斯电桥,当弹性体承受载荷产生变形时,输出信号电压可由下式给出: 上式说明电桥的输出电压V和四个桥臂的应变片感受的应变量的代数和成正比。 2.2: 放大电路选择: 称重传感器输出电压振幅范围0~20mV。 而A/D转换的输入电压要求为0~2V,因此放大环节要有100倍左右的增益。 对放大环节的要求是增益可调的(70~150倍),根据本设计的实际情况增益设为100倍即可,零点和增益的温度漂移和时间漂移极小。 按照输入电压20mV,分辨率20000码的情况,漂移要小于1旧。 由于其具有极低的失调电压的温漂和时漂(±lI.LV),从而保证了放大环节对零点漂移的要求。 残余的一点漂移依靠软件的自动零点跟踪来彻底解决。 稳定的增益量可以保证其负反馈回路的稳定性,并且最好选用高阻值的电阻和多圈电位器。 由称重传感器的称量原理可知,电阻应变片组成的传感器是把机械应变转换成△R/R,而应变电阻的变化一般都很微小,例如传感器的应变片电阻值120Ω,灵敏系数K=2,弹性体存额定载荷作用下产生的应变为l000£,应变电阻相对变化量为: △R/R=K×£=2×1000×10-6=0.002 由上式可以看出电阻变化只有0.24Ω,其电阻变化率只有0.2%。 这样小的电阻变化既难以直接精确测量,又不便直接处理。 因此,必须采用转换电路,把应变计的△R/R变化转换成电压或电流变化,但是这个电压或电流信号很小,需要增加增益放大电路来把这个电压或电流信号转换成可以被A/D转换器接收的信号。 在前级处理电路部分,我们考虑可以采用以下几种方案: 方案一: 利用普通低温漂运算放大器构成前级处理电路; 普通低温漂运算放大器构成多级放大器会引入大量噪声。 由于A/D转换器需要很高的精度,所以几毫伏的干扰信号就会直接影响最后的测量精度。 所以,此种方案不宜采用。 方案二: 主要由高精度低漂移运算放大器构成差动放大器,而构成的前级处理电路;差动放人器具有高输入阻抗,增益高的特点,可以利用普通运放(如OP07)做成一个差动放大器。 一般说来,集成化仪用放大器具有很高的共模抑制比和输入阻抗,因而在传统的电路设计中都是把集成化仪器放人器作为前置放人器。 然而,绝人多数的集成化仪器放大器,特别是集成化仪器放大器,它们的共模抑制比与增益相关: 增益越高,共模抑制比越大。 而集成化仪器放大器作为心电前置放大器时,由于极化电压的存在,前置放大器的增益只能在几十倍以内,这就使得集成化仪器放大器作为前置放大器时的共模抑制比不可能很高。 有同学试图在前置放大器的输入端加上隔直电容(高通网络)来避免极化电压使高增益的前置放大器进入饱和状态,但由于信号源的内阻高,且两输入端不平衡,隔直电容(高通网络)使等共模干扰转变为差模干扰,结果适得其反,严重地损害了放人器的性能。 为了实现信号的放人,其设计电路如图4所示: 图4利用高精度低漂移运放设计的差动放大器 1.前级采用运放Al和A2组成并联型差动放大器。 理论上不难证明,存运算放大器为理想的情况下,并联型差动放人器的输入阻抗为无穷人,共模抑制比也为无穷人。 更值得一提的是,在理论上并联型差动放人器的共模抑制比与电路的外围电阻的精度和阻值无关。 2.阻容耦合电路放存由并联型差动放大器构成的前级放大器和由仪器放大器构成的后级放大器之间,这样可为后级仪器放大器提高增益,进而提高电路的共模抑制比提供了条件。 同时,南于前置放大器的输出阻抗很低,同时又采用共模驱动技术,避免了阻容耦合电路中的阻、容元件参数不对称(匹配)导致的共模干扰转换成差模干扰的情况发生。 3.后级电路采用廉价的仪器放大器,将双端信号转换为单端信号输出。 由于阻容耦合电路的隔直作用,后级的仪器放大器可以做到很高的增益,进而得到很高的共模抑制比。 3: 显示部分 1602液晶模块的引脚连线见附录。 其中,第1、2脚为液晶的驱动电源;第三脚VL为液晶的对比度调节,通过在VCC和GND之间接一个10K多圈可调电阻,中间抽头接VL,可实现液晶对比度的调节;液晶的控制线RS、R/W、E分别接单片机的P0.5、P0.6、P0.7;数据口接在单片机的P2口;BL+、BL-为液晶背光电源。 1602液晶模块的初始化过程: 延迟15ms 写指令38H(不检测忙信号) 延迟5ms 写指令38H(不检测忙信号) 延迟5ms 写指令38H(不检测忙信号) (以后每次写指令、读/写数据操作之前均需检测忙信号) 写指令38H: 显示模式设置 写指令08H: 显示关闭 写指令01H: 显示清屏 写指令06H: 显示光标移动设置 写指令0CH: 显示开及光标设置 4: 按键部分 矩阵式键盘的结构与工作原理: 在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。 在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。 这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。 由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。 矩阵式键盘的按键识别方法: 确定矩阵式键盘上何键被按下介绍一种“行扫描法”。 行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。 判断键盘中有无键按下将全部行线Y0-Y3置低电平,然后检测列线的状态。 只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。 若所有列线均为高电平,则键盘中无键按下。 判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。 其方法是: 依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。 在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。 若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。 在本系统中键盘采用矩阵式键盘并采用中断工作方式。 键盘为4X4键盘,包括0、1、2、3、4、5、6、7、8、9、十个数字及确认和清除键。 采用中断工作方式提高了CPU的利用效率,没键按下时没有中断请求,有键按下时,向CPU提出中断请求,CPU响应后执行中断服务程序,在中断程序中才对键盘进行扫描。 三: 软件部分流程框图分析 本系统采用C语言编程,编译环境为keilUV2。 软件主要三个方面: 一是初始化系统;二是按键检测;三是数据采集、数据处理并进行显示。 这三个方面的操作分别在主程序中来进行。 程序采用模块化的结构,这样程序结构清楚,易编程和易读性好,也便于调试和修改。 程序结构如图5所示: 1: 主程序设计 主程序的功能是系统初始化,管理和调用各个子程序。 2: 子程序设计 2.1: A/D转换启动及数据读取程序设计 A/D转换子程序主要是指在系统开始运行时,把称重传感器传递过来的模拟信号转换成数字信号并传递到单片机所涉及到的程序设计。 设计流程图如下图所示: 2.2: 显示子程序设计 显示子程序主要是来判断是否需要显示,以及如何去显示,也是十分重要的程序之一。 而显示子程序是其他程序所需要调用的程序之一,因此,显示子程序的设计就显得举足轻重,设计的时候也要十分的小心和卖力。 设计显示子程序的流程图如下图所示: 2.3: 键盘扫描子程序的设计 在程序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。 附录一电路原理图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子秤