开源库与工具对比
本地克隆见:
../开源项目/
许可证以各仓库文件为准
1. 总览
| 项目 | 语言 | 角色 | 适合 | 本地目录 |
|---|---|---|---|---|
| libmodbus | C | Client/Server,RTU/TCP | 嵌入式 Linux、高性能、ROS 底层 | libmodbus/ |
| pymodbus | Python | Client/Server,功能全 | 脚本联调、仿真从站、测试 | pymodbus/ |
| FreeMODBUS | C | 嵌入式 Slave 为主 | MCU 从站固件 | FreeMODBUS/(若克隆成功) |
| go-modbus | Go | Client 等 | Go 服务 | go-modbus/ |
| modbus_hardware_interface | C++ | ros2_control 插件 | 机器人硬件接口 | modbus_hardware_interface/ |
| ros2_modbus | C++ | ROS 2 节点 | 快速 TCP 桥接 | ros2_modbus/ |
| modbus_rtu (openvmp) | C++ | ROS 2 RTU | 串行总线暴露给 ROS | modbus_rtu/ |
官方/文档:
2. libmodbus 要点
modbus_new_rtu/modbus_new_tcpmodbus_read_registers、modbus_write_registers等- 上下文
modbus_t抽象后端 - LGPL 许可(以仓库为准)——链入闭源需注意义务
3. pymodbus 要点
- 同步/异步 API
- 可轻松起 Simulator(从站) 做 CI
- 适合先验证点表,再落到 C++/libmodbus
4. 选型建议
| 需求 | 建议 |
|---|---|
| 两天内读通仪表 | pymodbus + 点表 |
| 产品化 Linux 主站 | libmodbus |
| MCU 做从站 | FreeMODBUS / 厂商 HAL 移植 |
| 进 ros2_control | modbus_hardware_interface |
| 只要 Topic 桥 TCP | ros2_modbus |
| 产线 RS-485 多从站 | openvmp modbus_rtu 或自写轮询器 |
正在加载留言…