IEC104点表配置与数据点解析实战

📚 共计 30 章节
01
IEC104协议概述
协议起源、应用场景、OSI七层模型与IEC104的映射关系。
协议基础OSI
02
点表概念与结构
什么是点表、点表的组成要素(站址、点号、类型)、点表在SCADA系统中的作用。
点表SCADA
03
数据类型详解
遥测(YC)、遥信(YX)、遥控(YK)、遥调(YT)的定义与区别。
YC/YXYK/YT
04
信息体地址编码规则
信息体地址的组成、站内点号与信息体地址的换算关系。
地址编码换算
05
ASDU结构解析
ASDU的组成(类型标识、可变结构限定词、传送原因、公共地址、信息体)。
ASDU报文结构
06
类型标识(TI)详解
常用TI码(如M_ME_NA_1、M_SP_NA_1、C_SC_NA_1)的含义与用途。
TI类型标识
07
传送原因(COT)详解
周期上送、突发上送、总召唤、激活确认等常见传送原因。
COT传送原因
08
公共地址与站址配置
公共地址的作用、站址在点表中的映射关系。
公共地址站址
09
点表配置文件格式
CSV格式点表、XML格式点表、JSON格式点表的优缺点。
CSVXMLJSON
10
CSV点表解析实战
使用Python读取CSV点表,提取遥测、遥信点信息。
PythonCSV
11
XML点表解析实战
使用Python的ElementTree库解析XML格式点表。
ElementTreeXML
12
JSON点表解析实战
使用Python的json库解析JSON格式点表。
json库JSON
13
点表校验与去重
检查点号重复、地址越界、类型不匹配等常见问题。
校验去重
14
实时数据接收流程
TCP连接建立、启动帧(STARTDT)激活、总召唤流程。
TCPSTARTDT
15
遥测数据解析
浮点型遥测(M_ME_TF_1)的字节序、缩放因子解析。
遥测浮点型
16
遥信数据解析
单点遥信(M_SP_NA_1)与双点遥信(M_DP_NA_1)的解析。
遥信单点/双点
17
遥控命令下发
选择(SELECT)与执行(EXECUTE)流程、C_SC_NA_1报文构造。
遥控选择/执行
18
遥调命令下发
设定值下发(C_SE_NA_1)的报文构造与解析。
遥调设定值
19
总召唤与分组召唤
总召唤(C_IC_NA_1)流程、分组召唤的应用场景。
总召唤分组召唤
20
时钟同步
时钟同步命令(C_CS_NA_1)的报文格式与实现。
时钟同步C_CS_NA_1
21
链路状态管理
测试帧(TESTFR)、停止帧(STOPDT)的作用与处理。
TESTFRSTOPDT
22
异常处理与重连机制
超时重传、链路断开重连、报文序号不连续处理。
异常重连
23
点表与数据库映射
将解析后的点数据写入MySQL/PostgreSQL数据库。
数据库MySQL
24
点表可视化配置工具
基于PyQt5的点表配置界面设计思路。
PyQt5可视化
25
性能优化
批量解析、内存池管理、异步IO在高并发场景下的应用。
性能异步IO
26
多站址管理
一个前置机对接多个子站的点表配置与管理策略。
多站址前置机
27
协议扩展与私有点
自定义信息体地址、私有类型标识的处理方法。
扩展私有
28
日志与调试
使用Python logging模块记录报文交互日志,辅助排查问题。
logging调试
29
测试工具开发
基于Python的IEC104模拟器(模拟主站/子站)开发要点。
模拟器主站/子站
30
项目实战
从零搭建一个IEC104数据采集系统,包含点表配置、数据解析、存储展示。
实战全流程