Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:miw:2009:nxt_api_demo [2009/08/07 17:59]
jsi08
pl:miw:2009:nxt_api_demo [2019/06/27 15:50] (aktualna)
Linia 347: Linia 347:
  
 Niestety i tutaj pojawiły się spore problemy. Sam program jest bardziej ideowy, niż praktyczny. Stąd trafiają się nierozwiązywalne przez niego konfiguracje kostki. Ponadto znajdywane przez niego rozwiązania zazwyczaj wymagają około 500 ruchów (sic!), a co przy ograniczonej prędkości i precyzji, okazuje się bardzo problematyczne. Według tego co pisze wikipedia na temat optymalności rozwiązania ([[http://​en.wikipedia.org/​wiki/​Optimal_solutions_for_Rubik%27s_Cube|Optimal solutions for Rubik'​s Cube]]), możliwe jest zaimplementowanie algorytmu, który będzie wymagać nie więcej niż 22 standardowych ruchów (czyli szacunkowo jakichś 60 czynności dla twistera). Niestety i tutaj pojawiły się spore problemy. Sam program jest bardziej ideowy, niż praktyczny. Stąd trafiają się nierozwiązywalne przez niego konfiguracje kostki. Ponadto znajdywane przez niego rozwiązania zazwyczaj wymagają około 500 ruchów (sic!), a co przy ograniczonej prędkości i precyzji, okazuje się bardzo problematyczne. Według tego co pisze wikipedia na temat optymalności rozwiązania ([[http://​en.wikipedia.org/​wiki/​Optimal_solutions_for_Rubik%27s_Cube|Optimal solutions for Rubik'​s Cube]]), możliwe jest zaimplementowanie algorytmu, który będzie wymagać nie więcej niż 22 standardowych ruchów (czyli szacunkowo jakichś 60 czynności dla twistera).
 +
 +===== Obsługa i uruchomienie =====
 +
 +Po poskładaniu robota, podstawową czynnością jest przygotowanie komunikacji. Należy włączyć brick, Bluetooth w bricku i na komputerze, a w dalszej kolejności przejść [[https://​ai.ia.agh.edu.pl/​wiki/​plnxt:​conf_serial|opis konfiguracji]]. Kolejnym krokiem jest przygotowanie i umieszczenie w tym samym katalogu co plik nxt_rubik.pl,​ plików z biblioteki PlNXT. Następnie należy włączyć interpreter prologa i skonsultować plik nxt_rubik.pl. ​
 +
 +Sam program uruchamia się predykatem '​go.'​. Zostaną wyświetlone 4 opcje: auto, ręcznie, ułóż oraz wyjdź. Ostatnia nie wymaga chyba wyjaśnień.
 +  - **Auto** - powoduje próbę automatycznego odczytania pól kostki.
 +  - **Recznie** - powoduje oczekiwanie na ręczne podanie rozkładu pól kostki. Podaje się kolejno rzędami od góry (według zaprezentowanego w programie przykładu). Poszczególne pola mogą mieć dowolną nazwę (ale konsekwentną) i oddziela się je dowolnymi białymi znakami (enter, spacja).
 +  - **Uloz** - jak sama nazwa wskazuje. Wykonywany jest algorytm, a następnie wykonywane są ruchy na kostce. Aktualizowany jest procent wykonanych ruchów. ​
 +
 +Ponadto można wykonywać pojedyńcze ruchy wpisując f,rr,rl,mr lub ml. 
 +
 +**Uwaga!** Należy pamiętać by platforma robota, na której kostka się znajduje, była ustawiona w możliwie najbardziej równoległej do chwytaka pozycji pozycji. ​
  
 ===== Podsumowanie ===== ===== Podsumowanie =====
pl/miw/2009/nxt_api_demo.1249660792.txt.gz · ostatnio zmienione: 2019/06/27 15:58 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0