搜尋套件、儲存庫與 APP 分類

套件詳情v0.2.0

modbus

適用於 Dart 的簡單 Modbus 客戶端程式庫。目前僅支援 TCP 連接。

AndroidiOSmacOSWindowsLinux
近 30 天下載
878
喜歡數
36
Pub 分數
140

安裝套件

flutter pub add modbus

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

一個簡單的 Dart Modbus 客戶端程式庫,可透過 TCP 與 Modbus 設備通訊。它提供直觀的 API,可用於從工業自動化系統中讀取和寫入資料,非常適合物聯網與 SCADA 應用。目前僅支援 TCP 連接,尚未有 UDP 或 RTU 的實作。此程式庫相容多個平台,包含 Android、iOS、macOS、Windows 與 Linux,讓工業控制解決方案能進行跨平台開發。

適用情境

  • 工業物聯網監控
  • SCADA系統整合
  • 工廠自動化
  • 遠端設備數據檢索
  • 即時傳感器數據採集

主要特色

  • 僅 TCP 的 Modbus 支援
  • 跨平台相容性
  • 用於讀取/寫入暫存器的簡單 API
  • 輕量且易於整合
  • 支援標準Modbus功能碼

適合對象

  • 開發工業自動化應用程式的開發者
  • 需要Modbus通訊的物聯網專案
  • 管理PLC的後端服務
  • 使用 Dart 的嵌入式系統整合工程師
  • 跨平台工業軟體

使用建議

  • 不支援RTU或UDP協議
  • 僅限基於TCP的Modbus設備
  • 需要正確的網路設定才能存取PLC
  • 未優化,不適用於高頻率輪詢
  • 依賴穩定的網路連接

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

modbus-dart

Simple Modbus client library for dart. Currently only the TCP connection is supported.

pub package

Usage

Single slave (Modbus RTU)
import 'package:modbus/modbus.dart' as modbus;


main(List<String> arguments) async {
    
  var client = modbus.createTcpClient(
    '10.170.1.20',
    port: 1001,
    mode: modbus.ModbusMode.rtu,
  );
    
  try {
    await client.connect();
    
    var slaveIdResponse = await client.reportSlaveId();
    
    print("Slave ID: " + slaveIdResponse);
  } finally {
    client.close();
  }
}
Multi slaves with one connection (Modbus RTU)
import 'package:modbus/modbus.dart' as modbus;


main(List<String> arguments) async {
    
  var client = modbus.createTcpClient(
    '10.170.1.20',
    port: 1001,
    mode: modbus.ModbusMode.rtu,
  );
    
  try {
    await client.connect();
    
    client.setUnitId(100);
    var slaveIdResponse = await client.reportSlaveId();
    
    print("Slave ID: " + slaveIdResponse);

    client.setUnitId(150);
    var slaveIdResponse = await client.reportSlaveId();

    print("Slave ID: " + slaveIdResponse);
  } finally {
    client.close();
  }
}

Limitations

SerialConnector is not implemented yet.

所屬分類

依賴

依賴清單 1 項

原始碼儲存庫

使用此套件的專案

暫無相關資料。