Heim > Artikel > Backend-Entwicklung > PHP und Modbus TCP: So stellen Sie eine stabile Kommunikationsverbindung her
PHP und Modbus TCP: So stellen Sie eine stabile Kommunikationsverbindung her
Zusammenfassung:
Modbus TCP ist ein häufig verwendetes Kommunikationsprotokoll für die Kommunikation zwischen Geräten im Bereich der industriellen Automatisierung. In diesem Artikel wird erläutert, wie Sie mit der Programmiersprache PHP eine stabile Kommunikationsverbindung mit Modbus TCP-Geräten herstellen, und es werden einige Codebeispiele bereitgestellt.
Einführung:
Im Bereich der industriellen Automatisierung ist die Kommunikation zwischen Geräten sehr wichtig. Modbus TCP ist ein häufig verwendetes Kommunikationsprotokoll, das den Datenaustausch in Echtzeit zwischen dem Master-Server und Slave-Geräten ermöglicht. PHP ist eine leistungsstarke Programmiersprache, die mit Modbus TCP-Geräten kommunizieren kann, um Daten zu lesen und zu schreiben.
In diesem Artikel wird mithilfe der Programmiersprache PHP demonstriert, wie eine Kommunikationsverbindung mit einem Modbus TCP-Gerät hergestellt wird, und einige einfache Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Technologie besser zu verstehen und anzuwenden.
Schritt 1: PHP-Modbus-Bibliothek installieren
Bevor wir beginnen, müssen wir eine PHP-Modbus-Bibliothek für die Kommunikation mit Modbus-TCP-Geräten installieren. Die Bibliothek kann durch Ausführen des folgenden Befehls installiert werden:
composer require phpmodbus/phpmodbus
Schritt 2: Modbus TCP-Verbindung herstellen
Zuerst müssen wir die Modbus-Bibliothek in den PHP-Code importieren und dann den folgenden Code verwenden, um die Verbindung zum Modbus TCP-Gerät herzustellen :
<?php require_once('vendor/autoload.php'); use PhpmodbusPhpmodbus; $ip = '192.168.1.1'; // Modbus TCP设备的IP地址 $port = 502; // Modbus TCP设备的端口号 $modbus = new Phpmodbus(); $modbus->connect($ip, $port); ?>
Im obigen Code stellen wir eine Verbindung mit dem Modbus TCP-Gerät her, indem wir ein Phpmodbus-Objekt erstellen. Als Parameter müssen wir die IP-Adresse und die Portnummer des Modbus TCP-Geräts angeben.
Schritt 3: Lesen Sie den Wert des Modbus-Registers
Sobald die Verbindung mit dem Modbus-TCP-Gerät hergestellt ist, können wir den folgenden Code verwenden, um den Wert des Modbus-Registers zu lesen:
<?php $response = $modbus->readMultipleRegisters(0, 10, 3); if (!$response) { echo "读取Modbus寄存器失败!"; exit; } $values = PhpmodbusUtilsModbus::parseMultipleRegisters($response); print_r($values); ?>
Im obigen Code verwenden wir readMultipleRegisters()-Methode Um die Werte von 10 Registern beginnend bei 0 zu lesen, ist der Datentyp dieser Register 3 (16-Bit-Ganzzahl ohne Vorzeichen). Die Leseergebnisse werden in der Variablen $response gespeichert und zum Parsen der Daten muss die Methode parseMultipleRegisters() verwendet werden.
Schritt 4: Schreiben Sie den Wert des Modbus-Registers
Zusätzlich zum Lesen des Werts des Modbus-Registers können wir auch den folgenden Code verwenden, um den Wert des Modbus-Registers zu schreiben:
<?php $data = array(1, 2, 3, 4, 5); // 需要写入的值 $response = $modbus->writeMultipleRegisters(0, $data); if (!$response) { echo "写入Modbus寄存器失败!"; exit; } echo "Modbus寄存器写入成功!"; ?>
Im obigen Code verwenden wir writeMultipleRegisters() Methode zum Schreiben der Werte im $data-Array in Register beginnend bei 0. Wenn der Schreibvorgang erfolgreich ist, wird „Modbus-Register schreiben erfolgreich!“ ausgegeben.
Fazit:
Durch die Verwendung der Programmiersprache PHP und der Modbus-Bibliothek können wir problemlos eine Kommunikationsverbindung mit dem Modbus TCP-Gerät herstellen und Datenlese- und -schreibvorgänge implementieren. Dieser Artikel enthält einige einfache Codebeispiele, die den Lesern helfen sollen, diese Technologien besser zu verstehen und anzuwenden. Ich hoffe, dass dieser Artikel den Lesern bei ihrer Arbeit zur Gerätekommunikation im Bereich der industriellen Automatisierung hilfreich sein kann.
Das obige ist der detaillierte Inhalt vonPHP und Modbus TCP: So stellen Sie eine stabile Kommunikationsverbindung her. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!