




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于MSP430单片机的便携式电子秤摘要本课题设计制作了一种利用MSP430F149单片机构成智能型便携式电子秤。分析了系统的工作原理和参数计算,详细讨论了系统的硬件、软件设计,并提供了系统的功能描述及使用说明。关键词单片机应变式力传感器TLC252运算放大液晶显示1引言随着时代科技的迅猛发展,微电子学和计算机等现代电子技术的成就给传统的电子测量与仪器带来了巨大的冲击和革命性的影响。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远距离、功能、精度及自动化水平定方面发生了巨大变化,并相应的出现了各种各样的智能仪器测量控制系统,使得科学实验和应用工程的自动化程度得以显著提高。作为重量测量仪器,智能电子秤在各行各业开始显现其测量准确,测量速度快,易于实时测量和监控的巨大优点,并开始逐渐取代传统型的机械杠杆测量称,成为测量领域的主流产品。目前,市场上台式电子秤使用已相当普遍,但存在体积大、成本高、需要工频交流电源供应、携带不便等特点,应用场所受到制约。现有的便携秤多为杆秤或以弹簧来实现计量的弹簧秤,由于杆秤体积大较笨重,精度也较低,不好解决量程和精度的矛盾,弹簧的疲劳问题也难以彻底解决,致使它们应用受到限制。而采用电容传感器的称重仪的主要缺点是电容量一般很小,环境变化将影响电容量发生变化,影响到称重的准确性和可靠性,其线性度也较差,应用也受到一定限制。基于电子秤的现状,本课题设计制作了一种基于MSP430F149单片机控制的智能型便携式电子秤。这种电子秤采用薄壁圆环形应变式力传感器,体积小、功耗低、计量准确、精度高,携带方便,集重量测定功能与价格计算功能于一体,顺应了商业贸易和居民家庭的使用需求。该电子秤的主要技术指标为称量范围010KG;分度值10G;电源电压3V(用一粒2032纽扣电池供电);静态电流08MA,动态电流5MA。体积40MM60MM16MM,重量150克,液晶显示位数三位半。主要功能有自调零、去皮、计价、累计、单价设定、量程自动切换、过载报警和弱电压指示等。该电子秤在不进行称量操作时自动进入电子表模式,既能显示时间,又降低了电源消耗。采用32MM54MMLCD显示片显示,既清晰又功耗低。2原理简介本电子秤通过薄壁圆环应变式力传感器将力信号转变为电压信号,通过TLC252运放块进行两级放大,再输入到MSP430F149的AD转化模块进行量化后传给MPU。MPU采集到数据进行判断自动选择合适量程,再通过运算处理得到被测物的重量值以及其价格并通过LCD显示出来。其中应变式力传感器是把应变片贴在薄壁圆环弹性体上,力的作用可使弹性体产生微应变,引起贴片电阻变化,应变片接成全侨形式,这样电桥便输出变化电压。在弹性范围内,可很方便遍地建立电压和作用力的关系。量程切换是通过MPU控制运算放大模块的放大倍数来实现的,小重量值用较大的放大倍数,大重量值采用较小放大倍数,这样就可以较好地解决量程和分辨率的矛盾。键盘采用行列扫描方式,通过它可以设定单价,皮重,调零以及调整时间。系统可通过设置称重的上限,当超过称重限制时,系统给出报警提示并采用机械限位避免应变环塑性变形。系统设有低电压指示,电池电压低于28V时会提示及时更换电池。在不进行称量操作时,该秤自动进入电子表模式,既能显示时间,又降低了电源消耗,延长了电池的使用时间。3硬件电路设计该电子秤硬件系统由电源、应变式力传感器、TLC252放大芯片、MSP430F149单片机系统、控制键盘、LCD显示屏等部件组成。31信号采集部分应变式力传感器采用测量灵敏度较高、线形度较好的环状弹性元件。基本原理是把应变片贴在薄壁圆环形弹性体上,力的作用可使弹性体产生应变,引起应变片电阻变化,经电桥输出电压。经过放大、处理,通过一定的函数关系,得出被测量。311弹性元件的结构设计弹性体薄壁圆环厚度为H,外径为R,宽度为B。当RH时,有2108FBHEA其线性误差小于02,滞后误差小于01。在该电子秤的具体设计过程中,采用锰65合金钢材料,设环的形心轴半径为R,厚度为H,环截面宽度为B,当R/H5,可根据已知载荷P,适当选取R和B的值,算出H值。计算公式为109PRHEBA取P100NB6MMR002ME2N/12M109PRHEBA21609019925M取2M传感器的输出应变为2126605355506PRRUEWBHAA图1拉力传感器中测力圆环设312电阻应变片介绍如图2所示,是电阻应变片的结构示意图,它由基体材料、金属应变丝或应变箔、绝缘保护片和引出线等部分组成。根据不同的用途,电阻应变片的阻值可以由设计者设计,但电阻的取值范围应注意阻值太小,所需的驱动电流太大,同时应变片的发热致使本身的温度过高,不同的环境中使用,使应变片的阻值变化太大,输出零点漂技术要求1、未注倒角05452、未注圆角R05移明显,调零电路过于复杂。而电阻太大,阻抗太高,抗外界的电磁干扰能力较差。一般均为几十欧至几十千欧左右。本设计采用120欧的应变片。金属电阻应变片的工作原理是吸附在基体材料上应变电阻随机械形变而产生阻值变化的现象,俗称为电阻应变效应。金属导体的电阻值可用下式表示式中金属导体的电阻率(CM2/M)S导体的截面积(CM2)L导体的长度(M)以金属丝应变电阻为例,当金属丝受外力作用时,其长度和截面积都会发生变化,从上式中可很容易看出,其电阻值即会发生改变,假如金属丝受外力作用而伸长时,其长度增加,而截面积减少,电阻值便会增大。当金属丝受外力作用而压缩时,长度减小而截面增加,电阻值则会减小。只要测出加在电阻的变化(通常是测量电阻两端的电压),即可获得应变金属丝的应变情况。313布片和接桥方案电桥中对称的两片应变片R1、R3贴在环状弹性元件的外表面,另两片应变片R2、R4贴在内表面。如图3布片和接桥示意图所示图3布片和接桥示意图电桥连接原理图如图4所示。电桥采用四应变片直流全电桥,电源电压通过限流电阻R6,R9作为供桥电压。桥臂电阻为R1,R2,R3及R4,输出端(2、4端)开路电压为(由于运放的输入电阻都很高,所以工作时电桥输出端电压近似开路电压)。接在OUOU1、3端的稳压二级管(2CW101)稳压值为26V,保证了电桥为恒压供电。在弹性范围内,建立电压和作用力的关系,有(式中,E为弹性模量;S为弹性体截面积)44ORUFKSAA1234RB1R6GNDVCCR9D1图4应变式力传感器电桥电路32放大部分该部分采用TI公司的TLC252放大芯片完成信号的放大和调理功能,信号放大电路的原理图如图5所示,IN1、IN2为信号输入端。TLC252芯片具有以下特点超低功耗低电压供电,八引脚双路运算放大器,它的工作电流低,电源电压范围宽1412V,可单电源供电,共模输入电压范围内(包括负电源,单电源和分离电源)都能达到规定的技术指标,运行环境温度070。其工作电流只有200微安。本系统运放电路采用两级放大,放大倍数可按下式计算,适当选用参数即可获得各自的放大倍数。其中第一级采用双端输入负反馈放大电路,放大倍数整定为20左右,可通过调整R6的值来整定其放大倍数。第二级采用反向比例放大电路,放大倍数整定为50,可通过调节R3改变其放大倍数。R5,R8为运放提供合适偏压。第一,二级放大器的输出分别接到单片机的两个模拟输入端上,可实现20,1000两种增益选择。输入端增加一个电容C1来实现滤波,以减少输入端的干扰。12266OIIRUU2143OORUU34182A2ATLC252576A2BTLC252GNDVCCR2R3R4R5GNDADINR6R7R8VCCC1R10IN1IN2图5信号放大电路原理图33MSP430F149单片机德州仪器公司的MSP430系列单片机是一种超低功耗微处理器,该微处理器通过16位RISC系统,16位CPU集成寄存器和常量发生器来获得最大代码效率。MSP430的16位定时器是应用于手持式仪表的理想配置,它的硬件乘法器使其性能大大增强,并扩大了软硬件相兼容的范围,提高了数据处理的能力。在一般应用环境中,MSP430的运行环境温度范围为4085。低电源电压范围18V36V,超低功耗待机模式16UA,活动模式280UA(当主频为1MHZ电源电压为32V时)。有5种低功耗超低电流消耗模式,可使用电池供电,片内数字控制振荡器DCO可以使单片机在6微秒的时间内从低功耗模式转变到活动模式。并有最多8路12位A/D转换,48个通用I/O端口,两个UART,两个内置16位定时器。可在线仿真的FLASH内存。该系列单片机还自带看门狗电路,在系统出错时,能自动复位,提高了系统运行的可靠性和稳定性。我们所用的主控芯片MSP430F149就包含了带内部参考电压,采样保持和自动扫描的12位A/D转换器。具有直接驱动液晶显示器的能力。输入端口具有跳变中断能力,能方便地接收按键输入,另有多级外部及内部中断,可通过程序禁止主晶振振荡而使单片机进入低功耗状态,适合用于以电池作能源,需液晶驱动的应用场合。这样在组成系统时,就最大限度的简化了电路,缩小了电子秤的体积,降低了成本,提高了系统的可靠性,使产品的设计更加精巧,功能更加丰富。MSP430F149是整个系统的信息处理核心。它能完成信号采集、量化、信号分析处理、信息显示、时钟显示、键盘扫描检测、欠电提示、量程的自动切换等多种功能。单片机信息处理单元电路原理图如图9所示。放大电路一级和二级信号分别连接CPU的P60、P61两个引脚,系统两路信号输入通道的选择由MPU控制,以选择不同的放大倍数,从而完成量程的自动调节功能。显示器LCD的数据端分与芯片的P1、P3、P4口相接。系统复位电路采用RC电路,电路简单,容易实现。S4S7S5S8S6S9S12S14S13S15R210KR310KR8200R7200R6200R5200R4200VCCP21P22P23P24P25P26P27S1S2S3S10S11R110KP20图6键盘电路34键盘扫描电路键盘主要是用来输入数据实现人机交互。该电路采用行列扫描方式实现矩阵键盘,电路如图6所示。通过单片机的P2口与其连接,其中P20,P21,P22为列输入线,P2327为行数出线,这样就构成了35矩阵键盘。可定义15个按键,可分别为09,小数点,调零,调时,记忆等功能键,如需要还可定义组合键。由于该电路选用P2口作为接口,而MSP430的P2口又可设置为中断口,这样便可采用中断方式实现键盘输入。通过编程依次将P2327行线其中的一路输出低电平,其余输出高电平,这样当有键按下时且按键所在行为低电平时便使得该键所在列对应的输入口拉为低电平,这样就触发了相应的中断,进入中断服务程序后,通过行号、列号即可确定该键,然后根据定义即可执行相应的功能。35显示电路该电子秤采用三位半的LCD段码显示屏,功耗很低,成本也低,尺寸为35MM54MM,字高14MM。电路中分别与MSP430的P1、P3、P4口连接构成显示电路。通过编程可使这三个端口以200到300赫兹的频率翻转,实现LCD的动态驱动。ABFCGDE3029111093132ABCDEFGDP112DP128NC33NC3460S0MM1IFM60M0HH1IFH13H1H_1H/10H_2H10M_1M/10M_2M10/VOIDTIMEDISPVOIDP6OUTP6OUTP6OUTP5OUTP4OUTLCDH_2P3OUTLCDM_1P1OUTLCDM_2IFP1OUTELSEP6OUTIFD_BITP1OUT|BIT7ELSEP1OUTIFH_1P6OUT|BIT4ELSEP6OUTFLASHRETURNVOIDINIT_ADCVOIDP6SEL|0X01/ENABLEA/DCHANNELA0ADC12CTL0ADC12ONSHT0_2/TURNONADC12,SETSAMPLINGTIMEADC12CTL1SHPADC12CTL1|ADC12DIV_2ADC12CTL1|ADC12DIV_1ADC12CTL1|ADC12DIV_0ADC12CTL0|REFON/ADC12CTL0ADC12MCTL0|BIT4ADC12MCTL0|EOS/USESAMPLINGTIMERADC12CTL0|ENC/ENABLECONVERSIONSADC12CTL0|ADC12SCRETURN/ADC转换VOIDADCVOIDUNSIGNEDINTIUNSIGNEDLONGSUM1/WHILEADC12CTL1ADC12CTL0/关闭转换ADC_BUFNADC_COUNTADC12MEM0/读出转换结果ADC12CTL0|ENCADC12SC/开启转换IFNADC_COUNTN1ADC_CNT1FORSUM10,I0I05NTEMP1/四舍五入IFCLR_FLAG0/开机清零CLR_FLAG1OFFSETNTEMPFORCENTEMPOFFSETIFFORCE0IFORJNCOUNTJ0JRETURN/VOIDINIT_INPUTPORTVOID/将所有的管脚设置为一般I/O口P2SEL0/将管脚在初始化的时候设置为输出方式P2DIR0XFF/将P25,P26和P27设置为输入方向P2DIRP2DIRP2DIR/将P10和P11设置为低电平中断触发方式P2IE|BIT5/管脚P10使能中断P2IES|BIT5/对应的管脚由高到低电平跳变使相应的标志置位P2IE|BIT6/管脚P11使能中断P2IES|BIT6/对应的管脚由高到低电平跳变使相应的标志置位P2IE|BIT7/管脚P11使能中断P2IES|BIT7RETURN/INTERRUPTTIMERB0_VECTORVOIDTIMERB_ISRVOID/设置相应的行线为低电平SWITCHPORT_COUNTCASE0/设置为高电平P2OUT|BIT1P2OUT|BIT2P2OUT|BIT3P2OUT|BIT4/设置为低电平P2OUTBREAKCASE1/设置为高电平P2OUT|BIT0P2OUT|BIT2P2OUT|BIT3P2OUT|BIT4/设置为低电平P2OUTBREAKCASE2/设置为高电平P2OUT|BIT0P2OUT|BIT1P2OUT|BIT3P2OUT|BIT4/设置为低电平P2OUTBREAKCASE3/设置为高电平P2OUT|BIT0P2OUT|BIT1P2OUT|BIT2P2OUT|BIT4/设置为低电平P2OUTBREAKCASE4/设置为高电平P2OUT|BIT0P2OUT|BIT1P2OUT|BIT2P2OUT|BIT3/设置为低电平P2OUTBREAKDEFAULTBREAKPORT_COUNT1IFPORT_COUNT5PORT_COUNT0/INTERRUPTPORT2_VECTORVOIDPORT_ISRVOID/_DINTBITCOUNT1IFP2IFG/清除中断标志位DELAY_MS1FORIFP2IFG/等待按键弹起/获得输入值SWITCHPORT_COUNTCASE1PORT_INPUT10BREAKCASE2PORT_INPUT3BREAKCASE3PORT_INPUT6BREAKCASE4PORT_INPUT9BREAKCASE0PORT_INPUT11IFTIME_AD0TIME_AD1BITCOUNT0ELSETIME_AD0BREAKDEFAULTBREAKIFPORT_INPUT11FLAG_PORT1ELSEIFP2IFG/清除中断标志位DELAY_MS1FORIFP2IFG/获得输入值SWITCHPORT_COUNTCASE1PORT_INPUT12BREAKCASE2PORT_INPUT2BREAKCASE3PORT_INPUT5BREAKCASE4PORT_INPUT8BREAKCASE0PORT_INPUT13OFFSETNTEMPBREAKDEFAULTBREAKIFPORT_INPUT13FLAG_PORT1ELSEFLAG_PORT0ELSEIFP2IFG/清除中断标志位DELAY_MS1FORIFP2IFG/获得输入值SWITCHPORT_COUNTCASE1PORT_INPUT0BREAKCASE2PORT_INPUT1BREAKCASE3PORT_INPUT4BREAKCASE4PORT_INPUT7BREAKCASE0PORT_INPUT14PRICE_FLAG1BREAKDEFAULTBREAKIFPORT_INPUT14FLAG_PORT1ELSEFLAG_PORT0/_EINT/VOIDINIT_TIMERBVOIDTBCTLTBSSEL1BIT2TBCTLTBSSEL0TBCLR/选择ACLK,清除TARTBCCTL0CCIE/TBCCR0中断允许TBCCR02500/时间间隔为01STBCTL|MC0/增记数模式/VOIDDISP_PRICEVOIDINTA0PRICE_FLAG0PRICEFORCEPRICE_PER/1000NTEMP0INTPRICE/1000/将结果除以1000NTEMP1INTPRICENTEMP01000/100/NTEMP2PRICENTEMP01000NTEMP1100/10/十位NTEMP3PRICENTEMP01000NTEMP210NTEMP1100/个位IFNTEMP01P6OUT|BIT4ELSEP6OUTP6OUTP6OUTP6OUTP5OUT|BIT6P6OUT|BIT6P4OUTLCDNTEMP1P3OUTLCDNTEMP2P1OUTLCDNTEMP3IFP1OUTELSEP6OUTP1OUTFORA0A100AFLASHP5OUT/VOIDFLASHVOIDDELAY_MS2_DINTP4OUTP4OUTP3OUTP3OUTP1OUTP1OUTP5OUTP5OUTP6OUTP6OUT_EINTDELAY_MS2WDTCTLWDTPWWDTCNTCL_DINTP4OUTP4OUTP3OUTP3OUTP1OUTP1OUTP5OUTP5OUTP6OUTP6OUT_EINT/VOIDMAINVOIDWDTCTLWDTPWBIT2/开看门狗BCSCTL10X00BCSCTL20XC0/0XC636_DINTINITINIT_ADCTIMERAINIT_INPUTPORTINIT_TIMERB_EINTWHILE1WDTCTLWDTPWWDTCNTCLIFTIME_AD1TIMEDISPELSEADC/STARTCONVERSIONIFTIME_AD0WHILEFLAG_PORT1/有键按下BITNUMBITCOUNTSWITCHBITNUMCASE1IFPORT_INPUT1P6OUT|BIT4ADJ_H11ELSEP6OUTADJ_H10P4OUT0P3OUT0P1OUT0IFP1OUTELSEP6OUTIFTIME_AD1P1OUT|BIT7ELSEP1OUTBREAKCASE2P4OUTLCDPORT_INPUTADJ_H2PORT_INPUTBREAKCASE3P3OUTLCDPORT_INPUTADJ_M1PORT_INPUTBREAKCASE4P1OUTLCDPORT_INPUTIFP1OUTELSEP6OUTADJ_M2PORT_INPUTIFTIME_AD1P1OUT|BIT7ELSEP1OUTBREAKDEFAULTFLAG_PORT0BITCOUNT0BREAKIFTIME_AD1HADJ_H110ADJ_H2MADJ_M110ADJ_M2ELSEPRICE_PERADJ_H11000ADJ_H2100ADJ_M110ADJ_M2FLASHIFTIME_AD1FLASH5电路板的制作和调试根据系统的原理图(图9)制作的PCB板,如图9,图10,图11所示。51系统的调试系统硬件的调试先调试电源电路和复位电路,再进行单片机的调试,通过JTAG口连机烧入一简单指令(如令P10引脚高低电平连续变化),测试单片机是否运行简单的输出命令,P10引脚能有高低电平说明晶振已起振,单片机已具备工作条件。然后整定放大电路的放大倍数,使第二级运放输出接近满幅,同时注意两级放大倍数的分配,使第二级放大倍数较低,这样可实现可变量程。52调试中发现的问题图9本系统原复位电路图10改进后的复位电路图11复位电路改进前后波形对照复位电路的基本功能是系统上电时提供复位信号,直至系统电源稳定后撤销复位信号。为可靠起见电源稳定后还要经一定的延时才撤销复位信号以防电源开关或电源插头分合过程中引起的抖动而影响复位。图9所示的RC复位电路是本系统原先设计的RC复位电路。但上电试验后发现复位电路时好时坏,系统开机表现为显示乱码,且按键不起作用。分析后,考虑可能是复位电路未设计好的缘故。古采用图10所示改进电路。图11中图为原电路的输入输出特性,可以看出该电路解决不了电源毛刺A点的影响和电源缓慢下降电池电压不足等问题,而且调整RC常数改变延时会令驱动能力变差左边。图10所示的复位电路增加了二极管在电源电压瞬间下降时使电容迅速放电一定宽度的电源毛刺也可令系统可靠复位。图11的下半部分是其特性。经过改进系统上电复位正常,配合看门狗电路,该系统的稳定性大大提高。采用了能够快速反应变换结果的滑动平均值法2滑动平均值法采用存储队列作为A/D转换的数据存储器,队列的队长固定为N,每进行一次新的转换,把转换的结果放入队尾挤掉原来队首的一个数据,这样,在队列中始终有N个“最新”的数据计算平均值时,只需要把队列中的N个数据进行算术平均,就可以得到新的算术平均值考虑编程的方便,队列采用循环队列来实现为保证转换结果的准确,更好的克服脉冲信号的干扰影响,在滑动平衡值中还增加了去除最大值和最小值的算法,保证了准确快速地称量重物DVCC1P63/A32P64/A43P65/A54P66/A65P67/A76VREF7XIN8XOUT/TCLK9VEREF10VREF/VEREF11P10/TACLK12P11/TA013P12/TA114P13/TA215P14/SMCLK16P15/TA017P16/TA118P17/TA219P20/ACLK20P21/TAINCLK21P2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省浙东北联盟2026届高三化学第一学期期中质量检测试题含解析
- 北京市顺义区杨镇一中2026届高二化学第一学期期末综合测试试题含答案
- 水库移民安置管理岗位面试实战模拟题
- 2026届吉林省吉化一中化学高一上期末复习检测试题含解析
- 安徽省阜阳市成效中学2026届化学高三第一学期期末质量检测模拟试题含解析
- 宋朝行政制度解读
- 面试必 备:智慧客服常见问题及答案
- 求职人员信息技术能力构建
- 高品质AI面试题库:全方位掌握职业趋势
- 萜类化合物讲解
- 医疗机构从业人员规范
- 《研学旅行相关概念与理论基础综述》1900字
- 医院培训课件:《股骨头坏死》
- 保险基础知识简读本(2024版)
- 集团公司司库管理办法
- 住院患儿实施院内转运临床实践指南2023版课件
- 主播新手上路-打造游戏直播与娱乐新风向
- 2024-2025学年中职数学基础模块 下册高教版(2021·十四五)教学设计合集
- 第1-4章综合检测试卷2024-2025学年浙教版数学八年级上册
- 市场营销经理助理考试题库
- 初中数学新课标下综合实践-项目式学习的思与行
评论
0/150
提交评论