Wydział Elektroniki. Wykrywacz przewodów ściennych. Wizualizacja danych sensorycznych - projekt. Prowadzący: dr inż.

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

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

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

Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0

Politechnika Wrocławska

Instrukcja do oprogramowania ENAP DEC-1

1. Opis. 2. Wymagania sprzętowe:

TM PROGRAM TERMINALA RS232 DLA MULTIPLEKSERA 8XRS232 / ETHERNET 10BASE-T

dokument DOK wersja 1.0

PRUS. projekt dokumentacja końcowa

Instrukcja użytkownika ARsoft-CFG WZ1 4.0

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

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

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

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

Metody obsługi zdarzeń

Rysunek 1: Okno z lista

2.1 Porównanie procesorów

Instrukcja użytkownika ARSoft-WZ1

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

SZYMAŃSKI ŁÓDŹ Ul. Wiskicka 22 Tel./fax. (042) Tel./fax. (042) Kom

Biomonitoring system kontroli jakości wody

RPTC CONTROLLER (v1.11) STEROWNIK PRZEMIENNIKA RADIOWEGO OBSŁUGA KOMUNIKATÓW GŁOSOWYCH OBSŁUGA KOMUNIKATÓW IDCW OPCJONALNY MODUŁ GSM

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

Kod produktu: MP01611

Spis treści. 1 Historia dokumentu Wstęp Obsługa programu... 6

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

Technika mikroprocesorowa. Konsola do gier

1. Przypisy, indeks i spisy.

2. Architektura mikrokontrolerów PIC16F8x... 13

VComNet Podręcznik użytkownika. VComNet. Podręcznik użytkownika Wstęp

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

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

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego

Aplikacja dla eksperymentu identyfikacyjnego z wykorzystaniem układu PAIO. Wykonał : Marcin Cichorowski Prowadzenie : dr inż.

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

Ćwiczenie 7: WYKONANIE INSTALACJI kontroli dostępu jednego Przejścia REGIONALNE CENTRUM EDUKACJI ZAWODOWEJ W BIŁGORAJU

POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY KATEDRA ENERGOELEKTRYKI LABORATORIUM INTELIGENTNYCH INSTALACJI ELEKTRYCZNYCH

Fiery Remote Scan. Uruchamianie programu Fiery Remote Scan. Skrzynki pocztowe

interfejs szeregowy wyświetlaczy do systemów PLC

Zdalny czujnik. Adam Zugaj Wydział Elektroniki, PWr IV rok, AiR (ARR) Wrocław, 12 czerwca 2009

SystimPlus. Dokumentacja (FAQ) dla wersji: v

AN ON OFF TEMPERATURE CONTROLLER WITH A MOBILE APPLICATION

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

Instrukcja obsługi programatora AVR Prog USB v2

Instytut Teleinformatyki

Diagnostyka pamięci RAM

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

WARIATOR USTAWIENIA Białystok, Plażowa 49/1, Poland,

Interfejs RS485-TTL KOD: INTR. v.1.0. Zastępuje wydanie: 2 z dnia

PROCEDURA USTAWIANIA CZUJNIKÓW

Instrukcja obsługi programatora AVR Prog USB v2

Ministerstwo Finansów

Standardowe bloki funkcjonalne

Instalacja oprogramowania ESI oraz konfiguracja

Instrukcja konfiguracji programu Fakt z modułem lanfakt

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

TES 1601 #02982 TES 1602 #02983

Instrukcja obsługi programatora AVR Prog USB v2

Sterowanie urządzeniami elektronicznymi przy użyciu portu LPT

Ćwiczenie 4: Eksploatacja systemu kontroli dostępu jednego Przejścia REGIONALNE CENTRUM EDUKACJI ZAWODOWEJ W BIŁGORAJU

Spis treści. 1 Moduł RFID (APA) 3

Opis czytnika TRD-80 CLASSIC ver Moduł czytnika transponderów UNIQUE z wbudowaną anteną

IIPW_SML3_680 (Z80) przewodnik do ćwiczeń laboratoryjnych

APOLLO KISO II - PC INSTRUKCJA UŻYTKOWNIKA INSTRUKCJA OBSŁUGI PROGRAMU DO KOMUNIKACJI KASA KOMPUTER. (ver. 1.0 czerwiec 2005)

Podręcznik użytkownika

Opis szybkiego uruchomienia programu APBSoft

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

Zamek do BANKOMATU K12/BANK. Instrukcja Instalacji 1.0

Sterownik kompaktowy Theben PHARAO II

Instrukcja obsługi programu PLOMP PLUS FM

SERWER AKTUALIZACJI UpServ

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Jednofazowy licznik energii elektrycznej z interfejsem Modbus, pomiar bezpośredni

Komunikacja w mikrokontrolerach Laboratorium

E-TRONIX Sterownik Uniwersalny SU 1.2

Przerwania, polling, timery - wykład 9

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla

Instrukcja instalacji oraz konfiguracji sterowników. MaxiEcu 2.0

Rozdział 7. Drukowanie

Program emulatora GPS pobieramy ze strony z działu Pobieralnia.

INSTRUKCJA OBSŁUGI PROGRAMU INSTAR 1.0

Procedura instalacji oprogramowania ESI[tronic] oraz konfiguracji modułów KTS 530/540/570

DZT Licznik energii elektrycznej Sieć trójfazowa 4-przewodowa Połączenie bezpośrednie 100A Wyjście impulsowe oraz RS485/Modbus.

Pomoc do programu ISO Manager

UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.

INSTRUKCJA INSTALACJI WEB SERWER STW. DOKUMENTACJA TECHNICZNA INSTRUKCJA OBSŁUGI wersja instrukcji 1.0

DOKUMENTACJA TECHNICZNA. KONWERTER MODBUS v1. INSTRUKCJA OBSŁUGI wersja instrukcji 1.0

Instalacja oprogramowania ESI[tronic] oraz konfiguracja Diagnozy Sterowników

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

1 Moduł Neuronu Cyfrowego SM

NARZĘDZIE KONFIGURACYJNE VNX SETUP TOOL MODUŁÓW RODZINY VNX ADVANCED

TM PROGRAM TERMINALA RS-232 DLA MULTIPLEKSERA 8XRS-232 / ETHERNET 10BASE-T

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

Posnet Grafik Instrukcja obsługi

Instrukcja konfiguracji programu Fakt z modułem lanfakt

TECHNIKA MIKROPROCESOROWA II

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

ROZDZIAŁ 1. PRZEGLĄD BRAMOFONU SAFE...

MultiTool instrukcja użytkownika 2010 SFAR

Transkrypt:

Wydział Elektroniki Wykrywacz przewodów ściennych Wizualizacja danych sensorycznych - projekt Prowadzący: dr inż. Bogdan Kreczmer Wykonał: Jarosław Siarant 140410 Data: 14 czerwca 2008

1 Wstęp 1 1 Wstęp Celem projektu było zrealizowanie urządzenia, które wykrywa przewody ścienne. Ma ono również za zadanie podawać orientacje przewodu względem układu. Dlatego też w projekcie użyto trzech czujników zmiennego pola elektromagnetycznego, które generowane jest przez prąd płynące w obwodzie. Sam układ przetwarzania oparty jest na mikrokontrolerze Atmega8. Dane wizualizowane są na wyświetlaczu LCD. Zaimplementowana jest również komunikacja z komputerem, za pomocą protokołu RS232. Do urządzenia stworzono również interfejs graficzny napisany w QT. Poniżej przedstawiono budowę całego układu, zasadę działania oraz opis programu mikrokontrolera. 2 Budowa układu W tym punkcje przedstawiono budowę układu elektronicznego. Cały układ można podzielić na kilka części pełniących określona rolę. Jednym z elementów to układ detekcji przewodów. Do wykrywania zmiennego pola elektromagnetycznego wykorzystano układ licznika. Kolejny to układ przetwarzania danych z czujników (mikrokontroler) i sam układ wizualizacji danych za pomocą wyświetlacza LCD.Schemat całego układu (bez wyświetlacza) przedstawia rysunek 1. 2.1 Detekcja zmiennego pola elektromagnetycznego Jak już wspomniano wcześniej do detekcje pola elektromagnetycznego został wykorzystany układ licznika (model 4017). Jest to niestandardowe wykorzystane tego układu. Licznik ten na na wejściu bardzo dużą impedancję wejściową, dlatego też nawet niewielkie nadpęcie na wejściu powodują jego uruchomienia. Jako sensor podłączony do wejścia licznika wykorzystano krótki drucik, w który indukuje się siła elektromotoryczna, gdy jest on w zmiennym polu elektromagnetycznym. Na rysunku 2 widzimy schemat takiego układu. Do pinu P1 podłączony jest wspomniany wyżej sensor. Wyjście układu (dowolny wyjście licznika) podłączone jest do mikrokontroler. W przypadku wykrycia zmiennego pola elektromagnetycznego licznik zaczyna wysyłać impulsy, które są odbierane przez Atmege8.

2.1 Detekcja zmiennego pola elektromagnetycznego 2 Rysunek 1: Schemat układu.

2.2 Układ przetwarzania danych 3 Rysunek 2: Schemat układu detekcji pola. 2.2 Układ przetwarzania danych Jako układ przetwarzania danych wykorzystano mikrokontroler Atmega8. Układ ten ma wystarczającą ilość podzespołów umożliwiającą zrealizowanie detektora. Cały układ elektroniczny miał za zadanie oprócz wykrycia przewodu podawać również jego orientacje. Dlatego zastosowano trzy czujniki zmiennego pola elektromagnetycznego. W mikrokontroler do zbierania danych wykorzystane są przerwania zewnętrzne (INT0 i INT1). Sama zastosowana Atmega posiada dwa wejścia przerwań zewnętrznych, dlatego trzeci czujnik został podłączony do pinu T0, który taktuje wewnętrzny zegar (Timer0). Mikrokontroler ma zadanie również tworzyć i wyświetlać informacje na wyświetlaczu LCD. Poniżej (rys. 3) przedstawiono schemat układu. Dokładna zasada działania przedstawiona będzie podczas opisu części programowej. 2.3 Układ wizualizacji danych - wyświetlacz LCD Do wizualizacji danych z czujników wykorzystano wyświetlacz LCD 2x16. Wykorzystano matrycę wyposażona jest w standardowy sterownik firmy Hitachi (44780). Układ wykorzystuje podłączenie do czterech Linei danych. Ogólny schemat podłączenia przedstawiono poniżej (rys. 4).

3 Opis części programowej 4 Rysunek 3: Schemat układu przetwarzania danych. 3 Opis części programowej W tej części dokumentu przedstawiona zostanie cześć programowa z dokładnym opisem sposobu realizacji poszczególnych elementów. Program został napisany z wykorzystaniem środowiska Kontrollerlab oraz kompilatora avr-gcc. Kod programu został zamieszczony w dodatku A. 3.1 Pozyskiwanie danych W sekcji (2.2) opasano sposób podłączenia czujników. Dwa czujniki wykorzystują przerwania zewnętrzne, natomiast trzeci możliwość taktowania licznika wewnętrznego (Timer0 ) z zewnętrznego oscylatora za pomocą pinu T0. Gdy układ detekcji wykryje przewód zaczyna wysalać impulsy. Praktyczne na mikrokontrolerze sprowadza się to do sprawdzania czy licznik Wasyla impulsy czy nie. Aby wykorzystać opisane wyżej elementy należy je odpowiednio skonfigurować. I tak Timer0 został skonfigurowany do taktowania z zewnętrznego oscylatora (pin T0 ) oraz wartość licznika zerowała się przy zrównaniu z wartością w rejestrze OCR.

3.2 Sprawdzanie zmian wykrytych przez czujniki 5 Rysunek 4: Sposób podłączenia wybielacza LCD. Odblokowane również zmotały przerwania (przerwanie generowane przy zrównaniu). W funkcji obsługi przerwania ustawiony jest licznik który jest implementowany za każdym zrównaniem (implementowany z kolejnym impulsem). Podobnie zrealizowano funkcje obsługi przerwań zewnętrznych. Po odpowiednim ich skonfigurowaniu (przerwanie przy zbocze narastającym) w funkcjach obsługi przerwań inkrementowane są liczniki. Co określony okres czasu wartości liczników są sprawdzane. Dzięki temu mamy informacje o zmianach wykrytych przez czujniki. 3.2 Sprawdzanie zmian wykrytych przez czujniki Opisane wyżej liczniki niosą informacje o zmianach. Co pewien okres ich wartości są sprawdzane. Do tego celu wykorzystano Timer2. Jest to drugi licznik 8-bitowy dostępny w układzie Atmega8 (Timer1 16-bitowy nie był wykorzystywany). Jest on skonfigurowań również w trybie CTC, czyli wartość licznika zerowana jest podczas zrównania z wartością w rejestrze OCR i włączone ma przerwania. Taktowany jest z częstotliwością F CP U/1024 (F CP U - częstotliwość taktowania procesora). Przerwania generowane są co około 150ms. W funkcji obsługi przerwania sprawdzany jest stan liczników i ustawiane są zmienne informujące o biedzącej sytuacji. Zmienne te wykorzystywane są w funkcjach tworzenia grafiki wyświetlanej później na wyświetlaczu.

3.3 Wyświetlanie informacji użytkownikowi 6 3.3 Wyświetlanie informacji użytkownikowi Do wyświetlanie informacje użytkownikowi zaimplementowanie dwie funkcje. Jedna tworzy grafikę a kolejna ją wyświetla. Obie funkcje wywoływane są w głównej pętli programu. Funkcja do tworzenia grafiki wykorzystuje zmienne ustawiane w podczas cyklicznych przerwań opasanych w poprzednim punkcje (punkt 3.2). Tworzy ona 2 ciągi znaków, które potem są wyświetlane na LCD. 3.4 Komunikacja z wykorzystaniem protokołu RS232 W układzie zaimplementowana została również komunikacja (protokół RS232). Do prawidłowego działania wymagany jest zewnętrzny konwerter poziomów TTL- RS232. Wiadome jest, że Atmega8 posiada moduł USART umożliwiający komunikacje szeregową. USART został ustawiony w trybie 8N1 (8 bitów danych, bez sprawdzania parzystości, 1 bit stopu). Prędkość komunikacja wynosi 4800 bodów. Odblokowane są również przerwania (generowane podczas przyjścia nowego znaku). Komunikacja z komputerem odbywa się poprzez odpytywanie. Po tym jak układ otrzyma znak v sprawdza stan zmiennych opisujących aktualną sytuację i odsyła znaki informujące o położeniu przewodu (l,r,c- przewód odpowiednio po lewej, prawej, w środku) lub wysyła zero jeśli nie wykryto niczego. 4 Opis interfejsu Do napisania interfejsu zostało wykorzystane środowisko QT w wersji 4.3 i kompilatora g++ w wersji 4.2 pod systemem operacyjnym Ubuntu. Obsługa portu komunikacji szeregowej z urządzeniem jest zgodna ze standardem POSIX. Aplikacje można podzielić na dwie części pierwsza odpowiedzialna za otwarcie portu, druga to okno główne w którym wizualizowane są dane pobrane z urządzenia. Oba okna Stworzono wykorzystując program QTDesigner. W oknie głównym znajduje się pasek menu. W menu Plik można wybrać opcje otwierania portu. Wtedy pojawia się okno dialogowe.

4.1 Okno główne 7 4.1 Okno główne Okno główne składa się z pola, w którym wyświetlana jest grafika oraz dwa przyciski do odpytywania i zrywania poleczenia (rys. 5). Zawiera ono również pasek menu i statusu. W menu Plik można wybrać opcje otwierania portu. Wtedy pojawia się okno dialogowe opisane w następnym punkcie. Przyciskiem Połącz rozpoczynamy odpytywanie urządzenia natomiast Rozłącz powoduje jego przerwanie. Samo odpytywanie jest okresowe (wykorzystany timer dostępny w QT). Rysunek 5: Okno główne 4.2 Konfiguracja portu komunikacji szeregowej Jak już wspomniano wyżej jednym z dwóch okien interfejsu jest okno wyboru parametrów portu (rys. 6). Jest to okno dialogowe. Umożliwia ono wybór urządzenia oraz prędkość transmisji. Komunikacja standardowo odbywa się w trybie 8N1 (8 bitów danych, bez parzystości, 1 bit stopu). W projekcie interfejsu została stworzona klasa, która dziedziczy formatkę stwo-

5 Opis realizacji programowej 8 Rysunek 6: Okno konfiguracji portu rzoną w QTDesigner. Dziedziczy również klasę obsługi portu Rs232. Po wciśnięciu przycisku Otwórz i jeśli nie wystąpią błędy parametry portu zostaję ustawione a deskryptor jest kopiowany do klasy obsługującej okno główne. 5 Opis realizacji programowej Program składa się z kilku klas, które pełnią określone funkcje. Główna jest klasa Interfejs. Dziedziczy ona formatkę okna głównego, stworzoną w programie QTDesigner oraz klasę Rs232, obsługującą komunikację. Klasa ta zwiera metody umożliwiające odpytywanie urządzenia (metoda askdevice()). Wysyła ona co określony czas zapytanie w postacie litery v. Uruchamiana jest podczas przepełnienia licznika (wykorzystany QTimer). Po zapytaniu sprawdzania jest odpowiedź. Bez niej nie następuje ponowne odpytanie urządzenia. Dane wizualizowane są na polu typu QPainter. Do odświeżania tego pola wykorzystany został drugi licznik. Do tworzenia grafiki została zaimplementowana oddzielna klasa o nazwie Painter. W klasie Interfejs okresowo wysyłany jest sygnał update do pola Painter. Umożliwia to jego odświeżanie. Sama grafika składa się z sygnalizatora wyszukiwania, z elementu podającego kierunek znalezienia przewodu oraz słownie wyświetlane są informacje. Klasa Rs232 umożliwia otwieranie, pobieranie i wysyłanie danych przez port szeregowy. Konfiguracje portu odbywa się przed jego otwarciem wewnątrz metody open. Oddzielną częścią interfejsu jest obsługa otwarcia portu. Klasa OpenPort, która

6 Podsumowanie 9 to umożliwia, dziedziczy formatkę przedstawioną na rysunku 6. Wykorzystuje ona wspomniani wcześniej metodę open. Okno to jest typu dialogowego. Dla rozpoznania decyzji użytkownika jest wykorzystany zwracany statusu okna (po kliknięciu przycisku Otwórz status ustawiony jest jako accepted). Deskryptor otwartego poru jest kopiowany do klasy Interfejs, gdzie następuje komunikacja. 6 Podsumowanie Obecnie na rynku jest sporo urządzeń umożliwiających wykrywanie przewodów pod napięciem. Ogólnie zdanie to jest dość trudne. Głownie z tego powodu. że pole wokół przewodnika jest bardzo małe, natomiast w ich obrębie jest mnóstwo urządzeń, które zakłócają prawidłową detekcje przewodów. Profesjonalne detektory emitują własne sygnały w przewodach dla skutecznego ich wykrycia. W Związku z powyższym w ramach tego projektu zostało zrealizowane kilaka różnych układów detekcji. Spośród nich wybrany zostali jeden, dość prosty, który lepiej sobie radził niż inne układy oparte na tranzystorach. Jest on bardzo czuły przez to w niektórych sytuacjach może niepoprawnie wykryć zmienne pole. Dodatkowo podczas testowana zauważono że ściany pokryte akrylem powodują duże nagromadzenie się ładunków przez co w niektórych przypałach uniemożliwiają prawidłowe wykrycie przewodu. 7 Wykorzystane materiały http://www.sklep.avt.pl/go/ info/?id=46958 http://www.atmel.com/dyn/resources/prod documents/doc2486.pdf http://www.zytrax.com/tech/layer 1/cables/tech rs232.htm#pins http://palmavr.sourceforge.net/cgi-bin/fc.cgi http://www.tkdami.net/ṽoytek/programy/adc/przetwornik AC.html Projektowanie systemów mikroprocesorowych, Paweł Hadam, BTC, Warszawa 2004 http://doc.trolltech.com/

7 Wykorzystane materiały 10 http://www.kiernek.yoyo.pl/ http://free.of.pl/q/qtmoux/