BricxCC: Porovnání verzí
Založena nová stránka: BrixCC – textový programovací nástroj pro vývoj robotických aplikací s LEGO roboty RXC a NXT. thumb [[Soubor:SW-BricxCC_02.jpg|thumb]... |
Bez shrnutí editace |
||
Řádek 112: | Řádek 112: | ||
'''Ukázka programu:''' | '''Ukázka programu:''' | ||
[[Soubor: | [[Soubor:Dotek.PNG|thumb]] | ||
<source lang"C"> | <source lang"C"> | ||
Řádek 121: | Řádek 121: | ||
'''Úkol č. 4''' | |||
'''Zadání:''' | |||
'''Funkce:''' | |||
'''Ukázka programu:''' | |||
[[Soubor:Zvuk.PNG|thumb]] | |||
<source lang"C"> | |||
</source> | |||
'''Úkol č. 5''' | |||
'''Zadání:''' | |||
'''Funkce:''' | |||
'''Ukázka programu:''' | |||
[[Soubor:Svetlo.PNG|thumb]] | |||
<source lang"C"> | |||
</source> | |||
'''Úkol č. 6''' | |||
'''Zadání:''' | |||
'''Funkce:''' | |||
'''Ukázka programu:''' | |||
[[Soubor:Sonar.PNG|thumb]] | |||
<source lang"C"> | |||
</source> | |||
'''Úkol č. 7''' | |||
'''Zadání:''' | |||
'''Funkce:''' | |||
'''Ukázka programu:''' | |||
[[Soubor:Enkoder.PNG|thumb]] | |||
<source lang"C"> | |||
</source> | |||
'''Úkol č. 8''' | |||
'''Zadání:''' | |||
'''Funkce:''' | |||
'''Ukázka programu:''' | |||
[[Soubor:Joystick.PNG|thumb]] | |||
<source lang"C"> | |||
</source> | |||
literatura: | |||
* http://bricxcc.sourceforge.net/nbc/nxcdoc/NXC_tutorial.pdf tutoriál EN | * http://bricxcc.sourceforge.net/nbc/nxcdoc/NXC_tutorial.pdf tutoriál EN |
Verze z 31. 5. 2011, 10:05
BrixCC – textový programovací nástroj pro vývoj robotických aplikací s LEGO roboty RXC a NXT.
Postup: 1. Stáhněte a nainstalujte program ze stránek http://bricxcc.sourceforge.net/
2. Nainstalujte nebo nakopírujte program do složky: C:\Program Files (x86)\
3. Program spusťte. V okně nastavte vyhledání a připojení NXT. Zvolte port, který chcete využít. Nabízí se USB nebo BlueTooth. Firmware nechte na Standard.
4. Následně v novém okně můžete psát program.
5. Každý program bude na začátku vypadat následovně.
Ukázky programů:
Úkol č. 1 Zadání: Napište program tak, aby došlo k výpisu textu (i čísel) na LCD displeji robota NXT. Text musí být bez diakritiky.
Funkce: Po úvodní inicializaci a skoku do nekonečné smyčky, se vypíše text „Nahodna cisla“ a vygeneruje se náhodné číslo. Těchto 8 náhodných čísel se postupně zobrazí vedle sebe. Mezi jednotlivým generováním je zpoždění 300 ms.
Ukázka programu:
#include "NXCDefs.h" //vložení hlavičkového souboru
task main() //hlavní funkce
{
int RandomValue; //náhodné číslo
int X = 10; //poloha
while(true) //nekonečná smyčka
{
TextOut (10, LCD_LINE3, "Nahodna cisla"); //výpis textu na display
RandomValue = Random(10); //vygenerování náhodného čísla od 0 do 9
NumOut (X, LCD_LINE5, RandomValue); //výpis hodnoty na display
X += 10; //inkrementace X o 10
if(X > 80) X = 10; //kontrola překročení hodnoty
Wait(300); //spoždění o 300 milisekund
}
} //konec programu
Úkol č. 2
Zadání: Vyzkoušejte program, který řeší zobrazení grafických obrazců, pomocí kterých se zobrazuje stav baterie robota
Funkce: Načítaná hodnota, která je v mV, se vypíše a zároveň přes vzorec převede na procentuelní úroveň a ta se poté vykreslí. Navíc při poklesu napětí pod 6V se ohlásí stav nízké úrovně baterie.
Ukázka programu:
#include "NXCDefs.h" //vložení hlavičkového souboru
task main() //hlavní funkce
{
int BatLvl; //hodnota baterie
int BatPos; //pozice stavu baterie
int PercentBat; //procentuelní stav baterie
while(true) //nekonečná smyčka
{
BatLvl = BatteryLevel (); //stav baterie v mV
BatPos = ((BatLvl * 78) / 8500); //vypočítání polohy na grafu stavu baterie
PercentBat = (BatLvl / 85);
RectOut (10, 25, 80, 22, true); //vykreslení grafu
RectOut (11, 26, BatPos, 20); //vykreslení stavu baterie do grafu
if(BatLvl < 6000) TextOut(10, LCD_LINE1, "Low Batery"); //oznámení nízkého stavu baterie
NumOut(10, LCD_LINE2, BatLvl); //vypsání hodnoty v mV
TextOut (36, LCD_LINE2, "mV");
NumOut(58, LCD_LINE2, PercentBat); //vypsání hodnoty v %
TextOut (75, LCD_LINE2, "%");
Wait(10); //spoždění 10ms (kvůli problikávajícímu jevu při mazání)
}
} //konec programu
Úkol č. 3
Zadání:
Funkce:
Ukázka programu:
Úkol č. 4
Zadání:
Funkce:
Ukázka programu:
Úkol č. 5
Zadání:
Funkce:
Ukázka programu:
Úkol č. 6
Zadání:
Funkce:
Ukázka programu:
Úkol č. 7
Zadání:
Funkce:
Ukázka programu:
Úkol č. 8
Zadání:
Funkce:
Ukázka programu:
literatura:
- http://bricxcc.sourceforge.net/nbc/nxcdoc/NXC_tutorial.pdf tutoriál EN
- http://support.dce.felk.cvut.cz/roboti/files/nxc/NXC_Guide_sk.pdf překlad tutoriálu SK
- http://support.dce.felk.cvut.cz/roboti/index.php?sekce=home&id=nxc
- Maturitní práce Realizace sad úloh pro NXT s SW BricxCC - Jan Pokorný 2010 SOČ 2010