Skip to main content

reComputer R1000 使用 fuxa 实现 Modbus RTU/TCP

note

本文档由 AI 翻译。如您发现内容有误或有改进建议,欢迎通过页面下方的评论区,或在以下 Issue 页面中告诉我们:https://github.com/Seeed-Studio/wiki-documents/issues

简介

FUXA 是一个基于 Web 的过程可视化 (SCADA/HMI/Dashboard) 软件。通过 FUXA,您可以为您的设备创建现代化的过程可视化界面,并实时显示数据。它支持 Modbus RTU/TCP、Siemens S7 协议、OPC-UA、BACnet IP、MQTT 和其他协议。

本文主要介绍如何使用 fuxa 进行 ModbusRTU/TCP 通信。

入门

在开始此项目之前,您需要按照以下说明提前准备好硬件和软件。

硬件准备

reComputer R1000

软件准备

  • Python 3.11 可能与 fuxa 不兼容。如果您的 Python 版本是 3.11,请考虑更换为其他版本的 Python。
  • 在 W10 PC 上使用 modbusmechanic。您也可以使用其他 Modbus 测试工具。
  • 在 reComputer R1000 上使用 fuxa。您可以参考以下步骤在 reComputer R1000 上安装 fuxa:
      ## 您需要安装 Node 版本 14 || 16 || 18。
    wget https://nodejs.org/dist/v18.20.3/node-v18.20.3-linux-arm64.tar.xz
    tar -xf node-v18.20.3-linux-arm64.tar.xz
    cd node-v18.20.3-linux-arm64
    sudo cp -R * /usr/local/
    node -v
    npm -v
    ## 接下来从 npm 安装 FUXA
    sudo npm install -g --unsafe-perm @frangoteam/fuxa
    sudo fuxa
  • 关于如何使用 reComputer R1000 的 Modbus 功能,您可以参考此 wiki

硬件配置

对于 ModbusRTU,我们使用了一个 RS485 转 USB 模块,将 reComputer R1000 与 W10 PC 连接起来。

pir

对于 ModbusTCP,我们使用以太网线将 W10 PC 和 reComputer R1000 连接到交换机,以确保它们处于同一网络段。

pir

ModbusRTU 通信步骤

步骤 1:在 Win10 PC 上打开 ModbusMechanic,选择对应的串口和波特率,然后点击右上角的 Tools,选择 Start Slave Simulator,接着选择 RTU,输入 slave ID,然后可以在从机的数据字段中进行设置。我们添加了三个线圈和一个 Holding Register,以便后续从 Modbus 主机读取数据。

步骤 2:在 fuxa 中,点击右下角的 + 按钮,输入模块名称,在 Type 中选择 modbusRTU,在 Connection options 中选择 SeriaPort,然后选择需要使用的串口号并设置对应的波特率和其他参数,最后点击 OK

步骤 3:之后,我们进入 Devices settings 页面,点击左上角的 + 按钮,设置需要读取的数据字段。设置对应的参数后点击 OK,可以看到 fuxa 成功获取了 Modbus 从机数据。

ModbusTCP 通信步骤

步骤 1:在 Win10 PC 上打开 ModbusMechanic,然后点击右上角的 Tools,选择 Start Slave Simulator,接着选择 TCP,输入 slave ID,并设置从机的数据字段。我们添加了两个线圈和一个 holding register,以便后续从 Modbus 主机读取数据。

步骤 2:在 fuxa 的右下角点击 + 按钮,输入模块名称,在 Type 中选择 modbusTCP,在 Connection options 中选择 TcpPort,在 Slave IP and port 中选择从机的 IP 地址,默认端口号为 502,然后输入 Slave ID,最后点击 OK

步骤 3:之后,我们进入 Devices settings 页面,点击左上角的 + 按钮,设置需要读取的数据字段。设置对应的参数后点击 OK,可以看到 fuxa 成功获取了 Modbus 从机数据。

技术支持与产品讨论

感谢您选择我们的产品!我们致力于为您提供多种支持,以确保您使用我们的产品时体验顺畅。我们提供多个沟通渠道,以满足不同的偏好和需求。

Loading Comments...