Skip to content

Collections of reusable MATLAB robotics functions, can be compilled to DLL and called with LabVIEW.

Notifications You must be signed in to change notification settings

auralius/my-matlab-robotics-toolbox

Repository files navigation

my-matlab-robotics-toolbox

A simple and straightforward implementation of the DH-parameters in MATLAB

There are two different conventions on the implementation of the DH-parameters. This one uses the standard DH-parameters which can as well be found in this book: https://www.cs.duke.edu/brd/Teaching/Bio/asmb/current/Papers/chap3-forward-kinematics.pdf. The results have been validated with Peter Corke's RVC toolbox (https://github.com/petercorke/robotics-toolbox-matlab).

cgr prefix means the code is code-generation ready.
ncgr means the code is NOT code-generation ready.

Features:

  • Forward kinematics
  • Homogenous transformation of each link of the robot
  • Numerical Jacobian
  • Simple visualization, it can also be animated
  • Inverse kinematics with the pseudo-inverse method and damped least square method.
  • Code generation ready.

How to use:

  • Create a global variable N_DOFS and define the number of degree-of-freedom of the robot in it. The reason why global variable is used is because I keep having problems in using the dynamic memory allocation for MATLAB coder. Therefore, I use global variable to define the dimension of the necessary static arrays.
  • Create the robot structure with cgr_create.
  • Actuate and update the joint with cgr_self_update functions.
  • If necessary, plot the robot with ncgr_plot by first calling ncgr_graphic once at the beginning of the program.
  • To create the compiled MEX or DLL files, two examples of MATLAB Coder project files are provided. This is where the global variable is used.

Screenshot

Screenshot

Auralius Manurung manurunga@yandex.com

About

Collections of reusable MATLAB robotics functions, can be compilled to DLL and called with LabVIEW.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages