Różnice
Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision
Poprzednia wersja
Nowa wersja
|
Poprzednia wersja
Nowa wersja
Both sides next revision
|
pl:dydaktyka:piw:2010:sprawozdania:piw20100526-17b [2010/05/29 14:05] piw10 |
pl:dydaktyka:piw:2010:sprawozdania:piw20100526-17b [2010/05/30 14:29] piw10 |
nxt_stop. | nxt_stop. |
</code> | </code> |
| |
| ---- |
| |
| ====== Porządki ====== |
| |
| Algorytm został napisany w całości, jednak wystąpił pewien problem. Mianowicie w czasie gdy Franek się obracał i napotkał przeszkodę. W momencie napotkania przeszkody robot jechał do przodu, ale tylko jednym kołem! Następnie już wracał używając obu. Efekt: obrót, obrót, jazda do tyłu. Mimo dobrze napisanego kodu błędu nie byliśmy w stanie wykryć (czyżby bug?) Koniec zajęć dobiegł końca, więc na tym zakończyliśmy naszą pracę danego laboratorium. A to wynik naszego sprząta Franka: |
| |
| <code prolog> |
| % :- consult('plnxt.pl'). |
| |
| start :- |
| write('-- start 0.0 --'), |
| nxt_goal(franek, sprzatacz). |
| |
| sprzatacz :- |
| nxt_rotate(50, 360), |
| trigger_create(_, przeszkoda_w_zasiegu, sprzataj). |
| |
| przeszkoda_w_zasiegu :- |
| nxt_ultrasonic(V, force), |
| V < 20. |
| |
| sprzataj :- |
| stop, |
| nxt_go_cm(400, 80), |
| nxt_go_cm(-400, 80). |
| |
| stop :- |
| trigger_killall, |
| nxt_stop. |
| </code> |
| |
| ---- |
| |
| ====== Wnioski i spostrzeżenia ====== |
| |
| Dwukrotnie na komendę nxt_open otrzymaliśmy: |
| |
| <code> |
| ERROR: I/O error in write on stream $stream(388428( (Transport endpoint is not connected) |
| Exception: (13) nxt actions serial:nxt_actions input setmode('S1', switch, buolean) ? |
| </code> |
| |
| * duże zaskoczenie podczas wykrycia buga (algorytm sprzątacza) Robot zamiast jechać do przodu obracał się. Przypuszczamy, że było to spowodowane poprzednią rotacją robota. |
| |
---- | ---- |