Kostka Brian

Kostka Brian je kompatibilní se staršími kostkami LEGO Mindstorms EV3 a LEGO Mindstorms NXT, které se již nevyrábí a nejsou podporované firmou LEGO.

Základní informace

Kostka Brian je náhrada za starší kostky LEGO Mindstorms EV3 a LEGO Mindstorms NXT, které se již nevyrábí a nejsou podporované ze strany firmy LEGO. Kostka Brian umožní pokračování velmi populární ROBOSOUTĚŽE a uplatnění najde i ve výuce technických předmětů na středních a vysokých školách. Brian umožňuje zpětnou kompatibilitu se senzory a motory předchozích řad LEGO Mindstorms EV3 a LEGO Mindstorms NXT, ale umožňuje i připojení nově vyvinutých senzorů a motorů (umožní realizaci nové stavebnice Brian).

Brian a vlastní programy v něm běžící mohou

  • Připojit a použít až 4 LEGO senzory (EV3, NXT a Brian)
  • Připojit a použít až 4 LEGO motory (EV3 a NXT) nebo jiné motory (probíhá jejich vývoj)
  • Spojit více kostek Brian dohromady
  • Připojit se s ostaními kostkami Brian, počítačem nebo telefonem pomocí WiFi sítě (zatím není podporováno v FW, pouze HW)
  • Přehrávat zvuk pomocí vestavěného reproduktoru nebo 3.5mm jacku
  • Přistupovat k informacím na SD kartě. SD karta je nezbytnou součástí, protože všechny uživatelské programy jsou uloženy na ní
  • Programování v programnovacím jazyce MicroPython (plně funkční) a Scratch (připravuje se) 

Motory a senzory podporované kostkou Brian

Motory a senzory ze stavebnice LEGO Mindstorms EV3

Motory a senzory ze stavebnice LEGO Mindstorms NXT

Senzory ze stavebnice Brian

Programování

Dokumentace k projektu (pouze v angličtině)

a Brian_python_docs

Přehled architektury a funkcionalit

Popis

Brian využívá hlavního procesoru ESP32-S3-WROOM-1 a koprocesoru STM32G0B1VET6 (Dále jen jako ESP a STM). Hlavní čip (ESP) slouží pro spouštění uživatelských programů, ovládání displaye, připojení s počítačem, uživatelskou interakci (běží na něm BLink (Brian Link) – mini “operační systém”, který spojuje různé komponenty a zajišťuje grafické rozhraní). Koprocesor (STM) má na starosti pseudo-realtimeové operace související s ovládáním portů, řízením motorů, implementací sensorových protokolů, řízení nabíjení akumulátoru a komunikace s PD nabíječkou, vnitřní ovládání napájecích větví, vypnutí a zapnutí kostky, atp.

Sensor porty (ovládány pomocí STM) podporují následující funkce:

  • Poskytování stabilizovaného 5V napětí, s proudovou ochranou na 500mA (každý port zvlášť)
  • Možnost programatického vypnutí a zapnutí napětí na portu – ekvivalent tvrdého odpojení a restartu sensoru
  • Možnost poskytnutí 9V na pinu 1 (pro NXT ultrazvuk)
  • Podpora měření analogových sensorů přes pin 1
  • Podpora měření analogových sensorů přes pin 6
  • Podpora I2C sensorů
  • Podpora UART sensorů
  • Podpora reversed UART sensorů/připojení (otočení funkce RX a TX pinů. Umožňuje spojení více kostek do větší sítě pomocí UART komunikace)
  • AD - Autodetekce jednotlivých typů sensorů a jejich příslušných režimů/konfigurace pinů.

Motor porty (ovládány pomocí STM) podporují následující funkce:

  • 5V zdroj, pro čip v motoru nebo napájení enkodérových LEDek
  • 0-9V regulovaný (PWM) výstup na pinech 1 a 2, pro přímé obousměrné ovládání DC motorů
  • Enkodérový vstup (podpora analogových motorů)
  • Podpora UART komunikace (motory s digitálním ovládáním)
  • Podpora reversed UART komunikace (otočení funkce RX a TX pinů. Umožňuje spojení více kostek do větší sítě pomocí UART komunikace)

ESP a STM procesory si navzájem povídají pomocí dedikovaného SPI spojení. Hodiny sběrnicě tikají na 27Mhz a jednotlivé zprávy jsou posílány a zpracovávány v obousměrné 500Hz smyčce.

Výroba

Náhled na použité díly a celkové sestavení

Elektronika - plošné spoje

Elektronika Briana se skládá ze dvou desek, horní a spodní. Každá má dvě strany:

Horní deska, horní strana

Horní deska, spodní strana

Spodní deska, horní strana

Spodní deska, spodní strana

Mechanická konstrukce

Kostka se skládá ze sedmi tištěných dílů krytu, horní a spodní desky plošných spojů, displeje, reproduktoru a dvou lithiových akumulátorů. Jednotlivé součásti jsou pospojovány různými šrouby, které nejsou na obrázku zobrazeny. Konkrétně jde o 6 kusů 6x2,2mm s kulatou hlavou, 4 kusy 12x2,2mm se zápustnou hlavou a 2 kusy 10x2mm se zápustnou hlavou černé barvy.

Horní, spodní kryt a kryt akumulátorů jsou tištěny z černého PETG, ostatní části jsou vytištěny z Pearl White PLA.

Práce s kostkou

Originální a pravidelně aktualizovaný text brian_getting_started

 

Aktualizace firmware

Firmware lze aktualizovat pomocí online nástroje v prohlížeči založeném na Chromiu (Microsoft Edge, Google Chrome, ...).

Aktualizace firmwaru

 

Technické informace ke kostce Brian

Podrobné technické informace

 

Kostka Brian byla vyvinuta firmou Voltavian pro FEL ČVUT v Praze na základě „Smlouvy o spolupráci ve výzkumu a vývoji“.