Robotics Toolbox for MATLAB: Difference between revisions

Content deleted Content added
Added {{COI}} tag to article (TW)
copy edit/cleanup
Line 1:
{{COI|date=June 2019}}
{{short description|Software}}
{{Infobox software
| name = Robotics Toolbox for MATLAB
| screenshot =
| caption =
| latest_release_version = 10.3
| latest_release_date = August, 2018
| developer = [[Peter Corke]]
| engine = [[MATLAB]]
| operating_system = n/a
| genre = [[Robotics suite]]
| licensegenre = [[LGPLRobotics suite]]
| license = [[LGPL]]
| website = http://www.petercorke.com/robot
}}
 
The '''Robotics Toolbox''' is [[MATLAB]] Toolboxtoolbox software that supports research and teaching into arm-type and mobile [[robotics]]. While the Robotics Toolbox is [[free software]], it requires the proprietary [[MATLAB]] environment in order to execute. A subset of functions have been ported to [[GNU Octave]] and [[Python (programming_language)|Python]]. The Toolbox forms the basis of the exercises in several textbooks.
<ref>{{cite book|last=Straanowicz|first=Aaron|author2=Gian Luca Mariottini |title=A Survey and Comparison of Commercial and Open-Source Robotic Simulator Software|journal=Proceedings of the 4th International Conference on Pervasive Technologies Related to Assistive Environments|pages=1|year=2011|doi=10.1145/2141622.2141689|isbn=9781450307727|citeseerx=10.1.1.369.3980}}</ref><ref>{{cite journal|last=Nourdine|first=Aliane|title=Teaching fundamentals of robotics to computer scientists|journal=Computer Applications in Engineering Education|date=September 2011|volume=19|issue=3|pages=615–620|doi=10.1002/cae.20342}}</ref>
This is [[free software]] but requires the proprietary [[MATLAB]] environment in order to execute. A subset of functions have been ported to [[GNU Octave]] and [[Python (programming_language)|Python]].
The Toolbox forms the basis of the exercises in several textbooks
<ref>{{cite book|last=Corke|first=Peter|year=2017 |title=Robotics, Vision & Control (2nd edition)|publisher=Springer|isbn=978-3-319-54412-0}}</ref><ref>{{cite book|last=Corke|first=Peter|title=Robotics, Vision & Control|year=2011|publisher=Springer|isbn=978-3-642-20143-1|url=http://www.petercorke.com/rvc}}</ref><ref>{{cite book|last=Craig|first=John|title=Introduction to Robotics (3rd edition)|year=2004|publisher=Prentice-Hall}}</ref>
 
== Purpose ==
The Toolbox provides functions for manipulating and converting between datatypes such as: vectors;, [[Transformation matrix|homogeneous transformations]];, [[roll-pitch-yaw]] and [[Euler angle|Euler]] angles;, [[Axis-angle representation|axis-angle representation]];, [[Quaternion|unit-quaternions]];, and [[Screw theory#Twist|twists]], which are necessary to represent 3-dimensional position and orientation. It also plots coordinate frames, supports [[Plücker_coordinatesPlücker coordinates]] to represent lines, and provides support for [[Lie group]] operations such as logarithm, exponentiation, and conversions to and from [[Skewskew-symmetric matrix]] form.
 
As the basis of the exercises in several textbooks, the Toolbox is useful for the study and simulation of:<ref>{{cite book|title=A Survey and Comparison of Commercial and Open-Source Robotic Simulator Software|last=Straanowicz|first=Aaron|author2=Gian Luca Mariottini|journal=Proceedings of the 4th International Conference on Pervasive Technologies Related to Assistive Environments|year=2011|isbn=9781450307727|pages=1|citeseerx=10.1.1.369.3980|doi=10.1145/2141622.2141689}}</ref><ref>{{cite journal|last=Nourdine|first=Aliane|date=September 2011|title=Teaching fundamentals of robotics to computer scientists|journal=Computer Applications in Engineering Education|volume=19|issue=3|pages=615–620|doi=10.1002/cae.20342}}</ref><ref>{{cite book|title=Robotics, Vision & Control (2nd edition)|last=Corke|first=Peter|publisher=Springer|year=2017|isbn=978-3-319-54412-0}}</ref><ref>{{cite book|url=http://www.petercorke.com/rvc|title=Robotics, Vision & Control|last=Corke|first=Peter|publisher=Springer|year=2011|isbn=978-3-642-20143-1}}</ref><ref>{{cite book|title=Introduction to Robotics (3rd edition)|last=Craig|first=John|publisher=Prentice-Hall|year=2004}}</ref>
The Toolbox is useful for the study and simulation of:
 
*Classical classical arm-type robotics: [[kinematics]], [[Dynamics (mechanics)|dynamics]], and [[Trajectory|trajectory generation]]. The Toolbox uses a very general method of representing the kinematics and dynamics of serial-link manipulators using [[Denavit-Hartenberg parameters]] or [[Denavit–Hartenberg_parameters#Modified_DH_parameters|modified Denavit-Hartenberg parameters]]. These parameters are encapsulated in [[MATLAB]] [[Object (computer science)|objects]], . robotRobot objects can be created by the user for any serial-link manipulator and; a number of examples are provided for well known robots such as the [[Programmable Universal Machine for Assembly|Puma 560]] and the Stanford arm amongst others. Operations include [[Forward kinematics|forward kinematics]], analytic and numerical [[Inverse kinematics|inverse kinematics]], graphical rendering, manipulator Jacobian, [[Inverse dynamics|inverse dynamics]], forward dynamics, and simple path planning. It can operate with symbolic values as well as numeric, and provides a [[Simulink]] blockset.
*Ground robots and includes: standard path planning algorithms (bug, [[distance transform]], [[D*]], and [[Probabilistic roadmap|PRM]]), lattice planning, kinodynamic planning ([[Rapidly exploring random tree|RRT]]), localization ([[Extended Kalman filter|EKF]], [[particle filter]]), map building ([[Extended Kalman filter|EKF]]) and [[simultaneous localization and mapping]] (using an [[Extended Kalman filter|EKF]] or graph-based method), and a [[Simulink]] model of a non-holonomic vehicle.
* Flying [[quadrotor]] robots, and includes a detailed [[Simulink]] model.
 
The Toolbox requires [[MATLAB]], commercial software from [[MathWorks]], in order to operate.
 
== Use of MATLAB ==
MATLAB is a commercial software by Math Works Inc., USA. It has large number of mathematical operators and commands that can perform wide range of analysis, e.g. matrix operations. algebraic and differential equation solutions, optimisations, control experiments, etc.
=== Initialise MATLAB ===
It is expected that MATLAB is installed in a computer where the user will be performing computations. If an icon is available on the Desktop the user has to double-click on it using the left button of the mouse connected to the computer. Alternatively, under Windows, the user can left-click, in sequence, on the button/menus that popup: Start -> All Programs -> Matlab-> MATLAB.
=== How to Use MATLAB ===
When MATLAB software starts. the MATLAB screen appears with ">>" prompt. This window is called MATLAB command window. Some basic operations are shown here. For detailed description, one may refer to the books available on MATLAB, e.g. Pratap (2002), and use the Demos and Help menu of the software.
== See also ==
*[[Robot_software#Robotics_Software_Projects|Robotics software projects]]