UR16e Industrial Robot — Modeling, Planning, and Control
Kinematics, dynamics, collision detection, RRT+B-spline planning, time-optimal trajectory generation, and computed-torque/robust control with Simulink-URDF simulation.
This project focuses on the UR16e industrial manipulator, completing a full pipeline from kinematic and dynamic modeling, collision detection, path planning and smoothing, and time-optimal trajectory generation to controller design and simulation.
The system is validated by importing the SolidWorks assembly into MATLAB/Simulink through URDF, supporting a flexible manufacturing scenario involving pick-and-place and palletizing tasks.
1. Kinematic and Dynamic Modeling
- Forward Kinematics (FK): Established using DH parameters for a 6-DOF joint chain; results verified with MATLAB’s Robotics Toolbox.
- Inverse Kinematics (IK): Applied the Newton–Raphson iterative method (after testing the spherical-wrist approximation) to solve joint angles; consistent with toolbox results.
- Inverse Dynamics (ID): Implemented the Newton–Euler recursive algorithm from end-effector to base to compute joint torques.
- Forward Dynamics (FD): Derived (M(q)), (C(q,\dot q)), and (G(q)) via the Lagrangian formulation: [ M(q)\ddot q + C(q,\dot q)\dot q + G(q) = \tau ] enabling computation of joint accelerations consistent with the analytical model.
2. Collision Detection via Capsule Approximation
- Link Modeling: Each link is approximated as a capsule (cylinder with hemispherical ends), while obstacles are enclosed by bounding spheres.
- Environment Collision: Reduced to computing the minimum point–segment distance versus the sum of radii.
- Self-Collision: Converted to segment–segment distance checks between link pairs. Four relative cases are defined for robust detection.
- During motion planning, the detector is called online rather than pre-computing the entire free space.
3. Path Planning and Smoothing
- Task Scenario: pick–place and palletizing operations in a flexible manufacturing cell.
- RRT: Implemented in the joint space, adopting a goal-biasing strategy for faster convergence.
- B-Spline Smoothing: Applied cubic B-spline interpolation (de Boor–Cox recursion and matrix form) to smooth RRT piecewise paths.
4. Time-Optimal Trajectory Generation
Under joint velocity, acceleration, and torque limits, the trajectory timing is optimized to minimize total execution time: [ \min \sum_k \Delta t_k ] A nonlinear time-scaling and re-parameterization ensure that all kinematic and dynamic constraints are satisfied.
5. Control Design and Robustness Evaluation
- Computed-Torque Control (CTC): [ \tau = M(q)(\ddot q_d + K_p e + K_d \dot e) + C(q,\dot q)\dot q + G(q) ] achieving accurate tracking of the reference trajectory.
- Robust Control: Added compensation for model uncertainties; stability guaranteed by Lyapunov conditions on (P,Q).
- Disturbance Tests: Injected joint measurement noise, torque noise, and parameter perturbations in (M(q)) and (G(q)) to evaluate tracking stability.
6. System-Level Simulation (URDF → Simulink)
- Defined coordinate frames via MDH/DH and exported URDF from SolidWorks.
- Imported into Simulink using
smimport, built the system diagram, and simulated the collision-free trajectory animation.
Tools
MATLAB / Simulink · Robotics System Toolbox · Custom geometric collision module (capsule–sphere) · RRT + B-spline · SolidWorks → URDF
Files
- Report PDF:
assets/pdf/ur16e_report.pdf - Code/Simulation: GitHub Repository →