Robotics Toolbox for MATLAB: Difference between revisions

Content deleted Content added
No edit summary
No edit summary
Line 16:
The '''Robotics Toolbox''' is mature software that supports research and teaching into arm-type and mobile [[robotics]]. This is [[free software]] but requires the proprietary [[MATLAB]] environment in order to execute.
 
These parameters are encapsulated in [[MATLAB]] [[Object_(computer_science)|objects]], robot objects can be created by the user for any serial-link manipulator and a number of examples are provided for well know robots such as the [[Programmable_Universal_Machine_for_Assembly|Puma 560]] and the Stanford arm amongst others. The Toolbox alsoprovides providesmany functions for manipulating and converting between datatypes such as: vectors;[[Transformation_matrix|homogeneous transformations]]; [[Roll-pitch-yaw|roll-pitch-yaw]] and [[Euler_angle|Euler]] angles and [[Quaternion|unit-quaternions]] which are necessary to represent 3-dimensional position and orientation.
The Toolbox provides many functions that are useful for the study and simulation of classical arm-type robotics, for example such things as [[kinematics]], [[dynamics]], and [[Trajectory|trajectory generation]]. The Toolbox is based on a very general method of representing the kinematics and dynamics of serial-link manipulators.
The Toolbox is useful for the study and simulation of:
These parameters are encapsulated in [[MATLAB]] [[Object_(computer_science)|objects]], robot objects can be created by the user for any serial-link manipulator and a number of examples are provided for well know robots such as the [[Programmable_Universal_Machine_for_Assembly|Puma 560]] and the Stanford arm amongst others. The Toolbox also provides functions for manipulating and converting between datatypes such as: vectors;[[Transformation_matrix|homogeneous transformations]]; [[Roll-pitch-yaw|roll-pitch-yaw]] and [[Euler_angle|Euler]] angles and [[Quaternion|unit-quaternions]] which are necessary to represent 3-dimensional position and orientation.
*Classical arm-type robotics: [[kinematics]], [[dynamics]], and [[Trajectory|trajectory generation]]. The Toolbox uses a very general method of representing the kinematics and dynamics of serial-link manipulators. These parameters are encapsulated in [[MATLAB]] [[Object_(computer_science)|objects]], robot objects can be created by the user for any serial-link manipulator and a number of examples are provided for well know robots such as the [[Programmable_Universal_Machine_for_Assembly|Puma 560]] and the Stanford arm amongst others.
This ninth release of the Toolbox has been significantly extended to support mobile*Ground robots. For ground robots the Toolboxand includes: standard path planning algorithms (bug, [[Distance_transform|distance transform]], [[D*]], [[Probabilistic_roadmap|PRM]]), kinodynamic planning ([[Rapidly_exploring_random_tree|RRT]]), localization ([[Extended_Kalman_filter|EKF]], [[Particle_filter|particle filter]]), map building ([[Extended_Kalman_filter|EKF]]) and simultaneous localization and mapping ([[Extended_Kalman_filter|EKF]]), and a [[Simulink]] model a of non-holonomic vehicle. The Toolbox also including a detailed [[Simulink]] model for a [[Quadrotor|quadrotor]] flying robot.
* Flying [[Quadrotor|quadrotor]] robos, and includes a detailed [[Simulink]] model.
 
The software are generally written in a straightforward manner which allows for easy understanding, perhaps at the expense of computational efficiency.
This ninth release of the Toolbox has been significantly extended to support mobile robots. For ground robots the Toolbox includes standard path planning algorithms (bug, [[Distance_transform|distance transform]], [[D*]], [[Probabilistic_roadmap|PRM]]), kinodynamic planning ([[Rapidly_exploring_random_tree|RRT]]), localization ([[Extended_Kalman_filter|EKF]], [[Particle_filter|particle filter]]), map building ([[Extended_Kalman_filter|EKF]]) and simultaneous localization and mapping ([[Extended_Kalman_filter|EKF]]), and a [[Simulink]] model a of non-holonomic vehicle. The Toolbox also including a detailed [[Simulink]] model for a [[Quadrotor|quadrotor]] flying robot.
 
Some characteristics of the Toolbox are:
* the code is quite mature and provides a point of comparison for other implementations of the same algorithms;
* the routines are generally written in a straightforward manner which allows for easy understanding, perhaps at the expense of computational efficiency. If you feel strongly about computational efficiency then you can always rewrite the function to be more efficient, compile the M-file using the [[MATLAB]] compiler, or create a [[MEX_file|MEX] version;
*since source code is available there is a benefit for understanding and teaching.
 
== See also ==