首页 电子秤课程设计实验报告

电子秤课程设计实验报告

举报
开通vip

电子秤课程设计实验报告电子设计实验报告电子科技大学设计题目:电子称姓名:学生姓名任务与要求 一、任务使用电阻应变片称重传感器,实现电子秤。用砝码作称重比对。二、要求准确、稳定称重;称重传感器的非线性校正,提高称重精度;实现“去皮”、计价功能;具备“休眠”与“唤醒”功能,以降低功耗。电子秤第一节绪论摘要:随着科技的进步,在日常生活以及工业运用上,对电子秤的要求越来越高。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离、功能、精度及自动...

电子秤课程设计实验报告
电子设计实验 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 电子科技大学设计题目:电子称姓名:学生姓名任务与 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 一、任务使用电阻应变片称重传感器,实现电子秤。用砝码作称重比对。二、要求准确、稳定称重;称重传感器的非线性校正,提高称重精度;实现“去皮”、计价功能;具备“休眠”与“唤醒”功能,以降低功耗。电子秤第一节绪论摘要:随着科技的进步,在日常生活以及工业运用上,对电子秤的要求越来越高。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离、功能、精度及自动化水平定方面发生了巨大变化,并相应的出现了各种各样的智能仪器控制系统,使得科学实验和应用工程的自动化程度得以显著提高。影响其精度的因素主要有:机械结构、传感器和数显仪表。在机械结构方面,因材料结构强度和刚度的限制,会使力的传递出现误差,而传感器输出特性存在非线性,加上信号放大、模数转换等环节存在的非线性,使得整个系统的非线性误差变得不容忽视。因此,在高精度的称重场合,迫切需要电子秤能自动校正系统的非线性。此外,为了保证准确、稳定地显示,要求所采用的ADC具有足够的转换位数,而采用高精度的ADC,自然增加了系统的成本。基于电子秤的现状,本文提出了一种简单实用并且精度高的智能电子秤 设计方案 关于薪酬设计方案通用技术作品设计方案停车场设计方案多媒体教室设计方案农贸市场设计方案 。通过运用很好的集成电路,使测量精度得到了大大提高,由于采用数字滤波技术,使稳态测量的稳定性和动态测量的跟随性都相当好。并取得了令人满意的效果。关键词:压力传感器,AD620N放大电路,ADC模数转换,STM32单片机,OLED显示屏,矩阵键盘,电子秤。1.1引言本课程设计的电子秤以单片机为主要部件,利用全桥测量原理,通过对电路输出电压和标准重量的线性关系,建立具体的数学模型,将电压量纲(V)改为重量纲(g)即成为一台原始电子秤。其中测量电路中最主要的元器件就是电阻应变式传感器。电阻应变式传感器是传感器中应用最多的一种,本设计采用全桥测量电路,是系统产生的误差更小。输出的数据更精确。而AD620N放大电路的作用就是把传感器输出的微弱的模拟信号进行一定倍数的放大,以满足A/D转换器对输入信号电平的要求。A/D转换的作用是把模拟信号转变成数字信号,进行模拟量转数字量转换,然后把数字信号输送到显示电路中去,最后由OLED屏幕显示出测量结果。配置有矩阵键盘可以对电子秤进行一定的操作如去皮,计价,并可当下手动录入价格,并显示价格。1.2系统的设计与理论 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 1.2.1系统设计根据设计要求,设计的主要内容如下:1)利用电阻应变式传感器,并采用全桥测量电路2)设计一款电子秤,利用OLED屏幕显示被称物体的重量3)利用矩阵键盘对电子秤进行去皮,计价,录入价格的操作。4)电路分成以下几个部分:a.运放电路b.电路的滤波及电压跟随器电路c.单片机数据处理及控制电路,包括矩阵键盘,OLED屏幕等。d.双电源供电及变压电路。1.2.2基本工作原理及原理框图图一:基本硬件系统结构图全桥电阻应变式传感器输入电压,当标准重物放置在传感器之上时,电阻值发生改变,使加载到全桥电路上的输出电压发生变化,变化范围约为3mV到10mV运用AD620N仪表放大电路将微弱模拟信号放大,并经过LM358搭建的电压跟随器电路滤波。送至STM32单片机中进行A/D模数转换,将模拟信号转变成单片机能够识别的数字信号,并且利用单片机控制整个电路的同时,处理数字信号,并且控制在OLED中显示实时结果。图二:部分控制电路基本结构图矩阵键盘上的按键被按下后,单片机识别并判断指令内容(如:去皮,计价,录入单价等),并向OLED屏发出改变显示内容的指令。第二节硬件电路的设计与选择2.1传感器的选择电阻应变式传感器是将被测量的力,通过它产生的金属弹性形变转换成电阻变化的元件。由电阻应变片和测量线路两部分组成。本次设计中使用YZC-133压力传感器。下表为相关技术参数。注:该技术参数为店家提供,本小组并未将所有参数进行检验。 量程(kg) 3kg 综合误差(%F.S) 0.05 额定输出温度飘移(%F.S/10℃) ≤0.15 灵敏度(mv/v) 1.0±0.1 零点输出(mV/V) ±0.1 非线性(%F.S) 0.05 输入电阻(Ω) 1000±50 重复性(%F.S) 0.05 输出电阻(Ω) 1000±50 滞后(%F.S) 0.05 绝缘电阻(MΩ) ≥2000(100VDC) 蠕变(%F.S/3min) 0.05 推荐激励电压(V) 3~12 零点漂移(%F.S/1min) 0.05 工作温度范围(℃) -10~+50 零点温度漂移(%F.S/10℃) 0.2 过载能力(%F.S) 150由于其激励电压越高,准确度越高的特性,本次设计使用10V电源供电。2.2信号放大电路的设计与选择由上文中可知,10V单电源供电的压力传感器输出最大值只有10mV,stm32的AD量程为0~3.3V,则可以放大330倍。此处由于信号源仅有10mV,并且放大倍数较大,选用AD620N仪表放大器而非一般的运算放大器做放大电路,以得到较高的精确度和输出电压的良好的线性性。放大电路为:图3运算放大器电路AD620是一种低功耗,高精度的仪表放大器,它只需要一个外界电阻,即可设置各种增益(1到1000)。AD620N与分离元件组成的仪表放大器相比较具有体积小,功耗低,精度高等优点。电源电压上±15V均可以。之前曾经使用正5V的单电源供电,但是使用时发现输出电压在1.3V到3.6V之间,由于分度值的要求,不能满足本题的要求,故选用双电源供电。此处使用±10V的双电源供电。由此公式可计算出我们所需要的电阻,放大330倍约需要使用150Ω电阻。2.4电压跟随器电路设计由于精度要求,为了降低信号的噪声,此处增用一个电压跟随器电路已达成接近滤波的效果。电压跟随器的显著特点就是,输入阻抗高,而输出阻抗低。一般来说,输入阻抗可以达到几兆欧姆,而输出阻抗低,通常只有几欧姆,甚至更低。在电路中,电压跟随器一般做缓冲级(buffer)及隔离级。因为,电压放大器的输出阻抗一般比较高,通常在几千欧到几十千欧,如果后级的输入阻抗比较小,那么信号就会有相当的部分损耗在前级的输出电阻中。在这个时候,就需要电压跟随器进行缓冲。起到承上启下的作用。电压跟随器还可以提高输入阻抗,可以大幅度减小输入电容的大小,为应用高品质的电容提供保证。此处采用如图所示的电路。经过电压跟随器处理的信号噪声有明显的减少,使数据的稳定性提高。信号部分(AD620N仪表放大器和LM358电压跟随器)的电路如图所示2.5单片机数据处理及控制电路2.5.1STM32STM32系列芯片是由ST公司开发并发布一系列相关固件库以方便开发人员进行开发的一款实用性强,功能强大,开发较容易的32位微处理器(单片机)。在工业上适用于高性能、低成本、低功耗的嵌入式开发。作为一款32位单片机芯片,它使用了ARM公司的Cortex-M3高性能内核,并集成了12通道的DMA处理器,定时器,3个12位的us级的A/D转换器,2通道12位D/A转换器,3个SPI接口,2个IIC接口和串行接口UART,并因其集成度之高及价格低廉而被广泛使用。在目前的时代发展中,电子产品对于传感器的使用逐渐增多,ADC功能也相应变得重要。而在这方面,STM32系列芯片上集成的外设ADC也可以算得上非常强大。增强型产品(STM32F103xC,STM32F103xD,STM32F103xE系列为ST推出的增强型产品)内嵌3个12位的ADC,每个多达21个外部通道,可以实现单次或多次扫描转换。ADC的结果可以左对齐或右对齐的方式存储在16位数据寄存器中。对于ADC来说,分辨率,转换时间和ADC类型是最重要的。32的外设ADC有12位的分辨率,不能直接测量负电压;转换时间是可编程的,采样时间最短为1μm;ADC类型则是逐次比较性的ADC。ADC的参考电压引脚分别为VREF+(模拟参考量正极),VDDA(模拟电源),VREF-(模拟参考负极),VSSA(模拟电源地)和模拟量输入脚(16个)。在过程中,输入信号经过通道被送到ADC部件,ADC部件需要收到触发信号才开始进行转换,如EXTI触发,定时器触发或软件触发。ADC部件接收到触发信号后,在ADCCLK时钟的驱动下对输入通道信号进行采样,并进行模数转换,其中ADCCLK是来自ADC预分频器的。得到的数据被保存在16位的规则通道寄存器中,可以通过CPU指令或DMA把它读取到内存(变量)中。在ADC的程序设置上,可以设置多种模式,如同步注入模式,同步规则模式等,并可以进行多通道的轮流采集等设置,功能强大,简便易用。32系列芯片不仅有强大的ADC,还有同样强大的定时器功能。在定时器方面,STM32有8个16位的定时器,其中TIM6,TIM7为基本定时器,TIM1,TIM8是高级定时器,其他为通用定时器。这些定时器有定时,信号频率测量,信号的PWM测量,PWM输出,三相六步电机控制及编码器接口等功能。图6.STM32单片机引脚图2.5.2单片机的引脚连接关系单片机与矩阵键盘的连接:GPIOPC1--PIN1PC2--PIN2PC3--PIN3PC4--PIN4PC5--PIN5PC6--PIN6PC7--PIN7PC8--PIN8单片机与OLED屏幕的连接:GPIOPA3--CSPA4--RSTPA5--DCPA6--SCLK(D0)PA7--SDIN(D1)3.3V--VDD+(非单片机引脚)GND--GND(非单片机引脚)单片机与传感电路的连接:VCC--3.3VGND--GNDPA1--电压跟随器的信号口其中PA1复用ADC1功能。第三节软件程序的设计与选择3.1软件程序计算经过放大,滤波与电压跟随器的信号电压从adc中取值,经过20组测量数据,我们测量出了电源电压(伏)与重量(千克)的关系(数据没有保存,测试成功之后只留下了变换函数),经过非线性校准之后的函数为()/1000。3.2最终软件程序(部分)RCC.c,OLED.c,ADC.c,TIM.c,keyboard.c,main.c。其中adc.c如下:#include"ProHead.h"#include"ADC.h"externfloatmass;externfloatmass0;externfloatmass_get;externu8danjia[4];externu8danjia_point;floatadc_get[1000];externfloatmass00;externfloatadc;u8x;voidADC_Config(void){GPIO_InitTypeDefGPIO_InitStructure;ADC_InitTypeDefADC_InitStructure;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1;//|GPIO_Pin_1|GPIO_Pin_2;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_Init(GPIOA,&GPIO_InitStructure);ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;//独立模式ADC_InitStructure.ADC_ScanConvMode=DISABLE;//连续多通道模式ADC_InitStructure.ADC_ContinuousConvMode=ENABLE;//连续转换ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;//转换不受外界决定ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;//右对齐ADC_InitStructure.ADC_NbrOfChannel=1;//扫描通道数ADC_Init(ADC1,&ADC_InitStructure);ADC_RegularChannelConfig(ADC1,ADC_Channel_1,1,ADC_SampleTime_71Cycles5);//通道X,采样时间为1.5周期,1代表规则通道第1个这个1是啥意思我不太清楚只有是1的时候我的ADC才正常。ADC_Cmd(ADC1,ENABLE);//使能或者失能指定的ADCADC_ResetCalibration(ADC1);//重置ADC1校准寄存器while(ADC_GetResetCalibrationStatus(ADC1));//等待ADC1校准重置完成ADC_StartCalibration(ADC1);//开始ADC1校准while(ADC_GetCalibrationStatus(ADC1));//等待ADC1校准完成ADC_SoftwareStartConvCmd(ADC1,ENABLE);//使能或者失能指定的ADC的软件转换启动功能voidADC_Read(void){staticu16i;floathe=0;u16j;mass=0;for(i=0;i<1000;i++){while(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC)==RESET);//检查制定ADC标志位置1与否ADC_FLAG_EOC转换结束标志位mass_get=((float)ADC_GetConversionValue(ADC1))/4096*3.3;adc_get[i]=mass_get;}for(j=0;j<1000;j++){he=he+adc_get[j];}mass_get=he/1000;mass_get=mass_get-mass00;adc=mass_get-mass0;mass=(0.7835*adc*adc*adc-1.3802*adc*adc+1010.3*adc)/1000;}voidinsertsort(floatx[],intn){inti,j;floata;for(i=0;i<n-1;i++){a=x[i+1];j=i;while(a<x[j]){x[j+1]=x[j];j--;}x[j+1]=a;}}Keyboard.c部分程序如下:voidupdate_key(void){unsignedchari,j;for(i=0;i<4;i++)//i????,??????{GPIO_ResetBits(key_output[i].GPIO_x,key_output[i].GPIO_pin);for(j=0;j<4;j++)//j????,?????????????{if(GPIO_ReadInputDataBit(key_input[j].GPIO_x,key_input[j].GPIO_pin)==0){u16t=40000;while(t--);if(GPIO_ReadInputDataBit(key_input[j].GPIO_x,key_input[j].GPIO_pin)==0){key[i][j]=1;key_down(i,j);//printf("i=%d\r\n",i);//printf("j=%d\r\n",j);//keypoint=0;//delay_ms(300);}}else{key[i][j]=0;}}GPIO_SetBits(key_output[i].GPIO_x,key_output[i].GPIO_pin);}}Oled.c中部分程序如下:voidshow_mass(void){switch(oled_point){case1://正常显示重量show_string_and_mass();break;case0://显示系统内存已有单价,可以进行价格选择OLED_ShowCHinese(0,0,14);OLED_ShowCHinese(16,0,15);OLED_ShowNum(28,3,danjia[0],1,1);OLED_ShowNum(36,3,danjia[1],1,1);OLED_ShowNum(44,3,danjia[2],1,1);OLED_ShowNum(52,3,danjia[3],1,1);break;case2://键入单价界面break;case3://计价界面jiage=mass*(danjia[0]*10+danjia[1]+danjia[2]*0.1+danjia[3]*0.01);get_char(price,jiage);OLED_ShowNum(20,3,price[4],1,1);OLED_ShowNum(28,3,price[3],1,1);OLED_ShowNum(36,3,price[2],1,1);OLED_ShowNum(44,3,price[1],1,1);OLED_ShowNum(52,3,price[0],1,1);OLED_ShowCHinese(60,3,16);//¼¼}}voidshow_m_by_number(void){get_char(fanhaoyang,mass);OLED_ShowNum(20,3,fanhaoyang[4],1,1);OLED_ShowNum(28,3,fanhaoyang[3],1,1);OLED_ShowNum(36,3,fanhaoyang[2],1,1);OLED_ShowNum(44,3,fanhaoyang[1],1,1);OLED_ShowNum(52,3,fanhaoyang[0],1,1);}voidget_char(u8get[],floatfrom){u16i=(u16)(from*1000);get[4]=(u8)(i/10000);get[3]=(u8)((i-get[4]*10000)/1000);get[2]=(u8)((i-get[4]*10000-get[3]*1000)/100);get[1]=(u8)((i-get[4]*10000-get[3]*1000-get[2]*100)/10);get[0]=(u8)(i-get[4]*10000-get[3]*1000-get[2]*100-get[1]*10);get[5]='\0';}voidshow_string_and_mass(void){OLED_ShowString(0,0,weight);OLED_ShowString(68,3,weight2);get_char(fanhaoyang,mass);OLED_ShowNum(20,3,fanhaoyang[4],1,1);OLED_ShowNum(28,3,fanhaoyang[3],1,1);OLED_ShowNum(36,3,fanhaoyang[2],1,1);OLED_ShowNum(44,3,fanhaoyang[1],1,1);OLED_ShowNum(52,3,fanhaoyang[0],1,1);if(qupi_point==0){OLED_ShowCHinese(0,5,17);OLED_ShowCHinese(16,5,18);OLED_ShowCHinese(32,5,19);}}Main.c如下:#include"Prohead.h"#include"bmp.h"floatmass_get;floatmass0;floatmass;floatmass00=0;u8keypoint;u8oled_point;u8get[5];u8stop_point=1;floatadc;externu8fanhaoyang[5];voidALL_Config(void){RCC_Config();LED_Config();USART_Config();ADC_Config();keyboard_init();oled_point=1;OLED_Init();OLED_Clear();mass0=0;}intmain(){delay_ms(5000);ALL_Config();ADC_Read();mass00=adc;while(1){TIM4_Int_Init(10,7199);if(stop_point){delay_ms(300);update_key();ADC_Read();show_mass();}else{OLED_Clear();update_key();}//printf("Iamarobot.");//printf("mass=%f\r\n",mass);}}第四节结论与分析确定设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 后,在调试阶段经过电桥连接,调零电路、运放模拟、A/D模数转换器电路、单片机控制电路、数码管显示电路的实物模拟,各个部分工作正常。然后进行电路焊接,但是由于人为原因,电路存在虚焊、短接等错误,导致整个电路无法正常工作。经过反复检查调试,电路还是不能正常工作。起初ad620n使用单电源供电方式,但是发现输出电压有区间限制在1.3V到3.3V,后把AD620N的REF脚接入-10V,VCC脚用+10V进行双电源供电。输出电压的限制就没有了,经过放大可以1V左右到3.3V(2kg满量程输入)。电压数据精确到mv位,满足从0~2kg最小分度值为1g的精确度。4.3总结在此次课程设计中,我们遇到了以下问题:1、电桥偏位电压过大。由于偏位电压过大,使电子秤量程大大降低。因此,我们通过分压调零电路,消除偏位电压。2、运算放大器小信号放大困难。由于电桥输出的变量信号非常小,因此,我们必须将该小信号放大到达到A/D转换器的分辨率。运放芯片我们先后尝试了LM358、OP07、LM741,经过对比发现,LM741对小信号的放大较为稳定,不会出现较大的跳跃。经过八天的努力,最终如期完成任务,在做电子秤的过程中,我们碰到不少困难,但是经过请教老师、小组商讨、上网查资料,将困难一个个克服。1、熟悉AT89S52单片机功能及工作特性,掌握其接口扩展方法。2、通过对数据采集的分析,了解各种传感器、放大器及A/D转换器对信号的转换、传输,有了更深的认识。元器件清单:STM32最小系统板一个、LM358(附芯片座)一个、压力传感器一个、AD620N仪表放大器一个(附芯片座)、OLED显示屏一块、电路板一块、±10V电源(学生电源)、3.3V降压模块、电容,电阻、矩阵键盘。评语:成绩:OLED显示重量单片机数据处理及控制STM32的A/D模数转换Ad620n信号放大电路全桥电阻应变式传感器输出信号10V双电源供电10V单电源供电3.3V单电源供电OLED改变显示内容单片机识别,发出改变显示内容的指令矩阵键盘发出指令按键_1234567890.unknown
本文档为【电子秤课程设计实验报告】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
金水文库
鑫淼网络科技有限公司主要经营:PPT设计 、课件制作,软文策划、合同简历设计、计划书策划案、各类模板等。公司秉着用户至上的原则服务好每一位客户
格式:doc
大小:302KB
软件:Word
页数:0
分类:
上传时间:2020-04-14
浏览量:0