Skip to Main Content
Modern distributed systems are built with numerous different computing platforms, which can be based on different hardware and operating systems. In this context, the development of multi-platform device drivers may contribute for a better scalability of dynamic distributed systems. A Java-based device driver for a controller area network card was implemented, and it is intended for utilization on distributed data acquisition and control systems. With Java technology it is possible to create multi-platform device drivers, that using traditional Java mechanisms for inter-process communication, can be accessed by local objects or remote components of a distributed system. Message exchange between device driver and client applications is done employing two different methods: Java remote method invocation and Jini extensible remote invocation. The first is intended for legacy or low resources systems and the second for modern systems. Speed control of a DC shunt motor was performed to test the CAN network device driver. Two different applications were used to control the rotation speed: one based on Matlab, that communicates with the driver using Java remote method invocation, and another fully implemented in Java that communicates with the driver using Jini extensible remote invocation. The conducted tests allowed to conclude that the implemented device driver is adequate for the intended application.