更新记录

1.0.0(2026-08-11)

  • 首个市场正式版:Android / iOS / 鸿蒙 TCP;FC01~06、FC15、FC16
  • 寄存器数值辅助(i16 / u32BE / float32BE)与 init.defaultByteOrderregistersToU32 / registersToFloat32(可选 LE)
  • 支持 App-vue / App-nvue、uni-app x App(Android/iOS);微信小程序本期不支持

平台兼容性

uni-app(4.11)

Vue2 Vue3 Vue3插件版本 Chrome Safari app-vue app-vue插件版本 app-nvue app-nvue插件版本 Android Android插件版本 iOS iOS插件版本 鸿蒙 鸿蒙插件版本
× 1.0.0 × × 1.0.0 1.0.0 5.0 1.0.0 12 1.0.0 12 1.0.0
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × - × ×

uni-app x(4.11)

Chrome Safari Android Android插件版本 iOS iOS插件版本 鸿蒙 微信小程序
× × 5.0 1.0.0 12 1.0.0 × ×

breao-modbustcp 使用说明

当前版本:1.0.0

简介

轻量 Modbus TCP 客户端 UTS 插件,面向 uni-app Vue3。

  • Android / iOS / 鸿蒙:TCP 长连接;功能码 FC01~FC06、FC15、FC16
  • 微信小程序:因无原始 TCP,本期不支持
  • 另提供寄存器数值辅助纯函数(i16 / u32BE / float32BE)

环境要求

  • HBuilderX 4.11+ / uni-app Vue3(亦可用于 uni-app x App-Android / App-iOS)
  • Android 5.0+、iOS 12.0+、鸿蒙 API 12+
  • 局域网或可达的 Modbus TCP 从站/网关(默认端口 502)

引入

import {
  init,
  connect,
  readHoldingRegisters,
  writeMultipleRegisters,
  registersToFloat32BE,
  disconnect,
  destroy,
} from '@/uni_modules/breao-modbustcp'

示例组件:uni_modules/breao-modbustcp/components/modbus-tcp-demo/modbus-tcp-demo.vue

基本流程

  1. init → 2. connect → 3. 读/写 → 4. disconnect / destroy

API 一览

方法 功能码 说明
init / connect / disconnect / destroy / getConnectionState 生命周期
readCoils 01 bits
readDiscreteInputs 02 bits
readHoldingRegisters 03 registers
readInputRegisters 04 registers
writeSingleCoil 05
writeSingleRegister 06
writeMultipleCoils 15 values: boolean[],1~1968
writeMultipleRegisters 16 values: number[],1~123,每项 0~65535

地址默认 0-basedinit.addressBase: 1 时按 1-based 换算。

数值辅助(纯函数,无需连接)

函数 说明
registerToI16 / i16ToRegister 有符号 16 位
registersToU32BE / u32BEToRegisters 两寄存器大端无符号 32 位
registersToFloat32BE / float32BEToRegisters 两寄存器大端 IEEE754 float32
registersToU32 / u32ToRegisters 同上,可选 byteOrderBE/LE,LE 为寄存器字序交换)
registersToFloat32 / float32ToRegisters 同上,可选 byteOrder
init.defaultByteOrder 默认 BE;影响上述通用辅助的默认字序,不改变原始 registers 回传

权限

  • Android:android.permission.INTERNETandroid.permission.ACCESS_NETWORK_STATE
  • iOS:NSLocalNetworkUsageDescription
  • 鸿蒙:ohos.permission.INTERNET

可配置项(默认值)

默认 说明
port 502 Modbus TCP 端口;init 时配置
unitId 1 单元标识;读写可单次覆盖
timeout 3000 读写超时(毫秒);可读写下覆盖
addressBase 0 0=协议地址即传入值;1=传入值减 1 后下发
autoReconnect false 断线后是否自动重连
reconnectInterval 3000 自动重连间隔(毫秒);仅 autoReconnect 为 true 时生效
defaultByteOrder BE 仅影响数值辅助默认字序;读写结果仍为原始 u16
connect.timeout 10000 connect 建连超时(毫秒)

错误码

错误码以 905 开头(未连接、参数非法、连接失败、超时、从站异常、事务号不匹配、协议错误、平台不支持等)。

平台注意

UTS API,可用于 uni-app / uni-app x(App)及 App-nvue。uni-app x 下鸿蒙官方暂不支持 UTS 插件,鸿蒙请用 uni-app。真机调试请打自定义基座。iOS 需允许本地网络访问。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

Android: android.permission.INTERNET、android.permission.ACCESS_NETWORK_STATE。 iOS: NSLocalNetworkUsageDescription。 鸿蒙: ohos.permission.INTERNET。 用途:Modbus TCP 连接与读写。

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

不采集、不上传任何数据;Modbus 报文仅在本机与用户配置的从站/网关之间传输

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。