Pokud se věnujete hře LEGO Mindstorms NXT, určitě se časem dozvíte o Bricx Command Center. Toto prostředí, lépe známé jako BricxCC, je pro mnoho lidí klíčovým nástrojem, když vizuální software založený na blocích selhává a je potřeba doladit ovládání robota. V podstatě je BricxCC kompletní IDE pro psaní, kompilaci, stahování a správu programů. v NXT s agilitou a přesností.
BricxCC je nejen „dalším editorem“, ale také řídícím centrem pro NXT kostku: od prozkoumávání vnitřní paměti až po převod zvuků a přímé spouštění nebo zastavování programůPokud používáte NXT-G (prostředí založené na LabVIEW), zjistíte, že s BricxCC a programovacími jazyky jako NXC můžete z hardwaru NXT vytěžit maximum bez omezení čistě grafického přístupu.
Co je velitelské centrum Bricx (BricxCC)?
Velitelské centrum Bricx je integrované vývojové prostředí (IDE) pro jazyky NBC, NXC a NQC zaměřený na programování robotů LEGO Mindstorms. Byl vyvinut Johnem Hansenem pro Microsoft Windows a jeho cílem bylo zjednodušit úpravy, kompilaci a stahování programů do NXT. Ve skutečnosti Jeho rozhraní působí jako textový editor s roboticky specifickými „doplňky“což značně usnadňuje pracovní postup.
Projekt se zpočátku zaměřoval na RCX a tento odkaz zůstává: BricxCC umožňuje psát programy v NQC (ne tak docela C) pro RCX a NXTKromě práce s NBC (Next Byte Codes) a NXC (Not eXactly C) zahrnují jeho integrované nástroje utility pro prozkoumávání cihly. spravovat soubory, prohlížet LCD obrazovku NXT na počítači a pořizovat snímky obrazovky obrázek a video.
Pro stažení je klasickým odkazem stránka projektu: bricxcc.sourceforge.net. Tento nástroj poskytuje vrstvu kontroly, kterou standardní grafické prostředí nenabízí.A proto se stala populární mezi učiteli, nadšenci i soutěžícími ve vzdělávací robotice.
Jaký je účel BricxCC v NXT?
Každý, kdo chce „uvolnit plný potenciál“ čipu NXT, obvykle skočí na NXC a NBC, a právě zde přichází na řadu BricxCC: Umožňuje psát kód strukturovaným způsobem, kompilovat ho do formátu, kterému NXT rozumí, a spustit ho. k robotovi během několika sekund. Zjednodušuje také každodenní úkoly, jako je správa flash paměti, převod zvuku do kompatibilních formátů nebo řízení provádění programu.
Pokud pocházíte z ekosystému NXT-G, všimnete si výhod v plynulosti a výkonu: NXC je programovací jazyk na vysoké úrovni, podobný jazyku C, který je kompilován nad NBC.Souběžně s tím NBC nabízí syntaxi podobnou assemblerům pro ty, kteří se chtějí ponořit do detailů. V obou případech je Bricx Command Center ústředním bodem pro úpravy, kompilaci (F5) a stahování (F6) spustitelných souborů do bricku.
Instalace a první kroky s BricxCC
Instalace je rozdělena do dvou částí a je vhodné je dodržovat v tomto pořadí, abyste se vyhnuli chybám: Nejprve ovladače NXT, pak Bricx Command CenterOvladače lze nainstalovat z originálního CD nebo z oficiálních webových stránek LEGO Mindstorms; BricxCC se stáhne z příslušných stránek na SourceForge.
Při prvním otevření Bricx Command Center se zobrazí konfigurační dialogové okno. Doporučené možnosti jsou: Port: USB; Typ kostky: NXT; Firmware: StandardníS touto základní konfigurací IDE detekuje brick a umožňuje snadnou kompilaci a stahování.
- Kompilace programu: stiskněte tlačítko „Kompilovat program“ nebo klávesu F5.
- Pokud kompilace nevykazuje žádné chybyBinární soubor si můžete stáhnout do NXT pomocí klávesy „Stáhnout program“ (F6).
Jakmile je program načten, spusťte ho v menu NXT. Kroky v procesu zdění jsou:
- Přejděte do sekce „Moje soubory“.
- Vyberte „Softwarové soubory“ a vyberte název programu.
- Pro spuštění provádění použijte „Spustit“.
Pokud potřebujete podpůrné studijní materiály, k dispozici je dokument s názvem „Kurz programování LEGO NXT“ ve formátu PDF (příklad odkazu: NXT_NXC.pdf). Tento typ zdroje představuje prostředí, popisuje specifikace NXT a provádí první programy., což se ukazuje jako obzvláště užitečné ve vzdělávacích kontextech.
Integrované nástroje BricxCC

Kromě editoru a kompilátoru obsahuje BricxCC nástroje, které řeší běžné úkoly v NXT: NeXTExplorer se používá k nahrávání/stahování souborů, prozkoumávání a defragmentaci paměti pevného diskuObsahuje také hexadecimální prohlížeč pro zkoumání nízkoúrovňového obsahu.
Dalším pozoruhodným nástrojem je NeXTScreen, který zobrazí LCD obrazovku NXT na počítači Umožňuje také zachycovat obrázky a videa. To je velmi praktické pro demonstrace, projektovou dokumentaci nebo výuku, protože se vyhnete nutnosti ručního nahrávání malé obrazovky na obrazovku.
Konečně, BricxCC může Dekompilujte spustitelné soubory NXT .rxe do NBCTo usnadňuje analýzu stávajících programů, učení se z nich nebo jejich zpětné inženýrství pro vzdělávací účely.
Podporované jazyky a formáty
Ekosystém BricxCC se točí kolem tří jazyků: NBC (kódy dalšího bajtu), NXC (ne přesně C) a NQC (ne tak docela C)NBC je otevřený, lehký a přímočarý jazyk ve stylu assemblerů. NXC se spoléhá na kompilátor NBC a nabízí syntaxi podobnou jazyku C, což ho činí pohodlnějším pro složité projekty. NQC byl mezitím klasickým mostem k RCX a v určitých scénářích je stále užitečný.
Pokud jde o formáty, Rozšíření NQC se může zobrazovat jako „Soubor se zdrojovým kódem, který není zcela C“ v některých softwarových databázích. Existují komerční reference třetích stran (například Solvusoft nebo jeho FileViewPro), které toto rozšíření uvádějí; v každém případě budete v pracovním postupu Bricx Command Center pracovat hlavně se zdrojovými kódy NXC/NBC a spustitelnými soubory generovanými pro NXT.
Firmware, SDK a oficiální dokumentace
LEGO vydalo Firmware NXT jako open source Spolu se schématy hardwaru to otevřelo dveře k dynamickému ekosystému nástrojů a jazyků. Existuje několik velmi užitečných vývojových sad:
- Sada pro vývojáře softwaru (SDK)Ovladače USB, formáty spustitelných souborů a reference bajtkódu.
- Sada pro vývojáře hardwaru (HDK)dokumentace a schémata cihly a senzorů.
- Sada pro vývojáře Bluetooth (BDK)Podrobnosti o protokolech Bluetooth.
Bricx Command Center může pracovat s různými kompatibilními firmwaremi pro NXT. Ve vzdělávacích kontextech se obvykle udržuje standardní firmware. pro zjednodušení spuštění, ale existují optimalizované alternativy (např. pro ROBOTC nebo leJOS), které mění výkon a spotřebu paměti.
Programovací alternativy a ekosystém pro NXT
Nabídka nástrojů pro NXT dalece přesahuje BricxCC. NXT-G v2.0, součástí komerční sady a založen na LabVIEWZaměřuje se na vizuální blokové programování. Jeho paralelní model provádění umožňuje kombinovat autonomní chování s Bluetooth nebo jinými ovladači, podporuje LEGO senzory (včetně barevného senzoru) a přidává tutoriály, zvuky a vlastní grafiku.
Ti, kteří preferují prostředí Microsoftu, mohou kombinovat Visual Studio Express s robotickým vývojářským studiem Robotics Developer Studio programovat NXT v C#, kromě IronPythonu a VB.NET. Tento přístup je zajímavý v kurzech programování kde cílem je integrovat .NET do vzdělávacích robotických úkolů.
Robolab 2.9 Jednalo se o vývoj zaměřený na RCX a později adaptovaný na NXT; LEGO oznámilo konec oficiální podpory, ačkoli verze 2.9 je stále k dispozici. Mezitím, RoboMind Nabízí výukové prostředí určené k výuce logiky a programování ve virtuálním světě, které lze přenést do NXT se standardním firmwarem.
Okouzlující NXT se blíží Scratch IDE (MIT), takže je přístupné i malým dětem. A pro ty, kteří hledají výkon v jazyce C, ROBOTC Běží na něm optimalizovaný firmware, který zrychluje programy a komprimuje soubory, aby se co nejlépe využila paměť zařízení (stažená z jeho vlastního rozhraní).
V oblasti nativního kódu a nízkoúrovňových nástrojových řetězců existují NXTGCC (GCC toolchain pro programování firmwaru v jazyce C) a nxtOSEK (Pro C/C++ je vyžadován specifický firmware.) FAR NXJ Přináší Javu do NXT s vlastním firmwarem, zatímco pbLua Přenáší jazyk Lua do cihel.
Pro ty, kteří dávají přednost Adě, je tu Port GNAT založený na real-time kernelu s profilem Ravenscar, podobný tomu, který se používá v leteckých a kosmických aplikacích, jako je například satelit GOCE, který umožňuje vývoj souběžných a reálných systémů v NXT.
Existují také možnosti zaměřené na distribuovanou robotiku a akce, jako například URBI, s rozhraními v C++, Javě a MATLAB a komponentní architekturu (UObject). V oblasti navigace projekty jako například FLL Další navigace (otevřený zdrojový kód, založený na souborech NXT-G a .txt), ačkoli jeho použití v soutěži nemusí být povoleno.
Pro skriptování a mosty s populárními jazyky existují ruby-nxt (přenáší kód přes Bluetooth místo kompilace do binárního souboru), Robotika.NXT (Rozhraní Haskell s přímými příkazy a podporou mnoha senzorů), LibNXT (nízkoúrovňové utility založené na libusb na POSIX systémech a portu win32), C_NXT (knihovna GPLv2 pro ovládání Bluetooth v jazyce C, zaměřená na GNU/Linux), PyNXC (převádí Python na NXC) a NXT-Python (Modul Pythonu s USB/Bluetooth připojením a podporou neoficiálních senzorů).
V oblasti simulace a modelování, MATLAB a Simulink Umožňují ovládat NXT přes Bluetooth, sériové rozhraní nebo USB (např. pomocí RWTH – Mindstorms NXT Toolbox). Podpora pro LEGO MINDSTORMS Je nabízeno zdarma. od MathWorks. A konečně, software LEGO MINDSTORMS EV3 NXT můžete programovat přes USB (Připojení Bluetooth není podporováno) a Fyzické Etoys Přidává vizuální programovací přístup pro více zařízení.
Hardware LEGO Mindstorms NXT
„Mozkem“ systému je Programovatelná kostka NXTJedná se o malý počítač s monochromatickým LCD displejem o rozlišení 100 × 60 pixelů a čtyřmi ovládacími tlačítky. Cihla obsahuje 32bitový mikrokontrolér Atmel AT91SAM7S256 s jádrem ARM7TDMI (s 256 KB paměti a 6 KB RAM) spolu s... 8bitový pomocný mikrokontrolér Atmel AVR ATmega48Je napájen 6 bateriemi AA 1,5 V (nebo dobíjecí Li-Ion baterií ve vzdělávací verzi).
podporuje až čtyři senzory a tři motory připojeno pomocí kabelů RJ12 (poznámka: tyto jsou podobné RJ11, ale nejsou kompatibilní). Modul NXT zůstal mezi verzemi 1.0 a 2.0 nezměněn; k desátému výročí byla vydána nová verze. limitovaná edice v černé barvě žádné vnitřní změny.
Základní sada a senzory jsou součástí dodávky
- 3 servomotory identické s vnitřními převodovkami a optickými enkodéry pro měření rotace s vysokou přesností.
- 1 tlakový senzor (dotyk): detekuje, zda je stisknuto, zda bylo stisknuto nebo uvolněno; v NXT-G nabývá hodnoty 0 (nestisknuto) nebo 1 (stisknuto).
- Světelný senzor: měří okolní nebo odražené světlo (s červenou LED). V NXT-G hlásí 0–100 (0 tma, 100 velmi jas); po kalibraci jej lze použít jako senzor vzdálenosti.
- zvukový senzor: hlasitost 0–100 (0 ticho, 100 velmi hlučné).
- Ultrazvukový senzorVzdálenost v cm nebo palcích; až 233 cm s přesností ±3 cm.
- V NXT 2.0, barevný senzor součástí standardní výbavy.
Další senzory a konektivita
Kromě představitelů LEGO jsou tu i senzory třetích stran, jako je kompas, gyroskop, infračervený tracker, RFID, akcelerometry a teplotní senzoryLEGO také prodává adaptéry pro řadu senzorů Vernier. Připojení k kostce se provádí pomocí 6pólového modulárního konektoru s analogovým a digitálním rozhraním; analogová část je kompatibilní s RCX pomocí adaptéru a Digitální rozhraní podporuje I2C a RS-485.
| Pin | název | Función | Barva kabelu |
|---|---|---|---|
| 1 | ANALOG | Analogové rozhraní, +9 V | Blanco |
| 2 | GND | Země | Černý |
| 3 | GND | Země | Rojo |
| 4 | IPOWERA | + 4,3 V | zelená |
| 5 | DIGIA0 | I2C hodiny (SCL) / RS-485 B | Amarillo |
| 6 | DIGIA1 | Data I2C (SDA) / RS-485 A | Azul |
Programy lze přenášet pomocí USB nebo BluetoothNěkteré soubory jsou sdíleny mezi cihlami přes Bluetooth a některé mobilní telefony mohou fungovat jako dálkové ovládáníJe možné, aby více NXT zařízení vzájemně komunikovalo a spouštělo programy současně (až tři zařízení).
Pracovní postupy s NXT-G a dalšími prostředími
Komerční software pro Windows a Mac založený na LabVIEW Nabízí vizuální blokové programování.Ideální pro zavádění konceptů a rychlé prototypování. Jeho paralelní provádění umožňuje kombinovat smyčky a simultánní odezvy, a kombinovat autonomní řízení s... Bluetooth nebo ovladačea vizualizovat nástroje a senzory od LEGO a třetích stran.
Ať už je prostředí jakékoli, klíčem je převést údaje ze senzorů do akcí robota. SDK/HDK/BDK a utility jako Bricx Command Center nebo MATLAB/Simulink Tuto cestu usnadňují, každý s jinou rovnováhou mezi snadností použití, výkonem a úrovní kontroly.
Zdroje, autorství a vzdělávací kontext
Ve školním prostředí, zejména ve ESO (Technologická oblast)BricxCC a NXC odpovídají definici „úkolu“ nebo vzdělávací situace zaměřené na rozvoj výpočetního myšlení. Výukové materiály citují autory jako například Gustavo Adolfo Raya Casero, které zasazují do kontextu využití prostředí a kostky NXT ve třídních projektech.
Pokud jde o grafický materiál, je běžné, že se ilustruje obrázky z komunity. Častým příkladem je fotografie LEGO MINDSTORMS NXT hostovaná na Wikimedia Commons. pod licencí CC BY 2.0Připisováno Eiriku Refsdalovi (Trondheim, Norsko). Tyto typy zdrojů jsou užitečné jako doplněk k průvodcům a článkům, pokud jsou respektována autorská práva a licence.
Mezi studijními zdroji vyniká „Kurz programování LEGO NXT“ (PDF), který představuje specifikace NXT a RCX a také vývojové prostředí. Tyto typy dokumentů obvykle obsahují více než 30 stran s vysvětleními a podrobnými cvičeními., ideální pro školy, dílny a robotické kluby.
Registrační klíče a další technické podrobnosti
V systémech Windows může BricxCC zaznamenávat informace do systému v cestách, jako například HKEY_LOCAL_MACHINE\SOFTWARE\SourceForge\BricxCommandCenter y HKEY_CURRENT_USER\SOFTWARE\BricxCommandCenterTo je užitečné pro administrátory, kteří spravují zařízení v učebnách nebo laboratořích.
V katalozích přípon souborů se zobrazuje NQC (Neodstraňovat soubor zdrojového kódu jazyka C) spojené s nástroji třetích stran. Některé komerční webové stránky zmiňují nástroje jako FileViewPro (Solvusoft) pro otevírání generických rozšíření, ale Pro programování NXT se doporučuje pracovat s BricxCC, NXT-G, ROBOTC, leJOS nebo uvedenými alternativami., v souladu s cílem projektu.
Praktické tipy pro práci s Bricx Command Center a NXT
- Nejdřív ovladače, pak IDEAbyste předešli problémům s detekcí, nainstalujte ovladače NXT před BricxCC.
- V úvodním dialogu použijte USB + NXT + standardní firmwareZjednodušuje to proces připojení a stahování.
- Zkompilujte s F5 a pokud je vše v pořádku, Stáhnout pomocí F6Tímto způsobem detekujete chyby dříve, než zaplní paměť v cihle.
- Pokud se paměť při používání fragmentuje, uchýlejte se k NeXTExplorer pro defragmentaci a udržovat NXT ve formě.
- Pro kurzy nebo demonstrace použijte NeXTScreen pro zachycení obrazovky NXT a zdokumentujte své důkazy.
Vše výše uvedené je doplněno realitou hardwaru a širokou škálou nástrojů, které obíhají kolem NXT: od NXT-G a ROBOTC po MATLAB/Simulink, včetně Javy (leJOS), Lua (pbLua), Ady (GNAT), C/C++ (nxtOSEK, NXTGCC) a PythonuBricxCC zapadá do tohoto ekosystému jako referenční IDE pro NXC/NBC/NQC ve Windows, obzvláště ceněné pro svou jednoduchost a utility pro správu Bricku. Sdílejte tohoto průvodce a více uživatelů se dozví, o čem Bricx Command Center je.