modbus_master 2.0.0
modbus_master: ^2.0.0 copied to clipboard
An easy to use package using which a dart program can work as a Modbus/TCP master device.
example/modbus_master_example.dart
import 'package:modbus_master/modbus_master.dart';
void main() async {
final modbusMaster = await ModbusMaster.start();
int countResponseReceived = 0;
modbusMaster.responseFromSlaveDevices.listen(
(response) {
++countResponseReceived;
print(response);
if (countResponseReceived >= 5) {
modbusMaster.stop();
}
},
);
for (int i = 1; i <= 5; ++i) {
try {
modbusMaster.write(
ipAddress: '192.168.1.3',
portNumber: 502,
unitId: 1,
blockNumber: 4,
elementNumber: 3001,
timeoutMilliseconds: 1000,
valueToBeWritten: 6000 + i,
);
} catch (e, f) {
print('EXCEPTION THROWN:-\n$e\n$f');
}
await Future.delayed(Duration(seconds: 2));
}
final isModbusMasterStopped = await modbusMaster.isStoppedAsync;
if (isModbusMasterStopped) {
print("Modbus Master has stopped.");
}
}