Modbus TCP FieldKit 适用于 iPhone 和 iPad

适用于 iPhone 和 iPad 的 Modbus TCP 客户端、服务器和模拟器

在 Wi-Fi 中找到设备,读取它的线圈和寄存器,绘制实时数值曲线,每次写入在离开手机之前都要经过你的确认。RS-485 设备可通过 Wi-Fi 或 Ethernet 转换器,以 RTU over TCP 方式使用。

在 App Store 下载
扫码,在 iPhone 上打开

US$5.99 一次性购买 无订阅 无需账号 需要 iOS 18 或更高版本

FieldKit 客户端界面已连接 Modbus TCP 设备,显示三个保持寄存器的值
TX00 01 00 00 00 06 01 03 00 00 00 03
RX00 01 00 00 00 09 01 03 06 00 64 00 FA 04 00
=保持寄存器 0 到 2:100, 250, 1024

一次购买

US$5.99 一次付清。无订阅,无应用内购买,无需账号。

写入等你确认

FC 05、06、15 和 16 会停在一张确认表上,表中列出目标和每个值。由你确认,否则不会发出任何内容。

扫描只读不写

查找设备和扫描 Unit ID 一次只发送一个 FC 03 读取请求,不写入任何内容。

寄存器表留在你手里

配置文件、日志和扫描结果会一直保存在设备上,直到你导出。哪些数据可能离开设备。

线路上的数据

一次读取背后的字节

这是你从地址 0 读取三个保持寄存器时,FieldKit 发出的请求。如果设备的响应不对劲,就从这个帧开始排查。

00 01 事务 ID
00 00 协议 ID
00 06 长度
01 Unit ID
03 功能码
00 00 地址
00 03 数量
MBAP 报文头 PDU

解码你自己的帧 逐字节讲解这个帧

工作流程

从未知设备到实时数值

只要有 Wi-Fi 网络就可以开始。应用带你从查找设备一直走到绘制寄存器曲线。

查找设备
功能

应用里有什么

FieldKit 一次购买,以下功能全部包含。

Modbus TCP 客户端

支持功能码 01、02、03、04、05、06、15 和 16,可按连接设置超时和重试次数,错误信息会指出原因。

RTU over TCP

通过透传型 Wi-Fi 或 Ethernet 转换器连接 RS-485 设备。如果读取超时,应用会提议换用另一种帧格式再读取一次。

查找设备

在你自己的 Wi-Fi 子网中扫描最多八个端口。结果会显示哪些设备给出了 Modbus 应答,哪些返回了异常,以及哪些开放端口没有 Modbus 应答。

扫描 Unit ID

可尝试 1 到 10 以及 0 和 255,也可以扫描 1 到 247 的全部编号。完整扫描约需 75 秒。每个单元只读取一个寄存器,不写入任何内容。

实时监控与曲线

最多 16 个数据块,间隔 1 到 60 秒。曲线可查看 5 分钟、15 分钟或 1 小时的范围,轮询失败会在曲线上显示为断点。

CSV 导出

列为 timestamp、block、address、raw、value、unit 和 status,UTF-8 编码,时间为 UTC。文件只会通过共享菜单离开应用。

设备配置文件

保存端点和寄存器定义,包括数值格式、字节序和字序、缩放系数和单位。默认导出会去掉主机、标签和值。

请求日志

可按客户端、服务器或合并条目筛选,并导出已脱敏的 JSON,用于发给同事或附在支持工单里。其中不含原始帧和寄存器值。

安全写入

写入可能让真实的机器动起来,所以应用会让你先看清楚

Modbus 没有撤销。FieldKit 把读取和写入分开,并在你和每次写入之间加了一道确认。

  • 确认表会显示主机、端口、Unit ID、帧格式、功能码、地址、数量和每个值,线圈显示为 ON 或 OFF。
  • 如果在准备写入之后重新连接或更改目标,应用会取消该次写入。
  • 点按取消不会发送任何内容。写入正在发送时再次点按确认写入,同样不会再发送任何内容。
  • 写入的字节有可能已经发出之后,应用不会重试该次写入。
  • 实时监控和两种扫描都只读,不能写入。

设备的安全仍由你负责。请先在模拟器或非生产环境的寄存器表上试写。

进一步了解客户端

写入离开手机之前,你要检查的那张确认表。
服务器与模拟器

口袋里的 Modbus TCP 设备

启动服务器,把你的 SCADA、HMI 或客户端代码指向 iPhone 的地址,对着一份由你掌控的寄存器表进行测试。

  • 在屏幕上编辑线圈和保持寄存器。离散输入和输入寄存器对客户端保持只读。
  • 客户端写入的值大约每秒两次同步到寄存器表中,并且在停止后再启动时仍然保留。
  • 计数器显示活动客户端、连接数、请求数、响应数、异常数和字节数。
  • 服务器在应用打开期间运行,默认端口为 1502。iOS 上不承诺后台运行和端口 502。

进一步了解服务器

FieldKit 服务器界面在端口 1502 上运行,显示计数器和端点信息
RTU over TCP

通过转换器连接 RS-485 设备

iPhone 没有 RS-485 接口,但 Wi-Fi 或 Ethernet 上的透传转换器可以胜任。选择 RTU over TCP 后,应用会把带 CRC 的 RTU 帧发送到转换器的 TCP 端口。

  • 波特率、校验位和停止位在转换器中设置,必须与设备一致。
  • 适用于透传型 Wi-Fi 或 Ethernet 转 RS-485 转换器,例如 Elfin EW11、USR 或 Waveshare 的型号。
  • 如果转换器作为 Modbus TCP 网关工作,请改选 Modbus TCP。
  • RS-485 总线上只保留一个主站。第二个主站可能导致应用接受别人的数值。

Modbus TCP 还是 RTU over TCP:如何判断

应用能识别透传转换器,并提示切换帧格式。
协议覆盖范围

支持什么,不支持什么

购买前请先看这份清单,它能告诉你 FieldKit 是否适合你的工作。

代码功能单次请求上限
01Read Coils2000 位
02Read Discrete Inputs2000 位
03Read Holding Registers125 个寄存器
04Read Input Registers125 个寄存器
05Write Single Coil1 个线圈
06Write Single Register1 个寄存器
15Write Multiple Coils1968 个线圈
16Write Multiple Registers123 个寄存器

不支持

  • 通过 RS-485、USB、串口或蓝牙直接使用 Modbus RTU。请使用转换器。
  • Modbus ASCII、Solarman V5 和厂商私有扩展。
  • 服务器模式下的 RTU over TCP。服务器只支持 Modbus TCP。
  • 在后台运行服务器或监控。
  • 在你自己的 IPv4 Wi-Fi 子网之外查找设备,或通过 mDNS 查找。
  • 云同步和用户账号。
  • Mac 和 Android。应用运行在 iOS 18 或更高版本的 iPhone 和 iPad 上。
界面

应用运行时的样子

来自 App Store 页面的真实截图,使用的是演示地址。

客户端: 连接、读取已保存的寄存器并查看数值。
客户端. 连接、读取已保存的寄存器并查看数值。
曲线: 5 分钟、15 分钟或 1 小时内的数值变化。断点表示轮询失败。
曲线. 5 分钟、15 分钟或 1 小时内的数值变化。断点表示轮询失败。
RTU over TCP: 应用能识别透传转换器,并提示切换帧格式。
RTU over TCP. 应用能识别透传转换器,并提示切换帧格式。
查找设备: 谁给出了应答、在哪个端口、使用哪种帧格式。
查找设备. 谁给出了应答、在哪个端口、使用哪种帧格式。
写入确认: 写入离开手机之前,你要检查的那张确认表。
写入确认. 写入离开手机之前,你要检查的那张确认表。
服务器: 前台运行的模拟器,带计数器和可编辑的寄存器表。
服务器. 前台运行的模拟器,带计数器和可编辑的寄存器表。
日志: 客户端和服务器的历史记录,支持筛选和脱敏导出。
日志. 客户端和服务器的历史记录,支持筛选和脱敏导出。
配置文件: 已保存的设备及其寄存器定义。
配置文件. 已保存的设备及其寄存器定义。
价格

一个价格,全部功能

你只需向 Apple 付款一次。App Store 会显示你所在国家或地区的价格。

没有免费版或试用版。退款申请由 Apple 处理,请前往 reportaproblem.apple.com。

US$5.99 一次性购买

  • 包含本页列出的全部功能
  • 无订阅,无应用内购买
  • 无需创建账号
  • 通过 App Store 更新
问题

购买之前

它适用于哪些设备?

网络中使用标准 Modbus TCP 的设备:PLC、电能表、HMI、网关、逆变器,以及 ESP32 或 Raspberry Pi 项目。RS-485 设备可通过透传型 Wi-Fi 或 Ethernet 转换器使用。

不支持 Solarman V5 等厂商私有扩展,即使它使用端口 8899 也一样。

支持 Modbus RTU 吗?

支持 RTU over TCP:应用把带 CRC 的 RTU 帧发送到转换器的 TCP 端口。不支持直接连接 RS-485、USB、串口或蓝牙,也不支持 Modbus ASCII。

我不知道 IP 地址或 Unit ID,它能找到吗?

查找设备会检查你的 Wi-Fi 子网(最大到 /24)中你所选的端口。扫描 Unit ID 会在已知的主机和端口上尝试各个单元编号。两者都只发送 FC 03 读取请求。

我的设备手册写的是 40001,该填什么?

把地址表示法切换为 PLC 4xxxx,然后输入 40001。应用发送的协议地址是 0。同一设置里还有 0-based 和 1-based。Modbus 寻址是怎么回事。

扫描或监控会改动我的设备吗?

不会。查找设备、扫描 Unit ID 和实时监控只发送读功能码。写入要经过准备写入和确认写入,没有其他途径会发送写入。

服务器能在后台运行吗?

不能。请按“服务器只在应用打开并显示在屏幕上时运行”来规划。默认端口是 1502,iOS 上不保证能使用端口 502,所以请让你的客户端连接 1502。

没有 PLC 也能测试吗?

可以。在第二台 iPhone 或 iPad 上运行 FieldKit 服务器,或在笔记本电脑上启动 Python 模拟器。不用 PLC 测试 Modbus TCP 的三种方法。

需要联网吗?

Modbus 工作只需要本地网络,首次连接时 iOS 会请求本地网络权限。崩溃报告和使用统计的开关处于打开状态时,应用会通过互联网发送它们;你选择发送的反馈也会用到互联网。

哪些数据会离开我的 iPhone?

崩溃报告发送到 Sentry,匿名使用统计发送到我们自己的 Aptabase 服务器。这两个开关默认打开,你可以在设置中分别关闭。两者都不包含主机、IP 地址、配置文件名称、寄存器值或原始帧。阅读隐私政策。

能在 Mac 或 Android 上运行吗?

目前不能。FieldKit 运行在 iOS 18 或更高版本的 iPhone 和 iPad 上。

应用有哪些界面语言?

应用界面支持以下语言:英语、德语、巴西葡萄牙语、俄语、日语、韩语、简体中文和繁体中文。

把 Modbus TCP 装进你的 iPhone

找到设备,读取寄存器,确认写入。US$5.99 一次付清,无需账号。

US$5.99 一次性购买 无订阅 无需账号 需要 iOS 18 或更高版本