APP下载

基于模块化的电子天平软件功能设计

2022-08-14陈良泽

技术与市场 2022年8期
关键词:电子天平寄存器滤波

陈良泽,秦 晴

(1.国家知识产权局专利局专利审查协作天津中心,天津 300304; 2.天津职业技术师范大学,天津 300300)

0 引言

在生物医学工程和生物制药等领域,通常利用高精度电子天平进行微小质量分析,但目前我国高精度电子分析天平的发展与世界先进水平还有不少的差距,国内市场基本被国外产品垄断。

本文利用IAR Embedded Workbench软件编程环境完成电子天平系统基于MSP430F149单片机以及24位高精度A/D转换器CS5532的软件程序设计,可以有效提高电子天平的数据处理精度,增加天平功能,提供更加灵活、方便的操作,从而提高电子天平的测量精度和智能化水平。

1 软件总体设计

电子天平软件总体设计包括对电子天平的功能需求进行分析,按照电子天平工作要求,明确各模块的功能,并制定软件的总体框架和总体软件流程图。

1.1 电子天平软件功能需求

根据所要实现的电子天平功能需要,并结合国内外电子天平的现有功能,本文所设计电子天平软件功能包括去皮功能、校准功能、称重功能、菜单管理功能、通信功能。其中,校准功能包括外部校准、内部校准、基于温度的自动校准和非线性校准4种校准方式。

称重功能中,电子天平除了基本的称重功能外,还具有百分比称量、计数称量、单位转换等功能。利用菜单化的管理方式,通过按键操作可以直观、方便地进行各项功能设置,使电子天平便于操作,更加人性化。通过RS232通信接口可以实现天平和计算机的通信,使整个系统更加方便、自动化。

1.2 软件整体框架

电子天平的软件程序设计包括天平应用功能的实现和对数据的处理算法两个方面。因此,模块化设计首先将电子天平功能软件和算法软件分开处理。

功能软件设计中根据不同的实现功能,例如去皮、校准、按键、显示、菜单设置等再分为单独的子模块,各部分程序间互不影响。对于算法程序设计也遵循将复杂算法分为简单算法独立进行处理的原则,各子算法之间通过特定的接口函数相联系,相互之间只有数据传递关系。电子天平的总体软件设计结构如图1所示。

根据电子天平的软件整体框架图,对天平的软件设计采用由子程序来完成各项功能的方式,尽可能使主程序简单,易于调试。主程序主要实现电子天平的上电自检、各模块初始化、按键扫描与中断响应、外部模块的控制等。其他应用功能通过按键中断来实现。在主程序运行过程中,如果有按键发生,则进入相应的中断程序完成相应功能的处理,完成之后继续运行主程序,实时显示称量数据。

2 主要应用功能模块软件设计

2.1 称重模块设计

电子天平默认为基本称量方式。基本称量功能在主程序中实现,默认开机完成一系列初始化操作后,电子天平进入基本称量程序,实时采集处理A/D传感器的测量值,然后转化为物体质量并在液晶屏上显示结果。除了基本的称量方式外,本文设计电子天平还具有百分比称量功能和计数称量功能。

1)百分比称量功能。百分比称量的原理首先是通过菜单设置进入百分比称量模式,然后测量参考物体的质量并进行记录;最后测量被测物体的质量并和参考物体质量进行百分比计算,输出并显示结果。百分比称量的参考值可以根据用户指定物品的不同而不同,主要用于比较混合物体质量和快速检重等应用。

图1 电子天平软件设计总体结构

2)计数称量功能。计数称量用于统计一次称量中质量相差不多的物体的个数。其称量原理首先是通过菜单设置计数称量模式;其次根据液晶屏提示选择参考样本数目;然后放入参考样本进行称量;最后对需要称量的物体进行称量并计算数目,其中参考样本的数目可以根据用户需要选择5、10、20三种。

2.2 校准模块设计

电子天平校准分为内部校准、外部校准、温度触发校准以及非线性校准4种模式。在天平首次使用或者改变使用环境以及使用一段时间后,均需要对其进行校准以保证测量精度。

1)内部校准。内部校准是基于电子天平内置标准砝码实现的自动校准。其基本原理是通过菜单选项设置校准方式为内部校准,当按键执行校准时,天平启动内部自动校准程序,利用电子天平内部自动加卸载砝码机构实现对天平的校准。

2)外部校准。在电子天平使用过程中,通常采用外部校准的方式对其进行校准。外部校准是使用者利用外部标准砝码手动加卸载实现的校准方式。同内部校准方式一样,首先要对校准方式进行设置;然后根据液晶屏提示完成外部校准操作。

3)温度触发校准。由于本文设计高精度电子天平测量结果受温度影响较大,因此设计基于温度变化较大时的自动校准功能。温度触发校准需要设定一个温差阈值ΔT,开启温度触发校准检测后,若本次测量温度值与上次校准时记录的温度值之差超过所设定温差阈值ΔT时,即启动温度触发校准功能,调用内部校准程序对电子天平进行校准,完成校准后记录本次温度值作为下次校准温度参考值。

4)非线性校准。非线性校准主要是针对电子天平测量的线性误差进行校准。当电子天平首次使用或者移动位置后均需要重新进行非线性校准以保证测量精度。进入非线性校准界面后,液晶显示屏会指示操作者加卸载不同质量的砝码完成校准过程。

3 数据处理软件设计

电子天平数据处理软件设计主要包括数据采集以及数据预处理部分程序设计。本设计利用高精度A/D处理器对电子天平传感器输出数据进行采集,然后对测量的数据进行一些数据预处理,提高了测量系统的抗干扰性,保证了测量数据的精度,通过软件算法对数据进行处理弥补了硬件数据处理的一些不足之处。

3.1 称重数据采集程序

本文选择具有低噪声、高集成度的Δ-Σ模数转换器CS5532,通过单片机的3个I/O口模拟SPI操作时序对A/D转换器进行读写操作。

CS5532转换器不具有上电复位功能,因此需要利用软件对其进行初始化。软件初始化采用执行串口实现,其具体过程首先是设置配置寄存器的RS(系统复位)位为1;然后向A/D转换器发送15个字节的SYNC1(0xFFH),接着再发送1个字节的SYNC0(0xFEH),就可以完成A/D的串口初始化,完成初始化后,RS位自动配置为0,串口进入命令模式。

CS5532转换器内部有一个32位的配置寄存器、4个32位通道设置寄存器、4个32位偏移寄存器和4个32位增益寄存器。在进行模数转换前,首先需要对寄存器进行配置。完成系统初始化和寄存器配置后就可以进行A/D数据的采集,本文采用连续转换模式进行数据采集。每一次模数转换完成后需要40个SCLK读转换结果,其中前8个SCLK 用于清SDO标志,后32个SCLK用于读转换结果。采集和转换的数据结果存放在24的转换寄存器中,然后通过对A/D读数据操作取出并进行后续处理。

3.2 数据预处理程序设计

由于本设计的电子天平具有较高的精度要求,因此为了减少测量数据受到各种因素干扰,提高电子天平的测量精度和稳定性,需要对由CS5532转换输出得到的称重数据进行预处理。本文对称重数据的预处理算法主要采用去干扰平均滤波算法和快速稳定算法。

A/D测量数据采用连续转换的方式,因此存在大量的测量数据,根据电子天平的设计需要,采用基于去极值平均滤波和移动平均滤波2种数字滤波算法的去干扰平均滤波算法。根据去极值平均滤波和移动平均滤波的特点,在移动平均滤波之前加上去极值平均滤波作为适用于本设计中电子天平的去干扰平均滤波算法,既克服了去极值平均滤波数据更新慢的缺点,也保证了移动平均滤波对随机性干扰有良好的抑制作用。

具体实现为:进行去极值平均滤波。首先进行N次连续A/D数据采样,根据所设定称量结果显示速度不同以及设定的灵敏度,N的取值为10、20、30、40共4个等级,其中10次采样为显示速度最快,灵敏度最高。然后对N次转换数据进行去极值平均滤波,去除N次采样中的(N/5)个误差较大值,对于不同的N值,去除的采样值个数不同。最后对剩下的采样值进行求平均得到一个去极值平均滤波的测量值yn(n表示第n次去极值平均滤波的采样值)。

4 软件测试

由于电子天平整体硬件电路系统比较复杂,难以调试,因此本文通过搭建简单的MSP430单片机控制系统对所设计的软件程序主要功能进行测试以检验是否满足设计要求。测试内容主要包括A/D数据采集与处理程序、液晶屏显示以及菜单管理操作程序的实现等。

首先根据电子天平A/D转换器测量原理建立A/D测量电路;其次利用现有的MSP430最小系统以及液晶显示模块和按键模块搭建软件测试硬件电路;然后在IAR Embedded Workbench环境中利用USB型MSP430仿真器进行FET Debugger联机调试,单片机和仿真器通过JTAG口连接,将所编写的源程序先下载到Flash ROM中;最后在单片机中实时运行程序,同时在调试时可以实时查看程序运行状态以及各端口、寄存器和变量的值。进行测试之前,需要对调试环境进行设置,选择相应的单片机和仿真器类型,设置完成后就可以开始对程序进行测试。

点击运行程序,初始化完成后液晶屏显示全部字符。在称量状态下按下开机键进入菜单设置界面,通过去皮键可以选择设置不同的选项,校准键进入下级菜单,从而能够对不同的功能进行具体的测试。

5 结语

针对目前高精度电子天平软件功能单一、数据处理算法简陋等缺点,通过分析电子天平的软件设计需求,对电子天平系统的软件设计采用模块化设计的原则,完成了基于MSP430单片机的电子天平软件程序设计,为电子天平系统设计了丰富的应用功能,同时为了提高了电子天平的测量精度,弥补硬件电路的不足,设计了测量数据预处理软件算法,并利用现有的电磁力平衡传感器系统,搭建了MSP430最小系统和A/D数据采集电路,对所设计的电子天平的软件程序进行测试,通过实际测试验证了本文设计的软件程序可以实现相应的功能。

猜你喜欢

电子天平寄存器滤波
电子天平偏载误差的检定与处理研究
Lite寄存器模型的设计与实现
电子天平检定问题分析及对策
二进制翻译中动静结合的寄存器分配优化方法
基于EKF滤波的UWB无人机室内定位研究
移位寄存器及算术运算应用
一种GMPHD滤波改进算法及仿真研究
浅析电子天平计量检定的相关问题
电子天平计量检定方法及其应用
基于自适应Kalman滤波的改进PSO算法