1. 引言
国内市场大多使用液体式压力计进行检表工作。在检表操作中,压力加载时的阀门操作、油泵启闭多依靠工人进行操作,操作流程繁杂,压力的输出稳定性差,工作结果的准确度低,工作效率低下。同时,手工操作会增大不必要的人为误差,活塞悬浮的平衡位置以及活塞的旋转速度均需要工人自行判断,不可避免会降低数值的准确性。目前国内活塞式压力计的自动化水平有限,计量的准确度和操控性能较差,因此,急需生产全自动仪器设备来进行高质量的压力表校准。
FPG8601强制平衡活塞式压力计 [1],由DH公司生产,压力量程为0~15 KPa,可用于表压、绝压和差压等测量,以气体为工作介质,分辨率可达0.001 Pa,测量不确定度为0.003%,能提供包括活塞温度,活塞位置,活塞参考端真空度和环境温度、湿度等方面的参数。
德国WIKA公司CPB8000全自动活塞式压力计,有自动化和高水平压力基准要求,可以进行压力测量仪表的自动校准和检验,同时可以实现大容量校准。测量不确定度为测量值的20 ppm;气动型压力最高可以达到100 MPa。
Furness Controls公司出产的FRS5型微压气体活塞式压力计,拥有一套可以方便操作的真空校准系统,在低真空范围内有非常高的准确度。测量范围为0~11 KPa,不确定度为0.02 Pa + 7 × 10−5 Pa,表压连续可调,一般在2~170 KPa之间 [2]。
通过对国外企业生产的各种压力计的对比,气体活塞式压力计的测量精度越来越高,制作体积逐步减小的趋势越来越明显。
西安鑫仪仪表科技有限公司、西安云仪仪器仪表有限公司、陕西创威科技有限公司、上海敏榆实业有限公司等国内活塞式压力计的功能、精度和自动化程度也在逐步追赶国外,也有了自己的特点和优势,都在快速、准确、稳定等方面有了明显的提高。
由于气动系统建模困难,采用PID算法进行优化,PWM控制来保证输出压力的稳定和连续,最终实现装置在0~6 MPa压力范围内的任意调节,并与液体压力计进行压力输出实验对比,实验表明,气体活塞式压力计具有较好的效果,满足市场要求。
2. 压力计原理和设计方案
2.1. 加压部分工作原理和设计方案
本文设计的全自动气体活塞式压力计采用将高压气体通过高速比例调压阀和两个两位三通换向阀,以及气体压力传感器组成。如图1所示气压加码部分原理图,大大减小了机械传动部分的体积,控制精度更加准确。工作原理是利用PID算法和PWM脉宽调制 [3] [4] 将10 MPa左右的高压气源,先通过减压阀将压力减至6.5 MPa,再通过高速比例调压阀,进行一定的气体压力调节,在压力传感器的实时监控下,向单片机发送信号。当气体压力小于设定压力时,进气比例阀快速动作,将气体压力增大,增大后的气体压力再次通过压力传感器监测,若压力超过设定值,排气比例阀快速动作,排放气体,降低压力。通过快速地监控与调节,最终将输出的气体压力稳定在设定值,达到准确加压的目的。加压过程,全部实现自动化,无需劳动者参与,提高了工作效率。
加压部分需要控制部分对高速比例调压阀的阀口开合进行控制;通过控制比例阀的阀口快速开合来调节气压压力;通过对压力传感器信号的接收,对当前瞬时压力进行压力测定等。

Figure 1. Schematic diagram of the barometric pressure part
图1. 气压加压部分原理图
2.2. 加码部分工作原理和设计方案
全自动气体活塞式压力计采用挂兰式砝码,将砝码按照从大到小的顺序依次放入,随着砝码的直径变小,高度逐渐增高,按照计算机二进制,配比砝码质量。砝码的夹起与释放是由电控气体两位三通换向阀,通过控制气体的进入与排出,来操控气缸杆伸缩来控制。当气缸杆伸出时,顶住砝码上沿;气缸杆缩回时,释放砝码。砝码的加载与卸载,是由直线气缸控制,使其上升和下落。气体压力与活塞上砝码质量平衡时,需要传递一个实时信号,因此在活塞托盘处安装一个位置传感器。检验托盘转速大小,还需要速度传感器。通过对加压和加码部分的分析,对整个框架进行搭建。控制部分原理图如图2所示。
如图3所示为电源部分原理图,控制系统需要220 V,24 V,±12 V,5 V和3.3 V供电。其中,220 V交流电作用于带动砝码旋转的直线电机驱动;24 V直流电用于高速比例电磁阀以及电控气体两位三通换向阀动作,电感式位移传感器的运行;±12 V的直流电为RCV420精密电流环接收器芯片提供工作电压;5 V的直流电用于RS485,RS232,IIC,SPI等通信,温湿度传感器,光电传感器的运行;3.3 V直流电主要为STM32F429芯片进行供电。

Figure 2. Schematic diagram of the control part
图2. 控制部分原理图

Figure 3. Schematic diagram of the power part
图3. 电源部分原理图
2.3. 硬件电路设计
2.3.1. 中央处理器选择
半导体STM32F429芯片,采用基于ARM Cortex M4内核,集成了FPU单元和DSP指令集,具有256KB SRAM、1024KB FLASH、12个16位定时器、2个32位定时器、2个DMA控制器、6个SPI、2个全双工I2S、1个SAI、3个IIC、8个串口、2个USB (支持HOST/SLAVE)、2个CAN、3个12位ADC、2个12位DAC、1个RTC (带日历功能)、1个SDIO接口、1个FMC接口、1个TFTLCD控制器(LTDC)。采用LQFP176封装,拥有176个引脚,含有140个通用IO口。最高主频为180 Mhz,极大地提高了其工作性能。
2.3.2. 最小系统电路设计
最小系统电路由电源电路,复位电路,启动模式设置接口电路,SWD 调试电路,高速时钟电路,低速时钟电路、存储器电路等组成。最小系统组成框图如图4所示。

Figure 4. Block diagram of minimum system composition
图4. 最小系统组成框图
本文电源电路设计包括DC直流24 V转12 V电路、24 V转5 V电路。为保证配电箱内低电压供电,使得操作人员即使在设备工作时打开配电箱也会保证相对安全,同时将高压电与低压电完全隔离分开,使用开关电源将220 V交流电直接转变为直流24 V电压输出。其可以保证较大的电流输出,提供过载、过压、短路保护,更加地安全,稳定耐用。
直流24 V转5 V电路,采用美国国家半导体公司生产的LM2576集成稳压芯片,其最高输入电压为40 V,转换效率75%~88%,内部含有52 KHz固定频率振荡器和1.23 V基准稳压器,并具有完善的保护电路,包括电流限制及热关断电路等,利用该器件只需极少的外围器件便可构成高效稳压电路 [5]。
2.3.3. 内部存储器电路设计
EEPROM采用2 KB容量的普通24C02型号芯片,共256个字节,用于普通应用的存储。当数据内容较多时,才采用其他大容量内存存储。
NAND FLASH选用MT29F4G08型号,容量为512M字节。与STM32F429的FMC接口相连,大大扩展了STM32的存储空间,可以实现海量数据存储。
SDRAM通过与MCU上的FMC系列引脚相连,来实现数据的传输和信号的采集。芯片上的VDD和VDDQ都为芯片供电电压,令其通过串联电容与大地相接,来进行滤波作用,由于精度要求不高,统一采用104电容滤波。VSS和VSSQ都为DQ地,为了降低噪声,在芯片上进行了隔离,直接接入大地。
2.3.4. 内部存储器电路设计
全自动气体活塞式压力计使用SHT21-X型号温湿度传感器,SHT21-X需要通过IIC接口与单片机进行数据交换。本文使用IIC总线接口隔离芯片ADUM1250隔离。ADUM1250是一种热插拔双通道隔离器,内置热插拔电路,可防止将无源卡插入有源总线时产生干扰数据。8-SOIC封装,支持双向通信,工作频率最高可达1000 KHz [6]。
2.3.5. 输入输出IO电路设计
输入器件从Input端进入,通过1A保险丝过载保护后,在BZT5V1S稳压下,电压稳定为5.1 V。查表得出光耦中的LED灯流过电流IF = 4 mA时,电压约为VF = 1.1 V。这时光耦中三级管电流为IC = 0.8 mA,三级管的集电极和发射极电压VCE = 0.1 V。红色0805贴片二极管D10在电流为0.8 mA时可以正常发光,两端电压约为2 V。
由R = V/I得:
(1)
(2)
根据最后计算求得,R28限流电阻阻值为1 K,R27上拉电阻取1.5 K。图5为输出口电路原理图。

Figure 5. Schematic diagram of the input port circuit
图5. 输入口电路原理图
输出口查表,计算得出R41上拉电阻阻值为550 Ω,输出端采用TIP127达林顿三级管,进行电流放大。高压整流快恢复二极管RS1M作为续流二极管,最大反向电压为1000 V,最大电流为1 A。图6为输出口电路原理图。

Figure 6. Schematic diagram of outlet circuit
图6. 输出口电路原理图
2.3.6. 4~20 mA转0~5 V电路设计
隔离电路一般采用光耦进行信号隔离 [7] [8]。由于本设计采用AD7606-6对压力传感器、位移传感器和温湿度传感器的模拟信号进行模拟量到数字量的转换,AD7606只对0~5 V的电压信号进行处理。所以需要设计出一个将传感器输出的4~20 mA的标准电流信号转0~5 V的标准电压信号的电路。

Figure 7. 4~20 mA to 0~5 V circuit
图7. 4~20 mA转0~5 V电路
RCV420精密电流环接收器芯片采用±12 V电压供电,该芯片在满量程工作时,电压压降只有1.5 V,功 耗大大减小,对串连连接的仪表负载和需要严格限制变送器电压的场合有很大的优势。RCV420不需要过多的元器件,就能实现其功能,其自带有的增益和偏置功能使调试更为方便。根据RCV420精密电流环接收器芯片的DATESHEET中所提供的典型参考电路,将C23、C24的容值设为1 uF。如图7所示为4~20 mA转0~5 V电路。
2.3.7. 底板PCB设计
PCB采用正反两面布线,导线宽度根据地线宽度 > 电源线宽度 > 信号线宽度的规定要求进行设计。信号线走线使用0.254 mm宽度,3.3 V电源走线使用0.5 mm宽度,5 V电源走线使用1 mm宽度,24 V电源走线使用1.5 mm宽度。由于走线不能有小角度尖角和拐角,走线角度一律大于90˚通过标准化设计,底板PCB电路如图8所示。


Figure 8. Front and back of PCB bottom plate
图8. PCB底板正反面图
2.4. 软件程序设计
2.4.1. 程序总体架构
根据硬件电路的设计和压力计运动工作原理,软件程序设计主要分为以下几个部分:1) 实时操作系统程序嵌入;2) 存储部分程序设计;3) 通信部分程序设计;4) Modbus通信协议程序设计;5) AD转换部分程序设计;6) 加码部分程序设计;7) 加压部分程序设计。
软件部分主要完成FreeRTOS操作系统的嵌入,设备的通信,模拟信号和数字信号AD7606的转换,存储模块的数据存储以及IO端口控制,加压和加码部分的控制等。通过程序的初始化以及各个部分的相应配置,最终实现底层软件对硬件的驱动。
2.4.2. PID算法选取
加压部分采用串级PID算法对AD模数转化的信号进行拟合控制。PID算法调节对参数的设置方便快捷,简单易懂,具有很强的实用性能,其稳定性好,广泛用于工业生产 [9]。PID只需要对需求对象设定比例、积分和微分三个环节,就可以共同作用控制系统减小误差。PID算法原理图如图9所示。

Figure 9. Schematic diagram of PID algorithm
图9. PID算法原理图
通过选择与误差拟合计算,本论文选择PID归一参数整定法 [10]。
(3)
(4)
通过使用PID归一参数整定法进行两个高速电磁阀的PWM驱动,PWM控制流程图如图10所示。PA1、PA2为PWM信号控制的进气阀和排气阀代码,两个阀进行互锁,防止同时动作的情况发生。
加压开始后先对有无砝码进行检测和判定,防止装置在没有放置砝码时进行加压,出现安全隐患。设置完点数和最大压力值后,加压部分程序开始运行。计算出各个点的压力值,分配压力,进行第一点的加压工作。通过传感器对压力的检测,得出压力是否到达压力值,如果没有,调整压力,继续测量;如果压力到达设定值,稳压5 s,再次通过传感器测量压力,当压力达到设定压力时,加压部分完成,同时配合加码部分。所有工作完成后,进入下一个点的压力加压,直到N个压力点全部完成加压操作。
加压部分流程图如图11所示。
3. 控制系统总体调试
控制系统整体调试主要分为硬件电路部分调试和软件程序部分调试。硬件电路调试是软件程序正常运行的基础,同时软件程序可以更好地对硬件电路各个部分的可靠性和准确性做出相应的判断。因此控制系统整体调试对整个项目来说有很重要的意义 [11]。
自动气体活塞式压力计整体如图12所示。通过系统调试,逐步实现控制系统的实际功能。
3.1. 电源调试
通过电压表对获取的电压和转化得到的电压进行电压值测量,对实际得到数值与理论要求数值进行对比,估算硬件设计中电源部分是否能够得到所需要的电压值。
通过电压表对获取的电压和转化得到的电压进行电压值测量,对实际得到数值与理论要求数值进行对比,估算硬件设计中电源部分是否能够得到所需要的电压值。
通过对电源部分的测试,得出表1电压输出对比表。

Table 1. Voltage output comparison table
表1. 电压输出对比表

Figure 12. Full automatic gas piston pressure gauge physical diagram
图12. 全自动气体活塞式压力计实物图
3.2. 操作系统嵌入程序调试
借助于Keil5软件编写控制程序,使用STM32F4系列开发板模拟仿真,通过串口调试助手将数据传送到电脑窗口,对FreeRTOS操作系统的嵌入情况进行测试。通过双色LED闪烁试验,测试创建的LED0,LED1和浮点测试任务正常工作,程序编写成功。
3.2.1. 存储模块通信调试
EEPROM采用的是AT24C02芯片,用于活塞式压力计运行时的部分数据的写入和读取。按照程序要求快速、准确的存储数据非常重要。通过串口调试助手向芯片中写入数据,通过窗口的数据读出进行对比,校验数据准确性 [12]。经调试,AT24C02测试符合使用要求。
3.2.2. AD7606模块通信调试
AD7606模块主要是将0~10 V输入电压转换成0~3.3 V电压电路的信号进行采集和处理,把数据传送到MCU中。通过串口通信传入电脑窗口,可以检测信号的正确与否。经调试,当输入为3.3 V电压时,串口接收显示电压值约为1.02 V,符合线性要求,能够保证精度要求。
3.2.3. 温湿度传感器通信调试
温湿度传感器采用SHT21-X型号,通过IIC总线进行通信,只需要两线就可以采集温度和湿度。将温湿度传感器安装在活塞式压力计的相应位置,根据硬件电路图要求进行接线,通过软件程序,温度和湿度数据直接显示在屏幕中,通过与实际测量对比,进行程序调试 [13]。测试结果如图13所示。

Figure 13. Debugging interface of temperature and humidity sensor
图13. 温湿度传感器调试界面
4. 压力输出稳定性对比
4.1. 输出稳定性仿真对比
将本文设计的气体活塞式压力计与原始液体活塞式压力计进行输出稳定性对比,如图14所示,结果表明气体活塞式压力计在时间和稳定性上较液体活塞式压力计更优。证明了本文对气体压力计设计的有效性。

Figure 14. Simulation comparison of pressure output stability
图14. 压力输出稳定性仿真对比
4.2. 实验效果对比
实验效果如图15所示,可以看出,气体压力计较液体压力计先达到设定值要求,响应速度较快。液体压力计在加压5 s左右,活塞上升到最大高度,随着系统稳压过程,受不可控因素影响,出现了较大的超调,活塞浮动变化明显,输出变化不稳定,并且活塞高度趋于稳定的调节时间较长,稳态误差较大。气体控制的活塞高度变化,经过两次超调,在12 s左右趋于设定值。较PID在15 s左右达到设定值时间更快,效果更好。

Figure 15. Experimental comparison of pressure output stability
图15. 压力输出稳定性实验对比
5. 总结
通过对硬件电路的设计、仿真和电路板的接线调试,电路板上的电源电路、通信电路、AD转换电路以及IO口输入输出等硬件电路能够正常工作运行;以C语言为程序语言编写的硬件底层驱动程序,经过操作系统的嵌入,各个部分驱动代码的编写,通过调试基本实现其设定功能,并通过与液体活塞式压力计实际应用进行对比,气体压力计具有较好的稳定输出。因此,以STM32F4芯片为核心的气体全自动活塞式压力计控制系统可以实现快速、准确、稳定,实现预期任务要求。满足市面上压力表检定使用需求。