====== Trudne początki ====== Na początku mieliśmy problem z połączeniem się z Heńkiem, spróbowaliśmy wymienić brick na mózg Gienka, jednak to również nie pomogło. Konsola wypisywała ''Segmentation fault. Success'' i się zawieszała. Pomogło dopiero przejście na inne stanowisko. Straciliśmy przez to około pół godziny, więc bez zbędnych ceregieli zabraliśmy się do ostrego kodowania :) ===== Heniek po transplantacji ===== {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:14-01-09_1230.jpg?800|}} ====== Testowanie funkcji plnxt ====== Najpierw szybko sprawdzilismy parę funkcji plnxt, czy Heniek z transplantacją mózgu Gienka poradzi sobie z nimi, gdy ten test przeszedł bez większych problemów, wezbrała w nas //Panika//. ====== Panikarz ====== Napisaliśmy kod wprawiającego Heńka/Gienka w panikę. ===== Opis algorytmu ===== Najpierw porusza się powoli w jednym kierunku, na klaśnięcie wpada w amok, obraca się, zasuwa szybko w tym kierunku przez pewnien czas nieczuły na czynniki zewnętrzne (z wyjątkiem dotyku i resetu:) i następnie znowu jedzie wolno. Dotknięcie sensora dotykowego powoduje wyłączenie zestawu. ===== Kod ===== :- consult('plnxt.pl'). start:- nxt_open, wolno, trigger_create(_,pushed,[nxt_stop,nxt_close]). wolno:- nxt_go(200), trigger_create(_,clap,[nxt_stop,panika]). panika:- nxt_rotate(400,100), nxt_go_sec(600,3), wolno. % Sprawdzenie, czy natężenie dźwięku przekracza progową wartość. clap :- nxt_sound(Value,force), Value > 55. % Sprawdzenie, czy sensor dotyku jest wciśnięty. pushed :- nxt_touch(Value,force), Value=1. ====== Problemy ====== Gdy chcieliśmy przetestować ponownie program, musieliśmy zabortować xpce, odpalić ponownie xpce, skonsultować ponownie program i go odpalić. Nie wiemy czy to wina NXT, plnxt, bluetootha czy plam na słońcu ale dość nie wygodna była ta procedura i warto by się przyjrzeć jak ją naprawić. Kilkakrotnie podczas pisania algorytmu, kiedy coś sknociliśmy, okazało się dużym wyzwaniem zakończenie pracy Henia-Genia i jego zatrzymanie. Warto by było znaleźć rozwiązanie awaryjnego zakańczania pracy i zaprzestawania kręcenia silnikami przez NXT, ponieważ 'nxt_stop' nie sprawdzał się w przypadkach wysokiego ryzyka i zagrożenia.