Thu Dau Mot University

Robot system

What sits between your code and the moving arm

← back to the platform

A command starts at an operator interface, is turned into joint angles by kinematics, is corrected against what the encoders actually measure, and only then becomes current in a motor. The boxes with the amber border are the ones you write in this course; this platform is the reference for the one in the middle of them — the kinematics core.

Operator interface Application target pose to reach the work sequence what the job is Teach pendant jog, teach points servo on / off E-stop, enabling switch Control PC The code you write Motion planner path and timing interpolation, limits Kinematics core the DH table IK: pose → q_ref FK: q_actual → pose Position controller e = q_ref − q_actual PID / computed torque one command per joint Safety controller E-stop, zone monitoring inhibits the command path Power Servo drives velocity loop ~4 kHz current loop ~16 kHz command → PWM one drive per axis Mechanical arm Joint motors axes 1..n gearbox, holding brake Encoders measured angle q_actual absolute / incremental Gripper / tool open and close tool frame offset target pose jog command path samples q_ref joint command power current the shaft turns tool signal E-stop chain inhibit q_actual q_actual inner loop one measured q_actual, fed back three times — this is where every loop closes Where this course sits Forward kinematics: given q, where is the tool? — the kinematics core, and the arm it describes. Inverse kinematics: given a pose, what q? — the same box, driven by the planner above it. What the simulator does not model gravity and inertia · gear backlash and compliance · motor torque limits · servo tuning and lag · encoder resolution · thermal drift · cycle time · the safety chain A pose the simulator reaches instantly may be slow, or unreachable, on the real machine.
the code you write — this platform is its reference operator input power electronics the physical arm the command chain, pose → q_ref → current q_actual measured and fed back safety, independent of the control path

Reading it as a control loop

StageRuns onInputOutputTypical rate
Motion plannercontrol PC — your codetarget pose, speed path samples~100 Hz
Kinematics corecontrol PC — your codea pose (IK) or q_actual (FK) q_ref per axis, or the measured poseper sample
Position controllercontrol PC — your codeq_ref − q_actual velocity or torque command~100 Hz – 1 kHz
Velocity loopservo drivevelocity error current command~4 kHz
Current loopservo drivecurrent error PWM to the motor~16 kHz
Encoderthe armshaft angle q_actual, back to all threecontinuous

Each loop is nested inside the one above it and runs faster. Kinematics — what this course is about — decides what q should be; everything below decides how the motor gets there and how quickly it recovers when the load changes. The same encoder reading is used twice: the position controller subtracts it to get an error, and forward kinematics turns it into where the tool really is.