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.
		
		
		
		
		
			
		
			
				
					
					
						
							30 lines
						
					
					
						
							783 B
						
					
					
				
			
		
		
	
	
							30 lines
						
					
					
						
							783 B
						
					
					
				| <?php
 | |
| use PHPModbus\ModbusMasterUdp;
 | |
| 
 | |
| $ip = filter_var($_GET['ip'], FILTER_VALIDATE_IP) ? $_GET['ip'] : '192.192.15.51';
 | |
| $unitId = ((int)$_GET['unitid']) ?: 0;
 | |
| $reference = ((int)$_GET['reference']) ?: 12288;
 | |
| $quantity = ((int)$_GET['quantity']) ?: 6;
 | |
| 
 | |
| $modbus = new ModbusMasterUdp($ip);
 | |
| 
 | |
| // Data to be writen
 | |
| $data = array(10, -1000, 2000, 3.0);
 | |
| $dataTypes = array("WORD", "INT", "DINT", "REAL");
 | |
| 
 | |
| try {
 | |
|     // FC23
 | |
|     $recData = $modbus->readWriteRegisters($unitId, $reference, $quantity, $reference, $data, $dataTypes);
 | |
| } catch (Exception $e) {
 | |
|     // Print error information if any
 | |
|     echo $modbus;
 | |
|     echo $e;
 | |
|     exit;
 | |
| }
 | |
| 
 | |
| echo '<h1>Status</h1><pre>';
 | |
| print_r($modbus);
 | |
| echo '</pre>';
 | |
| echo '<h1>Data</h1><pre>';
 | |
| print_r($recData);
 | |
| echo '</pre>'; |