Dalmierz optyczny raport

Podobne dokumenty
WIZUALIZACJA DANYCH SENSORYCZNYCH Sprawozdanie z wykonanego projektu. Jakub Stanisz

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

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

Skaneroptyczny- Fafik

Politechnika Wrocławska

Biomonitoring system kontroli jakości wody

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

AN ON OFF TEMPERATURE CONTROLLER WITH A MOBILE APPLICATION

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

2.1 Porównanie procesorów

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

Różnicowy przetwornik ciśnienia EL-PS-xxx

Parametryzacja przetworników analogowocyfrowych

Wstęp Architektura... 13

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

MiniModbus 4DO. Moduł rozszerzający 4 wyjścia cyfrowe. Wyprodukowano dla. Instrukcja użytkownika

Kod produktu: MP01105T

Mini Modbus 1AI. Moduł rozszerzający 1 wejście analogowe, 1 wyjście cyfrowe. Wyprodukowano dla

APPLICATION OF ADUC MICROCONTROLLER MANUFACTURED BY ANALOG DEVICES FOR PRECISION TENSOMETER MEASUREMENT

Wykrywacz kłamstw. Grzegorz Puzio, Łukasz Ulanicki 15 czerwca 2008

Zestaw czujników białej linii do robota klasy follow the line. Raport końcowy.

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

Karta katalogowa JAZZ OPLC JZ20-R31

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

Sterownik nagrzewnic elektrycznych HE module

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Kod produktu: MP01105

SPECYFIKACJA PRZETWORNIK RÓŻNICY CIŚNIEŃ

Interface sieci RS485

Karta katalogowa JAZZ OPLC JZ20-T40/JZ20-J-T wejść cyfrowych, 2 wejścia analogowe/cyfrowe, 2 wejścia analogowe. 20 wyjść tranzystorowych

SPECYFIKACJA PRZETWORNIK RÓŻNICY CIŚNIEŃ DPC250; DPC250-D; DPC4000; DPC4000-D

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

Moduł nagrzewnicy elektrycznej EL-HE

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

1 Moduł Modbus ASCII/RTU

E-TRONIX Sterownik Uniwersalny SU 1.2

RS485 MODBUS Module 6RO

SYSTEM MONITOROWANIA GAZÓW MSMR-16

RS485 MODBUS Module 6RO

Statyczne badanie wzmacniacza operacyjnego - ćwiczenie 7

Spis treści. 1 Moduł Modbus TCP 4

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

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

RS485 MODBUS Module 6RO

MCAR Robot mobilny z procesorem AVR Atmega32

JAZZ OPLC JZ20-R10 i JZ20-R16

Moduł komunikacyjny Modbus RTU do ciepłomierza SonoMeter 30

DTR PICIO v Przeznaczenie. 2. Gabaryty. 3. Układ złącz

Karta katalogowa JAZZ OPLC. Modele JZ20-T10/JZ20-J-T10 i JZ20-T18/JZ20-J-T18

Mini Modbus 1TE. Moduł rozszerzający 1 wejście temperaturowe, 1 wyjście cyfrowe. Wyprodukowano dla

2.1 Przesył danych między procesorem a tabelą zmiennych

Karta katalogowa JAZZ OPLC. Modele JZ20-R10/JZ20-J-R10 i JZ20-R16/JZ20-J-R16

JAZZ OPLC JZ20-R31/JZ20-J-R31

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

M-1TI. PROGRAMOWALNY PRECYZYJNY PRZETWORNIK RTD, TC, R, U / 4-20mA ZASTOSOWANIE:

1 Moduł Modbus ASCII/RTU 3

Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń. Instrukcja do ćwiczenia nr 10. Transmisja szeregowa sieciami energetycznymi

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach.

Kod produktu: MP01611

Ultradźwiękowy miernik poziomu

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

Miernik poziomu cieczy MPC-1

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

REGULATOR PI W SIŁOWNIKU 2XI

Wstęp do użytkowania modeli GP2D12 i GP2Y0A02 Podstawowe informacje techniczne Testy praktyczne czujnika GP2Y0A02

M-1TI. PRECYZYJNY PRZETWORNIK RTD, TC, R, U NA SYGNAŁ ANALOGOWY 4-20mA Z SEPARACJĄ GALWANICZNĄ. 2

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Instytut Teleinformatyki

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

SDM-8AO. Moduł rozszerzający 8 wyjść analogowych. wyprodukowano dla

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

RS485 MODBUS Module 8AI

RS485 MODBUS Module 6TE

Interfejs analogowy LDN-...-AN

STHR-2810, 2811, 2812 Przetwornik temperatury i wilgotności z czujnikiem Sensirion

RS485 MODBUS Module 6TE

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

1 Moduł Neuronu Analogowego SM

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

Konfiguracja parametrów sondy cyfrowo analogowej typu CS-26/RS/U

Opis techniczny koncentratora wejść impulsowych KWI-1. APATOR SA,

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

Programowanie mikrokontrolerów. 8 listopada 2007

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

3.1 INFORMACJE OGÓLNE O UKŁADACH WEJŚĆ/WYJŚĆ ODDALONYCH SMARTMOD I/O

Przetwornik analogowo-cyfrowy

Programator układów HCS

Mini Modbus 1AO. Moduł rozszerzający 1 wyjście analogowe, 2 wyjście cyfrowe. Wyprodukowano dla

Karta katalogowa JAZZ OPLC JZ10-11-PT15/JZ10-J-PT15. 3 wejścia cyfrowe, 3 wejścia analogowe/cyfrowe, 3 wejścia PT1000/NI1000

STHR-6610 Naścienny przetwornik temperatury i wilgotności

WYŚWIETLACZ UNIWERSALNY

Zaprojektowanie i zbadanie dyskryminatora amplitudy impulsów i generatora impulsów prostokątnych (inaczej multiwibrator astabilny).

Pracownia pomiarów i sterowania Ćwiczenie 1 Pomiar wielkości elektrycznych z wykorzystaniem instrumentów NI ELVIS II

RS485 MODBUS Module 8AO

Xelee Mini IR / DMX512

Wirtualne przyrządy kontrolno-pomiarowe

LMWD-2X LISTWOWY MODUŁ WYJŚĆ DWUSTANOWYCH DOKUMENTACJA TECHNICZNO-RUCHOWA. Wrocław, listopad 1999 r.

Uproszczony schemat blokowy konwertera analogowo-cyfrowego przedstawiony został na rys.1.

Transkrypt:

Dalmierz optyczny raport Adam Oleksy 24 czerwca 2008 1 Celprojektu Celem projektu jest zbudowanie urządzenia pomiarowego opartego o dalmierz optyczny. Urządzenie ma za zadanie pomiar odległości przeszkody od czujnika. Pomiar ten wykonywany jest za pomocą czujnika optycznego GP2Y0A710K0F firmy Sharp. Podstawowymi założeniami jest interakcja użytkownika z urządzeniem za pomocą klawiatury oraz alfanumerycznego wyświetlacza LCD. Dodatkowo urządzenie może pracować w systemie wykorzystującym do komunikacji protokół Modbus. W systemie takim dalmierz jest urządzeniem podrzędnym. 2 Podstawoweelementy Urządzenie składa się z dwu podstawowych elementów, jakimi są: mikrokontroler MC9S12A64 firmy Freescale; dalmierz optyczny GP2Y0A710K0F firmy Sharp. 2.1 MikrokontrolerMC9S12A64 W projekcie wykorzystano 16-bitowy mikrokontroler firmy Freescale. Mikrokontroler ten zamontowano na płytce rozwojowej zaprojektowanej przez Marka Kabałę oraz Marka Wnuka. Dokumentację dotycząca modułu z procesorem można znaleźć na stronie domowej dra Marka Wnuka. W projekcie wykorzystano następujące zasoby mikrokontrolera: przetwornik analogowo-cyfrowy; modułsci; portyi/o 1

2.1.1 Przetwornikanalogowo-cyfrowy Przetwornik analogowo-cyfrowy wykorzystywany jest w celu konwersji sygnału napięciowego, pochodzącego z czujnika, na liczbę 10-bitową. Sam przetwornik pracuje w trybie pomiaru pojedynczego z wykorzystaniem przerwania informującego o zakończeniu pomiaru. Czas konwersji napięcia został ustawiony na 5µs. Obsługa tego zasobu została oparta o kod wygenerowany przez Processor Expert. 2.1.2 Komunikacja Moduł SCI wykorzystywany jest przy komunikacji urządzenia z komputerem. Konfiguracja modułu: prędkość transmisji 9600bps; brak bitu parzystości; jedenbitstopu. Urządzenie to obsługiwane jest przez podprogram do obsługi protokołu Modbus, pracującego w trybie ASCII. Implementacja została dostarczona przez dra Marka Wnuka oraz zmodyfikowana na potrzeby używanego mikrokontrolera przez autora projektu. 2.1.3 Interakcja z użytkownikiem W celu umożliwienia interakcji użytkownika z urządzeniem, zastosowano alfanumeryczny wyświetlacz LCD oraz prostą, 4-przyciskową klawiaturę. Oba te urządzenia podłączono do portów wejściowo-wyjściowych, znajdujących się w mikrokontrolerze. 2.2 Czujnikoptyczny W projekcie został wykorzystany czujnik optyczny firmy Sharp przestawiony na rysunku 1. Rysunek 1: Czujnik optyczny 2

Rysunek 2: Budowa czujnika optycznego 2.2.1 Budowaczujnika Budowa wewnętrzna czujnika przedstawiona jest na rysunku 2. Warto zwrócić uwagę na sposób zasilania. Rysunek 2 sugeruje, że masa znajduje się na nóżkach 1, 5, natomiast zasilanie2,3,orazżenóżkitesązwartezesobązgodniezeswoimprzeznaczeniem. Okazało się jednak, że czujnik użyty w niniejszym projekcie posiadał nóżki, które były od siebie odseparowane. 2.2.2 Zasadadziałania Zasada działania czujnika opiera się na dwu podstawowych elementach(rys. 2). Odległość obiektu od czujnika określana jest za pomocą linijki PSD(Position sensitive device) czułej na światło padające na jej powierzchnię. Rysunek 3: Linijka PSD 3

Na rysunku 3 przedstawiona jest schematyczna budowa linijki. Światło padające na czujnik powoduje rozpływ prądów poprzez elektrody Y1 oraz Y2. Ze stosunku tych dwu prądów(równanie(1)) można w prosty sposób obliczyć pozycję punktu, który jest oświetlony. x=k x I Y1 I Y2 I Y1 +I Y2 (1) Wykorzystując powyższy fakt można obliczyć odległość obiektu, który odbił światło wyemitowane przez nadajnik podczerwieni, wykorzystując zależność d=f L x, gdzie: f odległość czujnika PSD od soczewki, L odległość czujnika od nadajnika podczerwieni, x pozycja punktu padania promienia świetlnego na czujnik PSD(rys. 4). Rysunek 4: Zasada pomiaru z czujnikiem PSD Pomiar odległości wykonywany jest dwa razy: z zapaloną diodą, oraz z wyłączoną diodą. Wykonywane jest to w celu wyeliminowania tła. 2.2.3 Charakterystykaczujnika Charakteryzują go następujące wartości: zakres pomiarowy od 100 do 550 centymetrów; wyjście analogowe; napięciezasilaniaod4,5do5v; typowy pobór prądu 30mA. czaswykonaniapomiaru16,5±3,7ms. 4

Rysunek 5: Charakterystyki napięciowe czujnika optycznego Charakterystyka napięciowa czujnika przedstawiona jest na rysunkach 5. Widać z nich, że funkcja napięcia wyjściowego od odległości jest funkcją nieliniową. Analizując jednak drugi wykres można zauważyć, że funkcja napięcia wyjściowego od odwrotności odległości jest już funkcją liniową. 2.2.4 Linearyzacja sygnału wyjściowego W celu wyświetlenia wyniku pomiaru, wcześniej należy go zlinearyzować, tak aby pokazywał on odległość od badanego obiektu. Wiedząc, że napięcie wyjściowe czujnika jest odwrotnie proporcjonalne od odległości obiektu, można wyznaczyć ogólną postać funkcji daną wzorem: gdzie: Y adc =(2 16 1) a +b (2) d Y adc wartośćzuzyskanazprzetwornikaanalogowo-cyfrowego; d rzeczywista odległość obiektu od czujnika; a, b współczynniki linearyzacji. Wewzorzeużytododatkowowartości2 16 1.Spowodowanetojesttym,żeobliczenia wykonywane na mikrokontrolerze są stałoprzecinkowe. Dzięki dodaniu tej wartości uniknięto stosowania zmiennych zmiennoprzecinkowych, które to mogłyby znacznie wydłużyć czas poświęcony na obliczenia. Na rysunku 6 pokazane są punkty pomiarowe, na podstawie których wyliczono prostą regresji.wwynikutychobliczeńotrzymanowartościparametrów:a=0,46,b=219. 3 Budowaurządzenia 3.1 Schematelektryczny Na rysunku 3.1 został przedstawiony schemat elektryczny urządzenia. 5

550 Pomiar Linearyzacja 500 450 1024 VO 5 400 350 300 250 2 3 4 5 6 1 x [1/cm] 7 8 9 10 x 10 3 3.2 Schematblokowy Rysunek 6: Charakterystyka napięciowa czujnika Funkcjonalność urządzenia została przedstawiona na rysunku 7. Jednym z urządzeń służących do komunikacji, jest klawiatura, która została zbudowana z mikrostyków podłączonych do portu B mikrokontrolera. Z rysunku 8 widać, że jeden z najstarszych bitów portu służy do aktywowania lub dezaktywowania klawiatury. Reszta pinów portu pełni rolę wejść, do których podłączone są rezystory podciągające. Taka konfiguracja narzuca stan aktywny który ma wartość 0. Podobnie ustawienie najstarszego bitu na 0 aktywuje klawiaturę. Wyświetlacz jest podłączony do portu A mikrokontrolera i pracuje w trybie 4. bitowym. Bity te wykorzystywane są jako linie danych, dodatkowo potrzebne są 3 linie sterujące, tak więc wyświetlacz w sumie zajmuje siedem linii portu A. Na rysunku 9 pokazane jest schematyczne podłączenie wyświetlacza do mikrokontrolera. 4 Program 4.1 Mikrokotroler Program obsługujący mikrokontroler jest napisany w języku C w środowisku CodeWarrior. Podczas tworzenia oprogramowania zostały wykorzystane generatory kodu modułu Processor Expert(m.in. obsługa i konfiguracja przetwornika analogowo-cyfrowego). Ponadto wykorzystano bibliotekę implementującą protokół Modbus, napisaną przez dra Marka Wnuka. Została ona zmodyfikowana i poprawiona na potrzeby niniejszego projektu. Modyfikacje polegały na przystosowaniu implementacji do działania na procesorze 6

7

Rysunek 7: Schemat blokowy urządzenia Rysunek 8: Klawiatura urządzenia Rysunek 9: Podłączenie wyświetlacza do mikrokotrolera 8

MC9S12A64. 4.1.1 ProtokółModbus W urządzeniu zaimplementowano 3 podstawowe funkcje, umożliwiające urządzeniu pracę z innymi podzespołami systemu przy wykorzystaniu protokołu Modbus. Wykorzystana biblioteka udostępnia funkcje: funkcjanr3 odczytnrejestrów; funkcjanr16 zapisnrejestrów; funkcja nr 17 identyfikacja urządzenia. Stan urządzenia zapisany jest w 4 kolejnych rejestrach poczynając od rejestru nr 1001. Zapisane są w nich kolejno: 1. aktualna wartość odczytana z przetwornika analogowo-cyfrowego; 2. aktualna wartość odległości(zlinearyzowany pomiar); 3. parametr a wykorzystywany w linearyzacji(wartość jest 100 razy większa); 4. parametr b wykorzystywany w linearyzacji. Zapis do dwu pierwszych rejestrów nie skutkuje zmianami w działaniu urządzenia. Natomiast zapis do dwu kolejnych rejestrów(tj. 1003 i 1004) powoduje zmiany funkcji linearyzującej. Zmiany widoczne są już przy kolejnym odczycie. 4.1.2 Obsługaurządzenia Jak wcześniej wspomniano, do komunikacji z urządzeniem służy alfanumeryczny wyświetlacz LCD oraz 4-przyciskowa klawiatura. Po uruchomieniu urządzenia na wyświetlaczu pokazuje się menu składające się z: Poj. pomiar Ciag. pomiar Tryb Modbus Konfiguracja Do poruszania po menu służą trzy pierwsze służące kolejno do: wejście do wybranej pozycji; wybranie niższej pozycji; wybranie wyższej pozycji. 9

We wszystkich trybach aktywny jest przynajmniej jeden(pierwszy) przycisk służący do powrotu do menu. W trybach pracy ręcznej(pojedynczy oraz ciągły pomiar) aktywny jest także drugi przycisk służący do wyzwolenia wykonania pomiaru. W przypadku pomiaru pojedynczego wykonywany jest jeden pomiar po każdym wyzwoleniu. Natomiast w przypadku pomiaru ciągłego naciśnięcie drugiego przycisku powoduje rozpoczęcie serii pomiarowej, lub jej zakończenie. W przypadku menu konfiguracyjnego aktywne są wszystkie przyciski. Przycisk 2 i 3 powoduje odpowiednio zmniejszenie lub zwiększenie wybranego parametru. Przycisk 4 powoduje przejście do kolejnego parametru, następnie zatwierdza wprowadzone zmiany. W każdej chwili aktywny jest przycisk 1 powodujący powrót do menu bez wprowadzania zmian. W trybie Modbus aktywny jest jedynie przycisk 1 powodujący powrót do menu. 4.2 Master W celu obsługi urządzenia z poziomu komputera stworzono prostą aplikację symulującą urządzenie nadrzędne. Program ten odpytuje co sekundę urządzenie podrzędne a następnie wyświetla wynik na standardowym wyjściu. Dodatkowo na standardowym wyjściu błędów wyświetlane są dokładne informacje dotyczące odczytanych rejestrów. Wywołanie programu ma postać lcd2modbus[-aparam -bparam -ddevice] gdzie: - PARAM liczba całkowita; - DEVICE ścieżka bezwzględna do urządzenia szeregowego. Dodatkowo a przyjmuje tylko wartości dodatnie i powoduje zmianę parametru a wykorzystywanego przy linearyzacji. Wartość podawana w linii poleceń powinna być 100 razywiększaodpierwotnej.oznaczato,żejeżelichcemyabya=0,46,jakoargument powinniśmy podać wartość 46. Parametr b przyjmuje wartości dodatnie oraz ujemne i powoduje zmianę parametru b wykorzystywanego przy linearyzacji. 5 Wnioski Wynikiem projektu jest działające urządzenie spełniające założenia. Uwagę jednak należy zwrócić na zastosowany czujnik. Pomimo zastosowania dobrego układu pomiarowego(osobny stabilizator dla napięcia referencyjnego), odczyty są niestabilne i niedokładne. Problem nasila się w momencie pomiaru odległości większych niż 3m. Zastosowanie uśredniania wyniku z 100 kolejnych próbek(około 10 pomiarów czujnika) nie zmieniło sytuacji. Problemy pokazały się także przy linearyzacji, gdyż zmiana nawet o jeden wartości odczytanej z przetwornika analogowo-cyfrowego, zmienia wynik o kilka centymetrów. Problem ten także nasila się wraz ze zwiększaniem odległości. 10

Podsumowując, urządzenie nadaje się do wykonywania zgrubnych pomiarów odległości. 11