Reference Documentation
This section contains theoretical reference documentation for the skelarm robot kinematics and dynamics library.
The content is derived from the project's foundational lessons.
The arm is modeled around a fixed base link of length \(l_0\) (the zeroth
link), followed by the actuated links. So a "two-link arm" holds three links in
total; in code, links[0] is the base and links[1:] are the movable joints.
Contents
- Kinematics
- Forward kinematics of a two-joint arm.
- Analytic inverse kinematics (elbow-up / elbow-down).
- Differential Kinematics
- From a two-joint arm to the general \(n\)-joint recursion.
- Recursive position, velocity, and acceleration.
- Jacobian matrix and centripetal/Coriolis basis (with endpoint velocity/acceleration helpers).
- Inverse Dynamics
- Newton-Euler equations and mass properties.
- Backward force and torque balance recursion.
- Static-equilibrium validation.
- Forward Dynamics
- Lagrangian formulation.
- System Inertia Matrix (\(H\)) and Bias Force Vector (\(b\)).
- Equation of Motion: \(H\ddot{q} + b = \tau + J_E^{T} f_E\).
- Numerical Methods
- Linear Equation Solver (Gaussian Elimination).
- Least-squares, pseudoinverse, and damped least-squares solves.
- ODE Solver (Euler, Runge-Kutta).
- Numerical Inverse Kinematics
- Newton-Raphson, pseudoinverse, SR inverse, and Levenberg-Marquardt IK.
- Sugihara-style residual-based damping for robust numerical IK.
- Trajectory Tracking Control
- Task-space trajectory planning and joint-space tracking.
- PD, inverse-dynamics feedforward, and computed torque control.
- Reaching Control
- Reaching as a trajectory-tracking task.
- Virtual spring-damper reaching and Seto/Sugihara online reference shaping for human-like motion.
- Trajectory Filtering & Interpolation
- Linear, natural cubic spline, and barycentric Lagrange interpolation.
- First-order and Butterworth low-pass smoothing, applied zero-phase.