Building Light Weight CORBA Based Middleware for the CAN Bus Systems

  • Hong, Seongsoo (School of Electrical Engineering and Computer Science, Seoul National University)
  • Published : 2001.09.01

Abstract

The software components of embedded control systems get extremely complex as they are designed into distributed systems get extremely complex as they are designed into distributed systems consisting of a large number of inexpensive microcontrollers interconnected by low-bandwidth real-time networks such as the controller area network (CAN). While recently emerging middleware technologies such as CORBA and DCOM address the complexity of distributed programming, they cannot be directly applied to distributed control system design due to their excessive resource demand and inadequate communication models. In this paper, we propose a CORBA-based middleware design for CAN-based distributed embedded control systems. Our design goal is to minimize its resource need and make it support group communication without losing the IDL (interface definition language) level compliance to the OMG standards. To achieve this, we develop a transport protocol on the CAN and a group communication scheme based on the well-known publisher/subscriber model. The protocol effectively realizes subject-based addressing and supports anonymous publisher/subscriber communication. We also customize the method invocation and message passing protocol, referred to as the general inter-ORB protocol (GIOP), of CORBA so that CORBA method invocations are efficiently serviced on a low-bandwidth network such as the CAN. This customization includes packed data encoding and variable-length integer encoding for compact representation of IDL data types. We have implemented our CORBA-based middleware on the mArx real-time operating system we have developed at Seoul National University. Our experiments clearly demonstrate that it is feasible to use CORBA in developing distributed embedded control systems possessing severe resource limitations. Our design clearly demonstrates that it is feasible to use a CORBA-based middleware in developing distributed embedded systems on real-time networks possessing severe resource limitations.

Keywords

References

  1. DeviceNet specifications, release 2.0 Vol.Ⅰ: Communication model and protocol, Vol.Ⅱ: Device profiles and object library Allen-Bradley
  2. CAN specification, version 2.0 Bosch.
  3. Distributed component object model protocol - DCOM/1.0 N. Brown;C. Kindel
  4. 82527 serial communications controller architecture overview I. Corporation
  5. The Common Object Request Broker: Architecture and specification revision 2.2 O. M. Group
  6. Minimum CORBA - joint revised submission, OMG document orbos/98-08-04 edition O. M. Group
  7. Conference on Object-oriented Programming, Systems, Languages and Applications The design and performance of a real-time CORBA event service T. H. Harrison;D. L.Levine;D. C. Schmidt
  8. Micro switch specification: Application layer-protocol specifiction version 2.0 Honeywell
  9. Draft standard 301 version 3.0 CANopen, communication profile for industrial systems based on CAL C. in Automation (CiA)
  10. ORBit R. H. Inc.
  11. ISO-IS 11898 Road vehicles - interchange of digital information - controller area network (CAN) for high speed communication
  12. IEEE International Symposium on Object-oriented Real-time distributed Computing Invocation of real-time objects in a CAN bus-system J. Kaiser;M. A. Livani
  13. IEEE International Symposium on Object-oriented Real-time distributed Computing Implementing the real-time publisher/subscriber model on the controller area network (CAN) J. Kaiser;M. Mock
  14. Kinnahult. PCcan 2.0 S. KVASER, AB
  15. IEEE International Conference on Robotics and Automation The network data delivery service: Real-time data connectivity for distributed control applications G. Pardo-Castellote;S. Schneider
  16. IEEE Real-time Technology and Appliction Symposium The real-time publisher/subscriber inter-process communication model for distributed real-time systems: Design and implementation R. Rajkumar;M. Gagliardi;L. Sha
  17. mArx: micro-Arx S. N. U. RTOS Lab.
  18. ACM Workshop on Languages, Compilers, and Tools for Embedded Systems Efficient user-level I/O in the ARX real-time operating system Y. Seo.;J. Park;S. Hong
  19. IEEE International Conference on Industrial Electronics, Control and Instrumentation, IECON Fieldbus application layer and real-time distributed systems G. Ulloa