The Arm and ROS 2
Paper first, then simulation, then metal. The kinematics get derived by hand and the torque budget gets computed before anything is ordered or printed, so that when real hardware arrives it is the only new variable in the system.
What this teaches me
- Done when
- A physical arm commanded in Cartesian space.
- Progress
- 0 of 15 sessions0%
Gate tag: v0.2-stage2-exit
Sessions 24 to 28
Paper
Kinematics derived by hand and a torque budget that changes the parts list, before any money is spent or any part printed.
- Not built yetSetup, no write-up
The host, proven
State which parts of the ROS 2 stack cannot run under WSL and why, as a property of the kernel rather than a rule.
- Not built yetSetup, no write-up
ROS 2, the graph, and a stop condition
Work out from the command line alone what a running ROS 2 system you did not write is doing.
- Not built yet
Forward kinematics, derived
Derive forward kinematics for a two-link arm by walking the chain, and state the reachable workspace as two radii.
- Not built yet
Inverse kinematics, derived
Derive inverse kinematics from the law of cosines, explain the two solutions, and say what a singularity is in terms of a determinant.
- Not built yet
The torque budget: the session that changes your parts list
Compute a static torque budget from a mass table, and defend a rejected option with the arithmetic that rejected it.
Sessions 29 to 32
Simulation
CAD, URDF, physics and the full control stack against mock hardware, so that real hardware is the only new variable.
- Not built yet
CAD, and design for printing
Turn a CAD model into a source of masses and inertias, and explain why print orientation is a structural decision.
- Not built yet
URDF, and seeing it in rviz2
Describe a robot as a tree of frames with a joint origin between each pair, and check it against your own kinematics.
- Not built yet
Gazebo Harmonic
Say what a simulator needs that a visualiser does not, and recognise which one is missing from how the arm misbehaves.
- Not built yet
ros2_control with mock hardware
Explain the ros2_control seam, swap the hardware behind a live controller stack by changing one string, and diagnose an inert controller.
Sessions 33 to 38
Hardware
Print, assemble, build the gripper, bridge the two layers, home it, and command it in Cartesian space.
- Not built yet
Print and assemble
Size a printed fit from a measured coupon rather than a nominal dimension, and state your machine's actual dimensional error.
- Not built yet
The gripper: the end effector everything downstream assumes
Size an actuator from a required grasp margin rather than a guessed derate, and explain why an open-loop servo cannot report a grasp.
- Not built yet
The hardware interface: where the two layers meet
Explain where a real-time control loop ends and a soft-real-time host begins, and why read() and write() must not block.
- Not built yet
Homing and calibration
Explain why an incremental encoder needs homing, and derive a homing speed from switch bounce and loop rate.
- Not built yet
MoveIt 2 and Cartesian commands
Command a pose rather than a set of angles, and check a planner's answer against kinematics you derived yourself.
- Not built yet
Record and replay
Record and replay a running robot, and compute the same four step-response numbers from a bag that you computed from a CSV.