Banner

智碳EMS开源能源管理系统开源教程

2026-09-14

智碳 EMS(zhitan-ems)是一套基于 Spring Boot + 若依(Ruoyi)框架开发的开源能源碳管理系统,主要面向企业、园区、工矿、公共建筑等场景,提供能耗数据采集、实时监测、碳核算、智能告警、报表分析等能力。

以下是一份完整的开源使用教程,涵盖从项目获取到部署上线的全流程:


一、项目概述

智碳 EMS 采用前后端分离架构,核心功能包括:

  • 实时监测:水、电、气、热等能耗数据实时采集与可视化
  • 能耗分析:日/月/年同比环比、尖峰平谷分析、分项能耗统计
  • 碳管理:内置国标碳排放因子,支持碳盘查、碳追踪、碳汇报
  • 智能告警:超限告警、异常波动检测、多渠道通知
  • 设备管理:设备台账、维保记录、运行状态监控
  • 报表中心:自动生成能耗报表,支持导出打印


二、技术架构

层级
技术选型
后端
Spring Boot + Ruoyi + MyBatis
前端
Vue 3 + Vite + Element Plus
关系数据库
PostgreSQL 14(兼容 MySQL)
时序数据库
InfluxDB 2.7+(可切换 TDengine)
缓存
Redis
消息通信MQTT
定时任务
Quartz
可视化ECharts


三、环境准备

部署前需准备以下环境:

  • 操作系统:Linux(推荐 Ubuntu 20.04+ 或 CentOS 7+)
  • 硬件配置:建议 4 核 16G 内存及以上,500G 以上硬盘空间
  • 软件依赖:Docker 20.10+、Docker Compose 2.0+

四、Docker 一键部署(推荐)

项目提供了完整的容器化部署方案,约 30 分钟即可完成:

步骤 1:克隆项目仓库

1.  git clone https://gitee.com/liulingling1993/zhitan-ems.git
2.  cd zhitan-ems/docker

步骤 2:配置环境变量

编辑 .env 文件,修改数据库密码、InfluxDB 配置等参数。

步骤 3:启动服务

1.  docker-compose up -d

步骤 4:初始化数据库

执行 sql/public-v3.sql 脚本初始化 PostgreSQL 数据库。

步骤 5:访问系统

打开浏览器访问 http://服务器IP,使用默认账号登录:

  • 用户名:admin
  • 密码:123456


五、分步部署(手动部署)

如果希望手动部署各组件,可按以下步骤操作:

1. 部署 PostgreSQL

1.  docker run -d \
2.    --name postgres \
3.    -p 5432:5432 \
4.    -e POSTGRES_DB=zhitan_ems \
5.    -e POSTGRES_USER=postgres \
6.    -e POSTGRES_PASSWORD=postgres \
7.    postgres:14-alpine

导入项目根目录的 SQL 脚本初始化库表。

2. 部署 Redis

1.  docker run -d --name redis -p 6379:6379 redis:6.2.21 --appendonly yes

3. 部署 InfluxDB

1.  docker run -d --name influxdb -p 8086:8086 influxdb:latest

初始化 org、bucket 并保存访问 token。

4. 启动后端 API 服务

编写 .env.file 环境配置文件,填入数据库、MQTT、时序库连接信息,然后启动镜像:

1.  docker run -d -p 8080:8080 --env-file .env.file zhitancorp/zhitan-api:latest

5. 部署前端页面

部署 Vue 前端并配置反向代理对接后端接口。


六、项目代码结构

项目采用模块化设计,核心目录如下:

1.  zhitan-ems
2.  ├── zhitan-admin        # 项目启动入口
3.  ├── zhitan-framework    # 核心框架:权限、MQTT、定时任务、时序数据封装
4.  ├── zhitan-common       # 公共工具类、常量、全局配置
5.  ├── zhitan-quartz       # 数据统计、能耗汇总定时任务模块
6.  ├── zhitan-generator    # 代码生成器,快速搭建自定义业务模块
7.  ├── zhitan-system       # 系统基础管理:用户、角色、权限、字典
8.  └── zhitan-vue          # Vue3 前端全套源码


七、设备接入

系统部署完成后,可接入现场设备:

  • Modbus 协议设备:在采集网关中配置设备 IP 地址、端口号、寄存器地址等参数,即可实现数据自动采集
  • 其他协议设备:可通过开发对应的协议插件来支持(系统支持 Modbus、DL/T645、OPC UA、MQTT 等主流协议)
  • 模拟数据:如暂无硬件设备,可使用系统提供的模拟数据功能体验各项功能
  • 另外,数据采集网关(MQTT ➡️ 时序库)为独立仓库,地址为:https://github.com/zhitan-cloud/zhitan-gateway


八、在线体验

如果暂时不想部署,可以先通过官方演示环境体验:


九、开源协议与注意事项

开源协议:AGPL + ZTPL 双协议

  • AGPL 协议适用于开源学习
  • ZTPL 协议适用于企业商用(需获取授权)

仓库范围:本开源仓库仅包含能碳平台后台管理端,数据采集程序和数据清洗服务需参考其他仓库或自行实现

官方文档:完整文档位于 Wiki 目录


十、适用人群

  • Java 后端 / 物联网开发者:学习 MQTT 设备对接、时序数据库处理、工业可视化开发
  • 弱电 / 系统集成商:基于框架快速交付工厂、园区能源管控项目
  • 企业运维 / 信息化人员:私有化部署替代高价商用系统
  • 双碳咨询从业者:依托内置碳核算模块赋能绿色工厂咨询业务


26