[[
✎ pl:dydaktyka:piw:2010:sprawozdania:piw20100512-17d
]]
aiWiki
Pokaż stronę
Ostatnie zmiany
Indeks
Zaloguj
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
====== Sprawozdanie z laboratorium (zapoznanie z PLNXT) ====== * Robot: **Agatka** * Data wykonania: **12.05.2010 godz. 17:00** * Autorzy: **Gabriela Pasek, Michał Paszko, Leszek Piątek** ---- ===== Przygotowanie ===== Na początku przeglądnęliśmy instrukcję do laboratorium w celu poznania tematyki oraz zadań do wykonania. Uruchomiliśmy moduł Bluetooth, sparowaliśmy urządzenia. ===== Problemy ===== Udało nam się wykonać z sukcesem skrypt //./bin/plnxt_stty agatka//. Jednak zaraz później napotkaliśmy na bardzo uciążliwy błąd - przy wykonywaniu predykatu nxt_open pojawiał się trzykrotnie komunikat: //Connection Refused// //Not Connected//. Na //Bricku// nie było żadnego aktywnego połączenia BlueTooth, przy samym parowaniu urządzeń pojawiał się komunikat //Line busy//. Kilkukrotnie próbowaliśmy powtarzać całą procedurę od początku, resetować komputer, bricka, zajrzeliśmy nawet do działu //Rozwiązywanie problemów// https://ai.ia.agh.edu.pl/wiki/pl:mindstorms:lab:lab215, ale nic nie pomagało. W końcu spróbowaliśmy wykonać ćwiczenie na starszej wersji oprogramowania PINXT - nie zgłaszała ona żadnych błędów przy kompilacji i łączeniu się z brickiem, ale rezultatem komendy nxt_go(300) było jedynie zablokowanie jednego z kółek (nie można było nim obracać). Co więcej cały interpreter //swipl// się zawieszał (nie pojawiał się znak zachęty). Przewróciliśmy nowszą wersję PINXT. ===== Rozwiązanie ===== Mniej więcej 20 minut przed końcem laboratorium okazało się, że robot pomimo komunikatu //Not Connected// i braku aktywnego połączenia BlueTooth jest połączony z komputerem. Udało nam się zrealizować podpunkt testowania komend: * nxt_go(300). % Jazda do przodu z prędkością 300 stopni/sekundę. * nxt_stop. * nxt_go_cm(400,80). % Jazda do przodu z prędkościa 400 stopni/sekundę. Zatrzymanie po 80 cm. * nxt_touch(Value). % Odczyt sensora dotyku. * nxt_sound(Value). % Odczyt sensora dźwięku. * nxt_light(Value). % Odczyt sensora światła. * nxt_light_LED(activate). % Włączenie diody sensora światła. * nxt_light(Value). * nxt_light_LED(passivate). * nxt_ultrasonic(Value). * nxt_rotate(350,360). % Obrót w prawo o 360 stopni z prędkością 350 stopni/sekundę. * nxt_play_tone(500,2000). % Wydanie dźwięku o częstotliwości 500 Hz i czasie trwania 2000 ms. * nxt_voltage_millivolt(Voltage). % Odczyt napięcia baterii. Robot zachowywał się zgodnie ze specyfikacją, wszystkie sensory i ich odczyty działały poprawnie. Udało się nam wykonać pierwszy złożony program bez żadnych problemów. Mogliśmy go dowolnie dużo razy powtarzać. ===== Znowu problemy... ===== Przy przejściu do wykonywania bardziej złożonych programów a dokładniej: <code> :- consult('sciezka_do_plnxt.pl'). start :- nxt_open, trigger_create(_,check_distance,[nxt_stop,nxt_close]), nxt_go(300). check_distance :- nxt_ultrasonic(Distance,force), Distance < 15. </code> Robot się zawiesił po jednokrotnym, prawidłowym wykonaniu programu. Interpreter swipl nie zawieszał się, jednak wpisywane komendy w żaden sposób nie sterowały robotem. Takie zachowanie powtórzyło się dokładnie za drugim razem (udało się nam zresetować połączenie, odzyskać komunikację z //agatką// i jeszcze raz wykonać program). ===== Wnioski ===== * Jeżeli brick z komputerem długo się łączy po wykonaniu komendy **nxt_open** , a później zgłasza błąd //Connection Refused// a na końcu //Not connected// - **kłamie** bo połączenie istnieje! * Aby być pewnym, że połączenie między brickiem a komputerem jest zrealizowane poprawnie, należy: * wyłączyć i włączyć bricka * usunąć wszystkie połączenia (łączenie z zaufaniem) z BlueTooth'a z komputera * usunąć wszystkie połączenia Bluetooth z Brick'a * sparować urządzenia zgodnie z instrukcją * zignorować błędy typu **Not Connected** lub **Line busy** oraz **Connection Refused**
pl/dydaktyka/piw/2010/sprawozdania/piw20100512-17d.txt
· ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
Pokaż stronę
Poprzednie wersje
Menadżer multimediów
Do góry