Arduino Polska Forum

Pełna wersja: Tablica dla niemowy
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2 3
Witam

Zaczynam dopiero przygodę z Arduino i programowaniem, ale trochę jest to podyktowane chęcią zrobienia jednego projektu. 
Tak się składa, że w rodzinie mam osobę niepełnosprawną. Niepełnosprawność polega na całkowitym bezwładzie wszystkich kończyn i mowy ( po udarze)  
Jedynie jaką ma możliwość to ruszanie głową. 
Aktualnie wykonałem mu tablicę na kartonie w stronę której świeci skupionym słabym laserem w kierunku konkretnej litery. Dla mnie ok, ale
Przychodzą nowe osoby odwiedzające go i mają problem z zapamiętywaniem dłuższych wypowiedzi, dlatego moje pytanie co do projektu:

Czy widzicie takie rozwiązanie i czy możliwe jest to do zrobienia:
1) wykorzystując I2C połączyć ze sobą ok 30-40 czujników światła ( reprezentujące konkretne litery i cyfry) 
2) program miałby w przeciągu >1sekundy wybrać czujnik z najwyższą wartością światła, a LCD wyświetlał kolejno wybierane litery, tworząc zdania. (Uwaga, trzeba uniknąć sytuacji przechodzenia laserem po innych literach niż ta wybrana)

Pytanie czy po I2C da rade tak szybko czytać ?
Wiem, że to niby ok 100kHz, ale jak to przekłada się na działanie takiego układu.
A program b-Link.
Konstrukcja mi się wydaje możliwa do złożenia. Problem z przechodzeniem wiązki lasera po pośrednich literach można rozwiązać w ten sposób, żeby litera aby zostać aktywowana musiałaby być oświetlana laserem dajmy na to przez co najmniej sekundę, jeśli krócej to nie aktywuje się.
Witaj, może troszkę nie na temat, ale przeglądałem kiedyś elektrodę i rzucił mi się w oczy pewien projekt, być może on mógłby Ci w troszkę inny sposób rozwiązać problem, gdyby nie udało się z Twoim pomysłem. Poniżej wstawiam link : 

https://www.elektroda.pl/rtvforum/topic711678.html
Bardzo ciekawy temat!
Wyobraż sobie tablicę składającą się z kwadratowych pudełek umieszczonych w matrycy obok siebie, na dnie każdego pudełka czujnik światła. Pudełko przykryte mleczną plexi z naklejoną literą. Laser przechodzi przez plexi i rozświetla wnętrze pudełka, nie oświetlając sąsiednich (ścianka pomiędzy pudełkami). Jeśli podwyższony poziom trwa conajmniej sekundę, litera jest rejestrowana i wyświetlana na LCD. Ja osobiście spróbowałbym to zrobić na Raspberry Pi Zero zamiast na ATMEGa... Może dodałbym jeszcze po diodzie LED do pudełka, sygnalizującą zarejestrowanie znaku.

Właśnie zdałem sobie sprawę, że nie odpowiedziałem na pytanie o I2C - tu odpowiedź zależy od tego o jakich czujnikach myślisz. Fotorezystorach? Proszę zobacz sobie tę dyskusję --> https://arduino.stackexchange.com/questi...tors/36602

Jak pisałem, użyłbym Raspberry zbierając dane z czujników za pomocą kilku MCP3008 (ten układ to analog-digital converter z SPI).
Dzięki wszystkim za zainteresowanie. 

Co do alternatyw. 
Aktualnie, obsługuje on specjalnie przystosowany przeze mnie komputer (specjalny wysięgnik a na nim AIO+kamerka) +eViacam w jego przypadku (najlepszy z wszystkich testowanych programów - a było ich wiele) 

Jest to zdecydowanie wolniejszy sposób rozmowy. Poza tym, tablica ma być użyteczna właśnie w momentach, kiedy nie ma dostępu do PC. 
Np: na rehabilitacji czy u lekarza.
Co do samego odczytu, to moim zdaniem lepiej by było, jakby program co jakiś czas (30 sek ?)  przeprowadzał „kalibrację”, czyli tworzył sobie do jakiejś zmiennej średnią wartość wszystkich czujników + 20% i do tej zmiennej porównywać podświetlaną literę. Oczywiście czasówka ok 400ms do zatwierdzenia wyboru.

Edit:
Bo jak będzie wybierał najjaśniejszy to zawsze coś wybierze, mimo, że nic nie podświetlany. W tym moim rozwiązaniu trzeba by było zrobić jeszcze jakieś progi oświetleniowe, czyli w słabym oświetleniu +50% w mocnym +20% itp
Ze względu na dobrą dostępnośc i cenę myślałem o zastosowaniu czegoś takiego:

https://www.aliexpress.com/item/GY-49-MA...30e1b0b40a

Nie znalazłem po SPI, a kombinować kolejne płytki z przetwornikami A/C to boję się, że A3 może być mało. 

Taki jw. gadżet chciałbym podkleić pod pleksę. Progi to  na pewno dobry pomysł. Metodą prób i błędów pewnie doszedłbym do takiego progu, który zniweluje różnice światła otoczenia. Myślę, że energia lasera będzie na tyle duża, że większa niż bezpośrednio padające światło słoneczne ( ale mogę się mylić) 

Problem mam tylko z potwierdzeniem, czy czas na odczyt z tych min. 30 czujników może spaść do 1 max. 1,5 s. 
Aktualnie mi jako wprawnemu odczytującemu tablicę analogową wystarczy niecała sekunda aby przyswoić znak.

Chociaż po przeanalizowaniu dostępności ADC - SPI też biorę pod uwagę.
Co do Rasspberry to trzeba pamiętać, że zamierzam zrobić do tego zasilanie na baterie. Im układ mniej prądożerny tym lepiej.
Podstawowe literki w polskim alfabecie to 30szt. do tego kilka przycisków kontrolnych to może być po prostu taka matryca 6x6, można to zrobić analogicznie do klawiaturki arduinowej 4x4, czyli badanie stanów kolumn i wierszy. Można użyć expandera I/O PCF8574P na I2C, dwa wystarczą, każdy ma 8 IO, także max to 64 pola.
Ja bym jednak zaczął od opracowania pojedynczego "pikselka". Wg mnie to powinno być od razu 0/1 realizowane przez układ analogowy z komparatorem/wzmacniaczem/przerzutnikiem (bo jak inaczej użyć expandera I2C I/O) . Jako odniesienie powinien być podawany sygnał z dodatkowego czujnika światła (lub kilku) mierzącego to co jest w pomieszczeniu ogólnie, tak by układ pracował niezależnie od tego gdzie jest tablica. Wtedy 100kHz prędkość I2C nie stanowi problemu przy naświetlaniu nawet 100ms, stan byłby sprawdzany spokojnie co 1ms (16 bitów przy prędkości magistrali 100 000bit/s, no plus jakieś inicjalizacje/kończenie transmisji).
Samo programowanie to użycie biblioteki do tej klawiaturki i ustawienie takiego czasu klawisza, by użytkownikowi to odpowiadało.
Czy ktos z piszacych siedzial kiedys z laserem na czole i wodzil promieniem po tablicy?
Ja podczas rehabilitacji kregoslupa szyjnego mialem takie zadanie majac na glowie wskaznik laserowy i w odleglosci 2-3 metrow tablice z narysowanymi liniami mialem promieniem lasera wodzic po tych liniach. Nie jest to zadanie proste dla w miare zdrowego czlowieka wiec dla osoby po udarze bedzie tym trudniejsze.
Pomysl kolegi aby zrobic matryce znakow jest dobry tylko trzeba przemyslec rozlozenie samoglosek i spolglosek na takiej tablicy aby jak najkrotszymi ruchami glowy - promienia zaznaczac - wybierac kolejne litery do ulozenia slowa.
Pomysl z dodatkowymi "przyciskami kontrolnymi" nie podoba mi sie bo sa to dodatkowe ruchy glowy. ktore moga byc zbedne jesli zastosujemy odbiornik z potwierdzeniem wybrania litery po oswietleniu jej przez jakis czas. Ponowne jej oswietlenie przez ten sam czas powoduje wykasowania zapisu znaku do slowa.
Moim zdaniem podstawa jest zbudowanie slowa przez osobe niepelnosprawna a osoba towarzyszaca po przeczytaniu kasuje slowo i pozwala utworzyc nowe.
To takie moje trzy grosze w tym temacie.
Stron: 1 2 3