Modbus从站调试 & 风电对接实战
📚 共计 30 章节
01
Modbus协议概述
协议起源、RTU与ASCII模式区别、TCP/IP协议栈、物理层接口(RS232/RS485)
基础
物理层
02
从站设备地址与功能码
地址范围(1-247)、常用功能码(01/02/03/04/05/06/15/16)、异常响应码
地址
功能码
03
数据模型与寄存器映射
线圈(Coil)、离散输入、保持寄存器、输入寄存器
数据模型
映射
04
报文结构详解
RTU帧格式(地址+功能码+数据+CRC)、ASCII帧格式、TCP报文(MBAP头)
报文
帧格式
05
CRC校验原理与计算
CRC-16算法原理、查表法实现、在线计算工具验证
校验
CRC
06
串口通信参数配置
波特率(9600/19200/38400)、数据位(8)、停止位(1/2)、校验位
串口
配置
07
从站开发环境搭建
Python环境、pymodbus库安装、虚拟串口(VSPD)、调试助手
环境
pymodbus
08
pymodbus从站基础框架
异步服务器启动、自定义数据块、请求处理回调函数
框架
异步
09
线圈读写实现
读线圈(FC01)、写单个线圈(FC05)、写多个线圈(FC15)、状态保持
线圈
读写
10
离散输入实现
只读属性、模拟传感器状态、定时刷新机制
离散输入
只读
11
保持寄存器读写
读保持寄存器(FC03)、写单个(FC06)、写多个(FC16)
保持寄存器
FC03
12
输入寄存器实现
只读寄存器、模拟模拟量采集(温度/压力/转速)
输入寄存器
模拟量
13
异常处理机制
非法功能码(01)、非法数据地址(02)、非法数据值(03)、从站设备忙(06)
异常
错误码
14
多从站地址映射
地址重叠检测、地址范围校验、动态地址分配
地址映射
重叠
15
数据持久化存储
JSON配置文件读写、寄存器值掉电保存、启动时加载
持久化
JSON
16
日志与调试输出
logging模块配置、报文级日志、错误追踪
日志
调试
17
Modbus TCP从站实现
TCP服务器绑定端口(502)、多客户端管理、TCP与RTU差异
TCP
502
18
Modbus RTU从站实现
串口打开与关闭、波特率自适应、超时处理
RTU
串口
19
从站性能优化
响应时间测量、批量读写优化、缓存机制
性能
优化
20
风电设备通信协议对接
IEC 61400-25标准简介、Modbus映射到风电信息模型
风电
IEC
21
风机主控系统通信
变桨系统(FC03读取角度)、偏航系统(FC05控制启停)、发电机转速(FC04)
主控
变桨
22
风速仪与风向标数据采集
风速(保持寄存器)、风向(输入寄存器)、数据滤波算法
风速
滤波
23
电网参数监测
电压(FC03)、电流(FC03)、功率因数、频率
电网
监测
24
故障报警与状态字
状态字位定义、故障码映射、报警优先级
报警
状态字
25
SCADA系统对接
数据上报周期、心跳机制、断线重连
SCADA
心跳
26
从站安全防护
白名单IP过滤、功能码限制、写入保护开关
安全
白名单
27
现场调试工具使用
ModScan、Modbus Poll、串口监视器(Serial Monitor)
工具
调试
28
常见故障排查
通信超时、CRC错误、地址冲突、电平不匹配
故障
排查
29
从站固件升级方案
OTA升级流程、固件校验、回滚机制
固件
OTA
30
综合实战:风电Modbus从站模拟器
搭建完整风电Modbus从站模拟器,对接真实PLC/SCADA系统
实战
模拟器