阅读量:0
PHP Modbus可以通过使用Modbus TCP或Modbus RTU通信协议来实现数据的读取操作。以下是一个简单的示例代码,用于从Modbus设备中读取数据:
// Modbus TCP连接信息 $host = '192.168.1.100'; // Modbus设备IP地址 $port = 502; // Modbus设备端口号 // 创建Modbus TCP连接 $connection = new ModbusMaster($host, 'TCP', $port); // 读取保持寄存器中的数据 $slaveId = 1; // 设备的Slave ID $startAddress = 0; // 起始地址 $quantity = 10; // 读取数据的数量 try { $data = $connection->readMultipleRegisters($slaveId, $startAddress, $quantity); // 处理读取的数据 for ($i = 0; $i < $quantity; $i++) { echo "Register " . ($startAddress + $i) . ": " . $data[$i] . "\n"; } } catch (Exception $e) { echo "Error: " . $e->getMessage(); }
在上面的示例中,首先创建了一个Modbus TCP连接,然后使用readMultipleRegisters
方法从Modbus设备的保持寄存器中读取数据。最后,对读取的数据进行处理并输出。
需要注意的是,要使用PHP Modbus库进行Modbus通信,需要先安装PHP Modbus库,并根据具体情况修改连接信息和读取操作的参数。