Programming Techniques

The algorithms robot arm software is built from

The written, language-independent techniques behind seeing, planning and moving: camera geometry, pose from points and calibration, matching and registration, least squares, RANSAC and filters, masks, clustering and 3D maps, sampling-based planning, inverse kinematics and MPC, PID, dynamics and safety monitoring, and state machines and behaviour trees. Each chapter puts the most used techniques first. Each page says where a technique is used on an arm, where it fails, and which library already does it.

8 chapters45 sections17 h 35 min of reading
0 of 45 sections read
  1. 01

    What Techniques Are

    This is the first page of Programming Techniques, which explains the methods that robot arm software is built from. A technique here means a fixed method that a person wrote down step by step, rather than something a computer…

    4 sections · 1 h 20 min

    1. 1.1Programmed, not learned20 min
    2. 1.2The building blocks17 min
    3. 1.3Choosing a technique17 min
    4. 1.4The map of techniques25 min
  2. 02

    Geometry and Cameras

    This chapter covers the techniques that turn pixels, frames and joint angles into positions you can trust. A robot arm can only move to a place given in metres, measured from its own base, but a camera only gives it pixels. So…

    6 sections · 2 h 5 min

    1. 2.1Geometry and cameras: overview13 min
    2. Most used2.2The pinhole camera model21 min
    3. 2.3Rigid transforms22 min
    4. 2.4Calibration26 min
    5. 2.5Pose from points: Perspective-n-Point21 min
    6. Also used2.6Multi-view geometry: depth from two pictures22 min
  3. 03

    Searching and Matching

    This chapter covers the techniques that find the closest thing, and decide which thing is which. Between them they answer three questions that come up again and again in robot-arm software. Which point, object or pose is nearest…

    5 sections · 1 h 45 min

    1. 3.1Searching and matching10 min
    2. Most used3.2Nearest-neighbour search20 min
    3. 3.3Iterative closest point30 min
    4. 3.4Assignment and matching23 min
    5. Also used3.5Image features and matching24 min
  4. 04

    Fitting and Estimation

    This chapter is about getting a clean shape or a steady number out of noisy measurements. This is difficult because every sensor on a robot arm gives readings that are a little wrong. For example, a depth camera's points scatter…

    6 sections · 2 h 25 min

    1. 4.1Fitting and estimation: an overview15 min
    2. Most used4.2Least-squares fitting24 min
    3. 4.3RANSAC: fitting when some points are wrong21 min
    4. 4.4The Kalman filter31 min
    5. 4.5Sensor streams: time stamps, filters and thresholds28 min
    6. Also used4.6System identification: measuring the numbers a model needs26 min
  5. 05

    Image and Point Cloud Processing

    This page opens the chapter on image and point cloud processing, which is the fourth of the seven families of technique in this book. These are the techniques that clean up and cut up pictures and point clouds, so that separate…

    6 sections · 2 h 40 min

    1. 5.1Image and point cloud processing: an overview16 min
    2. Most used5.2Thresholding and colour masks23 min
    3. 5.3Morphology and the distance transform24 min
    4. 5.4Clustering34 min
    5. Also used5.5Edges and contours35 min
    6. 5.6Volumetric maps26 min
  6. 07

    Control and Motion

    This chapter is about turning a planned path into smooth, safe motor commands. It covers five techniques: proportional-integral-derivative (PID) control, trajectory generation, arm dynamics, safety monitoring, and impedance and…

    6 sections · 2 h 25 min

    1. 7.1Control and motion16 min
    2. Most used7.2PID control25 min
    3. 7.3Trajectory generation26 min
    4. 7.4Arm dynamics29 min
    5. 7.5Safety monitoring24 min
    6. Also used7.6Impedance and force control27 min
  7. 08

    Decisions and Task Logic

    This chapter is about the part of a robot program that decides what the robot does next, and in what order. The other chapters of this book find the mug, plan a path to it and move the joints. Because those chapters do the work…

    5 sections · 1 h 45 min

    1. 8.1Decisions and task logic12 min
    2. Most used8.2Finite state machines21 min
    3. 8.3Behaviour trees22 min
    4. Also used8.4Greedy algorithms and set cover22 min
    5. 8.5Optimisation solvers26 min
Next bookBook 7: Learned ModelsEvery kind of learned model a robot arm uses, in plain words