Wizualizacja danych z Rękawiczki Sensorycznej

Podobne dokumenty
Wizualizacja pogody dla windsurferów

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

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

1. Opis. 2. Wymagania sprzętowe:

Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. Wyświetlanie naprzemienne Numer parametru Wartość parametru

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

Poradnik korzystania z usługi FTP

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

Program dla praktyki lekarskiej

THP-100 su Obsługa oprogramowania oraz instrukcja wzorcowania

Wiadomości. ZPKSoft Doradca. Wstęp.

Jedną z ciekawych funkcjonalności NOLa jest możliwość dokonywania analizy technicznej na wykresach, które mogą być otwierane z poziomu okna notowań:

Politechnika Wrocławska

- odczytuje sygnały z analizatora sygnałów (siła, przyspieszenie, prędkość obrotowa) i obrazuje je w formie graficznej

RF-graph 1.2 POMOC PROGRAMU

Opis przycisków sterujących sufitem świetlnym

Ile wynosi całkowite natężenie prądu i całkowita oporność przy połączeniu równoległym?

Platforma e-learningowa

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

Laboratorium Komputerowe Systemy Pomiarowe

Minimalna wspierana wersja systemu Android to zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

Diagnoza Szkolna Pearsona. Instrukcja obsługi

etrader Pekao Podręcznik użytkownika Strumieniowanie Excel

Szpieg 2.0 Instrukcja użytkownika

etrader Pekao Podręcznik użytkownika Portfel inwestycyjny

Do wersji Warszawa,

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

1. Opis okna podstawowego programu TPrezenter.

ArtPlayer oprogramowanie do odtwarzania plików video sterowane Artnet/DMX V1.0.1

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

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

Rejestrator temperatury i wilgotności AX-DT100. Instrukcja obsługi

Pomoc do programu ISO Manager

Pulpit Inwestora. Zarządzanie zleceniami. 1. Składanie zleceń. Biuro Maklerskie

Instrukcja użytkownika Efento Logger (v lub nowsza)

instrukcja instalacji modemu SpeedTouch 605s

Notowania Mobilne wersja Java dotykowa. Instrukcja obsługi programu

Multimetr cyfrowy VA18B Instrukcja instalacji i obsługi. oprogramowania PC-LINK

System Gokart Timing

Instrukcja użytkownika Platformy Walutowej

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

Pasek menu. Kategoria zakładki umożliwia dodawanie zakładek notowań i edytowanie sposobu ich wyświetlania.

Multimetr cyfrowy MAS-345. Instrukcja instalacji i obsługi oprogramowania DMM VIEW Ver 2.0

Program V-SIM tworzenie plików video z przebiegu symulacji

TITAN 2.0. Analiza czasowo- przestrzenna. Opis zmian wprowadzonych do wersji 2.0 w odniesieniu do wersji 1.0

Instrukcja użytkownika Platforma Walutowa

FlowSoft02. Przeznaczenie programu

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

W prawym górnym rogu widoczna jest nazwa zalogowanego użytkownika.

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

ECDL ZARZĄDZANIE PROJEKTAMI

Połączenia poprzez Modemy Wirtualne.

Instrukcja obsługi programu PLOMP PLUS FM

Aplikacja Fidbox. wersja 3.1. dla systemów ios i Android. Wymagania dla systemu Android: Bluetooth 4 i system Android w wersji 4.

Miejskie Wodociągi i Oczyszczalnia sp. z o.o. w Grudziądzu. ibok. Internetowe Biuro Obsługi Klienta. Instrukcja obsługi

WPROWADZENIE DO ŚRODOWISKA SCICOS

Funkcje systemu infokadra

ASMAX ISDN-TA 128 internal Instalacja adaptera w środowisku Windows 98 / ME

Instrukcja do oprogramowania ENAP DEC-1

e-restauracja aplikacja do obsługi szkolnego cateringu

Notowania Mobilne wersja Java

Konsola operatora TKombajn

BACKUP BAZ DANYCH FIREBIRD

instrukcja użytkownika terminala ARGOX PA-20 SYSTEMY AUTOMATYCZNEJ IDENTYFIKACJI

Instrukcja użytkownika ARSoft-WZ3

Expo Composer Garncarska Szczecin tel.: info@doittechnology.pl. Dokumentacja użytkownika

Instrukcja obsługi testera samochodowego akumulatora AV5

I N S T R U K C J A O B S Ł U G I P L AT F O R M Y E N E R G I A S P O Ł E C Z N A. Spis treści

Arkadiusz Kalicki, Lech Mankiewicz Plugin Webcam dla SalsaJ Podręcznik użytkownika

DARMOWY MINI PORADNIK

Konfiguracja konta pocztowego w Thunderbird

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

Przed skonfigurowaniem tego ustawienia należy skonfigurować adres IP urządzenia.

Instrukcja wejścia na konsultacje on-line

Instrukcja instalacji i obsługi programu Szpieg 3

RS-H0-05 (K)* Czytnik RFID MHz Mifare. Karta użytkownika

Instrukcja użytkownika Platforma Walutowa

Program dla praktyki lekarskiej. Instrukcja Aktualizacji

AreConfig. v Arkadiusz Paliński Gdańsk, 2016 rok

Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

Raytracer. Seminaria. Hotline. początkujący zaawansowani na miejscu

Grant Edukacyjny Engram English

1 Moduł Multimedialny

Programowanie xcomfort Cz. I Eaton Corporation. All rights reserved.

Program OBRAZY-SŁOWA-DŹWIĘKI - wspomaganie rozwoju, terapii, komunikowania się. Spis treści

dokument DOK wersja 1.0

Opis ultradźwiękowego generatora mocy UG-500

Krótka instrukcja instalacji

Politechnika Wrocławska, Katedra Inżynierii Biomedycznej Systemy Pomiarowo-Diagnostyczne, laboratorium

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

Wstęp. Skąd pobrać program do obsługi FTP? Logowanie

OPIS PROGRAMU OBSŁUGI STEROWNIKÓW INTECONT >> WAGMASTER << >> INTECONT <<

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

ekopia w Chmurze bezpieczny, zdalny backup danych Instrukcja użytkownika dla klientów systemu mmedica

Logger Termio+ REJESTRATOR TEMPERATURY I WILGOTNOŚCI

Voicer. SPIKON Aplikacja Voicer V100

Transkrypt:

Politechnika Wrocławska Wydział Elektroniki Wizualizacja Danych Sensorycznych - Projekt Wizualizacja danych z Rękawiczki Sensorycznej Gidel Dorota Wądrzyk Katarzyna 23 czerwca 2017

Spis treści 1 Cel projektu 2 2 Założenia projektowe 2 2.1 Diagram Gantta............................................. 2 3 Opis funkcjonalności 2 4 Numeracja czujników w aplikacji i na rękawiczce 3 5 Interfejs użytkownika 3 6 Przykładowe eksperymenty 6 7 Diagram klas 7 7.1 Ogólny diagram klas........................................... 7 7.2 Ogólny diagram klas zakładek...................................... 7 7.3 Ogólny diagram klas zakładek TabCzujnikiNacisku i TabCzujnikiZgiecia.............. 8 8 Diagram czynności sterowania przepływem danych 8 9 Podsumowanie i wnioski 8 1

1 Cel projektu Celem projektu jest wizualizacja danych pobieranych z Rękawiczki Sensorycznej, na której umieszczone są dwa typy czujników: nacisku oraz zgięcia. 2 Założenia projektowe Protokół transmisji danych z mikrokontrolera do komputera Model ręki z czujnikami w 2D/3D Wykresy odczytanych wartości z czujników Grupowanie danych w zakładakach 2.1 Diagram Gantta 3 Opis funkcjonalności Rysunek 1: Diagram Gantta z zaznaczonymi kamieniami milowymi Główna funkcjonalność aplikacji. Zaiplementowano: Obsługa w wątku odbioru (przez QTcpSocket) danych wysyłanych do programu: Stworzono wątek do odbioru danych z drugego programu serwera wysyłającego dane z częstotliwością 1kHz. Wątek odbiera dane z taką właśnie częstotliwością, jednakże z powodu nie potrzebnej tak dużej wartości informacji, tylko co 10 wiadomość przesyła dalej, zapisując ją do kolejki, którą potem zajmie się wątek główny. Kolejka chroniona jest mutexem. Wątek odbioru jeśli nie jest w danym momencie połączony z serwerem cały czas próbuje się połączyć mając dane ustalane w ustawieniach. Domyślnie jest to - nazwa hosta: localhost i port 2666. Funkcję interpretującą otrzymany ciąg znaków na dane z czujników: Ciąg znaków otrzymywany przez aplikacje rozpoczyna się od X, po którym następują wartości odczytów z czujnków przedstawione w postaci czterech znaków (wartość zapisana hexadecymalnie), czujników jest 23. Następnie znajduje się 16 bitowa suma kontrolna (4 znaki) i znaki nowej lini oraz powrotu karetki. Interesujące nas znaki interpretowane są na wartości napięcia. Obliczane jest to mając na uwadze że maksymalne napięcie wynosi 3.3 V a rozdzielczość zapisanych danych to 12 bitów. Okno główne aplikacji oraz trzy zakładki które zawierają w sobie informacje z klejno, czujników nacisku, zgięcia oraz biosygnałów. 2

Zaimplementowane jest okno ustawień, w którym użytkownik może zmienić zakres wykresu, nazwa/ip serwera i port serwera. Rysowanie wykresów rezystancji od czasu danych czujników: Utworzono klasę Wykres oraz zawierające ją klasy zestawu wykresów umieszczonych w zakładce pierwszej (Czujniki Nacisku), drugiej (Czujniki Zgięcia) oraz trzeciej (Biosygnały). Na osi czasu przedstawiany jest czas od uruchomienia programu. Wykres nie zatrzymuje się nawet jeśli nie ma nowych danych. Możliwe jest zatrzymanie i wznowienie przyciskiem START/STOP prezentowania na wykresach nowych danych w trakcie odbierania. Dodatkowo w ustawieniach aktywna jest opcja wyboru zakresu czasowego prezentowanych na wykresach danych, domyślnie jest to 30 sekund. Rysowanie wykresów realizowane jest przy pomocy biblioteki QCustomPlot. Widget dłoni w 2d, prezentujący zmiany odczytów z czujników przez kolory. Zielony oznacza brak lub słaby nacisk a czerwony bardzo silny. Ręka w 3D, zmieniająca pozycje palców w zależności od otrzymywanych wartości. Możliwość wyboru jednego ważnego wykresu, który jest przedstawiany nad wszystkimi wykresami w danej zakładce. 4 Numeracja czujników w aplikacji i na rękawiczce 5 Interfejs użytkownika Rysunek 2: Numeracja czujników Aplikacja automatycznie próbuje się połączyć z portem 2666 na localhostcie. Jeżeli użytkownik chce skorzystać z innego portu lub nazwy/ip serwera może wprowadzić zmiany w ustawieniach. Dostęp do ustwień jest z górnego paska po lewej stronie. Isnieje dodatkowo możliwość zmiany zakresu czasu prezentowanego na wykesach. Domyślnie wartość ta wynosi 30 s. Okno ustawień przedstawiono na rysunku 3. 3

Rysunek 3: Okno ustawień W trakcie odbierania danych istnieje możliwość zatrzymania wykresów i wizualizacji dłoni w danym momencie poprzez przyciśnięcie przycisku Stop. Rysunek 4 przedstawia pierwszą zakładkę aplikacji wizualizującej dane - czujniki nacisku. Po lewej stronie umieszczone są wykresy. Pierwszy największy wykres, można zmieniać przyciskając odpowiednio wykres który chcemy najbardziej śledzić. Wybrany wykres zaznaczony jest przez kolorową obwódkę. Po prawej stronie znajduje się widget zawierający ręke 2D prezentującą przez kolory odczytywane w danym momencie wartości napięcia. Na dole po lewej znajduje się widget reprezentujący czujniki nacisku, w kolejności takiej jak palce ręki na rysunku. Rysunek 4: Zakładka 1 Rysunek 5 przedstawia drugą zakładkę aplikacji wizualizującej dane - czujniki zgięcia. Po lewej stronie tak samo jak poprzednio znajdują się wykresy odczytywanego napięcia. Po prawej stronie znajduje się widget zawierający ręke 3D której palce zginają się odpowiednio do otrzymywanych wartości z czujników. Dodatkowo dodano kolorowe tarcze w miejscach czujników. Jednakże gdy ręka jest zgięta czujniki mogą być zasonięte. 4

Rysunek 5: Zakładka 2 Rysunek 6 przedstawia trzecią zakładkę prezentującą odczyty EMG biosygnałów z elektrod w formie wykresów. Rysunek 6: Zakładka 3 Aplikacja odbiera pomyślnie dane z programu do akwizycji oraz wizualizuje zinterpretowane pomiary na wykresach i modelach dłoni. 5

6 Przykładowe eksperymenty By przetestować aplikację pocątkowo używano programu napisanego C który jak serwer wysyłał randomowe ciągi znaków o długości oczekiwanej przez program. Efekty zaprezentowane zostały na rysunkach 4, 5) i 6. W dalszym etapie udało się przeprowadzić testy z prawdziwym sprzętem i uzyskać oczekiwane efekty. Na zdjęciu 7 zaprezentowano próbe przyciśniecia czujnika 8, jest to czujnik nacisku. Na ekranie laptopa 8 czujnik zaczerwienił się. Rysunek 7: Test - czujnik nacisku Na zdjęciu 8 przedstawiono test czujników zgięcia. Zgięto czunjnik 14, jest to palec wskazujący. W aplikacji palec ten również się zgiął. Rysunek 8: Test - czujnik zgięcia 6

7 Diagram klas 7.1 Ogólny diagram klas Obrazek 9 pokazuje ogólnie klasy powiązane z oknem głównym. 7.2 Ogólny diagram klas zakładek Rysunek 9: Ogólny diagram klas Na obrazku 10 zaprezentowano ogólny diagram klas zakładek zawierających wykresy i prezentacje odpowiednio z czujników nacisku oraz zgięcia. Rysunek 10: Diagram klas prezentujący warianty wyświetlania daych 7

7.3 Ogólny diagram klas zakładek TabCzujnikiNacisku i TabCzujnikiZgiecia Rysunek 11: Diagram klas prezentujący głowne elementy zakładek TabCzujnikiNacisku i TabCzujnikiZgiecia 8 Diagram czynności sterowania przepływem danych Rysunek 12 prezentuje diagram czynności wątku odczytującego dane z socketu. Ze względu na to że częstotliwość wsyłanych danych wynosi 1kHz, a opisywany program wizualizujący nie potrzebuje takiej ilości informacji, tylko co piąta wiadomość jest przekazywana dalej. Wątek odczytujący dane i wątek graficzny z oknem współdzielą kolejkę zawierającą przekazane ale nie przetworzone jeszcze przez wątek graficzny wiadomości. Zmienna globalna której wartość zmienia się w zależności od kliknięcia przyciksów STOP/START (przedstawionych na rysunkach 4 i 5) informuje o tym, czy wątek powinien kontynuować swoją pracę związaną z pobieraniem danych. 9 Podsumowanie i wnioski Aplikacja spełnia początkowo założenia. W początkowych planach nie było jednak zakładki z biosygnałami, jednakże wymagania projektu powiązanego tego wymagały, stworzono więc dodatkową zakładkę z wykresami. Zrezygnowano z zakładki ze wszystkimi czujnikami na rzecz dodanych małych widgetów reprezentujących czujniki z innej zakładki. Wizualizacja odczytów z czujników nacisku jak i zgięcia przebiega zgodnie z rzeczywistością i bardzo małym opóźnieniem. 8

Rysunek 12: Diagram czynności wątku sterującego przepływem danych 9