Difference between revisions of "Natural language interface for SBOT"
(→Zdrojové súbory) |
(→Zdrojové súbory) |
||
Line 79: | Line 79: | ||
== Zdrojové súbory == | == Zdrojové súbory == | ||
− | Stiahnite si zdojové súbory pre [[Media:Sbottalk_pc.zip|MS Visual Studio]] (PC časť) a pre | + | Stiahnite si zdojové súbory pre [[Media:Sbottalk_pc.zip|MS Visual Studio]] (PC časť) a pre [[Media:Sbottalk_sbot.zip|AVR Studio]] (SBOT časť). |
== Externé odkazy == | == Externé odkazy == | ||
[http://www.youtube.com/watch?v=FC3IryWr4c8 IBM's Watson] (iba pre zaujímavosť)<br/> | [http://www.youtube.com/watch?v=FC3IryWr4c8 IBM's Watson] (iba pre zaujímavosť)<br/> | ||
[http://www.ludvik.sk/ Ludvik online] (skúste sa porozprávať s Ludvikom) | [http://www.ludvik.sk/ Ludvik online] (skúste sa porozprávať s Ludvikom) |
Revision as of 02:06, 22 June 2011
Contents
Cieľ
Naším ceľom je vytvorenie rozhrania, pomocou ktorého by bolo možné prirodzeným jazykom komunikovať (myslené: písať) s SBOTom. Komunikácia by mala prebiehať v klasickej Win32 aplikácii a nielen získavať textovú odozvu od robota, ale taktiež ho navigovať v pohyboch. Medzi ciele si kladieme aj možnosť učiť ho zložitejšie, viacslovné príkazy. Celá komunikácia bude prebiehať v anglickom jazyku.
Implementácia
Ukážka jednoduchého robo-skriptu
switch (buffer[0]) { case 'a': printf("hello\n"); break; case 's': printf("%d %d %d %d %d %d\n", adc_vals[0], adc_vals[1], bumper_stat(BUMPER_0), bumper_stat(BUMPER_1), bumper_stat(BUMPER_2), bumper_stat(BUMPER_3)); break; case 'f': sbot_forward(); break; case 'p': sbot_stop(); break; case 'l': sbot_left(); break; case 'r': sbot_right(); break; case 'b': sbot_back(); break; case 'o': sbot_rotate(); break; case 'z': zrychli(); break; case 'j': skuska(); break; }
Postup
Rozhodli sme sa základnú časť algoritmu - rozoznávač reči, ponechať v externej aplikácii. Samotný robot bude teda obsahovať iba pripravené jednoduché príkazy na ktoré dokáže reagovať. Zložitejšie príkazy potom budú riadené cez COM port z externého programu volaním týchto jednoduchších príkazov. Keďže prirodzený jazyk je veľmi rozsiahly, začali sme s implementáciou základných príkazov, ktoré je možné spájať do jednoduchých viet.
Základné príkazy
- hello
- how are you
- go
- stop
- turn
- rotate
- draw circle
- check sensor
- park (vráti sa na východzie miesto)
- follow light
- follow line
- bypass obstacle
Rozširujúce príkazy
- straight
- back
- left
- right
- 10cm
- faster
- slower
- closer
- until hit
- mean (špeciálny príkaz slúži na "učenie")
Spojky
- and
- then
Ukážka vstupných príkazov
- hello how are you go straight until hit then turn right and stop
- go straight 10cm then draw circle then go back and draw circle mean dance
Foto dokumentácia
Zdrojové súbory
Stiahnite si zdojové súbory pre MS Visual Studio (PC časť) a pre AVR Studio (SBOT časť).
Externé odkazy
IBM's Watson (iba pre zaujímavosť)
Ludvik online (skúste sa porozprávať s Ludvikom)