基于GD32 的颗粒计数控制器的设计与开发*
2022-07-20杜石雷赵磊穆蔚伟胡双喜
杜石雷 赵磊 穆蔚伟 胡双喜
1.天津理工大学中环信息学院;2.天津光电安辰信息技术股份有限公司
通过检测油液中的颗粒直径和数量,可有效评估油液污染情况,为机械结构件状态评估提供依据。本文采用兆易创新公司生产的GD32 单片机作为核心进行开发,以激光颗粒计数器为传感器,同时与触摸屏、热敏打印机等外围设备进行连接,开发了便携式油液污染度等级在线检测系统。基于GD32 开发的颗粒计数控制器实际运行结果表明,在不同标准下油液污染度指标检测准确,数据记录完备,完成了预期的设计目标和任务,具备实用性和推广价值。
统计资料显示,液压系统的故障约有70%是由油液污染造成的,而固体颗粒物是其中最为普遍、危害作用最大的污染物。通过检测油液中的颗粒数,可有效评估油液污染度等级,显著提高成套系统可靠性,延长设备使用寿命。在线式检测系统可及时检测油液中颗粒数含量,帮助工作人员正确分析系统中油液污染情况,预判机械零部件的工作状况。市场上生产的同类产品在支持在线检测方面,有相当的差距,多为离线检测系统,实时性响应不够迅速,人机交互友好性不足。另外,污染度显示标准比较单一,支持等级类型不够丰富,操作不够便捷。
本系统基于GD32 单片机开发颗粒计数控制器,能够有效实现传感器、触摸屏、打印机等的驱动,可达到油液生产、使用的全过程数字化监控,最终实现溯源管理、产品优化、预知维修等目标。
1 整体方案
该系统采用模块化思路进行设计,总体遵循“传感、控制、执行”的思路。控制核心为GD32 控制器,协调各个部分的工作流程。首先通过触摸屏上的操作按钮启动电机工作,保证测量油路处于稳定流量和压力工况下;然后通过传感器进行在线数据的读取,如有需要,可在不同显示标准下进行切换;正常读数后,系统按照每隔5min的频率进行数据备份,如有需要可打印关键测量结果。
2 硬件部分
2.1 MCU
该系统选用GD32F103RCT6 单片机作为控制器,采用LQFP-64 封装,主频可达108MHz,板载Flash 容量为256KB,SRAM 容量为48KB,均可支持扩展,提供标准的JTAG/SWD 调试下载接口。其性能优异、外设丰富、功能强大,可满足传感器测量的实时性要求以及多个功能部件相互配合的复杂性要求。值得一提的是,控制器可同时支持5 路串口工作,这就为传感器接入、触摸屏交互、打印机驱动、调试信息输出提供了极大的便利。MCU 工作原理图如图1 所示。
图1 MCU 系统工作原理图Fig.1 Working principle diagram of MCU system
2.2 传感器接口
传感器采用德国PAMAS 公司生产的S50 型颗粒计数传感器,该公司是研究生产颗粒技术产品的世界著名公司,主要致力于固体、液体和气体样品颗粒技术器的开发和生产,应用范围涉及工业和环境保护等领域。S50传感器输出为RS485 形式,GD32 单片机需扩展RS485芯片,同时进行通讯系统的EMC 设计。该部分电路设计如图2 所示。
由图2 可以看出,RS485 通讯采用SP3485 芯片,与GD32 单片机的UART3 连接。前端采用通流量大的GDT陶瓷气体放电管,泄放大电流,后端采用反应时间快的TVS 瞬变抑制二极管,残压低,有效保护RS485 芯片,中间采用PTC 自恢复保险丝做退藕,让前端GDT 陶瓷气体放电管更容易动作,达到泄放电流作用。本设计满足IEC61000-4-2、GBT17626.2 等静电标准,IEC61000-4-5、GBT17626.5 等浪涌标准。
图2 RS485 电路设计(含EMC)Fig.2 RS485 circuit design (including EMC)
2.3 打印机与触摸屏接口
选配的打印机和触摸屏均为RS232 接口,采用SP3232芯片进行接口电平转换,从而将GD32 的串口TTL 电平转换为RS232 电平,为打印机和触摸屏的驱动提供硬件支撑。转换电路原理图如图3 所示。
图3 RS232 电平转换接口电路原理图Fig.3 The schematic diagram of the RS232 level conversion interface circuit
3 软件程序
3.1 程序流程
控制器上的运行程序采用C 语言编程,编程软件为MDK5,编程思路采用模块化编程,将各个外围部件分别做相应处理。通过串口接收数据和发送指令,其中,发送指令部分采用轮询工作方式,而接收数据采用中断方式,可极大地提高系统的响应速度,达到实时性的要求。控制器上的运行软件整体流程图如图4 所示。
图4 程序执行流程图Fig.4 Flowchart of program execution
3.2 数据接收
S50 传感器本身提供ISO 4406 标准下的清洁度级别显示,等级范围为:0/0/0 ~24/23/22。系统控制器为了在线获取实时检测数据,通过RS485 接口与S50 传感器进行通信,控制器作为主站运行,S50 作为从站,两者采用请求/应答协议进行通信。数据包格式如表1 所示。
表1 S50 传感器数据包格式Tab.1 S50 sensor data packet format
串口中断接收程序中,采用GD32 UART 的RBNE中断类型,逐字符接收S50 返回数据,在中断程序中接收到ETX 结束符之后,置位标志位。通过应用程序中判断校验位,然后将完整的数据帧交由应用程序uart3_pamas_data_handle()函数进行处理,主要是涉及到字符转换为数值,以及不同污染度等级下的数据切换等。
3.3 标准切换
油液污染度等级指单位体积油液中固体颗粒污染物的含量,一般采用颗粒污染度表示,颗粒尺寸范围可用区间表示。按照检测仪使用场合,控制器需要支持三类污染度等级划分方法:GJB 420B、NAS 1638、ISO 4406。而S50 传感器原始输出数据为ISO 4406 标准,需要将其切换为GJB 420B、NAS 1638 两种规范,并且按照相应标准规定进行颗粒污染等级认定。
以NAS 1638 标准为例,首先需要通过S50 传感器计算得到4um、14um、25um、38um、70um 不同颗粒直径下的个数;然后通过对照标准进行转换,切换为NAS 1638 标准下使用区间表达的颗粒个数,即5 ~15um、15 ~25um、25 ~50um、50 ~100um、100+um,然后通过查表确定各尺寸范围的颗粒数所属的等级,一般取其中最高一级作为油液污染度等级。
4 总结与展望
通过触摸屏启动伺服电机,视负载情况调节转速旋钮,使液压油流量稳定控制在25mL/min 左右,此时可通过S50 传感器LED 界面上读出3 个通道的颗粒数,也可通过触摸屏观察实时数据。在实时数据更新界面上,可通过转换显示标准,分别通过GJB 420B、NAS 1638、ISO 4406 三种划分方法显示当前各个通道颗粒计数值以及对应的污染度等级。可以看到,触摸屏上的实时数据与LED 界面保持一致。
实践表明,提高基础检测仪表的自动化、信息化水平,可以显著提高成套装备的可靠性和可维护性等级。油液颗粒计数控制系统就是一个典型代表,通过智能化、网络化的控制技术,增强检测系统的便携性、可维护性,进一步实现成套装备系统中油液回路的实时检测和可视化显示、操作。现场运行结果表明,本系统运行稳定,不同标准下油液污染度指标检测准确,数据记录完备,完成了预期的设计目标和任务,为油液污染程度检测系统信息化和智能化提供了技术支持。
引用
[1] 王培凌,易艳彤,韩波,等.航空油液污染度检测技术研究及应用[J].科技资讯,2019,17(2):103-104.
[2] 韩瑞欣,姜泽坤,魏坤,等.基于STM32的油液颗粒污染度检测系统设计[J].首都师范大学学报(自然科学版),2018,39(6):35-40.
[3] 陈彬,韩超,刘阁,等.颗粒物对变压器油表面张力的影响研究[J].应用力学学报,2018,35(1):191-196+237.
[4] 居高峰,李钰龙,周敏,等.基于GD32的通信铁塔监测系统设计[J].软件,2021,42(6):1-5+44.
[5] 栗克国,李志飞,倪文军,等.基于GD32F103的多参数码头安全监控终端设计[J].自动化与仪表,2018,33(5):61-64+74.
[6] 王用鑫,彭华.基于GD32 F107的电镀参数智能监控系统[J].电镀与环保,2017,37(1):55-57.