ORION / MOTOR_CORTEX

CHIRON

Cybernetic Hardware Interface for Robotic Operations & Networking

CHIRON is 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.

The entire system 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_DEVELOPMENT
Role Motor Cortex
Port localhost:8200
Ecosystem ORION
Target Hw SO-ARM 101
Simulation Franka Panda
Language Python 3.11
Timeline Jan 2026 - Present
Built By
David Young
+ Swan Yi Htet
Fig 01 / Demonstration demo_001.mp4

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

01 / Pipeline Overview

What It Does

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 on the target object, 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 decomposes into 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 / Hardware Abstraction

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, and actuator range. Every dimension is read from the model geometry.

This means swapping the robot model (Franka Panda SO-ARM 101 any MJCF arm) requires zero code changes. CHIRON re-measures itself and adapts all grasp computations to the new gripper.

No hardcoded gripper dimensions anywhere
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: http://localhost:8200
03 / Geometry Reasoning

Geometry-Based Grasp Computation

Given an object's shape and dimensions (from BROTEUS in production, from MuJoCo ground truth in simulation), the grasp computer finds the optimal grip through cross-section profiling.

The Algorithm
  1. 01 Sample the object's width at 20 heights
  2. 02 Find all heights where the width fits the gripper
  3. 03 Select the widest cross-section (maximum contact area, maximum friction)
  4. 04 Clamp so the entire finger pad contacts the surface, never gripping at the edge where half the pad is in empty air
One Generic Algorithm, No Per-Shape Branches
Box / Cylinder
Constant width everywhere highest valid point wins (least hangover), clamped by pad height
Sphere
Equator wins naturally (widest cross-section). Gripper opens past the maximum diameter during approach
Grip Force

Close fully. The object physically blocks the fingers. The actuator force against the object is the grip force. This is how real parallel-jaw grippers work.

04 / Motion Intelligence

Scene-Aware
Motion Planning

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.

Motion Primitive
1. lift // up
2. traverse // across
3. descend // down
Never horizontal below safe height. One axis per sub-move.
A Approach Height

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

B Carrying Height

Path-specific corridor clearance. Only clears objects near the actual transit path, not everything on the table. 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. Floor = table + hangover + gap.

Retreat Logic

Every retreat goes UP: max(carrying_z, place_z, approach_z)

After stacking an object at z=0.61, the arm retreats to z=0.70 (the carrying height). Never descends through what it just built.

05 / Task-Level Intelligence

Smart Task
Decomposition

When the target object is buried in a stack, CHIRON automatically plans a multi-step sequence.

The clear spot is computed by searching a grid within the arm's workspace for the position farthest from all existing objects and the final target location.

One user command, multiple intelligent sub-steps.

sequencer_log.txt example
# User command:
pick green_cylinder
TASK DECOMPOSITION:
'green_cylinder' has 1 object(s)
above it: ['blue_sphere'].
Clearing stack first.
CLEARING:
Moving 'blue_sphere' to
temp [0.35, 0.20]
→ picks sphere, places at clear spot
TARGET:
Picking 'green_cylinder'
→ now unobstructed, picks cylinder
06 / Robustness

Failure Recovery

Pre-Check

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

Grasp Verify

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

Auto Retry

On grip failure: wait for physics to settle, re-scan the scene to find where the object ended up, and retry from the 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.

07 / System Architecture

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
08 / Ecosystem Context

Part of ORION

CHIRON is one piece of a larger modular robotics ecosystem. The target hardware is an SO-ARM 101, a 6-DOF arm where BROTEUS provides perception, CHIRON drives the joints, and DAEDALUS closes the sim-to-real gap.

ATHENA
Navigation
Pathfinding
Terrain
BROTEUS
Perception
Grasp intel
Gestures
CHIRON
Motor cortex
IK solver
Sequencer
DAEDALUS
Physics
discovery
SINDy
RL PIPELINE
PPO / SAC
ONNX
50-200 Hz

BROTEUS sees. ORION decides. CHIRON moves. DAEDALUS calibrates.

09 / Technical Stack

Tech Stack

Simulation MuJoCo 3.x (~500 Hz)
Robot Model Franka Emika Panda
IK Solver Damped Least-Squares Jacobian
Trajectories Quintic smoothstep
Grasp Planning Cross-section profiling
Scene Reasoning Corridor clearance
Server FastAPI + WebSocket
Frontend Vanilla JS/CSS