欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。
前言
根据变配电室的运行状态评估报告,自动识别故障风险,对可能发生的故障进行预警,并给出相应的建议和措施。数据存储和处理系统将监测设备采集到的数据存储在数据库中,并进行数据处理和分析,生成变配电室的运行状态评估报告。
本文的重点是对变配电室运行状态评估与预警系统系统展开了详细的描述,其中包含了其目前的发展状况和所涉及到的发展背景。接着,本文还讨论了该系统的设计目的,还讨论了系统的需求,并提出了整体的设计方案。对于该系统的设计和实现,也都进行了较为详细的讨论,并在此基础上,对变配电室运行状态评估与预警系统系统展开了一些具体的测试。
通过搭建基于JAVA,前端Vue框架和后端Springboot框架的系统,支持数据采集,远程监控,账号管理等功能,实现核心运行状态评估和预警的核心功能。
一、项目介绍
近年来,随着我国工业化、城镇化步伐的不断加快,城市配电网络取得令人瞩目的发展成果。变配电室是供配电系统的核心,在供配电系统中占有特殊的重要地位[1]。作为各类工厂和民用建筑电能供应的中心,变电室担负着从电力系统受电,经过变压,然后配电的任务。目前,我国变配电室常采用无人管理的室内站设计方案,长期以来变配电室运维工作一直是城市配电系统的薄弱环节之一。在城市电网中,变配电室数量多,部署分散,管理复杂,通常由工作人员去配电室现场逐个巡视,运维工作量大、效率低、实时性差,致使城市变配电室运检工作面临巨大压力。变配电室电气设备运行状态和环境信息缺乏必要的监测评估预警手段,如有一日遭遇突发情况,将危及电气设备安全稳定运行,易造成设备损坏和电力供应中断[2]。目前,部分变配电室仍采用手工记录数据的巡检方式,数据统计和录人费时费力,易出现疏漏等严重影响运检质量的情况,随着城市配电网络规模的不断扩大以及供电质量和服务可靠性要求的提高。城市配网运维工作量日益增大,电力设备安全运行面临严峻挑战。变配电室运行评估与预警系统采用先进的物联网、在线监测等技术对变配电室环境进行远程集中监控,运行状态进行评估,不但将运维人员从繁重的工作中解放出来,而且大大提升了运维效率[3]。
二、开发环境
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————
三、功能介绍
根据现实需要,此系统我们设计出一下功能,主要有以下功能模板。
检测员功能:首页、个人中心、远程监控管理、设备信息管理、监控数据管理、评估信息管理、预警追踪管理。
管理员功能:首页、个人中心、检测员管理、远程监控管理、设备信息管理、监控数据管理、评估信息管理、预警追踪管理。。
。
在系统的功能设计方面,变配电室运行状态评估与预警系统的设计目标是便于配电室管理,因此抽取了满足管理员、检测员基本业务需求的基本用例,如图3-1、3-2所示。
图3-1 管理员用例图
图3-2 检测员用例图
本系统设计时,确定详细功能,这些功能主要通过需求阶段的调研分析得来的,具体功能模块如下图,如图4-1所示。
图4-1 系统结构图
数据库表的设计
部分数据库展示
(1)表1:远程监控
(2)表5:设备信息
)
四、核心代码
部分代码:
package com.example.controller;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {
@Resource
private CaiwuService caiwuService;
@PostMapping
public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
caiwuService.add(caiwu);
return Result.success(caiwu);
}
@PostMapping("/deleteList")
public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
caiwuService.deleteList(caiwu.getList());
return Result.success();
}
@DeleteMapping("/{id}")
public Result delete(@PathVariable Long id) {
caiwuService.delete(id);
return Result.success();
}
@PutMapping
public Result update(@RequestBody CaiwuVo caiwu) {
caiwuService.update(caiwu);
return Result.success();
}
@GetMapping("/{id}")
public Result<Caiwu> detail(@PathVariable Integer id) {
Caiwu caiwu = caiwuService.findById(id);
return Result.success(caiwu);
}
@GetMapping
public Result<List<Caiwu>> all() {
return Result.success(caiwuService.list());
}
@PostMapping("/page")
public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
return Result.success(caiwuService.findPage(caiwuVo));
}
@PostMapping("/login")
public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
throw new CustomException(ResultCode.PARAM_LOST_ERROR);
}
Caiwu login = caiwuService.login(caiwu);
// if(!login.getStatus()){
// return Result.error("1001","状态限制,无法登录系统");
// }
if(login != null) {
HashMap hashMap = new HashMap();
hashMap.put("user", login);
Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
String token = JwtUtil.creatToken(map);
hashMap.put("token", token);
return Result.success(hashMap);
}else {
return Result.error();
}
}
@PutMapping("/updatePassword")
public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
Caiwu caiwu = caiwuService.findById(info.getId());
String oldPassword = SecureUtil.md5(info.getMima());
if (!oldPassword.equals(caiwu.getMima())) {
return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
}
info.setMima(SecureUtil.md5(info.getNewPassword()));
Caiwu caiwu1 = new Caiwu();
BeanUtils.copyProperties(info, caiwu1);
caiwuService.update(caiwu1);
return Result.success();
}
}
五、效果图
六、文章目录
目 录
1 概述 3
1.1课题背景及意义 3
1.2 国内外研究现状 3
1.3本论文的结构安排 4
2 系统开发环境 6
2.1 Java介绍 6
2.2 B/S模式 6
2.3 MySQL数据库 7
2.4 SpringBoot框架 7
2.5 Vue开发技术 7
3 系统分析 8
3.1 概述 8
3.2 功能需求 8
3.3 非功能性需求 10
3.4 系统特色 11
3.5 可行性研究 11
3.5.1财务可行性 11
3.5.2技术可行性 12
3.5.3运行可行性 12
3.6系统总体设计 12
3.6.1系统设计结构 12
3.6.2系统架构设计 12
4 系统设计 13
4.1 系统设计主要功能 13
4.1.1体系结构 13
4.1.2 系统功能结构设计 13
4.2 数据库设计 14
4.2.1 数据库设计概述 14
4.2.2 数据库表的设计 15
5 系统界面实现 20
5.1 登录 20
5.2 管理员功能模块 20
5.2.1管理员界面 20
5.2.6系统管理 23
6 系统测试 24
6.1 测试定义 24
6.2 测试目的 24
6.3测试方案 25
6.4系统分析 25
7 总结 26
参考文献 27
致谢 29