This distribution aims towards implementing Modbus communications in Perl. It should make it possible to write Modbus TCP and RTU clients and servers.
Please refer to Device::Modbus::RTU and Device::Modbus::TCP for the client and server implementations.
Currently, the distribution is under development. You can find more information at http://www.7mavida.com/tag/Device::Modbus
Modbus TCP server
Modbus TCP client
Modbus RTU client
Modbus RTU server
Documentation
Shared over CPAN
All of the above are now functional, I'd be greatful if you use this library and share any feedback. Please note that you need one of Device::Modbus::TCP or Device::Modbus::RTU.
To install this module type the following:
perl Makefile.PL make make test make install
The only requirement for the base Device::Modbus is Try::Tiny. The RTU and TCP variants have other requirements of their own, most notably Device::SerialPort for Device::Modbus::RTU and Net::Server for Modbus TCP.
The main documentation for the distribution is in Device::Modbus. Please see Device::Modbus::RTU and Device::Modbus::TCP for serial or TCP/IP based communications.
In Perl, you can find other Modbus related distributions. I think the leading one would be Protocol::Modbus, by Cossimo, which implements Modbus TCP clients. While there is code for RTU clients, it is not as mature.
There are also some scripts that implement both a server and clients. A couple worth looking at is formed by MBclient and mbserved. The later is available in GitHub only and they were both written by the same author, l.lefebre https://github.com/sourceperl.
Copyright (C) 2015-2016 by Julio Fraire
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.14.2 or, at your option, any later version of Perl 5 you may have available.
To install Device::Modbus, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Device::Modbus
CPAN shell
perl -MCPAN -e shell install Device::Modbus
For more information on module installation, please visit the detailed CPAN module installation guide.