Arm design

Sweep the arm. Find the one that reaches.

One study file names the links to vary, the workspace, the payload, the obstacles and the limits. CommandAGI scores every variant, ranks them, and steps the best one in the physics engine.

Simulado: un brazo SO-101 con el brazo y el antebrazo más largos baja dentro de una bandeja azul de 40 mm de fondo, con la pinza contra la pared frontal de la bandeja. Cada pieza se dibuja como las piezas convexas de colisión que usa el motor de física, en blanco, con los ángulos de las articulaciones que el motor tenía a los 5,200 s de la ejecución.
Simulated. Variant v17 of the SO-101 at 5.200 s of its engine run, the step its gripper first touches the tray, on its front wall. Each collision piece is drawn at the joint angles the engine held. Rendered in Blender's path tracer.

Case study · the SO-101's reach

The arm as made reaches 63.9%. v17 reaches 95.6%.

The study varies three lengths of the SO-101 follower arm: the upper arm, the forearm and the elbow offset. It sweeps 18 variants. Each one must pick from above at 252 points of a 200 × 150 mm patch, with 0.5 kg in the gripper, inside a tray 40 mm deep. A point counts only if a pose reaches it and no link touches the tray, the table, the base or the arm itself.

of the patch for v17 (241 of 252 points): a 140 mm upper arm and a 150 mm forearm
95.6%
for the SO-101 as made, 15th of 18
63.9%
variants pass all three limits (coverage 0.9, manipulability 60 mm/rad, torque 0.7 of rated)
4 of 18
for the whole sweep, 8 starting poses for each point
26.2 s

Simulated

Coverage of each variant, without the tray and with it
Los números
Coverage of each variant, without the tray and with it
Variant, in rank orderWithout the tray (2026-11-03)With the tray
v1798.8%95.6%
v1898.4%94.8%
v1595.6%92.9%
v1695.2%91.7%
v1192.9%89.3%
v1391.3%87.7%
v1290.5%86.9%
v988.5%85.3%
v1489.7%85.3%
v1086.1%81.8%
v781.3%76.6%
v879.4%74.6%
v573.4%71%
v670.6%67.1%
v3 (as made)68.2%63.9%
v465.9%61.1%
v160.7%55.6%
v259.5%54.4%
ProcedenciaArchivo cloud://global/examples/arm-design/Reach.study.tsxEjecución runs/20261105t154819z-e4ioResultado case-studies/arm-design/stats.jsonHerramienta commandagi study run Reach.study.tsxSe ejecutó en This computer (dell-gb10-1)Cuándo

One obstacle changes the answer

A 40 mm tray takes three arms below the limit.

The tray is one line of the study: <obstacle id="tray" … wall={4} />. Every variant loses 6 to 13 points of the grid to it, each one a pose whose gripper meets a wall. v17 still ranks first. v11, v13 and v12 passed the 0.9 coverage limit before the tray, and now they do not. v9 and v14 change places. A ranking that ignores what is around the arm picks the wrong arm.

Open the studySee physics worlds

Simulated

points of v17's grid lost to the tray, 11 of the SO-101's as made
8
for v11, below the limit
92.9% → 89.3%
for v13 and 90.5% → 86.9% for v12
91.3% → 87.7%
v17's lowest manipulability (the limit is 60)
143.4 mm/rad
ProcedenciaArchivo cloud://global/examples/arm-design/Reach.study.tsxEjecución runs/20261105t154819z-e4ioResultado case-studies/arm-design/stats.jsonHerramienta commandagi study run Reach.study.tsxCuándo

The best arm, in the engine

The ranking says v17 passes. The engine says its servos cannot keep up.

The study then steps v17's whole trajectory through its 241 reached poses in the physics engine, 1,000 steps a second, with the servos' torque and speed limits. The static check passes at 0.585 of the rated torque. In motion, the servos are at their limit for most of the run, and the tool point falls far behind its path. The gripper also touches the tray between two reached poses: the pose check does not test the moves between poses, and the engine finds the contact. The case study stepped the trajectory again from the same files and got the same figures, step for step.

engine steps, 44.7 s of motion
44,741
with a servo at its rated torque (elbow 29.7 s)
35.2 s
the furthest the tool point fell behind its path
74.2 mm
touches of the tray, 1 to 2 ms each, 0.027 s in all
26

Simulated

Simulado: el mismo instante en un encuadre vertical: la variante v17 del SO-101 de lado, con la base a la izquierda y el brazo arqueado hacia la bandeja azul, la pinza tocando la pared frontal de la bandeja. Dibujado a partir de las piezas de colisión del motor a los 5,200 s.
ProcedenciaArchivo cloud://global/examples/arm-design/Reach.study.tsxEjecución runs/20261105t154819z-e4ioResultado case-studies/arm-design/stats.jsonHerramienta scripts/sites/case-studies.mjs arm-design (sim-engine.js, Rapier)Se ejecutó en This computer (dell-gb10-1, 20 cores)Cuándo

What this is not

A ranking of the declared model, not physical evidence.

The SO-101's values come from its URDF and MJCF, and the definition says verified: "none". The rated torque is the MJCF's force range. Each of the five links is parametric CAD (a printed PLA body and the STS3215 it carries as its case), built by the 3D kernel at each length, and their masses come from the kernel. At the SO-101's own lengths each weighs within 3% of the SO-101's model. The printed walls are solid and the servo mass is the datasheet's, not weighed. The base's pieces are its visual meshes, cut into convex pieces. The tray is a declared box. No arm of these lengths has been built or measured. A physical run of a built v17 is what would make it evidence, and its records would never mix with these.

physical runs of any variant
0
the definition's verified level
none
checks pass; dynamics is unknown
7 of 8
rated torque of each servo, from the MJCF
3.35 N·m
ProcedenciaArchivo cloud://global/examples/arm-design/devices/so101-reach/definition.tsxEjecución runs/20261105t154819z-e4ioCuándo

Put your arm through the study.

Name the links to vary, the workspace, the payload and what is in the way. Run the sweep, read the ranking, and adopt the best variant into the definition, in one file.