To jest stara wersja strony!


Opis

Paweł Konas, pawelkonas@gmail.com

NXT_sensors Build extra sensors from the Extreme NXT Book (available for us!) warning: requires some hardware and experience!

Spotkania

20090219

20090305

W planie dostarczenie prototypu czujnika.

20090416

Próba skonstruowania czujnika od początku w oparciu o mikrokontroler AVR ATmega8. Zalety: zwarta konstrukcja, tańszy, możliwość przeprogramowania. Zastanowić się jak podłączyć czujnik od strony PC (widoczność w sofcie NXT).

Projekt - STAN AKTUALNY

W skrócie zamieszczam aktualny stan projektu.
Zlutowany prototypowy czujnik odległości działający w zakresie 0 - 200cm z dokładnością około 5cm (dla odległości 10 do 15cm wyświetla 15cm itd.). Dodatkowo dołączona gotowa biblioteka do komunikacji za pomocą protokołu I2C i przygotowane połączenia dla tejże (podpięte piny).
Oprócz tego dołączony programator pod LPT.

Projekt - TODO

1) Poprawić jakość czujnika - łatwiejsze jeśli ma się oscyloskop. Większy zasięg/dokładność?,
2) Zaimplementować komunikację przez I2C,
3) Zaprojektować i zaimplementować komunikację z aplikacjami na PC (np. zrobić osobny bloczek w programie Mindstorms NXT odpowiadający za ten czujnik?).

Projekt - wersja pierwotna

Na początek proponuję laserowy czujnik odległości zaczerpnięty ze strony:
http://www.philohome.com/sensors/lasersensor.htm

Jednak mogą wystąpić - jak zwykle to bywa :) - pewne problemy.
1) W Polsce ciężko będzie dostać zastosowany czujnik odległości Hamamatsu S6986,
2) Jeszcze nie wiem gdzie kupić soczewki i odpowiednią taśmę odblaskową albo odpowiednik,
3) 1 i 2 muszę w praktyce przetestować i dostroić z hardware'm wyjętym ze wsk. laserowych dostępnych na polskim rynku, 4) Jak się okazało krótka żywotność.

Z powyższą propozycją wiążą się jednak pewne kwestie i dodatkowe komplikacje, które chciałbym omówić na konsultacjach. Drugi proponowany czujnik odległości - tym razem ultradźwiękowy - można znaleźć tutaj:
http://www.interq.or.jp/japan/se-inoue/e_srm.htm
Plusy:

  • Szczegółowo przetestowany,
  • Niezły zasięg, wg autora 35cm do 10m (dla porównania oryginalny czujnik z NXT ma wg dokumentacji zasięg do 2,33m),
  • Części powszechnie dostępne,
  • Zasilanie 9V czyli takie jakie może dostarczyć centralna jednostka NXT.


Ostatecznie z wersji tej zrezygnowałem - z trzech zasadniczych powodów:
1) Duży rozmiar - wbrew pozorom bardzo istotny powód patrząc na rozmiar choćby jednostki centralnej NXT,
2) Początkowo nie uwzględniałem kolejnych elementów koniecznych m.in. do komunikacji przy pomocy I2C,
3) Mała 'elastyczność' (w porównaniu do programowalnych mikrokontrolerów).

Projekt - wersja końcowa

Po skonstruowaniu czujnika opisanego powyżej i problemach z jego debuggingiem zdecydowałem się na projekt od zera. Tym razem - i ostatecznie - sonar skonstruowałem w oparciu o tani (około 6zł w momencie pisania tego tekstu) i powszechnie dostępny mikrokontroler Atmega8. Dzięki m.in. posiadaniu komparatora analogowego, wewnętrznego zegara (1MHz) oraz programowalności samego układu udało się otrzymać konstrukcję zwartą i elastyczną.

Poniżej zamieszczam schemat układu (stworzony przy pomocy programu Eagle):

Poniżej zdjęcie wykonanego czujnika:

Dodatkowo zamieszczam pliki projektu wykonanego w programie (wersja ograniczona jest darmowa) Eagle - tj. powyższy plik schematu a także przygotowany do wydruku/zamówienia w firmie projekt płytki.
Spakowane pliki projektu w Eagle:
nxtsensor_eagle_projekt.rar

Uwagi do skonstruowanego czujnika

Poniżej opiszę szczegółowo proces tworzenia schematu czujnika i uwagi jego dotyczące.
Przede wszystkim czujnik wykonany został w oparciu o tutorial programowania mikrokontrolerów AVR zamieszczony na stronie:
Tutorial pana Teodora Otulaka
Oraz projekt zmodyfikowanego przykładu czujnika odległości ze strony:
Modyfikacja przykładu z powyższego źródła

W efekcie udało mi się skonstruować czujnik, który miał zasięg około 50cm. Przy większych odległościach niestety sygnały zanikały. W tym momencie inspiracją stał się ogólnodostępny schemat czujników odległości dostępnych komercyjnie na rynku pod nazwą SRF08 (tudzież SRF02, SRF06 etc.). Zastosowano w nich dodatkowy układ scalony max232, którego głównym zadaniem była konwersja napięć ze standardu TTL na RS232. Tym samym nadajnik ultradźwięków zasilony został napięciem około 9V (zamiast początkowych 5V bezpośrednio z atmegi).
Wspomniany komercyjny schemat sonarów można znaleźć np. pod tym adresem: SRF06
Kupić zaś można choćby tutaj: SRF08-sklep.

Sprawozdanie

Prezentacja

Materiały

pl/miw/2009/miw09_nxtsensors1.1248693484.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