Różnice

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

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:miw:miw08_mindstormsdesign:strona_1 [2008/04/28 23:46]
miw
pl:miw:miw08_mindstormsdesign:strona_1 [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 ====== Algorytmy (echosonda) ====== ====== Algorytmy (echosonda) ======
 Poniżej znajdują się algorytmy sterowania wykorzystujące **echosondę**. Aby sprawdzić działanie algorytmów należy przygotować tor przeszkód. Poniżej znajdują się algorytmy sterowania wykorzystujące **echosondę**. Aby sprawdzić działanie algorytmów należy przygotować tor przeszkód.
-===== Unikanie przeszkód ===== 
- 
-==== Zapis słowny ==== 
-      - jedź do przodu 
-      - jeżeli przeszkoda zatrzymaj się (wskaźnik echosondy poniżej progu) idź do (3) inaczej wróć do (1) 
-      - obróć się o 90<​sup>​0</​sup>​ w prawo 
-      - idź do (1) 
- 
-==== Zapis regułowy ==== 
-<code ada> 
-Rule: 1 
-if ultrasonic_sensor_Value > number 
-then robot_action is go_foward 
- 
-Rule: 2 
-if ultrasonic_sensor_Value ≤ number 
-then robot_action is turn_right_90_degrees 
- 
-Rule: 3 
-stop 
-</​code>​ 
- 
-==== Implementacja w Prologu ==== 
-<code prolog> 
-start :- 
-      ultrasonic_sensor(Value),​ 
-      Value > number, 
-      go(0,​speed,​force). 
-start :- 
-      ultrasonic_sensor(Value),​ 
-      Value =< number, 
-      turn(90,​speed). 
-start :- 
-      go(0,0,0). 
-</​code>​ 
- 
- 
-==== XTT ==== 
-{{:​pl:​miw:​miw08_mindstormsdesign:​alg11.png|XTT}} 
- 
  
 ===== Objechanie przeszkody ===== ===== Objechanie przeszkody =====
Linia 57: Linia 17:
  
 ==== Zapis regułowy ==== ==== Zapis regułowy ====
- 
-atrybuty: 
-  * ultras_v 
-  * robot_state 
-  * prev_action 
-  * robot_action 
-akcje 
-  * zmiana wart atrybutu? ​ 
- 
-pomieszanie ​ 
-  * deklaratywne/​proceduralne 
-  * reguły/​uruchamianie 
- 
-model przetwarzania:​ 
-  * pojedyncze przejscie, 
-  * monitorowanie?​ 
-  * nawroty? 
  
 <code ada> <code ada>
Linia 108: Linia 51:
 then turn := -90 and go := 0 and go_cm := 0 then turn := -90 and go := 0 and go_cm := 0
 </​code>​ </​code>​
 +
  
  
Linia 123: Linia 67:
  
 start :- start :-
-      ​ultrasonic_sensor(Value),+      ​nxt_ultrasonic_sensor(port,Value)
       Value =< 50,       Value =< 50,
       start_turn.       start_turn.
Linia 152: Linia 96:
 {{:​pl:​miw:​miw08_mindstormsdesign:​alg3.png|XTT}} {{:​pl:​miw:​miw08_mindstormsdesign:​alg3.png|XTT}}
  
-===== Pokonywanie przeszkód ===== 
- 
-==== Zapis słowny ==== 
-      - jedź do przodu 
-      - jeżeli przeszkoda zatrzymaj się (wskaźnik echosondy poniżej progu) idź do (3) inaczej wróć do (1) 
-      - obróć się o 45<​sup>​0</​sup>​ w prawo i zapisz odczyt czujnika 
-      - obróć się o 135<​sup>​0</​sup>​ w lewo i zapisz odczyt czujnika 
-      - jeżeli odczyt_1 większy od odczyt_2 obróć się o 135<​sup>​0</​sup>​ w prawo 
-      - idź do (1) 
- 
-==== Zapis regułowy ==== 
-<code ada> 
-Rule: 1 
-if ultrasonic_sensor_Value > number 
-then robot_action is go_foward 
- 
-Rule: 2 
-if ultrasonic_sensor_Value ≤ number 
-then robot_action is turn_right 
- 
-Rule: 3 // co z ta reguła ??? 
-if error 
-then stop 
-</​code>​ 
- 
-==== Implementacja w Prologu ==== 
-<code prolog> 
-start :- 
-      ultrasonic_sensor(Value),​ 
-      Value > number, 
-      go(0,​speed,​force). 
-start :- 
-      ultrasonic_sensor(Value),​ 
-      Value =< number, 
-      turn(90,​speed). 
-start :- 
-      go(0,0,0). 
-</​code>​ 
-==== XTT ==== 
- 
-===== I tak kolejne.... ===== 
-==== Zapis słowny ==== 
-==== Implementacja w Prologu ==== 
-==== XTT ==== 
-====== Uwagi ====== 
-====== Materiały ====== 
pl/miw/miw08_mindstormsdesign/strona_1.1209419178.txt.gz · ostatnio zmienione: 2019/06/27 15:59 (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