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:mindstorms:studenci:przedmioty:jsi:jsi2008:jsi20090121-08d [2009/01/27 14:57]
jsi08
pl:mindstorms:studenci:przedmioty:jsi:jsi2008:jsi20090121-08d [2019/06/27 15:50] (aktualna)
Linia 9: Linia 9:
 Po raz pierwszy mieliśmy do dyspozycji zbudowanego wcześniej robota. Nasz Irek był zbudowany w sposób prosty, na podstawie instrukcji Quick Start. Po raz pierwszy mieliśmy do dyspozycji zbudowanego wcześniej robota. Nasz Irek był zbudowany w sposób prosty, na podstawie instrukcji Quick Start.
  
-Irka wyposażyliśmy w czujnik światła, dotyku, dźwięku i ultradźwięku,​ jednak zrezygnowaliśmy z ostatniego, bo bardziej przeszkadzał,​ niż pomagał - jazda po linii (po cole ;-) ) tymczasowo nie wymagała zabezpieczania się przed ścianą.+Irka wyposażyliśmy w czujnik światła, dotyku, dźwięku i ultradźwięku,​ jednak zrezygnowaliśmy z ostatniego, bo bardziej przeszkadzał,​ niż pomagał - jazda po linii (po cole ;-) ) tymczasowo nie wymagała zabezpieczania się przed ścianą. Czujnik wykorzystywaliśmy sprawdzając,​ czy robot działa (programem ''​demo2.pl''​).
  
 ===== Problemy ===== ===== Problemy =====
Linia 43: Linia 43:
 Zrestartowanie Irka i praca po ponownym sparowaniu BT przebiegała już bez problemów, o ile nie używaliśmy sensora ultradźwięku. W razie problemów restartowaliśmy NXT i można było działać od nowa. Zrestartowanie Irka i praca po ponownym sparowaniu BT przebiegała już bez problemów, o ile nie używaliśmy sensora ultradźwięku. W razie problemów restartowaliśmy NXT i można było działać od nowa.
  
-===== Program ​=====+===== Nasz program ​=====
  
 Mimo ciężkiej walki z błędami, udało nam się zaprogramować algorytm poruszania się po linii. Mimo ciężkiej walki z błędami, udało nam się zaprogramować algorytm poruszania się po linii.
Linia 78: Linia 78:
 :- start. :- start.
 </​code>​ </​code>​
-Plik z programem: ​FIXME+Plik z programem: ​{{:​pl:​mindstorms:​studenci:​przedmioty:​jsi:​jsi2008:​gg_jazda_po_linii.pl|}} 
 ==== Start ==== ==== Start ====
 Irek ruszał do przodu wraz z wywołaniem programu z powłoki Prologu. Irek ruszał do przodu wraz z wywołaniem programu z powłoki Prologu.
Linia 88: Linia 89:
  
 ===== Film ===== ===== Film =====
-FIXME Tomek! Wrzuć plik tutaj i na YT.+YouTube:​[[http://​pl.youtube.com/​watch?​v=-nRYVM7D_yc]] 
 + 
 +aiWiki:​{{:​pl:​mindstorms:​studenci:​przedmioty:​jsi:​jsi2008:​wideo056.rar|Pobierz wideo056.rar}}
  
 W roli głównej Irek jeżdżący po cole. W roli głównej Irek jeżdżący po cole.
Linia 97: Linia 100:
  
 Dialogi: Natura. Dialogi: Natura.
 +
 +Plik z rozszerzeniem .3gp - converter do avi dostępny na stronie http://​www.boilsoft.com/​download.html
 +
 +===== Uwagi =====
 +
 +Dobranie odpowiednich wartości progowych jest bardzo ważne dla prawidłowego odczytu z sensorów. Robot dla różnych warunków (zmienne oświetlenie,​ cień, hałas) potrzebuje indywidualnego doboru wspomnianych wartości. Przed spojrzeniem krytycznie na algorytm warto spojrzeń nań z punktu widzenia czujnika - "Nie widzę, bo mi zasłaniasz,​ a nie dlatego, że źle patrzę"​.
  
 ===== Możliwe błędy ===== ===== Możliwe błędy =====
-Prawdopodobnie popełniliśmy nieco błędów w naszym programie. ''​nxt_close''​ wywołane może być zbyt często (może to nie szkodzi, ale program brzydko wygląda), na przykład dla instrukcji ​FIXME wywoływanych w sposób rekurencyjny.+Prawdopodobnie popełniliśmy nieco błędów w naszym programie. ''​nxt_close''​ wywołane może być zbyt często (może to nie szkodzi, ale program brzydko wygląda), na przykład dla instrukcji ​(klauzula ''​jedz_po_cole''​) ​wywoływanych w sposób rekurencyjny
 + 
 +Robot, co widać na filmie, "​tańczył"​ czasami podczas zjeżdżania z linii, wykonując piruety i zawroty. Najprawdopodobniej jednak poruszał się za szybko i skręcał bez sprzężenia zwrotnego. W takim wypadku zmniejszenie prędkości i dołożenie nowego wątku powinno naprawić problem. 
 + 
 +====== Uwagi do laboratorium ====== 
 + 
 +Niezbędnym będzie poświęcenie którychś laboratoriów (najlepiej tych z oprogramowaniem Lego) na pokazanie nam, jak korzysta się z interfejsów dostępnych dla NXT. Na takie coś dziś jest oczywiście za późno, jednak da się to zrealizować w przyszłych latach. Pomoże to studentom programować zestawy Lego znacznie efektywniej i lepiej wykorzystywać bardziej zaawansowane techniki programowania.
  
 +Nie widzę przeszkód, żeby takie spotkanie odbyło się w ramach wykładu z JSI. Pan Profesor chętnie zaprasza na wykład osoby chcące pokazać coś nowego.
  
 +Innym na to sposobem będzie przygotowanie "​przewodnika po NXT w prologu"​ dostępnego na aiWiki, zawierającego zrealizowane przykłady, krok po kroku, wraz z filmami opisującymi rezultaty. Za wzór może posłużyć strona [[http://​showmedo.com/​|ShowMeDo]],​ na której możemy obejrzeć przeróżne samouczki z dziedziny programowania.
  
pl/mindstorms/studenci/przedmioty/jsi/jsi2008/jsi20090121-08d.1233064622.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (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