Różnice

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

Odnośnik do tego porównania

Nowa wersja
Poprzednia wersja
pl:dydaktyka:piw:2010:sprawozdania:piw20100519-15e [2010/05/25 19:55]
piw10 utworzono
pl:dydaktyka:piw:2010:sprawozdania:piw20100519-15e [2019/06/27 15:50] (aktualna)
Linia 53: Linia 53:
  
 </​code>​ </​code>​
 +
 +===== Działające algorytmy =====
 +
 +Niestety pierwsza wersja programu działała połowicznie. Robot poruszał się do przodu, ale drugi wątek z triggerami nie działał.
 +
 +Po przeniesieniu wszystkiego do jednego wątku powstała poniższa, w pełni działająca wersja programu:
 +
 +<code prolog>
 +:- consult('​plnxt.pl'​).
 + 
 +start :-
 + nxt_go(100),​
 +        sleep(1), % Chwila przerwy, żeby jedno klaśnięcie nie zostało rozpoznane jako dwa.
 + trigger_create(_,​clap,​uciekaj),​
 + trigger_create(_,​click,​stop).
 + 
 +uciekaj :-
 + nxt_stop,
 + nxt_rotate(900,​ 90),
 + nxt_go_sec(900,​ 1),
 +        sleep(1),
 + start.
 + 
 +% Sprawdzenie,​ czy natężenie dźwięku przekracza progową wartość.
 +clap :-
 + nxt_sound(Value,​force),​
 + Value > 50.
 +
 +click :-
 + nxt_touch(Value,​ force),
 + Value > 0.
 + 
 +stop :-
 + trigger_killall,​
 + nxt_stop,
 + nxt_close.
 +
 +</​code>​
 +
 +Następnie napisaliśmy również w 100% działającą wersję omijacza:
 +
 +<code prolog>
 +:- consult('​plnxt.pl'​).
 + 
 +start :-
 + nxt_go(100),​
 + trigger_create(_,​clap,​stop),​
 + trigger_create(_,​odl,​omijaj).
 + 
 +omijaj :-
 + nxt_stop,
 + nxt_rotate(100,​ 30),
 + start.
 + 
 +% Sprawdzenie,​ czy natężenie dźwięku przekracza progową wartość.
 +clap :-
 + nxt_sound(Value,​force),​
 + Value > 50.
 +
 +odl :-
 + nxt_ultrasonic(Value,​ force),
 + Value < 20.
 + 
 +stop :-
 + nxt_stop,
 + nxt_close.
 +
 +</​code>​
 +
 +Oto zdjęcie robota dla powyższego programu:
 +
 +{{:​pl:​dydaktyka:​piw:​2010:​sprawozdania:​zdjecie0017.jpg|}}
pl/dydaktyka/piw/2010/sprawozdania/piw20100519-15e.1274810119.txt.gz · ostatnio zmienione: 2019/06/27 15:54 (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