Skip to main content

Implementation of Real-Time Joint Controllers

  • Chapter
  • First Online:
Robot Operating System (ROS)

Part of the book series: Studies in Computational Intelligence ((SCI,volume 625))

Abstract

This tutorial chapter explains the implementation of controllers in the Robot Operating System. The inner working of the ROS real-time loop is explained with discussion of the classes used to implement it. Contrariwise to most available examples of implementation of controllers in ROS, which show the use of single input, single output controllers using the proportional-integral-derivative control law, here controllers are approached in a more general sense, so that any control law can be used. A complete example of implementation of a MIMO nonlinear controller is presented using the computed torque control law. The real-time aspects of the problem are also considered and the controller is ready for running in hard-real-time with the PREEMPT_RT kernel patch. The source code of examples are available at public repositories to enable readers to experiment with the examples and adapt them to their robots.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 189.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 249.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 249.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    A linear function is one in which \(f(\alpha _1 x_1+\alpha _2 x_2)=\alpha _1 f(x_1) + \alpha _2 f(x_2)\) for any constant \(\alpha _1\) and \(\alpha _2\) and any \(x_1\) and \(x_2\).

  2. 2.

    The Newton-Euler formulation is a well-known recursive procedure to compute the torque in (5) as \(\tau =f(q,\dot{q},\ddot{q}\)).

References

  1. K.J. Åström, B. Wittenmark, Computer Controlled Systems—Theory and Design (Prentice-Hall, Englewood Cliffs, 1984)

    Google Scholar 

  2. WAM User Manual (Barrett Technology Inc., Cambridge, 2011)

    Google Scholar 

  3. H, Bruyninckx, Open robot control software: the orocos project, in Proceedings of the 2001 IEEE International Conference on Robotics and Automation, (IEEE Press, Seoul, 2001), pp. 2523–2528

    Google Scholar 

  4. A. Burns, A. Wellings, Real-Time Systems and Programming Languages, 3rd edn. (Addison-Wesley, Reading, 2001)

    Google Scholar 

  5. C.T. Chen, Linear System Theory and Design (Holt, Rinehart & Winston, New York, 1984)

    Google Scholar 

  6. R. Featherstone, Rigid Body Dynamics Algorithms (Springer, New York, 2008)

    Book  MATH  Google Scholar 

  7. G.F. Frankin, J.D. Powell, M.L. Workman, Digital Control of Dynamic Systems, 2nd edn., Addison-Wesley Series in Electrical and Computer Engineering: Control Engineering (Addison-Wesley, Boston, 1989)

    Google Scholar 

  8. K.S. Fu, R.C. Gonzales, C.S.G. Lee, Robotics Control, Sensing, Vision and Intelligence, Industrial Engineering Series (McGraw-Hill, New York, 1987)

    Google Scholar 

  9. P, Goebel, ROS by Example. Lulu, Raleigh, NC (Abr 2013), http://www.lulu.com/shop/r-patrick-goebel/ros-by-example-hydro-volume-1/paperback/product-21460217.html

  10. Ioris, D., Lages, W.F., Santini, D.C.: Integrating the OROCOS framework and the barrett WAM robot, in Proceedings of the 5th Workshop on Applied Robotics and Automation. Sociedade Brasileira de Automática, (Bauru, 2012)

    Google Scholar 

  11. A. Isidori, Nonlinear Control Systems, 3rd edn. (Springer, Berlin, 1995)

    Book  MATH  Google Scholar 

  12. H.K. Khalil, Nonlinear Systems, 2nd edn. (Prentice-Hall, Upper Saddle River, 1996)

    Google Scholar 

  13. N, Koenig, A, Howard, Design and use paradigms for gazebo, an open-source multi-robot simulator, in Proceedings of the 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2004), Sep 2004, vol. 3 (IEEE Press, Sendai, 2004), pp. 2149–2154

    Google Scholar 

  14. W.F. Lages, D. Ioris, D. Santini, An architecture for controlling the barrett wam robot using ros and orocos, in Proceedings for the Joint Conference of 45th International Symposium on Robotics and 8th German Conference on Robotics (VDE Verlag, Munich, Germany, 2014). ISBN: 978-3-8007-3601-0

    Google Scholar 

  15. J.Y.T. Leung, J. Whitehead, On the complexity of fixed-priority scheduling of periodic, real-time tasks. Perform. Eval. 2(4), 237–250 (1982)

    Article  MathSciNet  MATH  Google Scholar 

  16. C.L. Liu, J.W. Layland, Scheduling algorithms for multiprogramming in a hard-real-time environment. J. ACM 20(1), 46–61 (1973)

    Article  MathSciNet  MATH  Google Scholar 

  17. Maciel, E.H., Henriques, R.V.B., Lages, W.F.: Control of a biped robot using the robot operating system, in Proceedings of the 6th Workshop on Applied Robotics and Automation (Sociedade Brasileira de Automática, São Carlos, SP, Brazil, 2014)

    Google Scholar 

  18. A. Martinez, E. Fernández, Learning ROS for Robotics Programming (Packt Publishing, Birmingham, 2013)

    Google Scholar 

  19. H. Nijmeijer, A. van der Schaft, Nonlinear Dynamical Control System (Springer, New York, 1990)

    Book  Google Scholar 

  20. K. Ogata, Modern Control Engineering (Prentice-Hall, Englewood Cliffs, 1970)

    Google Scholar 

  21. J.M. O’Kane, A Gentle Introduction to ROS. CreateSpace Independent Publishing Platform (2013), http://www.cse.sc.edu/~jokane/agitr/. Accessed Oct 2013

  22. Open Software Automation Development Lab: Osadl project: Realtime linux (2012), https://www.osadl.org/Realtime-Linux.projects-realtime-linux.0.html

  23. M. Quigley, B. Gerkey, K. Conley, J. Faust, T. Foote, J. Leibs, E. Berger, R. Wheeler, Ng, A.: ROS: an open-source robot operating system, in Proceedings of the IEEE International Conference on Robotics and Automation, Workshop on Open Source Robotics, May 2009 (IEEE Press, Kobe, Japan, 2009)

    Google Scholar 

  24. D.C. Santini, W.F. Lages, An architecture for robot control based on the OROCOS framework, in Proceedings of the 4th Workshop on Applied Robotics and Automation. (Sociedade Brasileira de Automática, Bauru, SP, Brazil, 2010)

    Google Scholar 

  25. J.J.E. Slotine, W. Li, Applied Nonlinear Control (Prentice-Hall, Englewood Cliffs, 1991)

    MATH  Google Scholar 

  26. I.A. Sucan, S. Chitta, MoveIt! (2015), http://moveit.ros.org

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Walter Fetter Lages .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Lages, W.F. (2016). Implementation of Real-Time Joint Controllers. In: Koubaa, A. (eds) Robot Operating System (ROS). Studies in Computational Intelligence, vol 625. Springer, Cham. https://doi.org/10.1007/978-3-319-26054-9_26

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26054-9_26

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26052-5

  • Online ISBN: 978-3-319-26054-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics