ホームページ >バックエンド開発 >PHPチュートリアル >PHPプログラミングガイド:Modbus TCP通信の実装方法をマスターする

PHPプログラミングガイド:Modbus TCP通信の実装方法をマスターする

WBOY
WBOYオリジナル
2023-07-17 13:09:211861ブラウズ

PHP プログラミングガイド: Modbus TCP 通信の実装方法をマスターする

Modbus TCP は、産業用オートメーション制御システムのデバイス間の通信を実装するために使用される、一般的に使用される産業用通信プロトコルです。 PHP プログラミングで Modbus TCP 通信を実装する方法は、産業オートメーション システムの開発に大きな利便性をもたらします。この記事では、PHP プログラミング言語を使用して Modbus TCP 通信を実装する方法を紹介し、対応するコード例を添付します。

  1. Modbus ライブラリのインストール
    まず、PHP に Modbus ライブラリをインストールする必要があります。次の手順でインストールできます。

ステップ 1: libmodbus ライブラリをダウンロードする
https://libmodbus.org/ Web サイトから libmodbus ライブラリの最新バージョンをダウンロードして解凍します。ローカルディレクトリにコピーします。

ステップ 2: libmodbus ライブラリをインストールする
コマンド ラインを使用して解凍されたディレクトリに入り、次のコマンドを実行して libmodbus ライブラリをインストールします:

$ ./configure
$ make
$ sudo make install

ステップ 3: PHP 拡張機能をインストールする
https://pecl.php.net/ Web サイトで php_modbus 拡張機能の最新バージョンをダウンロードし、次の場所に解凍します。ローカルディレクトリ。

ターミナルを使用して解凍されたディレクトリに入り、次のコマンドを実行して php_modbus 拡張機能をインストールします:

$ phpize
$ ./configure
$ make
$ sudo make install

  1. Modbus サーバーに接続
    PHP コードでは、次のコードを使用して Modbus サーバーに接続できます:
<?php
    $ip = "192.168.1.1"; // Modbus服务器IP地址
    $port = 502; // Modbus端口,默认为502

    // 创建Modbus TCP连接
    $connection = modbus_new_tcp($ip, $port);

    if(!$connection) {
        die("无法连接到Modbus服务器");
    }

    // 连接成功后,可以进行通信操作

    // 关闭Modbus连接
    modbus_close($connection);
?>
  1. レジスタ データの読み取り
    次のコードを使用して、Modbus サーバーのレジスタ データを読み取ることができます:
<?php
    // 读取第一个寄存器的值
    $address = 0; // 寄存器地址
    $quantity = 1; // 读取的寄存器数量

    // 读取寄存器数据
    $data = modbus_read_registers($connection, $address, $quantity);

    // 打印读取的数据
    print_r($data);
?>
  1. レジスタ データの書き込み
    次のコードを使用して、レジスタ データを Modbus サーバーに書き込むことができます。 Modbus サーバー:
<?php
    // 写入第一个寄存器的值为100
    $address = 0; // 寄存器地址
    $value = 100; // 写入的值

    // 写入寄存器数据
    $result = modbus_write_register($connection, $address, $value);

    if($result === FALSE) {
        echo "写入寄存器失败";
    } else {
        echo "写入寄存器成功";
    }
?>
  1. 例外処理
    Modbus 通信では、接続障害、読み取り/書き込み障害などの異常な状況が発生する場合があります。例外処理には次のコードを使用できます。
<?php
    // 创建Modbus TCP连接
    $connection = modbus_new_tcp($ip, $port);

    if(!$connection) {
        die("无法连接到Modbus服务器");
    }

    // 异常处理
    $exception = modbus_errno();
    if($exception) {
        die("Modbus操作异常:".modbus_strerror($exception));
    }

    // 连接成功后,可以进行通信操作

    // 关闭Modbus连接
    modbus_close($connection);
?>

上記の手順とコード例を通じて、PHP プログラミング言語を使用して Modbus TCP 通信を実装する方法を習得できます。この記事が産業オートメーション制御システムの開発に役立つことを願っています。

以上がPHPプログラミングガイド:Modbus TCP通信の実装方法をマスターするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。