ORION · Motor Cortex

CHIRON.

Cybernetic Hardware Interface for Robotic Operations & Networking

A robot motor cortex that translates high-level commands into physically intelligent motion. It measures its own gripper, reasons about object geometry, plans collision-free paths, and executes pick-and-place sequences with automatic failure recovery.

Runs in MuJoCo simulation at ~500 Hz with a live 3D viewer and browser dashboard. No external planning library required.

~500Hz
Physics Tick
5mm
IK Tolerance
9phase
Sequencer
0
Hardcoded Dims
Project Classification
Robotics Control Stack
IN_DEV
RoleMotor Cortex
Portlocalhost:8200
Target HWSO-ARM 101
SimulationFranka Panda
StackPython 3.11
Built By
Swan Yi Htet
+ David Young
FIG · 01 · Demonstration demo_001.mp4

Pick-and-place with custom placement, stacking, and automatic stack decomposition. CHIRON detects a blocking sphere and clears it autonomously before executing the command.

§ 01

Pipeline Overview

A pick-and-place command triggers a multi-stage intelligent pipeline: the gripper self-measures from the robot model, a cross-section profiler finds the optimal grip point, the scene analyzer computes collision-free transit corridors accounting for the full gripper envelope, and a 9-phase sequencer executes the motion with grasp verification, adaptive height selection, and automatic retry.

If the target is buried in a stack, CHIRON decomposes the task and clears obstructing objects first. One user command, multiple intelligent sub-steps.

Observed Behavior
01 Pick red cube → green target
02 Move target to new position
03 Pick cylinder → new target
04 Stack sphere on cylinder
05 Command: move cylinder
sphere obstructs target...
auto-clear sphere, then pick
§ 02

Self-Measuring Gripper

CHIRON inspects the MuJoCo model at startup and measures its own hand: finger offset from the hand body, pad contact height, pad bottom extent, maximum and minimum opening, actuator range. Every dimension is read from the model geometry.

Swapping the robot (Franka Panda → SO-ARM 101 → any MJCF arm) requires zero code changes. CHIRON re-measures itself and adapts all grasp computations.

startup_log.txt
$ python main.py --render
[INFO] Loading MuJoCo model...
[INFO] Measuring gripper geometry...
Gripper measured:
  finger_offset = 0.0962 m
  pad_bottom   = 0.1084 m
  opening      = [0.0000, 0.0800] m
  pad_height   = 0.0331 m
[READY] Dashboard: localhost:8200
§ 03

Scene-Aware Motion

Every lateral move goes through strict UP → ACROSS → DOWN decomposition. The arm never moves horizontally below safe height. Each sub-move changes only one axis direction, so joint-space interpolation stays close to a straight Cartesian line.

A Approach Height

Clears all objects with the full gripper envelope (hand body + finger pads). Prevents fingers from clipping during horizontal approach.

B Carrying Height

Path-specific corridor clearance. Only clears objects near the actual transit path. Accounts for how far the carried object hangs below the gripper.

C Adaptive Height

If the ideal carrying height is unreachable, steps down in 2cm increments until finding a height that's IK-reachable and physically safe.

§ 04

Failure Recovery

Pre-Check

Before touching anything, the sequencer solves IK for all 6 waypoints. If any is unreachable, fail immediately. No object disturbed.

Grasp Verify

After closing, a small test lift checks if the object moved with the gripper. Second check after full lift catches slip during ascent.

Auto Retry

On grip failure: wait for physics to settle, re-scan to find where the object ended up, retry from new position. Up to 3 attempts.

Safe Recovery

If anything fails mid-sequence while holding an object: open gripper, retreat upward (never down), return to ready via safe path.

§ 05

Architecture

CHIRON Server
FastAPI · Port 8200
Gripper Model
(measured)
Grasp Computer
(profiling)
Scene Awareness
(spatial)
Pick-and-Place Sequencer
Pre-check · 9-phase · Verify · Retry · Safe
Damped Least-Squares IK
1000 iter · 5mm tolerance
RobotBackend (ABC)
MuJoCoBackend | ServoBackend (planned)
Trajectory Recorder
→ DAEDALUS physics discovery
WebSocket / REST
Live Dashboard + 3D Viewer
Browser · localhost:8200 + MuJoCo