基于stm32电子秤系统的设计与实现内容摘要:

有重现性;稳定可靠。 就以上要求本设计所使用的称重传感器为 YZC1B型传感器,该传感器是 10kg量程的电阻应变片式传感器,在激励电压为 5V的条件下输出,满量程时输出为 10mV,该称重传感器的实物如图 22。 图 22 称重传感器实物图 其结构为由电阻应变片搭接的惠更斯全臂电桥贴于铝块载体上。 应变片是镍铬丝或康铜丝绕成栅状(或使用薄金属箔腐蚀成栅状)夹在两层绝缘的薄片中制成。 YZC1B 称重传感器上表面镶嵌两片应变片,同时下表面也有两个同样的应变片,上下连接形成全臂电桥,当应变片不受外力时,输出的电压为零,当受外力作用时,上表面的应变片电阻变大,下表面的应变片电阻变小,使电桥不平衡,由于相同的电阻丝其电阻的变化量相同,所以输出的电压与电阻的变化量成线性 12 关系,再经相应的测量电路把这一电阻变化转换为电压信号, 此过程完成了将外力转换为电信号的过程,这样就测量出重量的大小。 外接的 5 根线分别是一根屏蔽线,两根输出线,两根供电线。 当未载物时传感器内部电桥桥臂上的电阻满足这样的条件: R1*R3=R2*R4,电桥平衡,输出的电压为零;载物时铝块发生微小形变,致使贴在上面的电阻应变片也发生形变,从而导致应变片电阻发生变化,破坏电桥平衡,使电桥输出微弱电压,其输出的电压与电阻的变化量(外力变化量)成近似的线性变化,线性度小,这极大地方便了后续软件根据 A/D 值计算处理得到重量。 质量的计算 由于本设计所选的 YZC1B 型电阻应变片式电桥结构的称重传感器具有良好的线性度,所以为后续数据处理带来了很大方便。 本设计使用线性拟合软件CurveExpert 来拟合 A/D 值与实际重量之间的函数关系。 主控芯片内部的单周期乘法和硬件除法为重量的快速计算提供硬件支持。 随着质量的增大,称重传感器的线性度下降,再配以人工补偿,以保证精度。 在校正精度时,选用了 M1等级的高精度不锈钢砝码以确保电子秤的精度。 13 第 3章 电子秤硬件电路设计 A/D 采集的电路设计 对于电子秤的设计,核心问题是 A/D转换。 只有正确的选择 A/D转换芯片的类型才能才 能做出高精度的电子秤。 本论文设计的电子秤使用一款 24 位的Σ Δ( Sigma173。 Delta)型 A/D 转换芯片 HX711。 在电子秤的实际使用中,由于人们对重量测量速度的要求不高,所以使用这款高分辨率的慢速 A/D 转换芯片。 Σ Δ型的 A/D 芯片是由 1 位 A/D 转换器、数字滤波器、积分器和比较器等组成 [8]。 在原理上近似于积分型 A/D,将输入电压量变换成脉冲宽度(即时间信号)信号,经过数字滤波器的处理之后得到数字量 [9]。 电路的数字部分容易做到单片化,因此极易做到高分辨率。 由于输出的数字量与模拟输入量之间有较长的延时 ,所以这类 A/D 芯片适用于那些模拟信号近似直流或变化很慢的应用场合,如温度测量、流量测量和压力测量等。 HX711 与同类型其它 A/D 芯片相比,其内部集成其它同类型芯片所需要的外围电路,如内部时钟振荡器和稳压电源等,具有集成度高、抗干扰性强、响应速度较快等优点,使用该芯片设计的电子秤既能降低了整机成本又提高了电子秤的可靠性和抗干扰性。 该芯片与主控芯片的连接电路非常简单,只有 DATA 和 SCLK 两条线连接与主控芯片连接,两个控制信号由管脚驱动,且无需对芯片内部的寄存器编程。 在输入指定的脉冲数可任意选取通道 A 或通 道 B 以及增益,通道 A 的可编程增益为128 和 64,对应满额度的差分输入信号幅值分别为177。 40mV 和177。 20mV,通道 B 则为固定为 64 增益。 芯片内部的稳压电源可以直接向外部传感器供电,系统板上无需另外提供电源,可以保证传感器的准确度。 HX711 的工作温度范围为 20~ +85℃,工作电压范围为 ~,可同步抑制 50Hz 和 60Hz 的电源干扰,典型工作电流: (含稳压电源电路),断电电流: 1181。 A,可见该芯片是功耗极低的,适合运用于充电的便携式设备中,较大的工作温度范围和宽电压决定了该芯片能应用在较 恶劣的场合。 HX711 的硬件电路如图 31。 14 VSUP1BASE2AVDD3VFB4AGND5VBG6INNA7INPA8INNB9INPB10PD_SCK11DOUT12XO13XI14RATE15DVDD16HX711HX711DVDDDVDDDGNDQ285501234P2123R11AGNDR12100R13100E+ESS+AGNDAGNDAGNDDGND1234P3Header 4HX_DOUTHX_DOUTHX_SCKHX_SCKC2110uFC231uFC2010uFL1FBAGND DGNDR1405V 图 31 HX711 的硬件电路 图中 E+和 E分别连接 5V和地线,为芯片供电, S+和 S连接称重传感器的输出端。 本设计使用 HX711 内部时钟振荡器(引脚 XI接地), 10Hz 的输出数据速率(引脚 RATE 接地)。 芯片供电电压取用 5V,片内稳压电源电路通过片外三级管 8550 和滑动变阻器 R11 向传感器提供稳定的低噪声模拟电源(图中 E+和E)。 在程序设计中选用通道 A,所以 INNA 和 INPA 与传感器相连,通道 B 接地。 单片机外扩电路设计 STM32F103RBT6 的最小系统硬件设计 本设计采用 STM32F103RBT6 作为主控芯片。 该芯片使用 CortexM3 架构,支持 Thumb2指令集,最高支持 72MHz 工作频率,在存储器的 0等待周期访问时可达 ,而且具备单周期乘法和硬件除法。 在存储器方面,该片有 128K字节的闪存程序存储器和高达 20K 字节的 SRAM。 片内的带校准功能的 32kHz RTC振荡器和后备供电 VBAT,可为实时时钟提供精确的定 时和掉电不掉时提供支持[1][2]。 ~ 的供电电压和睡眠、停机和待机模式可为电子秤的低功耗提供硬件支持。 该芯片还拥有多达 51个快速 I/O 端口,并且所有 I/O 口可以映像到 16个外部中断,几乎所有端口均可容忍 5V 信号,即兼容 5V 数字电平 [1][2]。 STM32F103RBT6 的引脚图如图 32。 15 VBAT1PC13TAMPERRTC2PC14OSC32_IN3PC15OSC32_OUT4PD0/OSC_IN5PD1/OSC_OUT6NRST7PC0/ADC123_IN108PC1/ADC123_IN119PC2/ADC123_IN1210PC3/ADC123_IN1311VSSA12VDDA13PA0WKUP/WKUP/USART2_CTS/ADC123_IN0/TIM2_CH1_ETR/TIM5_CH1/TIM8_ETR14PA1/USART2_RTS/ADC123_IN1/TIM5_CH2/TIM2_CH215PA2/USART2_TX/TIM5_CH3/ADC123_IN2/TIM2_CH316PA3/USART2_RX/TIM5_CH4/ADC123_IN3/TIM2_CH417VSS_418VDD_419PA4/SPI1_NSS/DAC_OUT1/USART2_CK/ADC12_IN420PA5/SPI1_SCK/DAC_OUT2/ADC12_IN521PA6/SPI1_MISO/TIM8_BKIN/ADC12_IN6/TIM3_CH122PA7/SPI1_MOSI/TIM8_CH1N/ADC12)IN7/TIM3_CH223PC4/ADC12_IN1424PC5/ADC12_IN1525PB0/ADC12_IN8/TIM3_CH3/TIM8_CH2N26PB1/ADC12_IN9/TIM3_CH4/TIM8_CH3N27PB2/BOOT128PB10/I2C2_SCL/USART3_TX29PB11/I2C2_SDA/USART3_RX30VSS_131VDD_132PB12/SPI_NSS/I2C2_SMBAI/TM1_BKIN33PB13/SPI2_SCK/I2S2_CK/USART3_CTS/TIM1_CH1N34PB14/SPI2_MISO/TIM1_CH2N/USART3_RTS35PB15/SPI2_MOSI/I2S2_SD/TIM1_CH3N36PC6/I2S2_MCK/TIM8_CH1/SDIO_D637PC7/I2S3_MCK/TIM8_CH2/SDIO_D738PC8/TIM8_CH3/SDIO_D039PC9/TIM8_CH4/SDIO_D140PA8/USART1_CK/TIM1_CH1/MCO41PA9/USART1_TX/TIM1_CH242PA10/USART1_RX/TIM1_CH343PA11/USART1_CTS/CANRX/TIM1_CH4/USBDM44PA12/USART1_RTS/USBDP/CANTX/TIM1_ETR45PA13/JTMS/SWDIO46VSS_247VDD_248PA14/JTCK/SWCLK49PA15/JTDI/SPI3_NSS/I2S3_WS50PC10/UART4_TX/SDIO_D251PC11/UART4_RX/SDIO_D352PC12/UART5_TX/SDIO_CK53PD2/TIM3_ETR/UART5_RX/SDIO_CMD54PB3/JTDO/TRACESWD/SPI3_SCK/I2S3_CK55PB4/JNTRST/SPI3_MISO56PB5/I2C1_SMBAI/SPI3_MOSI/I2S3_SD57PB6/I2C1_SCL/TIM4_CH158PB7/I2C1_SDA/FSMC_NADV/TIM4_CH259BOOT060PB8/TIM4_CH3/SDIO_D461PB9/TIM4_CH4/SDIO_D562VSS_363VDD_364U1STM32GNDGNDGNDGNDGNDPC0PC1PC2PC3PC4PC5PC6PC7PC8PC9PC10PC11PC12PC13PA0PA1PA2PA3PA4PA5PA6PA7PA8PA9PA10PA11PA12PA13PA14PA15PB0PB1PB2PB3PB4PB5PB6PB7PB8PB9PB10PB11PB12PB13PB14PB15PD2OSC32_INOSC32_OUTOSC_INOSC_OUTRESETBOOT0C11104C10 104VBATC9 104JTDOJTRSTJTDIJTCKJTMSC2104C710uFLCD_D0LCD_D1LCD_D2LCD_D3LCD_D4LCD_D5LCD_D6LCD_D7LCD_D8LCD_D9LCD_D10LCD_D11LCD_D12LCD_D13LCD_D14LCD_D15LCD_CSLCD_WRT_MISOT_MOSILCD_RSLCD_RDBL_CTRT_CST_CLKT_PENHX_DOUTHX_SCKGNDR1100kC8104*测控 101 张城照 图 32 STM32F103RBT6 引脚图 主控芯片外接 8MHz 和 的石英晶振,最高工作频率达 72MHz,其中, RTC的输入频率,为实时时钟提供精确的频率 [14]。 外接晶振的硬件电路如图 33。 1 2Y18MHzC610pC510pR41M1 2Y210pC410pGNDOSC32_INOSC32_OUTOSC_INOSC_OUT 图 33 外接晶振电路图 图 33 为主控芯片的复位电路和后备电源电路。 当系统上电时,电容 C1 充电,此时 RESET 为 0 电位,芯片复位, C1 充满电后,电路相当于断路, RESET为高电平,进入工作状态。 当按键 KP1 按下时, RESET 接地,使 RESET 为 0 电位,产生复位,一般低电平持续 20us之后,可实现 有效复位 [15]。 后备电池 BAT1通过二极管 D2连接到主控芯片的 VBAT脚,实现系统“掉电不掉时”的功能,如图 34。 16 B1BAT1D2D1GNDKP1RESETR310KVBATC1104 图 34 复位电路。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。