1.内容简介
电子化秤重在生活中,已逐渐取代传统弹簧、天平等量测工具,例如电子计价秤、电子体重秤等。设计电子秤产品主要的组件有:传感器、ADC和MCU单芯片。本文所设计的电子秤就是利用压力传感器(LoadCell)将压力物理量转换为电压讯号,再将电压转换为数字显示出来。由于电压为模拟量,所以要用ADC将它转换为数字信号。此时也需要MCU单芯片来控制电子秤主板上的讯号处理与显示功能。
纮康HY16F188控制芯片内建高精密SD24BitADC、可程序放大PGA和多段式稳压输出等功能,可以很大幅简化PCB周边线路。具有高分辨率、高分辨率、低温漂的SD24AD转换器,可以精准完成由模拟到数字的转换。虽然输出速率不是非常高,但用于像电子秤这种对于转换速率要求不高的产品,是没有问题的。
2.原理说明
LoadCell的原理是在铝制的棒上面贴上一片由桥式电阻所组成的应变仪,即惠斯顿电桥,如图2-1所示。因为电桥上的4个电阻(阻值相同),所以当有电压施加在VIN+与VIN-两端时V+=V-,即电桥达到了平衡。
此ΔR的变化量产生在讯号两端的电压变化为
分辨率分为外部分辨率和内部分辨率,外部分辨率为LoadCell满量程的输出电压值与需要识别的最小重量引起的电压值之比,最小重量可以定义为1g、0.5g、0.1g等。
内部分辨率是衡量电子秤等级的一个重要指针。一般我们以目视法认定的内部分辨率通常是指我们经软件处理后LCD显示只有1格滚动时,此时满量程的格数就是内部分辨率,其1格所代表的讯号约为2~3倍RMSNoise。
内外分辨率之比越小,电子秤精度越高,但内外分辨率之比是有限制的。比如LoadCell满量程压差为3mV,要做到3000Count,内外比为1:10的电子秤,如果不经过信号放大,那最小要处理的信号为3mV/(3000X10)=0.1µV。而SD24所能处理的最小信号值大约为65nV,所以假如内外比再减小的话将产生使ADC不能识别的信号。如果使用OPAMP的话则会增加成本。所以内外分辨率之比要稳定在一定范围内。
芯片ADC性能能否达到规格要求,通常是以RMSNoise来推算外部是否稳定内部分辨率比值。对于开发电子秤产品而言,使用HY16F188芯片其所能达到的最大内部分辨率的瓶颈在于InputRMSNoise而不在于ADC的分辨率。HY16F188的ADC待测信号在由PGA、AD倍率调整器的放大后(PGA=32,ADGN=4),经OSR=32768每秒输出10笔ADC值的条件下,其InputRMSNoise约为65nV,但由于其InputNoise主要由ThermalNoise组成,所以如果我们透过平均的软件处理是可以再将InputNoise进一步降低。
如果我们使用8笔的软件平均处理其InputRMSNoise约为40nV,3倍RMSNoise代表约1格的滚动,即为120nV。在使用2.4VLoadCell驱动电压,1mV/V的LoadCell,满量程时压差可达2.4mV,所以在此情形下我们可以得到20000Counts的内部分辨率。
2.2控制芯片
单片机简介:HY16F系列32位高性能Flash单片机(HY16F188)
(1)采用最新Andes32位CPU核心N801处理器。
(2)电压操作范围2.4~3.6V,以及-40℃~85℃工作温度范围。
(3)支持外部20MHz石英震荡器或内部20MHz高精度RC震荡器,拥有多种CPU工作频率切换选择,可让使用者达到最佳省电规划。
(3.1)运行模式350uA@2MHz/2(3.2)待机模式10uA@32KHz/2(3.3)休眠模式2.5uA
(4)程序内存64KBytesFlashROM
(5)数据存储器08KBytesSRAM。
(6)拥有BORandWDT功能,可防止CPU死机。
(7)24-bit高精准度ΣΔADC模拟数字转换器
(7.1)内置PGA(ProgrammableGainAmplifier)最高可达128倍放大。
(7.2)内置温度传感器TPS。
(8)超低输入噪声运算放大器OPAMP。
(9)16-bitTimerA、16-bitTimerB模块具PWM波形产生功能、16-bitTimerC模块具数字Capture/Compare功能
(10)硬件串行通讯SPI、I2C、UART模块模块
(11)硬件RTC时钟功能模块
(12)硬件TouchKEY功能模块
3.系统设计
3.1硬件说明
HY16F188对于高精度厨房秤的应用,整体电路包含4个touchkey部分及LCD显示模块。
(A)中央处理器:
HY16F188(Andes32-bitMCUCore+HYCON24-bitΣΔADC+UMC64KFlash)
(B)显示芯片:HY2613(HYCONLCDDriverLCDSegment4X36)
(C)电源电路:5.0V转3.3V电源系统
(D)模拟感测模块:内部ADC
(E)在线刻录与ICE链接电路,透过EDM的连接,可支持在线刻录模拟。
并拥有强大的C平台IDE以及HYCON模拟软件分析工具与GUI等支持。
3.2电路说明
ADC测量电路
ADC内部的PGA放大32倍,ADGN放大4倍,
参考电压由VDDA–VSS供给,则ΔVR_I=1.2V。
LCDDRIVER
MCU通过IIC与LCDdriver通讯,电路简单,操作方便,只须将数据发送给LCDdriverHY2613,MCU就可以处理其他事情,且更新数据方便。
内建硬件触控模块(使用模拟比较器方块)
如上图所示,TOUCHKEY外围电路连接简单,只需再CMP的正输入端CH1端接入一个参考电容Cref=10nf;CMP的正输入端配置为CH1,与touchkeypad的CH1端连接;负输入端配置为RLC,与NON-OVERLAP的输出端RLO连接;NON-OVERLAP的电压源选择VDD18=1.8v,且CPRLS=1短路22.5R与20R电阻,设置NON-OVERLAP分压输出为1/16R;启动TMB且计数源为CMPO。透过设置CPIS=1,令CMP的输入端短路,将CH1上的Cref电容上的电量通过RLO接到VSS,进行完全放电;启动比较器及TMB开始计数,启动NON-OVERLAP,让VDD对touchpad充电,由于NON-OVERLAP的开关功能,touchPAD对CH1Cref充电,使得CH1端电压慢慢上升,当CH1端电压上升到RLO电位时,比较器输出转态CMPO=0,产生CMP中断标志位,停止TMB计数并记录TMBR计数值,与设定的TOUCHKEY计数临界值比较,若小于临界值,表示有触摸TouchPad,反则,没有触摸TouchPad。分别对不同的touchpad扫描。
3.2软件说明
ADC设置为对输入信号ΔSI放大128倍,数据输出率为ADC-CK/32768,每秒输出10笔数据,最终取有效位数为18Bit(使用者可自行调整)。截取原始数据18Bit,进行平均滑动滤波处理。每8笔数据做一次平均值,得到的平均值再作为ADC最终转换值。平均滑动滤波实现如图所示。
由于小讯号放大到128倍,ADC的输出Bit只能达到18Bit,如果使用软件平均方式可以再将ADC的分辨率提升1~2Bit并使数值更加稳定。将新的ADC值与7个ADCBuffer值相加除以8输出到ADCOUT如图,此目的是将8笔ADC做平均输出,这可以将Noise平均提高信号输出的Bit数。
当ADC平均输出后,将新值移到Buffer1,Buffer1移到Buffer2…Buffer6移到Buffer7,如下图。
4.2主程序流程
7.结果总结
以HY16F188为主控结合内部高精度、多通道输入、快速ADC的量测。不论厨房秤或是计价秤。都非常适合利用HY16F188来进行开发及应用。
8.参考文献
(1)HYCONHY16F188SeriesDataSheet
(2)HYCONHY16F188SeriesUser’sGuide