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.
the code you write — this platform is its referenceoperator inputpower electronicsthe physical armthe command chain, pose → q_ref → currentq_actual measured and fed backsafety, independent of the control path
Reading it as a control loop
Stage
Runs on
Input
Output
Typical rate
Motion planner
control PC — your code
target pose, speed
path samples
~100 Hz
Kinematics core
control PC — your code
a pose (IK) or q_actual (FK)
q_ref per axis, or the measured pose
per sample
Position controller
control PC — your code
q_ref − q_actual
velocity or torque command
~100 Hz – 1 kHz
Velocity loop
servo drive
velocity error
current command
~4 kHz
Current loop
servo drive
current error
PWM to the motor
~16 kHz
Encoder
the arm
shaft angle
q_actual, back to all three
continuous
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.