The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME Device-Modbus version 0.021

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.

CURRENT STATUS

Currently, the distribution is under development. You can find more information at http://www.7mavida.com/tag/Device::Modbus

MILESTONES

  • 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.

INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install

DEPENDENCIES

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.

SEE ALSO

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 AND LICENCE

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.