Skip to content

Latest commit

 

History

47 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reborn — Human-in-the-loop Assistive Robotics System

Reborn is a research and engineering program studying the decision-making process of an assistive robotic system under uncertainty, using a safety-first, human-in-the-loop active elbow orthosis as the concrete vehicle.

The central research question:

How should an assistive robotic system determine the appropriate level of assistance under uncertain sensing conditions?

EMG, IMU, sensor fusion, ML, and the orthosis itself are tools here, not the research object — see docs/research/research-context.md. The guiding design hypothesis:

The primary objective of an assistive robotic system is not to maximize assistance. It is to maximize appropriate assistance.

In assistive systems, the worst failure is not "no help" — it is unexpected help.

This repository holds two things side by side:

  • Research (notebooks/, papers/) — open-data ML experiments and the papers built on top of them.
  • The Reborn system (reborn/, sim/) — a Python package implementing the sensing → decision → actuation → safety control loop, runnable today in simulation and, later, on real hardware.

The system is built around a hardware abstraction layer (HAL): control, decision, and safety code only ever talk to SensorSource/ActuatorSink interfaces, never to a specific backend. See docs/architecture.md for details — this is the central design decision of the project.

Repository layout

reborn/
├── docs/           # architecture, safety, data protocol, experiment plan, roadmap
├── reborn/         # the Python package — hal/, sensing/, plant/, control/, decision/,
│                   # safety/, ml/, data/, logging/
├── sim/            # runnable simulation experiments (entry points into the package)
├── notebooks/      # open-data ML exploration (phase B)
├── data/           # dataset pointers only — no data files committed
├── experiments/    # run configs and results
├── papers/         # one folder per publication, each citing a code/data git tag
├── firmware/       # hardware stage (not started)
├── assets/         # diagrams, photos, demo material
└── tests/          # unit tests — safety layer is not optional coverage

Status

Engineering proceeds in two stages: simulation first, then hardware. Today, the HAL and the sim backend are real and usable; decision/, safety/, and logging/ have working minimal implementations; data/ (dataset backends, QC-gated preprocessing, evaluation protocols) is real and tested; plant/, control/, and ml/ are skeletons awaiting phase C/B work. See docs/roadmap.md for the full research plan and sim/run_baseline_loop.py for the current minimal working loop.

Getting started

pip install -e ".[dev]"
pytest
python sim/run_baseline_loop.py

Data

No dataset files are committed. The notebooks and the reborn/data/ loaders expect public EMG datasets downloaded locally under data/ — see data/README.md for the layout convention and docs/research/phase-b-plan.md for which dataset isolates which factor. Each dataset is used under its own license; cite its canonical reference in any work built on it.

Key documents

Explicitly out of scope

Medical certification or clinical claims, product-level mechanical design, and ML-driven autonomous control are all intentionally excluded. This is a research and engineering case, not a product or a clinical claim.

Citing this work

See CITATION.cff.

About

Modular safety-first control architecture for a human-in-the-loop active elbow orthosis with EMG, IMU, simulation, and bounded ML. Researching how assistive robotic systems should determine appropriate assistance under uncertain sensing conditions.

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages