System sensoryczny dla bioprotezy Bebionic identyfikujący jej położenie i posturę

Projekt inżynierski PWr
Krzysztof Wolski

Spis treści

  • Problem kalectwa
  • Rodzaje protez
  • Proteza Bebionic 3
  • Przestrzeń ruchów
  • Model rozwiązania
  • Użyte czujniki i komunikacja
  • Przetwarzanie sygnału
  • Live Demo
  • Możliwości rozwoju
  • Rozkład jazdy

Problem kalectwa

Co godzinę 1 osoba w Polsce traci nogę

Powody kalectwa

  • Choroby
    • Amelia - brak kończyn od urodzenia
    • Cukrzyca - ok 70% wszystkich amputacji!
  • Wypadki
    • Samochodowe
    • Przy pracy
    • Inne

Czynnik ludzki


Proteza jest używana przez człowieka:
  • odpowiednia waga
  • odporność na uszkodzenia

Protezy

Nieruchome


Zalety

  • proste w użytkowaniu
  • odporne na uszkodzenia mechaniczne
  • waga
  • proste w utrzymaniu
  • cena i dostępność

Wady

  • podstawowa funkcjonalność
  • podstawowe funkcje
  • brak informacji zwrotnej
  • nienaturalny wygląd

Mechaniczne


Zalety

  • możliwość ruchu
  • podstawowe gesty takie jak chwytanie
  • gotowe modele dla drukarek 3D!

Wady

  • mechanizmy są bardziej podatne na uszkodzenia
  • zużywające się części
  • cena szybko rośnie wraz z możliwościami

Mechaniczne
mikroprocesorowe


Zalety

  • Wiele gestów
  • Czasem możliwościami przewyższają prawdziwą dłoń
  • Wygodne sterowanie - różne rozwiązania
  • "Inteligentne"
  • Naturalny wygląd

Wady

  • Cena!
  • Koszt utrzymania
  • Problemy z refundacjami
  • Konieczność ładowania

Proteza Bebionic 3

Proteza Bebionic 3


  • sterowana  
  • oddzielny silnik na każdy palec
  • 14 gestów
  • 3 rodzaje nadgarstków
  • 2 pozycje kciuka
  • kontrola prędkości
  • wytrzymałość - praca z 45kg
  • gumowana powłoka
  • oprogramowanie można zmienić z poziomu PC


Jest jeden problem...

...proteza nie czuje

System czujników

Model

Model


Hardware

"Nośnik" czujników


  • łatwe zakładanie i ściąganie
  • dodatkowa funkcja ochrony

Fleksometry



  • zgięcie powoduje zmianę rezystancji
  • przedział 45KOhm-125Ohm
  • potrzebujemy ADC

Tensometry


  • zgięcie powoduje zmianę rezystancji
  • przedział 500 Ohm-100 KOhm
  • potrzebujemy ADC

MPU 6050


  • 3 osiowy akcelerometr
  • 3 osiowy żyroskop
  • wbudowany ADC
  • magistrala I2C

Bluetooth


  • komunikacja: serial
  • Bluetooth 2.0 + EDR
  • częstotliwość 2.4 GHz
  • widoczny jako port COM

Arduino PRO mini


  • ATmel ATmega 328
  • wersja 3.3V, 8Mhz
  • 13 wejść cyfrowych, 8-2 wejść analogowych

Software

Software - Arduino

  • komunikacja I2C
    • biblioteka wire.h
  • obsługa MPU 6050
    • biblioteka i2cdevlib
  • ADC
    • 6 wartości "na raz"
      • multiplexer
    • skalowanie
  • wysyłanie danych
    • bajt rozpoczęcia
    • 16 bajtów danych
    • bajt zakończenia

Software - Serwer

  • język - Python
  • podłączenie się pod Serial
  • odbieranie i sprawdzanie danych
  • obróbka danych
    • filtr dolnoprzepustowy
    • filtr Complementary
      • "wystarczająco dobry"
    • filtr Kalmana
      • magic!
      • kosztowny obliczeniowo
  • zarządzanie klientami
    • przyjmowanie klientów
    • wysyłanie przez TCP/IP danych które uległy zmianie
    • dowolna ilosć zgłoszeń

Software - Klient 1

przykładowa wizualizacja 2D


  • Python
  • biblioteka pyqtgraph
  • sygnał jako wykres

Software - Klient 2

przykładowy program w Unity3D


  • przykład wizualizacji
  • Unity3D - silnik do tworzenia gier
  • trójwymiarowy model odwzorowuje ruchy protezy

Demo!

Rozwój

Rękawica sensoryczna

Rozbudowanie API


Kontroler gier

Interface HID

Terminarz

Made with Slides.com