Žiadny popis

wzl 3798a9b595 中广核104日志修改 4 mesiacov pred
src 3798a9b595 中广核104日志修改 4 mesiacov pred
.gitignore 02bd9fa0b0 修改104秒级数据到内存版本 8 mesiacov pred
README.MD 3798a9b595 中广核104日志修改 4 mesiacov pred
iec104_zf_1.sys 3798a9b595 中广核104日志修改 4 mesiacov pred
pom.xml a51e61b497 添加中广核104数据获取 7 mesiacov pred

README.MD

能源在线数据服务系统 - 项目说明书

1. 项目概述

本系统是一个基于Java Spring Boot框架开发的能源数据采集与处理服务,主要实现IEC 104规约通信协议的数据接收、处理与存储功能。系统采用定时任务机制进行数据采集与文件存储,适用于能源监控领域的实时数据处理场景。

2. 技术架构

2.1 技术栈

  • 开发语言:Java 8
  • 构建工具:Maven
  • 核心框架:Spring Boot
  • 通信协议:IEC 104
  • 调度机制:Spring Scheduled
  • 数据存储:文件系统(CSV格式)

2.2 项目结构

src/main/java/com/energy/online/data/
├── OnlineDataMain.java       // 应用程序入口
├── common/                   // 公共数据存储
├── config/                   // 配置类
├── crontab/                  // 定时任务
├── dto/                      // 数据传输对象
├── handle/                   // 协议数据处理
└── utils/                    // 工具类

3. 核心功能模块

3.1 主程序入口

作为系统入口点,负责:

  • 初始化Spring Boot应用
  • 创建IEC 104主站连接
  • 启动时执行设备连接
  • 发送总召唤命令获取数据

关键代码片段:

@PostConstruct
public void init() {
    Line line = baseConfig.getLine();
    runDeviceConnection(line);
}

private void runDeviceConnection(Line line) {
    try {
        master = new Iec104MasterBuilder(line.getIp(), line.getPort());
        master.createByUnBlock();
        // ... 发送总召唤命令 ...
    } catch (Exception e) {
        e.printStackTrace();
    }
}

3.2 配置管理

负责系统配置:

  • 加载IEC 104协议配置参数
  • 创建线程池用于异步任务处理
  • 提供配置属性绑定

3.3 定时任务模块

提供多种定时任务:

  • 数据采集(配置在${my.scheduled.cron})
  • 每2分钟发送总召唤命令
  • 每10分钟将数据保存为CSV文件
  • 每2分钟打印数据量日志

4. 配置说明

系统配置通过以下方式实现:

  1. 创建src/main/resources/application.properties文件
  2. 配置IEC 104协议参数: ```properties

    IEC 104协议配置

    iec104.line.ip=目标IP地址 iec104.line.port=端口号 iec104.line.coa=公共地址 iec104.saveDir=数据保存目录

定时任务配置

my.scheduled.cron=0/1 * * * * *


## 5. 部署与运行
### 5.1 环境要求
- JDK 8
- Maven 3.6+

### 5.2 构建步骤
```bash
# 编译打包
mvn clean package

# 运行应用
java -jar target/energy-online-data-service.jar

6. 数据流程

  1. 系统启动后通过建立IEC 104连接
  2. 通过定时任务发送总召唤命令请求数据
  3. 处理接收到的数据
  4. 数据临时存储在
  5. 定期将数据写入CSV文件

7. 注意事项

  • 确保目标设备的IP、端口和公共地址配置正确
  • 数据保存目录需要有写入权限
  • 根据实际需求调整定时任务的执行频率
  • 系统依赖IEC 104协议库,请确保相关依赖包正确引入