This distribution aims towards implementing the Modbus protocol over serial lines, in its RTU variant in Perl. It should make it possible to write Modbus RTU clients and servers.
In particular, servers should be able to execute arbitrary code to process requests. This will allow for applications such as Modbus gateways or database front-end applications that communicate directly with external devices.
Currently, the distribution is under development. You can find more information at http://www.7mavida.com/tag/Device::Modbus
As of today, simple clients and servers both with Modbus RTU and Modbus TCP have been tested. Only the clients have been tested with industrial equipment.
To install this module type the following:
perl Makefile.PL make make test make install
This module requires these other non-standard modules and libraries:
The main documentation for the distribution is in Device::Modbus.
In Perl, you can find other Modbus related distributions. I think the leading one would be Protocol::Modbus, by Cosimo Streppone, 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 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.