PHP を介して Modbus TCP リモート アクセスを実装する方法
Modbus は、産業オートメーションの分野でコントローラーとデバイスの間でデータを交換するために使用される通信プロトコルです。 Modbus TCP は、イーサネット上の TCP/IP 通信に基づく Modbus プロトコルです。 PHP言語を使用すると、Modbus TCPへのリモートアクセスを簡単に実装できます。この記事では、PHP を介して Modbus TCP リモート アクセスを実装する方法とサンプル コードを紹介します。
ステップ 1: PHP Modbus ライブラリをインストールする
まず、PHP 環境に PHP Modbus ライブラリをインストールする必要があります。 Composer を通じてインストールできます。ターミナルを開いてプロジェクト ディレクトリに切り替え、次のコマンドを実行します:
composer require php-modbus/php-modbus
ステップ 2: Modbus TCP を作成するconnection
In PHP コードでは、PHP Modbus ライブラリを使用して Modbus TCP デバイスとの接続を確立できます。以下はサンプル コードです:
<?php require 'vendor/autoload.php'; use PhpModbusPhpModbus; $ip = '192.168.0.10'; // Modbus TCP设备的IP地址 $port = 502; // Modbus TCP设备的端口号 $phpModbus = new PhpModbus(); $phpModbus->connectTCP($ip, $port); // 连接成功后,可以进行数据的读写操作 // 关闭连接 $phpModbus->disconnect(); ?>
ステップ 3: Modbus レジスタ データを読み取る
Modbus TCP 接続を確立した後、PHP Modbus ライブラリを使用して Modbus デバイス上のレジスタ データを読み取ることができます。以下はサンプル コードです:
<?php // 建立Modbus TCP连接,参考步骤2 $startAddress = 0; // 起始寄存器地址 $quantity = 10; // 读取寄存器的数量 // 读取指定数量的寄存器数据 $readData = $phpModbus->readMultipleRegisters(0, $startAddress, $quantity); // 打印读取到的寄存器数据 print_r($readData); ?>
ステップ 4: Modbus レジスタ データを書き込む
レジスタ データを読み取るだけでなく、PHP Modbus ライブラリを使用して Modbus デバイスにレジスタ データを書き込むこともできます。以下はサンプルコードです:
<?php // 建立Modbus TCP连接,参考步骤2 $registerAddress = 0; // 写入寄存器的地址 $data = [100, 200, 300]; // 需要写入的数据 // 写入寄存器数据 $phpModbus->writeMultipleRegisters(0, $registerAddress, $data); ?>
要約すると、PHP Modbus ライブラリを使用することで、Modbus TCP へのリモート アクセスを簡単に実現できます。接続が確立された後は、レジスタ データの読み取りおよび書き込みによって Modbus デバイスとのデータ対話を実行できます。この記事が、PHP プロジェクトで Modbus TCP リモート アクセスを正常に実装するのに役立つことを願っています。
以上がPHP を介して Modbus TCP リモート アクセスを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。