APP下载

基于STM32F1的纸张计数显示装置的设计与实现*

2021-01-12江永鑫黄晨江若薇尹序臻

福建轻纺 2021年1期
关键词:子程序极板纸张

江永鑫,黄晨,江若薇,尹序臻

(厦门理工学院 电气工程与自动化学院,福建 厦门 361024)

在金融行业和印刷行业中,传统的纸张计数主要采用机械计数设备与物理粗略计算等办法,但采用机械设备计数广泛存在着噪声大、速度有限、精准度不高的缺点,对于纸张的尺寸和厚度以及材质有一定的要求,容易对纸面造成磨损。而采用物理粗略计算,需要许多次测量数据,存在机械误差、人为误差等因素,准确性不高,并且过程耗时耗力。随着传感器技术的不断发展,传感器在生产生活中具有广阔的应用,电容式传感器具有稳定性好、结构简单、灵敏度高等优点。

1 纸张计数原理分析

纸张数与电容值的关系,按照电极板所组成的电容决定式:

式中,C表示电容值,S为两平行极板之间的正对面积,ε是材料的介电常数,d为两平行极板之间的距离,ε0表示自由空间介电常数(8.85×10-12F/m),为静电力常数(9.0×109N·m2/C2)。

依据上述公式,可以推导出随着两平行极板间放入纸张数量的增加(即两平行极板间距d增大),使电容值C减小;随着两平行极板间放入纸张数的减少(即两平行极板间距d减小),电容值将会增大。

首先依次测量并记录1张到30张A4纸在置于装置中时反馈回来的经程序中数学公式计算出来的电容值,自变量为FDC2214电容传感器模块测量反馈回来的电容值,因变量为其相对应的纸张数量,用MATLAB软件进行有理数数据拟合,得出最佳求解纸张数量的数学模型为Y=(P1*χ+P2)/(χ+P1)形式的函数。

图1 MATLAB数据仿真结果

如图1所示为利用MATLAB软件对30组测量数据进行仿真,通过有理数拟合得出的数学函数模型——Y=(P1*χ+P2)/(χ+P1)。

式中P1,P2,q1为函数模型的待定系数,自变量χ为电容值,因变量y为纸张数量。根据MATLAB数据仿真结果所示,对Y=(P1*χ+P2)/(χ+P1)模型多重测定系数R-square数值高达0.9998,近似等于1,表明函数对y轴具有极强解释能力,故可用此方程解析。

2 系统总体设计

本装置的系统设计框图如图2所示。

图2 系统设计框图

该系统以STM32单片机为控制核心,由电容传感器数据采集单元、数据分析处理单元、数据输出显示单元三大部分构成。结合电容式传感器FDC2214、独立按键功能、OLED显示模块、蜂鸣器警报模块等,实现自校准功能、检测两平行极板间是否短路功能、测量装置中纸张数量功能、数据显示和语音播报功能。

该纸张计数装置可以识别不同环境不同规格不同厚度的张纸,利用电容式传感器FDC2214实时采集平行板电容器的两金属极板间的电容值进行记录并保存,从而进行自校准数据拟合曲线的待定系数,实现对纸张的不同数量的测量。

3 硬件设计

3.1 模块选择

3.1.1 STM32F103单片机

该系统中MCU采用STM32F103单片机,集成度较高,具有功能强大、效率高的指令系统,以及高性能模拟技术及丰富的外围模块,并且开发编程环境操作简便。在系统中MCU对OLED显示模块进行数据输入、对FDC2214电容传感器模块的数据进行读取,同时对数据和拟合曲线进行计算以得到不同参数下的最终结果。

3.1.2 FDC2214电容传感器

选用FDC2214电容传感器模块采集数据,该模块的原理为:将一个电感和电容与芯片每个检测通道的输入端连接,构成LC振荡电路,产生一个振荡频率,根据该频率值进行数学计算出被测电容值。其精度可达28位,具有抗噪声、高分辨率、高速等多种特性,并且较为稳定易于操作,满足测量纸张的基本要求,将FDC2214电容传感器模块采集的电容数据转换为频率信号通过IIC传输给MCU再计算得出铜板间的电容值。原理图如图3所示。

3.1.3 电源模块

电源方面选择使用稳压电源模块供电,作用是稳定输入电压以减少传感器的读数误差。原理图如图4所示。

图3 FDC2214电容传感器电路原理图

图4 电源模块原理图

3.1.4 OLED显示模块

采用四针OLED显示模块,可以显示文字、数字、图像等信息,具备成本低,规格小巧轻薄,且能耗低的特点。该模块可通过I2C受MCU控制可以较为简单地显示操作界面与测量数据。

4 结构设计

本装置的结构如图5所示。

图5 装置结构图

极板建议采用的是5 mm×5 mm纯铜板,被测纸张载体利用活动式三边结构,可以实现根据纸张大小调整限位实现将被测纸张较好的限位,进行测量不同规格纸张,实现将被测纸张限位。并配置极板限位卡和重物使被测纸张产生一定的形变、被测纸张之间的空气挤出,再通过检测模块得出极板间电容值,进而判断纸张数量。根据电容决定式C=ε0εS/4πkd,可知极板电容的容值受极板间距的影响,在人为取放纸的过程,纸张与纸张之间容易残留空气造成随机误差,如果采用非恒力式排除空气,易造成纸张产生的形变不同造成偶然误差。故采用恒力重物配合极板限位卡来控制极板电容,从何避免偶然误差,在结构上提高测量的精准度。

5 软件设计

5.1 主程序

软件系统主要分为5大部分,分别为主程序、FDC2214数据采集子程序,按键功能选择子程序,OLED显示子程序以及自校准功能子程序。程序流程图如图6。

首先,单片机初始化,进行短路检测,若电路正常,OLED初始化,通过按键进行功能选择,进入自校准功能,单片机发送指令使FDC2214传感器开始采集数据,MCU对所传回的数值进行分析计算,得出极板间电容值。初步判断纸张数量是否符合程序对方程关系式,若正确,算法计算后得出的纸张数量再经过OLED显示模块进行实时显示并语音播报所测得纸张数量。

5.2 自校准功能子程序

由于在湿度温度不同的情况下,材料的介电常数会发生细微的变化,每次读出的电容值必然有所误差,因此在方案中,将得到的电容值与测试纸张的数量建立数学模型,进行拟合,得到两者的关系方程,发现其近似于一个反比例函数。通过测量前依次采集电容值,在自校准子程序中,编写程序对方程关系式中的参数进行校准,对于被测纸张数量的不同范围,通过取不同的数据点数量对该范围内的方程待定系数P1,P2,q1进行校准模型 Y=(P1*χ+P2)/(χ+P1),使测量的精准度得以保证。自校准子功能程序流程图见图7。

图6 程序流程图

6 系统测试方案与结果

6.1 系统测试方案

在样本容量小(1~30)的区间内,测试均对各种数值的纸张数量即样本进行测试检验。在样本容量大(>30)的区间,也采用遍历法,将纸张数量由30递增,在达到可疑的最大测量值时,多次测量,防止偶然误差。

图7 自校准功能子程序流程图

在进行测量1~30张纸模式的自校准后,依次将1到30张纸张放入到装置中,按检测按钮,观察OLED屏幕是否显示正确张数。随机准备30张以内的纸张数量一同放入装置中,按检测按钮,观察OLED屏幕是否显示正确张数,测量2次,记录其数值。

在进行测量30张纸以上模式的自校准后,一张一张往上添加A4纸,依次测试,观察OLED屏幕是否显示正确张数。若正确,则继续;若错误,在错误处重复测量4次,判断是否为偶然误差。若4次全对,则继续添加纸张,否则记录值,作为最大测量数量。

6.2 系统测试结果

经过多次的实验测量发现,纸张数目在50张以内,准确率达100%。然而纸张数量超过60时其传感量化的数据的变化已经极小,甚至当达到75张时所得到的数据基本上已经不再发生变化。综上测试说明本设计符合要求指标。

7 结语

本文介绍的一种基于电容传感器测量和单片机控制,利用OLED 模块显示以及语音模块播报纸张数量,设计一款结构简单、生产成本低、计数快速精确,且对纸张无损的纸张计数显示装置,在金融行业和印刷行业中,有着一定的现实生产应用价值,具有可靠发展前景。

猜你喜欢

子程序极板纸张
铅酸蓄电池极板高温固化工艺的研究
数控加工中数控程序的简化
子程序在数控车编程中的创新应用
近期国内市场纸张价格(2020年3月)
扇区水泥胶结测井仪DTMX 和DTMN 响应异常典型案例分析
近期国内市场纸张价格(2020年1月)
横向双极电除尘器内气流分布
纸张黑白变
撕纸张
在数控车床上加工软轴零件