基于物联网的工业数据采集器设计*
2023-12-09魏建升成明明张蓓王一石
魏建升,成明明,张蓓,王一石
(1.兰州工业学院,甘肃 兰州 730050;2.兰州环科泰电子科技有限公司,甘肃 兰州 730030;3.甘肃农业大学,甘肃 兰州 730070)
工业数据采集器是一种基于物联网技术的设备,它可以通过传感器采集工业现场的温度、湿度、压力、振动等参数,以及生产设备的运行状态、维护保养记录等信息数据[1-2],并将其传输至云端进行存储和管理。同时,它还可以对历史数据进行分析,了解生产过程的趋势和规律,为生产决策提供参考。物联网技术的发展,为工业数据采集和处理提供了新的思路和手段[3-4]。因此,设计一种基于物联网技术的工业数据采集器,对于工业生产的智能化和信息化具有重要的意义。本文旨在设计一种基于物联网的工业数据采集器,并进行实验测试,以验证其性能和实用性。
1 工业数据采集器基本原理及系统架构
前端工业数据采集器的基本原理是通过传感器采集各种参数,将数据转换成数字信号后存储在内存中,并通过通信接口将数据传输到数据中心或控制中心。其系统架构图如图1所示。
图1 系统架构
其中,传感器是工业数据采集器的核心部件,它能够将温度、压力、流量、振动等各种参数转换成电信号,然后通过放大电路、滤波电路等进行处理,最终输出标准化的数字信号[5-6],通过控制模块对采集到的数据进行存储和管理。
2 工业数据采集器的设计方案
工业数据采集器的总体设计方案如图2所示。硬件系统主要由模拟信号处理电路、数字信号处理电路、单片机最小系统电路、存储电路、485通信电路、网络和上位机通信电路以及电源电路组成。硬件系统分为两部分:信号采集底板系统和核心板系统,在供电方面,采用两组电路分开供电。信号采集过程:传感器的数据通过相应的信号处理电路再通过底板和核心板连接端口到达单片机中,单片机获取到数据后进行本地存储或者通过网络通信远程传输到服务器并存储。上位机通过USB线连接到信号采集底板,实现和单片机的通信,完成采集方式的配置。
图2 硬件系统总体设计
3 工业数据采集器的硬件设计
3.1 单片机最小系统电路
单片机最小系统是单片机正常工作的核心电路,是单片机正常工作的基本条件。最小系统由主控芯片STM32F103RCT6和一些外围电路组成[7],主要包括:晶振电路、复位电路、RTC供电电路、模拟器件供电电路、烧写和调试电路。
3.2 网络通信电路
网络通信是单片机将数据采集到内部存储器后,如果配置的是远程存储方式。那么此时会将数据通过本电路配合软件实现数据的远程传输,实现本地到远程服务器端的数据存储。网络通信电路使用基于BC20的物联网解决方案,实现远程服务器的连接和通信。BC20是基于移动网络实现的,需要SIM卡的支持,可以使系统应对复杂的环境,可部署在具有移动网络覆盖的任何区域。
3.3 USB转串口电路
USB转串口电路用于上位机和下位机进行通信,由于通信双方采用串口进行通信,但是如今的上位机一般没有串口。而是使用USB接口,因此需要将USB电平转换为串口电平(TTL电平),芯片CH340G即可实现USB转串口,之后才可以进行正常通信[8]。
3.4 数据存储电路
数据存储电路是当单片机将数据采集完成后,进行本地数据存储。本设计采用SD卡实现数据本地存储,使用SPI总线将其和单片机连接,实现数据通信。
3.5 电流信号采集电路
电流采集电路是将0-20mA的电流信号进行前期处理。处理完成送给单片机ADC电压采集端口。工作过程:电路中首先将端子流入的电流信号进行变换,通过R22电阻将0-20mA电流信号转换为0-3v的电压信号。之后使用LM358芯片实现电压跟随,起到信号隔离、降低信号输出阻抗作用,然后送入单片机模拟量采集端口进行采集。TV3、TV4瞬态二极管用于抑制浪涌电压,使其不高于3.3V,单片机的模拟量输入电压范围是0-3.3V,可起到保护单片机的作用。C10、C11、C13、C21、C23用于滤除信号噪声和电源噪声,让信号更加稳定。
3.6 电压信号采集电路
电压信号采集电路是将传感器输入的0-10V电压信号进行前期处理。通过该电路将输入的0-10v电压转换为满足单片机要求的0-3.3V电压。之后再交给单片机ADC进行电压采集。TV1、TV2用于抑制浪涌电压,实现两路电压信号幅度的限制,防止输入电压超过10V时导致损坏单片机。C20、C22、C9、C14用于滤除噪声干扰。
3.7 485通信电路
485通信电路主要实现基于Modbus-RTU协议传感器的数据通信。电路中核心芯片MAX485用于将TTL电平转换为485电平。由于485通信总线采用半双工通讯方式,因此需要进行数据收发控制,一般有两种控制收发的方法:一是单片机内部进行软件控制,二是通过硬件实现自动控制,本设计使用硬件实现自动控制,目的即是适当地减轻软件设计的负担,其中Q1及其周围元器件协调完成了数据自动收发功能。其次通过芯片ADUM1201ARZ将信号进行了隔离,进一步保证了核心元件的安全,增强了系统的抗干扰及其稳定性。
4 工业数据采集器的配置软件设计
对于软件系统设计部分,主要使用FreeRTOS实时操作为核心,所需要实现的功能使用FreeRTOS创建任务,将每一个功能分开处理。软件开发原则上采用模块化设计并进行分层处理,使得软件逻辑与层析清晰,实现较为容易。本设计将软件部分大致分为三层:硬件层、数据获取层、数据处理层。硬件层主要实现单片机硬件的初始化,如ADC、串口、RT等硬件的初始化会给上层提供获取数据接口。数据获取层使用硬件层提供的接口来获取数据,将数据首先保存到单片机内存中。数据处理层也称核心层,主要完成数据的本地保存和服务器保存,如:将每一次采集的数据上追加时间信息,之后通过存储处理程序将数据进行保存[9-13]。
底层驱动程序方面,采集器支持多种传感器的驱动程序,可以实现对各种传感器的数据采集和处理。
数据采集程序方面,采集器采用多线程设计,同时对多个传感器进行数据采集,并对采集到的数据进行预处理和筛选,确保数据的准确性和完整性。
数据处理程序方面,采集器支持多种数据处理算法,如滤波、归一化、数据压缩等,实现对采集到的数据进行处理和优化,提高数据的可用性和价值。
通信程序方面,采集器采用Socket编程,实现数据的实时传输和远程控制,支持TCP/IP、HTTP等多种通信协议,具有通信速度快、传输稳定等特点。
5 实验与测试
本文设计的工业数据采集器在实验室环境下进行测试。图3是系统按照默认1S采样周期进行采样,将数据记录在SD卡中。文件名为当天日期,扩展名:.csv,这种文件格式可以直接被PC端的Excel软件识别,将数据按照表格形式展现出来,因此可将SD卡插入PC机进行查看采集到的数据。在测试过程中,工业数据采集器可以正常采集并传输各种数据,实现实时监控和数据处理,同时,也可以对历史数据进行分析和处理,为生产决策提供参考。
图3 SD卡文件内容
6 结论
本文设计了一种基于物联网的工业数据采集器,并进行了实验测试,验证了其性能和可靠性。通过测试结果,本文设计的工业数据采集器具有采集精度高、实时性强、支持多种传感器、通信速度快、传输稳定等优点。
在今后的研究中,可以进一步优化工业数据采集器的硬件设计,提高其稳定性和耐用性,同时,加强采集器的安全性能,加密数据传输,保护数据安全。此外,还可以开发更多的数据处理算法,进一步提高数据的可用性和价值,为工业生产提供更为精确的数据支持。