.Net 开发工控系统
================================
开发工具/架构/资源
================================
开发工具: 选用 VS 2022 社区版 Preview , 虽是Preview版本, 质量很高
.Net 6 还是 .Net Framework 的选择: 现阶段使用 .net 6 开发 winform应用还不成熟, ObjectListView 和 Krypton 的 .net core 版都会报错, 实现了相对简单的GUI应用没问题, 复杂GUI 还是使用 .net Framework 为好.
ORM 框架: 使用 Dapper 开发越来越顺手了
xwiki 系统内含很多 16*16 的位图, 非常适合做button的图标.
================================
Modbus 模拟器软件
================================
Modbus server 也就是说slave站点, 可以使用 modbus slave 软件, modbus 客户端也就是master, 可以使用 modbus poll 软件, 这两个软件都有 30 天的试用期, 用于开发已经足够.
Modbus仿真器 Modbus Poll 和Modbus Slave详细图文教程 https://zhuanlan.zhihu.com/p/275954797
Modbus 仿真测试工具 Mod_Rssim 详细图文教程 https://zhuanlan.zhihu.com/p/273440297
Modbus仿真软件 https://www.cnblogs.com/The-explosion/p/13298338.html
================================
PLC 的 modbus 地址映射
================================
寄存器PLC地址与寄存器modbus协议地址
https://blog.csdn.net/qq_43747700/article/details/87818977
modbus协议手册_20种PLC元件编号和Modbus编号地址对应表
https://blog.csdn.net/weixin_39743511/article/details/111708297
PLC地址和协议地址: https://www.cnblogs.com/endv/p/8650524.html
各类地址含义:
寄存器(或线圈)PLC 地址, 是指寄存器在PLC控制器中的地址, 为5位数地址, 比如 40001 或 30002 等.
modbus 协议地址, 通常是一个很小的地址码, 用于modbus 协议通讯寻址, modbus 通讯协议通过slave Id 和 modbus 功能码和协议通讯地址共同确定一个唯一的寄存器地址.
modbus 长地址, 为六位数地址, 第一码表示的是modbus功能码, 代码中一般不用这个地址, 在PLC产品说明书中有时使用这个地址.
各类地址转换公式为:
4区 modbus 协议地址= 寄存器PLC 地址 - 40001
4区 modbus 长地址= modbus 协议地址 + 400000
其他 0/1/3区公式和上面类似.
.Net core 组件 NModbus 使用的是 modbus 协议地址.
================================
参考项目
================================
核心类库: https://gitee.com/zhaopeiym/IoTClient
实现参考: https://gitee.com/zhaopeiym/IoTClient.Examples