Skip to main content
Log in

Component Specifications for Robotics Integration

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

Robotics researchers have been unable to capitalize easily on existing software components to speed up their development efforts and maximize their system's capabilities. A component-based approach for building the software for robotics systems can provide reuse and sharing abilities to the research community. The software engineering community has been studying reuse techniques for three decades. We present several results from those efforts that are applicable to the robotics software integration problem. We describe how to specify a software component so that a potential user may understand its capabilities and facilitate its application to his or her system. At the National Institute of Standards and Technology, we have developed a three-stage, component-specification approach. We illustrate this approach for a component that is relevant to robotics.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Albus, J. 1996. An engineering architecture for intelligent systems. In Proceedings of the American Association for Artificial Intelligence (AAAI), Fall Symposium Series.

  • Albus, J.S. 1997. 4-D/RCS: A reference model architecture demo III, Technical Report NIST Technical Note 5994, U.S. Department of Commerce, National Institute of Standards and Technology, NIST, Gaithersburg, MD 20899.

    Google Scholar 

  • Bailo, C., Alderson, G., and Yen, C. 1994. Requirements of open, modular, architecture controllers for applications in the automotive industry, white paper. Available on the Wide World Web http://www.arcweb.com/omac/Documents/omacv11.htm.

  • Baresi, L., Orso, A., and Pezzè, M. 1997. Introducing formal specification methods in industrial practice. In Proceedings of the 1997 International Conference on Software Engineering, pp. 56–66.

  • Basili, V. and Abd-El-Hafiz, S. 1992. Packaging reusable components: The specification of programs, Technical Report CS-TR-2957, UMIACS-TR–92-97, Department of Computer Science, University of Maryland.

  • Batory, D. and O'Malley, S. 1992. The design and implementation of hierarchical software systems with reusable components. ACM Transactions on Software Engineering Methodology, 1(4):355–398.

    Google Scholar 

  • Berners-Lee, T. and Connolly, D. 1993. Hypertext markup language: A representation of textual information and metainformation for retrieval and interchange, Technical Report, CERN and Atrium Technology Inc.

  • Brockschmidt, K. 1995. Inside OLE, 2nd edition, Microsoft Press: Redmond, WA.

    Google Scholar 

  • Chappell, D. 1996. Understanding ActiveX and OLE—A Guide for Developers and Managers. Microsoft Press: Redmond, WA.

    Google Scholar 

  • Chen, Y. and Cheng, B. 1997. Formally specifying and analyzing architectural and functional properties of components for reuse. In WISR8, the 8th Workshop on Software Reuse. http://www.umcs.maine.edu/ftp/wisr/wisr8/papers.html.

  • Dementhon, D. and Davis, L. 1995. Model-based object pose in 25 lines of code. International Journal of Computer Vision, 15:123–141.

    Google Scholar 

  • Demeyer, S., Meijler, T., Nierstrasz, O., and Steyaert, P. 1997. Design guidelines for ‘tailorable’ frameworks. Communications of the ACM, 40(10).

  • Denning, A. 1997. ActiveX Controls Inside Out. Microsoft Press: Redmond, WA.

    Google Scholar 

  • Diller, A. 1997. Z: An Introduction to Formal Methods, 2nd edition, John Wiley & Sons: New York, NY.

    Google Scholar 

  • Fayad, M. and Schmidt, D.C. 1997. Object-oriented application frameworks—Introduction. Communications of the ACM, 40(10):32–38.

    Google Scholar 

  • Haralick, R.M. 1992. Performance characterization in computer vision. In Proceedings of the 3rd British Machine Vision Conference.

  • Haralick, R.M. et al. 1989. Pose estimation from corresponding point data. In Machine Vision for Inspection and Measurement.

  • Herman, M. and Albus, J. 1988. Overview of the multiple autonomous underwater vehicles (MAUV) project. In IEEE International Conference on Robotics and Automation, Philadelphia, PA.

  • Huang, H. 1996. An architecture and a methodology for intelligent control. IEEE Expert, 11(2).

  • Huttenlocher, D.P. and Ullman, S. 1990. Recognizing solid objects by alignment with an image. International Journal of Computer Vision, 5(2):195–212.

    Google Scholar 

  • IEEE 1994. IEEE Std 1076–1993: IEEE standard VHDL language reference manual, IEEE Standards.

  • ISO 1994a. Industrial automation systems and integration, product data representation and exchange—part 11. EXPRESS Language Reference Manual. International Organization for Standardization.

  • ISO 1994b. Industrial automation systems and integration, Product data representation and exchange—part 21: Clear text encoding of the exchange structure, International Organization for Standardization.

  • JavaSoft 1998. Products and APIs. See Web URL: http://www.java.sun.com/products.

  • Kara, D. 1997. Seeing the forest for the trees. Software Magazine.

  • Kazman, R., Clements, P., Bass, L., and Abouwd, G. 1997. Classifying architectural elements as a foundation for mechanism matching. In Proceedings of the 1997 21st Annual International Computer Software and Applications Conference.

  • Krueger, C. 1992. Software Reuse. ACM Computing Surveys, 24(2).

  • Liskov, B. and Wing, J. 1993. Specifications and their use in defining subtypes. In Proceedings of the 8th Annual Conference on Object-Oriented Programming Systems, Languages, and Applications, pp. 16–28.

  • Luckham, D.C., Kenney, J.J., Augustin, L.M., Vera, J., Bryan, D., and Mann, W. 1995. Specification and analysis of system architecture using rapide. IEEE Transactions on Software Engineering, 21(4):336–355.

    Google Scholar 

  • McCool, R. 1994. The common gateway interface. NCSA, 1.1 edition.

  • Morris, K. 1993. Data probe: A tool for EXPRESS-based Data. In Proceedings of the 7th Annual Engineering Database Symposium—ASME Computers in Engineering Conference.

  • Murphy, K., Juberts, M., Legowik, S., Nashman, M., Schneiderman, H., Scott, H., and Szabo, S. 1993. Ground vehicle control at NIST: From teleoperation to autonomy. In Proceedings of the 7th Annual Space Operations, Applications, and Research Symposium, Houston, TX.

  • Murphy, K., Norcross, R., and Proctor, F. 1988. CAD directed robotic deburring. In Proceedings of the Second International Symposium on Robotics and Manufacturing Research, Education, and Applications, Albuquerque, NM.

  • Musser, D.R. and Saini, A. 1996. STL Tutorial and Reference Guide, Addison Wesley: Reading, MA.

    Google Scholar 

  • Nauer, P. and Randel, E.B. 1968. Software Engineering: Report on a Conference by the NATO Science Committee, NATO Scientific Affairs Division: Brussels, Belgium.

    Google Scholar 

  • Nierstrasz, O., Gibbs, S., and Tsichritzis, D. 1992. Component oriented software development. Communications of the ACM, 35(9).

  • Nierstrasz, O. and Meijler, T. 1995. Research directions in software composition. ACM Computing Surveys, 27(2).

  • OMAC API Workgroup 1997. OMAC API Set. Open Modular Architecture Controls (OMAC) User Group. See Web URL: http://isd.cme.nist.gov/info/omacapi.

  • OMG 1996. Description of the New OMA Reference Model, Draft 1. OMG Document ab/96–05-02. Object Management Group, Framingham, MA. http://www.omg.org.

    Google Scholar 

  • OMG 1997. The common object request broker: Architecture and specification. Object Management Group Formal Document 97–02-25. Object Management Group, Framingham, MA. http://www.omg.org.

    Google Scholar 

  • OSACA 1998. Open system architecture for controls within automation systems. See Web URL: http://www.osaca.org.

  • Paredis, C., Brown, B., and Khosla, P. 1997. A rapidly deployable manipulator system. Robotics and Autonomous Systems, 21:289–304.

    Google Scholar 

  • Piccinocchi, S., Ceccarelli, M., Piloni, F., and Bicchi, A. 1997. Interactive benchmark for planning algorithms on the web. In Proceedings of the 1997 IEEE International Conference on Robotics and Automation.

  • Podgurski, A. and Pierce, L. 1993. Retrieving reusable software by sampling behavior. ACM Transactions on Software Engineering and Methodology, 2(3):286–303.

    Google Scholar 

  • Postel, J. (Ed.). 1981. Transmission control protocol—DARPA internet program protocol specification. RFC 793.

  • Pree, W. 1997. Component-based software development—A new paradigm in software engineering? Software-Concepts and Tools, 18:169–174.

    Google Scholar 

  • Rogerson, D. 1997. Inside COM, Microsoft Press: Redmond, WA.

    Google Scholar 

  • Short, K. 1997. Component based development and object modeling. See Web URL: http://www.cool.sterling/cbd/whitepaper.

  • SML Corporation 1998. Open system environment for controller (OSEC) architecture overview. Published on the Wide World Web http://www.sml.co.jp/OSEC.

  • Steenstrup, M., Arbib, M.A., and Manes, E.G. 1983. Port automata and the algebra of concurrent processes. Journal of Computer and System Sciences, 27(1):29–50.

    Google Scholar 

  • Stewart, D., Volpe, R., and Khosla, P. 1997. Design of dynamically reconfigurable real-time software using port-based objects. IEEE Transactions on Software Engineering, 23(12):169–174.

    Google Scholar 

  • Stouffer, K. and Russell, R. 1995. ADACS—An advanced deburring and chamfering system. In Proceedings of the 6th International Conference on Manufacturing Engineering, Melbourne, Australia.

  • Szyperski, C. 1998. Component Software: Beyond Object-Oriented Programming. Addison Wesley Longman Limited: Essex, England.

    Google Scholar 

  • Tan, T., Sullivan, G., and Baker, K. 1992. Linear algorithms for object pose estimation. In Proceedings of the 3rd British Machine Vision Conference.

  • Tan, T., Sullivan, G., and Baker, K. 1994, Pose determination and recognition of vehicles in traffic scenes. In European Conference on Computer Vision.

  • Tan, T., Sullivan, G., and Baker, K. 1996. Pose determination and recognition of vehicles in traffic scenes. Pattern Recognition, 29(3):449–461.

    Google Scholar 

  • Zaremski, A. and Wing, J. 1996. Specification matching of software components. ACM Transactions on Software Engineering and Methodology, 6(4):449–461.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Messina, E., Horst, J., Kramer, T. et al. Component Specifications for Robotics Integration. Autonomous Robots 6, 247–264 (1999). https://doi.org/10.1023/A:1008980211618

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008980211618

Navigation