Różnice

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

Odnośnik do tego porównania

pl:dydaktyka:piw:2010:sprawozdania:piw20100519-17b [2010/05/25 23:57]
piw10
pl:dydaktyka:piw:2010:sprawozdania:piw20100519-17b [2019/06/27 15:50]
Linia 1: Linia 1:
-====== Sprawozdanie 3 ====== 
  
-  * Robot: **Franek** 
-  * Data wykonania: **19.05.2010 godz. 17:00** 
-  * Autorzy: **Agata Krysian, Łukasz Mendakiewicz,​ Tomasz Skrzypczak** 
- 
----- 
- 
-===== Ciąg dalszy ===== 
-Tego dnia do współpracy przyznany został nam robot Franek. Był przygotowany do działania, miał zamontowane potrzebne sensory, co pozwoliło przystąpić do ćwiczeń. Prace rozpoczęliśmy od wykonywania algorytmów z poprzedniego tygodnia... 
- 
-===== Rozgrzewka ===== 
-Powodami nie wykonania zadań z poprzednich zajęć były problemy z połączeniem się z robotem. Tym razem robot był dla nas bardziej łaskawy, więc bez problemów zaimplementowaliśmy algorytm 1: 
- 
-<code prolog> 
-:- consult('​plnxt.pl'​). 
-  
-start :- 
- write('​-- start 0.3 --'), 
- nxt_light_LED(activate),​ 
- gogo. 
- 
-gogo :- 
- nxt_go(250),​ 
- trigger_create(_,​ check_light,​ escape). 
- 
-check_light :- 
- nxt_light(V,​ force), 
- V < 45. 
-  
-escape :- 
- Angle is 150 + random(60), ​ 
- nxt_rotate(100,​ Angle, force), 
- gogo. 
- 
-% :- start. ​ 
-</​code>​ 
- 
-Próg wartości oświetlenia dobraliśmy empirycznie. 
-Efekt był taki jakiego oczekiwaliśmy,​ co przetestowaliśmy kilkakrotnie,​ na załączonej macie. 
- 
-{{:​pl:​dydaktyka:​piw:​2010:​sprawozdania:​20100519_003b.jpg|}} 
- 
-Algorytm 2 był nieco bardziej rozbudowany,​ jednak nie oznaczało to dla nas, że był trudniejszy:​ 
- 
-<code prolog> 
-:- consult('​plnxt.pl'​). 
-  
-start :- 
- write('​-- start 0.6 --'), 
- nxt_light_LED(activate),​ 
- gogo. 
- 
-gogo :- 
- nxt_go(100),​ 
- trigger_create(_,​ check_light, ​ align), 
- trigger_create(_,​ nxt_touch(1,​ force), wait_free_path). 
- 
-check_light :- 
- nxt_light(V,​ force), 
- V > 46. 
-  
-align :- 
- trigger_killall,​ 
- nxt_rotate(100,​ 3, force), 
- gogo. 
- 
-wait_free_path :- 
- trigger_killall,​ 
- nxt_stop, 
- nxt_play_tone(500,​500),​ 
- trigger_create(_,​ nxt_touch(0,​ force), gogo). 
- 
-stop :- 
- trigger_killall,​ 
- nxt_stop. 
- 
-% :- start. ​ 
-</​code>​ 
- 
-Franek poruszał się po czarnej linii, a gdy napotkał przeszkodę,​ wydał dźwięk zatrzymując się. Po zwolnieniu blokady robot grzecznie ruszył do przodu tak jak poprzednio. 
- 
-===== Klask klask ===== 
- 
-Spośród algorytmów jako pierwszy wybraliśmy "​Panikarza"​. Potrzebne sensory Franek już posiadał, więc przystąpiliśmy do napisania algorytmu. Prace robiliśmy etapami, dodając każdorazowo kolejną akcje robota. 
- 
-<code prolog> 
-:- consult('​plnxt.pl'​). 
-  
-start :- 
- write('​-- start 0.0 --'), 
- nxt_goal(franek,​ my_actions). 
-  
-my_actions :-  
- nxt_go(100),​ 
- trigger_create(_,​ clap, panic). 
- 
-clap :- 
- nxt_sound(Value,​force),​ 
- Value > 30, 
- write('​clap!'​). 
- 
-panic :- 
- Angle is 160 + random(40), ​ 
- nxt_rotate(900,​ Angle, force), 
- nxt_go(400). 
- %dokonczyc... 
-  
-stop :- 
- trigger_killall,​ 
- nxt_stop. 
-</​code>​ 
- 
-Franek poruszał się powoli i po każdym klaśnięciu odwracał się, następnie zwiększyliśmy jego prędkość "​uciekania"​. Wyniki uznaliśmy za zadowalające,​ jednak czas nie pozwolił nam dokończyć całkowicie danego algorytmu. 
- 
-===== Spostrzeżenia i wnioski ===== 
- 
-* Pomimo poprawnego łączenia się z robotem poprzez bluetooth teoretycznie nie nawiązaliśmy połączenia pomimo kilku prób, jednak praktyka okazała się inna - komunikacja działała poprawnie, czym byliśmy miło zaskoczeni :) 
- 
-* Zdarzało się, że środowisko się zawieszało przy użyciu prostych komend. 
pl/dydaktyka/piw/2010/sprawozdania/piw20100519-17b.txt · ostatnio zmienione: 2019/06/27 15:50 (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