Modbus TCP and UDP library for PHP., originally from code.google.com/p/phpmodbus
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ondřej Hruška dd5a892fb6 Cleaned up the code, fixed broken phpdoc tags, formatting 8 years ago
examples added a namespace 8 years ago
src Cleaned up the code, fixed broken phpdoc tags, formatting 8 years ago
tests added a namespace 8 years ago
.gitignore Cleaned up the code, fixed broken phpdoc tags, formatting 8 years ago
LICENSE added a namespace 8 years ago
README.md foo 8 years ago
composer.json changed name for packagist because it doesnt like uppercase 8 years ago

README.md

phpmodbus

Implementation of the basic functionality of the Modbus TCP and UDP based protocol using PHP.

This is a fork of the original project at https://code.google.com/p/phpmodbus/

What's new

This fork adds a namespace and fixes issues encountered when porting to PHP 7

WARNING: Everything except the actual code in this repo may be broken and outdated.

Implemented features:

  • Modbus master
  • FC1 - Read coils
  • FC2 - Read input discretes
  • FC3 - Read holding registers
  • FC4 - Read holding input registers
  • FC5 - Write single coil
  • FC6 - Write single register
  • FC15 - Write multiple coils
  • FC16 - Write multiple registers
  • FC23 - Read/Write multiple registers

Example:

require_once dirname(__FILE__) . '/Phpmodbus/ModbusMaster.php'; 

// Modbus master UDP
$modbus = new ModbusMaster("192.168.1.1", "UDP"); 
// Read multiple registers
try {
    $recData = $modbus->readMultipleRegisters(0, 12288, 5); 
}
catch (Exception $e) {
    // Print error information if any
    echo $modbus;
    echo $e;
    exit;
}
// Print data in string format
echo PhpType::bytes2string($recData); 

For more see [http://code.google.com/p/phpmodbus/downloads/list documentation] or [http://code.google.com/p/phpmodbus/wiki/FAQ FAQ].

Note:

  • The PHP extension php_sockets.dll should be enabled (server php.ini file)