Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

control

Documentation hub and submodule index for the Hyperloop UPV control team.

This repo contains almost no MATLAB code. It holds the writing that explains the team's control work, and it points at the repositories that actually contain the algorithms and models, as Git submodules under src/.


Repository roles

There are three kinds of repo. Mixing them up is the main source of mess here.

Kind Where What it is
This hub Hyperloop-UPV/control Cross-project docs, decisions, and the submodule index. This repo.
Project Hyperloop-UPV/<project> One control algorithm or model. Bootstrapped from control-template. Holds all .slx/.m/.ssc.
Library Hyperloop-UPV/<library> Simscape block libraries and shared function libraries, shared across projects.

Project conventions — layout, coding standards, LFS, codegen, testing — are owned by control-template and are not repeated here. Each project repo carries its own copy, so a project can be read and cloned on its own. This repo only documents what spans more than one project.


Projects

Repo Path Kind Purpose Maintainer
— src/algorithms/ project
— src/models/ project
— src/libraries/ library

Keep this table current. For most people it is the only thing they read.


Getting set up

git clone --recurse-submodules git@github.com:Hyperloop-UPV/control.git

Already cloned without submodules? Run:

./tools/sync-all.sh

A git pull in this repo does not advance your submodules. It only moves the pointers. Run ./tools/sync-all.sh afterwards to actually get the new commits.


Documentation

Section Contents
docs/submodules.md How the submodule index works, and how to add a project
docs/decisions/ Decisions that span more than one project
docs/hil/ Team-wide hardware-in-the-loop rig notes
docs/meeting-notes/ Notes and pointers to decisions
docs/templates/ Starting points for new documents

Per-project documentation lives in that project's own docs/ folder, per control-template. Design rationale for a single loop belongs with the loop.


Tools

Script Purpose
tools/add-submodule.sh Register a new project repo as a submodule
tools/sync-all.sh Init/update all submodules
tools/check-repo.sh Hygiene check: no MATLAB committed here, pointers sane

About

Base repository for the control team, all the documentation lives here, as well as the different control algorithms submodules

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages