当前位置: 首页 > news >正文

IEC104 工具和代码库

1. IEC104协议概述
电力系统IEC104规约是国家电网公司制定的调度接入网络通信规约,目前在电力系统中应用广泛。
IEC104 一般用于调度主站与变电站之间或者不同系统之间的网络数据通信。

通过将电力行业常用的IEC101、103、104等协议转换为ModbusTCP和MQTT协议,
将采集的数据同时上传到本地监控系统和云平台,实现本地和云端同时对新能源发电站的远程监控和控制

104规约测试软件主要是链接底层的设備,电闸之类的底层设备信号被接入继电保护装置,
然后装置转换成信号,显示在继电保护装置中,并通过104规约测试软件传输到后台,
把底层装置的数据读到软件里面,软件可以读取报文并且解析出来,而且还能通过软件去对底层装置进行遥控。
有专业做网管设备的机构和设备
https://blog.csdn.net/qq_42911733/article/details/128005773
https://blog.csdn.net/wtbl007/article/details/129246491
2. 关于源码 
iec-60870-5-101-104源码工程需要自己编译
下载路径
https://libiec61850.com/iec-60870-5-101-104-test-client/ 
有一些客户端和服务端的example可以使用

编译过程:需要下载cmake https://cmake.org/download/
启动cmke-gui编译源码 生成可运行的客户端和服务端exe

cmake编译  
源代码路径 E:/lib60870-2.3.2/lib60870-C
生成路径 E:/lib60870-2.3.2/lib60870-C/build_vc  //新建build_vc路径,用于生成件

在build_vc目录下找到example中的各个exe 需要把生成的动态链接库 dll拷贝到exe同目录下,例如
E:\lib60870-2.3.2\lib60870-C\build_vc\src\Debug lib60870.dll 拷贝到需要运行的exe目录下,
E:\lib60870-2.3.2\lib60870-C\build_vc\examples\cs104_client\Debug  就可运行simple_client.exe成功

3. 想要快速了解协议内容和测试方法
https://blog.csdn.net/wgd0707/article/details/122344581
https://blog.csdn.net/geshemaster/article/details/119132250

4.找到一套客服端和服务端可运行的exe用来分析协议和通信过程
https://www.zhanghuanglong.com/dl/detail/cetcht8888/1017451 IEC60870-5-104客户端 可运行
https://download.csdn.net/download/dujie1219/13778149  S104TEST和M104TEST 客户端和服务端可配合运行

5. 启动源码生成的exe和测试工具S104TEST和M104TEST配合, IEC60870-5-104客户端仿真软件的解析报文功能还挺好用的
即可看到IEC104connect过程,
过程中也可用cmd  netstat -an | findstr xxxport 查看端口状态  可以看到端口变化过程
C:\Users\xxx>netstat -an | findstr 2404
C:\Users\xxx>netstat -an | findstr 2404
C:\Users\xxxx>netstat -an | findstr 2404
  TCP    0.0.0.0:2404           0.0.0.0:0              LISTENING

C:\Users\Nova006514>netstat -an | findstr 2404
  TCP    0.0.0.0:2404           0.0.0.0:0              LISTENING
  TCP    127.0.0.1:2404         127.0.0.1:51651        ESTABLISHED
  TCP    127.0.0.1:51651        127.0.0.1:2404         ESTABLISHED
  
6. 具体过程报文分析
https://blog.csdn.net/weixin_44623055/article/details/124386518
https://blog.csdn.net/nsx_truth/article/details/131492211
https://blog.csdn.net/lin819747263/article/details/112602951
7.1 第一步:首次握手(U帧)
发送―>激活传输启动 :
接收―>确认激活传输启动:
第二步:总召唤,召唤YC,YX(可变长I帧)初始化后定时发送总召唤
发送―>总召唤 :
接收―>S帧:


7. 其他  lib61850
结合这两个博客  在本地运行了IEC104通信的客户端和服务端源码
https://pyfree.blog.csdn.net/article/details/130910242
https://blog.csdn.net/vipdafei/article/details/129129778 

相关文章:

  • 【使用教程】在Ubuntu下PMM60系列一体化伺服电机通过PDO跑循环同步位置模式详解
  • Android 12.0 内置MTK平台音乐播放器
  • pytorch搭建squeezenet网络的整套工程(升级版)
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • STM32_project:led_beep
  • RFID智慧物流设计解决方案
  • 剖析WPF模板机制的内部实现
  • 深度学习(生成式模型)——Classifier Guidance Diffusion
  • 说话人识别声纹识别CAM++,ECAPA-TDNN等算法
  • 月销破30万辆后,比亚迪整了波大的
  • 【Windows】Windows系统常用命令大全
  • 快速实现一个企业级域名 SSL 证书有效期监控巡检系统
  • STM32-EXTI中断
  • 社区街道治安智慧监管方案,AI算法赋能城市基层精细化治理
  • 2011年09月06日 Go生态洞察:Go语言的反射法则
  • [PHP内核探索]PHP中的哈希表
  • Android Studio:GIT提交项目到远程仓库
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • js对象的深浅拷贝
  • python 装饰器(一)
  • Python学习之路16-使用API
  • spring boot 整合mybatis 无法输出sql的问题
  • Vue2 SSR 的优化之旅
  • 爱情 北京女病人
  • 分布式任务队列Celery
  • 精益 React 学习指南 (Lean React)- 1.5 React 与 DOM
  • 如何学习JavaEE,项目又该如何做?
  • 使用API自动生成工具优化前端工作流
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 小李飞刀:SQL题目刷起来!
  • 如何正确理解,内页权重高于首页?
  • 数据可视化之下发图实践
  • 选择阿里云数据库HBase版十大理由
  • #pragma multi_compile #pragma shader_feature
  • #pragma 指令
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (六)激光线扫描-三维重建
  • (图)IntelliTrace Tools 跟踪云端程序
  • (转)jQuery 基础
  • (转)重识new
  • ***利用Ms05002溢出找“肉鸡
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .Net IE10 _doPostBack 未定义
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • .Net8 Blazor 尝鲜
  • .net连接oracle数据库
  • .NET值类型变量“活”在哪?
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题