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ě)
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, ...).
Technické informace ke kostce Brian
Kostka Brian byla vyvinuta firmou Voltavian pro FEL ČVUT v Praze na základě „Smlouvy o spolupráci ve výzkumu a vývoji“.