Raport: Wizualizacja danych sensorycznych - projekt. Komputerowe przedstawienie obiektów rozpoznanych przez sonary ultradźwiękowe

Podobne dokumenty
LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

ZL8AVR. Płyta bazowa dla modułów dipavr

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8

Politechnika Wrocławska

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu.

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

WIZUALIZACJA DANYCH SENSORYCZNYCH Sprawozdanie z wykonanego projektu. Jakub Stanisz

AN ON OFF TEMPERATURE CONTROLLER WITH A MOBILE APPLICATION

dokument DOK wersja 1.0

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

E-TRONIX Sterownik Uniwersalny SU 1.2

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

ISP ADAPTER. Instrukcja obsługi rev.1.1. Copyright 2009 SIBIT

Parametryzacja przetworników analogowocyfrowych

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

Interfejsy komunikacyjne pomiary sygnałów losowych i pseudolosowych. Instrukcja do ćwiczenia laboratoryjnego

Programator ZL2PRG jest uniwersalnym programatorem ISP dla mikrokontrolerów, o budowie zbliżonej do STK200/300 (produkowany przez firmę Kanda).

micro Programator ISP mikrokontrolerów AVR zgodny z STK500v2 Opis Obs³ugiwane mikrokontrolery Wspó³praca z programami Podstawowe w³aœciwoœci - 1 -

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

Obługa czujników do robota śledzącego linie. Michał Wendland czerwca 2011

MOBOT RoboSnake. Moduł wieloczłonowego robota

MultiTool instrukcja użytkownika 2010 SFAR

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Programator procesorów rodziny AVR AVR-T910

KAmduino UNO. Płytka rozwojowa z mikrokontrolerem ATmega328P, kompatybilna z Arduino UNO

Kod produktu: MP01611

Komunikacja w mikrokontrolerach Laboratorium

MOBOT-RCR v2 miniaturowe moduły radiowe Bezprzewodowa transmisja UART

MikloBit ul. Cyprysowa 7/ Jaworzno. JTAG + ISP dla AVR. rev

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

MikloBit ul. Cyprysowa 7/ Jaworzno. rev MB-AVR-ISP programator

MOD STM32 explorem0 z STM32F051C8T6. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

MCAR Robot mobilny z procesorem AVR Atmega32

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Interfejs analogowy LDN-...-AN

Programator STK500v2 USB

Zestaw Startowy EvB. Więcej informacji na stronie:

Aoi Ryuu. v2.0 moduł z mikroprocesorem Atmega169 dla makiety dydaktycznej Akai Kaba

2.1 Porównanie procesorów

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

Politechnika Białostocka

INSTRUKCJA Płytka uruchomieniowa EvB 4.3

Moduł Komunikacyjny MCU42 do systemu AFS42

MOBOT-MBv2-AVR Płyta główna robota mobilnego z procesorem AVR Atmega128

Elektronika samochodowa (Kod: TS1C )

CM Konwerter ModBus RTU slave ModBus RTU slave

DOKUMENTACJA PROJEKTU

Kod produktu: MP01105T

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

Wyniki (prawie)końcowe - Elektroniczne warcaby

U W A G I D O M O N T A ś U Z E S T A W U L A B O R A T O R Y J N E G O A B C 0 1 U S B 3, A B C 0 2

Instytut Teleinformatyki

CM Konwerter ModBus RTU slave ModBus RTU master

1.1 Co to jest USBCOM? Budowa oraz parametry techniczne... 3

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Uczeń/Uczennica po zestawieniu połączeń zgłasza nauczycielowi gotowość do sprawdzenia układu i wszystkich połączeń.

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa

BEZDOTYKOWY CZUJNIK ULTRADŹWIĘKOWY POŁOŻENIA LINIOWEGO

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Instrukcja do oprogramowania ENAP DEC-1

Rurka do wizualizacji przyśpieszenia

Instrukcja obsługi programatora AVR Prog USB v2

Spis treści. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Moduł CON012. Wersja biurkowa. Przeznaczenie. Użyteczne właściwości modułu

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

ZL19PRG. Programator USB dla układów PLD firmy Altera

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

Tester Sieci LAN FS-8108 Instrukcja Obsługi Przed przystąpieniem do pracy z Testerem prosimy przeczytać instrukcję obsługi.

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

Notatka lekcja_#3_1; na podstawie W.Kapica 2017 Strona 1

Kod produktu: MP01105

Moduł uruchomieniowy AVR ATMEGA-16 wersja 2

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

Kod produktu: MP-BTM222-5V

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

Moduł CON014. Wersja na szynę 35mm. Przeznaczenie. Użyteczne właściwości modułu

Interfejs USB-RS485 KOD: INTUR. v.1.0. Zastępuje wydanie: 2 z dnia

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

SiMod-X-(A1) Przetwornik parametrów powietrza z interfejsem RS485 (MODBUS RTU) oraz wyjściem analogowym (dotyczy wersji -A1)

AP Automatyka: Sonda do pomiaru wilgotności i temperatury HygroClip2-S

Mikrokontrolery AVR techniczne aspekty programowania

SPECYFIKACJA PRZETWORNIK RÓŻNICY CIŚNIEŃ

Miernik poziomu cieczy MPC-1

Instrukcja obsługi programatora AVR Prog USB v2

INSTRUKCJA OBSŁUGI MIERNIKA GRUBOŚCI LAKIERU MGL2 AL <> FE

Transkrypt:

Raport: Wizualizacja danych sensorycznych - projekt Komputerowe przedstawienie obiektów rozpoznanych przez sonary ultradźwiękowe Łukasz Chodorski prowadzący: dr inż. Bogdan Kreczmer 12 czerwca 2009 148393 / Robotyka / Automatyka i Robotyka / Elektronika / Politechnika Wrocławska 1

Spis treści 1 Opis zadania: 3 2 Testy sonarów: 3 3 Opis fizycznego układu: 5 3.1 Opis fizycznego układu:....................... 5 4 Program: 7 4.1 AtMega16:............................... 7 4.2 Qt:................................... 8 5 Literatura i spis dodatków: 9 2

1 Opis zadania: Celem projektu była budowa i oprogramowanie urządzenia opartego o sonary ultradźwiękowe do wizualnego wyświetlania otoczenia na ekranie komputera. Założenia projektowe określały wizualizację bliskiego otoczenia sonarów z wykorzystaniem analizy danych. Podobne rozwiązania mogą znaleźć zastosowanie w programach wspomagających procesy decyzyjne. Najpierw dokonywana jest przestrzenna lokalizacja obiektu przez 4 sonary. Potem dane zostają przekazane z czujników odległościowych do mikrokontrolera poprzez przetworniki ADC. Zebrane cztery dane pomiarowe zostają przesłanie z kontrolera AtMega16 do komputera za pomocą konwertera RS232/USB opartego na układzie ft232r. Program napisany w Qt dokonuje odbioru, analizy i wizualizacji danych. 2 Testy sonarów: Zebrana literatura znajduje się w spisie na końcu sprawozdania. Podstawowe dokumenty niezbędne do wykonania projektu to pozycje [2] i [11]. Są one podstawą do połączenia sonarów 1 z mikroprocesorem. Przeprowadzone testy sonarów pozwoliły określić czy specyfikacje są prawidłowe i czy sonary działają poprawnie. Sprawdzenie czy czujniki działają, odbyło się przy oraniczeniu do minimum układu: zasilanie, miernik, sonar, linijka i przewody. Zgodne z instrukcją podłączenie wyprowadzeń sonaru: (2) +5V VCC (+5V) (dokładne informacje potem) (3) ANOUT miernik napięcia (4) AUTO GND (praca automatyczna - pomiar co 0,01s) (10) GND GND Pozostałe wyprowadzenia nie zostały podłączone. Za pomocą takiego połączenia sonaru z miernikiem zbierane dane pomiarowe z wyświetlacza miernika, na podstawie zamieszczonej w dokumentacji zależności: 1[m] = 1[V ]... zakres (0 5V ) (1) Rysunek 1: Pierwsze testy sonarów 1 MOBOT-US V2 firmy WObit (dodatek A) 3

Testy miały na celu sprawdzenie realnych mozliwości pomiarów i współpracy sonarów. Pozwoliło to określić funkcjonalność czujników. Testy wykazały, że sonary działają zgodnie z zasadami zamieszczonymi poniżej: - LED1 - sygnalizacja VCC, - LED2 - zmiana przy odbiorze, - LED3 - przy przekroczeniu wartości zadanej (czasami strasznie skacze), Sonar nie nadaje się do pomiaru odległości od obiektów szybko się poruszających. W takich sytuacjach napięcie uzyskuje losowe wartości. Napięcie doprowadzone do sonaru wynosiło 4, 75V, nie jest to dokładnie 5V, stąd wynikają niedokładności. Zakres (7 230cm). Poniżej 7cm wynik jest losowy, powyżej 230cm nie testowany. Kąt pod jakim przeszkoda została rozpoznawana zależał w większości od tego jaki to był przedmiot i jak był ustawiony. 40 o to wynik w którym wszystko co się znajduje zostaje wychwycone. Dokładność = 1cm. Napięcie zmienia się wraz z dokładnością miernika. Dotyczy to znów szerokiej gamy przedmiotów i jest to zależne od rozpraszania się ultradźwięków i ich odbijaniu od powierzchni. Celem projektu jest stworzenie i oprogramowanie układu, którego schemat ideowy przedstawiony jest na rysunku (Rys. 2). Program napisany w C jest przesyłany przez programator ISP do pamięci AtMegi. Obiekty są rozpoznawane przez sonary i odległość od nich w postaci napiecia zostaje przekazana do mikrokontrolera przez przetworniki analogowo-cyfrowe. Zbiór danych zostaje dalej przesłany do komputera za pomocą konwertera ft232r i zostają wizualnie przedstawione. Rysunek 2: Schemat ideowy układu sonarowego 4

3 Opis fizycznego układu: 3.1 Opis fizycznego układu: Kwestia stworzenia prawidłowo funkcjonującego hardwearu była fundamentalna w projekcie. Po wielu próbach stworzenia płytki łączącej na sobie wszystkie elementy w jeden układ (podjęte próby projektowania w eaglu przedstawia (Rys.3)). Doszedłem do wniosku, że zrealizuję układ jako połączenie kilku uniwersalnych modułów, połączonych kablami. Powodem takiej decyzji były przede wszystkim problemy z wydrukowaniem płytki "metodami domowymi". Dodatkowo, w razie błędów, układ połączony na kable można łatwo zmienić, w razie wystąpienia nowych pomysłów łatwiej je wdrożyć. Rysunek 3: Pierwsze próby stworzenia płytki Finalnie układ sonarów składa się z kilku części przymocowanych do obudowy, zasilacza, kabli łączących całość z komputerem i komputerem jako urządzeniem wyświetlającym wyniki. Zdjęcie całości jest pokazane na następnej stronie (Rys.4). Schemat połączeń znajduje się w dodatku (Dodatek C). Poszczególne elemęty: Płytka testowa z Atmega16: Umiejscowienie AVR na płytce z podaniem wyprowadzeń na goldpiny, podłączenie do ISP, umieszczenie testowych diód i podłączenie zasilania. Płytka sonarów: Połączenie do zasilania i masy sonarów (Dodatek A), ustawienie w tryb auto, wyjscie każdego z wyprowadzeń anout sonara do A16 (wcześniej zastanawiałem się nad wykorzystaniem I 2 C ale wykozystanie przetworników AC w zupełności w tym przypadku wystarczy.) Odległość przedmiotu od sonaru jest określana przez układ snarów jako wartość napięcia i zostaje wyprowadzana na piny ANOUT każdego z nich. Ustawienie sonarów z czterech stron obudowy pozwala na obserwację tego co się dzieje dookoła całej wieżyczki. Wykonywanie pomiarów jest ustawione w tryb automatyczny (zwarcie do masy pinów AUTO). Powoduje to ciągłe wykonywanie pomiarów i wystawienie wyników na ANOUT, który jest połączony z wyprowadzeniami przetworników A/C - PA0..PA3 (ADC0..ADC3). Zasilacz - 9V, płytka stabilizatora 5V i prostownika, wiatraczek. Wieżyczka wykonana z łatwych do obróbki materiałów: drewno + korek konwerter ft232rl (Dodatek B) RS<->USB, programator, kabel USB 5

Rysunek 4: Zestawiony układ sonarów, AtMegi, zasilania i konwertera rs Rysunek (Rys.4) prezentuje zabudowany układ sonarów. Mimo zwartej struktury, układ pozostaje segmentalny. Poszczególne płytki zostały przykręcone do drewnianej wierzy, ale cały czas można je wyjąc i testować z osobna. Projekt ma charakter dydaktyczny i dlatego takie rozwiązanie jest najlepsze. Projekt daje możliwości kolejnych zastosowań, np połączenie z ruchomym serwomechanizmem wprawionym w ruch obrotowy wokół własnej osi umożliwił by zaczytywanie danych ze wszystkich kierunków, a nie tylko z czterech... ale to może w przyszłości. 6

4 Program: 4.1 AtMega16: Mikrokontroler za pomocą czterech przetworników analogowo - cyfrowych (ADC0..ADC3) na bieżąco zczytuje wartości napięć wystawionych przez sonary. Przetworzone na postać cyfrową wielkości napięć zostają zapamiętane jako zmienne w programie i za pomocą UARTU (RXD, TXD) zostają podane do konwertera ft232rl. Obsługą przetworników i przesyłem danych przez UART zarządza program, który został wgrany na AVR poprzez środowisko AVRStudio4 przez standardowe programowanie w trybie ISP (MOSI, MISO, SCK, RESET) poprzez programator AVRProgUSB. Konwerter ft232rl przechwytuje wysłane przez RS232 dane (RXD, TXD) i podaje je na USB. Konwerter jest dodatkowo zasilany z zewnątrz. Komputer sczytuje dane w postaci 4 liczb powtarzających się ciągle i odpowiadających kolejnym wynikom pomiarów poszczególnych sonarów. Wstępne testy wysyłanych danych przeprowadziłem poprzez terminale coma i otrzymywałem poprawne wyniki (Rys.5): Rysunek 5: Odbierane dane przez terminal Ustawiono jest 8 bitowy przesył danych, 4800 bitów na sekundę. Schemat podłączeń całego układu znajduje się w dodatku (Dodatek C), natomiast kod programu zamieszczony jest w pliku stanowiacym dodatek (Dodatek D). 7

4.2 Qt: Program napisany w Qt to QtSerialPortTerminal rozbudowany o wizualizację. Po ustawieniu parametrow transmisji i przyłączeniu układu do odpowiedniego portu zostają wyświetlone odległości obiektów znajdujących się blisko sonarów. Wynik działania programu to okienko pokazana na rysunku (Rys.6): Rysunek 6: Wizualizacja danych sonarowych prze Qt Okienko z lewej strony pokazuje aktualnie sczytywane potokiem dane z portu com5. Po prawej stronie widać pole wizualizacyjne. Linie symbolizujące cztery kierunki świata sygnalizują wychwycenie obiektu przez dany sonar. Długość linii jest wprost proporcjonalna do odległości obiektu od danego sonara. Dodatkowo przy każdej linii są wyświetlane informacje o odległości. W przypadku braku identyfikacji obiektu lub jego lokalizacji w odległosci większej od 2 metrów od sonaru, linia zostaje maksymalnie wyrysowana a w polu odległości zostaje wypisane > 2[m]. Program uzyskałem po modyfikacji darmowego QtSerialPortTerminal: http://www.qt-apps.org/content/show.php/qtserialportterminal?content=77764 Free software (License: GPL) - GNU General Public License Program korzysta ze standardowych bibliotek Qt Creatora + QextSerialPort. Występuje błąd przetwarzania danych z potoku znaków na liczby do ustalenia długości linii wizualizacyjnych i po pewnym czasie otrzymywane wyniki są nieprawidłowe: (Dodatek E) - QtSerialPorTerminal.cpp linijka 233) 8

5 Literatura i spis dodatków: Literatura [1] dr inż. B. Kreczmer: Slajdy z wykładu: Wizualizacja danych sensorycznych PWR 2007. [2] WObit: Instrukcja obsługi Sonar MOBOT-US V2, Poznań 2008. [3] Atmel: AtMega16 - datasheet [4] FTDIChip-ID TM : FT232R USB UART I.C. [5] KAMAMI: ZL4USB: Interfejs USB<->RS232, btc ver.1.0 [6] R. Baranowski: Mikrokrokontrolery AVR ATmega w praktyce, btc Warszawa 2005. [7] Daniel Solin: Poznaj programowanie przy użyciu biblioteki QT w 24 godziny [8] http://www.qt-apps.org/content/show.php/qtserialportterminal?content=77764 [9] http://qextserialport.sourceforge.net/ [10] Tobias Oetiker, Hubert Partl, Irene Hyna i Elisabeth Schlegl: Nie za krótkie wprowadzenie do systemu L A TEX, w.3.2-21 wrz. 1998 [11] materiały wydobyte z www Spis dodatków: [Dodatek A]: Sonar MOBOT-US V2 (datasheet) [Dodatek B]: ZL4USB interfejs USB<->RS232 (datasheet) [Dodatek C]: Schemat połączeń układu [Dodatek D]: Program Atmega16 [Dodatek E]: Program Qt L A TEX 9