CortexPilot

CortexPilot vznikl v dobách, kdy slovo projekt ještě nebylo "vobnošený" (abych citoval klasika).
Jedná se o IMU jednotku a autopilota postaveného na procesoru třídy Cortex M3.
Celá věc se má tak, že v době vzniku (asi 5 let zpět) byl čas, něco peněz i patřičné nadšení. Jenomže životní události typu rekonstrukce domu a změny zaměstnání mě zbavily času a peněz. :-(
Zbylo pouze nadšení, které jak známo nestačí a okolní svět mi mezitím poněkud utekl.

Nicméně nevzdal jsem to. Původní řešení (koncepční, nerealizované) jsem poněkud zmodernizoval  a přes zimu 2013/2014 jsem projekt dovedl do úspěšného konce a hned vyzkoušel na populárních robotických soutěžích :-)

Proti všem předpokladům se jako řídící jednotka osvědčil poměrně dobře.
Pod pseudonymem "ND Team", coby mozek robota Robíka, se umístil takto:

Koncepce

Ze zdrojů dostupných online jsem vyrozuměl, že provozovat kompas (magnetomer) bez kompenzace náklonu nemá smysl.
Součástí řídící desky je proto devítiosá AHRS jednotka MPU6050 + HMC5883L.
Jak bylo očekáváno, moje aktuální znalosti matematiky nestačily na vlastní implementaci fůze senzorů, kterou bych stihl dodělat v rozumném čase. Použil jsem proto volně dostupnou implementaci pana Madgwicka.
Podařilo se mi dosáhnout 120 Hz refresh polohy - limitující je rychlost zvoleného magnetometru.

Inspiroval jsem se lidským mozkem, kde malý mozek řídí low-level funkce (orientace, rovnováha) a velký mozek zpracovává signály ze složitých senzorů (video) a plánuje chování celého systému.

Tato jednotka tedy funguje jako malý mozek a zajišťuje následující funkce:
- orientace robota v prostoru (pitch, roll, yaw - odolnost proti převrácení,
  zřícení ze svahu a zaujímání nevhodých póz vůbec)
- GPS
- 6x servo nebo PWM výstup
- 6x RC vstup
- řízení reguátoru motorů
- měření napětí a proudu z napájecích baterií (pohon a řídící elektronika)
- zpracování dat ze sonarů
- USB komunikace
- Bluetooth komunikace
- logování na uSD kartu
- RTC a další bižuterie

Technický popis

Firmware

Firmware zatím pouze heslovitě - později doplním detaily.