数字化冲压车间数据采集系统使用说明

系统概述

本数据采集系统是数字化冲压车间中央控制室驾驶舱的核心组件,负责从车间内各类设备实时采集数据,包括传感器数据和数控设备数据。系统通过多种通信协议实现数据采集,并将数据存储到数据库中,为后续的数据分析和可视化提供支持。

支持的数据源

系统支持以下数据采集来源:

  1. 传感器数据采集

    • 振动传感器 (x, y, z三轴加速度)
    • 温度传感器
    • 力传感器
    • 位置传感器
  2. OPC UA协议数据采集

    • 连接数控设备的OPC UA服务器
    • 采集CNC设备的实时工作参数
    • 支持数据变化订阅
  3. MQTT协议数据传输

    • 用于传感器数据的无线传输
    • 支持按主题分类接收数据

数据采集配置

数据采集的基础配置位于app/config/settings.py文件中,您可以根据实际环境修改以下配置:

传感器配置

SENSORS = {
    'vibration': {
        'sampling_rate': 100,  # Hz
        'channels': ['x', 'y', 'z'],
        'range': (-100, 100),  # m/s²
        'devices': ['press_01', 'press_02', 'press_03', 'press_04']
    },
    'temperature': {
        'sampling_rate': 1,  # Hz
        'range': (0, 150),  # °C
        'devices': ['mold_01', 'mold_02', 'mold_03', 'tool_01', 'tool_02']
    },
    # 其他传感器配置...
}

OPC UA配置

OPC_SERVER = {
    'url': os.getenv('OPC_SERVER_URL', 'opc.tcp://localhost:4840/'),
    'namespace': os.getenv('OPC_NAMESPACE', 'http://press.shop/'),
    'username': os.getenv('OPC_USERNAME', ''),
    'password': os.getenv('OPC_PASSWORD', ''),
}

MQTT配置

MQTT = {
    'broker': os.getenv('MQTT_BROKER', 'localhost'),
    'port': int(os.getenv('MQTT_PORT', 1883)),
    'username': os.getenv('MQTT_USERNAME', ''),
    'password': os.getenv('MQTT_PASSWORD', ''),
    'client_id': os.getenv('MQTT_CLIENT_ID', 'press_shop_client'),
    'topics': {
        'vibration': 'sensors/vibration/#',
        'temperature': 'sensors/temperature/#',
        # 其他主题...
    }
}

启动数据采集

方法一:通过应用程序启动

系统启动后会自动初始化数据采集模块。您只需要执行以下命令启动应用程序:

python app/main.py

方法二:通过API控制

系统提供了REST API用于控制数据采集的启动和停止:

  1. 启动数据采集

    POST http://localhost:5000/api/data-collection/start
    
  2. 停止数据采集

    POST http://localhost:5000/api/data-collection/stop
    

数据存储

采集的数据会被存储到两个数据库中:

  1. MySQL数据库:存储结构化数据,包括传感器记录和设备状态

    • 表结构:sensor_datadevice_status
    • 主要用于查询历史记录和统计分析
  2. InfluxDB时序数据库:存储时间序列数据

    • 支持高效的时间范围查询
    • 适合存储大量传感器数据
    • 支持数据聚合和降采样

数据采集状态监控

系统提供了多种方式监控数据采集状态:

  1. 控制台日志:系统运行时会在控制台输出详细日志
  2. 健康检查API:通过 GET /api/health 接口检查系统状态
  3. Web界面:在驾驶舱Web界面中查看数据采集状态

故障排除

如果遇到数据采集问题,请按以下步骤排查:

  1. 检查网络连接

    • 确保能够访问OPC UA服务器
    • 确保MQTT代理服务器正常运行
  2. 检查数据库连接

    • 验证MySQL和InfluxDB服务是否正常运行
    • 检查数据库连接配置是否正确
  3. 检查日志输出

    • 查看控制台输出的错误信息
    • 分析日志中的异常堆栈信息
  4. 重启服务

    • 先停止数据采集 (/api/data-collection/stop)
    • 等待几秒钟后重新启动 (/api/data-collection/start)

高级配置

数据采集间隔调整

修改 app/config/settings.py 中的 DATA_COLLECTION_INTERVAL 参数可调整数据采集频率:

# 数据采集间隔 (秒)
DATA_COLLECTION_INTERVAL = 1.0  # 可根据需要调整

报警阈值设置

您可以根据实际生产需求调整传感器报警阈值:

ALARM_THRESHOLDS = {
    'temperature': {
        'warning': 70,  # °C
        'critical': 90,  # °C
    },
    'vibration': {
        'warning': 50,  # m/s²
        'critical': 80,  # m/s²
    },
    # 其他传感器阈值...
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值