
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Python Modbus SIM是一个轻量级的Modbus协议模拟器,基于Python语言开发,旨在为Modbus主站应用的开发、测试和调试提供模拟环境。该镜像可模拟Modbus从站设备,支持Modbus TCP和RTU两种通信模式,允许用户自定义寄存器配置和数据模拟规则,帮助开发者在无真实硬件的情况下验证主站通信逻辑。
bash# Modbus TCP模式示例 docker run -d \ --name modbus-sim-tcp \ -p 502:502 \ -e MODBUS_PROTOCOL=TCP \ -e MODBUS_SLAVE_ID=1 \ -e TCP_PORT=502 \ docker.xuanyuan.run/python-modbus-sim:latest # Modbus RTU模式示例(需挂载串口设备) docker run -d \ --name modbus-sim-rtu \ --device=/dev/ttyUSB0:/dev/ttyUSB0 \ -e MODBUS_PROTOCOL=RTU \ -e MODBUS_SLAVE_ID=1 \ -e RTU_PORT=/dev/ttyUSB0 \ -e RTU_BAUDRATE=9600 \ -e RTU_PARITY=N \ -e RTU_STOPBITS=1 \ docker.xuanyuan.run/python-modbus-sim:latest
| 环境变量名 | 说明 | 可选值 | 默认值 |
|---|---|---|---|
| MODBUS_PROTOCOL | 通信协议类型 | TCP, RTU | TCP |
| MODBUS_SLAVE_ID | 从站地址 | 1-247 | 1 |
| TCP_PORT | TCP模式监听端口 | 1-65535 | 502 |
| RTU_PORT | RTU模式串口设备路径 | 如/dev/ttyUSB0 | /dev/ttyUSB0 |
| RTU_BAUDRATE | RTU模式波特率 | 9600, ***, 38400等 | 9600 |
| RTU_PARITY | RTU模式校验位 | N(无), O(奇), E(偶) | N |
| RTU_STOPBITS | RTU模式停止位 | 1, 2 | 1 |
| LOG_LEVEL | 日志级别 | DEBUG, INFO, WARNING, ERROR | INFO |
| DATA_UPDATE_INTERVAL | 寄存器数据更新间隔(秒) | >0 | 10 |
通过挂载配置文件自定义寄存器初始值和数据规则,配置文件为JSON格式,示例如下:
json{ "coils": { "0": {"value": true, "mode": "fixed"}, // 线圈0,固定值true "1-5": {"value": false, "mode": "random"}, // 线圈1-5,随机值 "6": {"value": 0, "mode": "toggle", "interval": 2} // 线圈6,每2秒翻转一次 }, "discrete_inputs": { "0-3": {"value": true, "mode": "fixed"} // 离散输入0-3,固定值true }, "holding_registers": { "0": {"value": 1234, "mode": "fixed"}, // 保持寄存器0,固定值1234 "1": {"value": 0, "mode": "increment", "step": 1, "max": 100}, // 从0开始递增,步长1,最大值100 "2-5": {"value": 0, "mode": "random", "min": 0, "max": 65535} // 保持寄存器2-5,0-65535随机值 }, "input_registers": { "0": {"value": 5678, "mode": "fixed"}, // 输入寄存器0,固定值5678 "1": {"value": 200, "mode": "decrement", "step": 5, "min": 0} // 从200开始递减,步长5,最小值0 } }
挂载配置文件启动容器:
bashdocker run -d \ --name modbus-sim-custom \ -p 502:502 \ -e MODBUS_PROTOCOL=TCP \ -v /host/path/to/config.json:/app/config.json \ docker.xuanyuan.run/python-modbus-sim:latest
配置文件中mode字段支持以下数据生成模式:
fixed:固定值,保持value字段设定值random:随机值,需配合min/max(数值类型)或无参数(布尔类型)increment:递增模式,需配合step(步长)和max(最大值,到达后重置)decrement:递减模式,需配合step(步长)和min(最小值,到达后重置)toggle:翻转模式(仅布尔类型),按interval间隔切换true/falsebash# 实时查看日志 docker logs -f modbus-sim-tcp # 查看历史日志 docker logs modbus-sim-tcp
TCP_PORT环境变量修改--device参数正确挂载您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务