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/03/30 22:33]
miw
pl:miw:miw08_mindstormsdesign:strona_1 [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
-====== ​Unikanie przeszkód ​====== +====== ​Algorytmy (echosonda) ​====== 
-===== Zapis słowny ===== +Poniżej znajdują ​się algorytmy sterowania wykorzystujące **echosondę**. Aby sprawdzić działanie algorytmów należy przygotować tor przeszkód.
-      - jedź do przodu +
-      - jeżeli przeszkoda zatrzymaj ​się (wskaźnik echosondy poniżej progu) idź do ( c) inaczej wróć do (a) +
-      - obróć się o 90<​sup>​0</​sup>​ w prawo +
-      - idź do (a) +
-===== Implementacja w Prologu ===== +
-===== XTT =====+
  
-====== Objechanie przeszkody ​====== +===== Objechanie przeszkody ===== 
-===== Zapis słowny ​=====+==== Zapis słowny ====
       - jedź do przodu ​       - jedź do przodu ​
-      - jeżeli przeszkoda zatrzymaj się (wskaźnik echosondy poniżej progu) idź do ( c) inaczej wróć do (a)+      - 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       - obróć się o 90<​sup>​0</​sup>​ w prawo
 +      - jeżeli przeszkoda zatrzymaj się (wskaźnik echosondy poniżej progu) idź do (3) inaczej idź do (5)
       - zrób krok do przodu       - zrób krok do przodu
-      - obróć się o 90<​sup>​0</​sup>​ w lewo i idź do (a+      ​- jeżeli przeszkoda idź do (3) inaczej idź wykonaj kolejny punkt 
-===== Implementacja w Prologu ​===== +      ​- obróć się o 90<​sup>​0</​sup>​ w lewo i idź do (1) 
-===== XTT =====+ 
 + 
 + 
 + 
 + 
 +==== Zapis regułowy ​==== 
 + 
 +<code ada> 
 +Rule: 1 
 +if ultrasonic_Value > 50 and go ≠ 0 
 +then go :100 and go_cm :0 and turn := 0 
 + 
 +Rule: 2 
 +if ultrasonic_Value > 50 and go 0 and turn 
 +then go :100 and go_cm :0 and turn :
 + 
 +Rule: 3 
 +if ultrasonic_Value > 50 and go 0 and turn < 0 
 +then go :100 and go_cm :0 and turn :
 + 
 +Rule: 4 
 +if ultrasonic_Value > 50 and go 0 and turn > 0 
 +then go_cm := 10 and go := 0 and turn := 0 
 + 
 +Rule: 5 
 +if ultrasonic_Value ≤ 50 and go ≠ 0 
 +then turn := 90 and go := 0 and go_cm := 0 
 + 
 +Rule: 6 
 +if ultrasonic_Value ≤ 50 and go = 0 and turn ≠ 0 
 +then turn := 0 and go := 0 and go_cm := 10 
 + 
 +Rule: 7 
 +if ultrasonic_Value ≤ 50 and go = 0 and turn = 0 and go_cm = 0 
 +then turn := 90 and go := 0 and go_cm := 0 
 + 
 +Rule: 8 
 +if ultrasonic_Value ≤ 50 and go = 0 and turn = 0 and go_cm ≠ 0 
 +then turn := -90 and go := 0 and go_cm := 0 
 +</​code>​ 
 + 
 + 
 + 
 + 
 + 
 +==== Implementacja w Prologu ==== 
 +<code prolog>​ 
 + 
 +state(go). // Knowladge Base => previous state updated in fly.. initial state would also be state(go) 
 + 
 +start :- 
 +      nxt_ultrasonic_sensor(port,​Value) 
 +      Value > 50, 
 +      start_go. 
 + 
 +start :- 
 +      nxt_ultrasonic_sensor(port,​Value) 
 +      Value =< 50, 
 +      start_turn. 
 + 
 +start :- 
 +      nxt_go(0). 
 + 
 +start_go :- 
 +      state(go),​ 
 +      nxt_go(0). 
 + 
 +start_go :- 
 +      state(go_cm),​ 
 +      nxt_go_cm(distance,​speed). 
 + 
 +start_turn :- 
 +      state(go),​ 
 +      nxt_turn_degrees(speed,​90). 
 + 
 +start_turn :- 
 +      state(go_cm),​ 
 +      nxt_turn_degrees(speed,​-90). 
 +</​code>​ 
 + 
  
-====== Pokonywanie przeszkód ====== +==== XTT ==== 
-===== Zapis słowny ===== +{{:​pl:​miw:​miw08_mindstormsdesign:​alg3.png|XTT}}
-      - jedź do przodu +
-      - jeżeli przeszkoda zatrzymaj się (wskaźnik echosondy poniżej progu) idź do ( c) inaczej wróć do (a) +
-      - 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 (a) +
-===== Implementacja w Prologu ===== +
-===== XTT =====+
  
-====== I tak kolejne.... ====== 
-===== Zapis słowny ===== 
-===== Implementacja w Prologu ===== 
-===== XTT ===== 
pl/miw/miw08_mindstormsdesign/strona_1.1206909196.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