sobota, 12 października 2013

Zabawka dla Sierściucha

Od jakiegoś czasu chodzi mi po głowie projekt zabawki dla kota.
Inspiracja przyszła stąd:

http://antyweb.pl/koniec-demolowania-mieszkan-nadchodzi-petcub/

Pomysł ciekawy, nasz Sierściuch co prawda mieszkania nie demoluje, ale siedzi cały dzień sam, więc można by go trochę rozruszać :).

Stwierdziłem że na łatwiznę nie pójdę i spróbuję zrobić coś podobnego sam :)
Obudowy pewnie takiej ładnej nie wykombinuję, ale przynajmniej spróbuję osiągnąć podobną funkcjonalność.

Pierwszy plan zakładał że urządzenie powstanie w oparciu o Arduino, do którego będzie podłączony ethernet shield (bo akurat mam jeden na zbyciu ;) ).

Takie podejście miałoby jednak kilka wad:

- dwa przewody: zasilający i sieciowy + konieczność umieszczenia w pobliżu routera, żeby można było podłączyć urządzenie do sieci.
- brak możliwości podłączenia wideo - obsługa przez Arduino jest mocno skomplikowana.

Byłoby to zatem rozwiązanie połowiczne.

Po głębszym przemyśleniu tematu doszedłem do wniosku że akurat w tym przypadku lepszym rozwiązaniem będzie wykorzystanie Raspberry Pi.

Jako że na Malince można zainstalować Linuksa mamy dużo większe pole manewru. Zatem ostateczna koncepcja jest taka:

- bierzemy Raspberry Pi.
- po USB podłączamy dowolną kamerkę internetową (zgodną z linuksem, ale to na szczęście jest coraz prostsze)
- instalujemy serwer WWW z PHP
- uruchamiamy streaming video z kamery internetowej
- podłączamy dwa połączone ze sobą serwomechanizmy - jeden poruszający się wg osi Y, drugi połączony z nim, poruszający się wg osi X. Do drugiego serwomechanizmu montujemy moduł laserowy
- podłączamy dwa kolejne niezależne serwomechanizmy w analogiczny sposób. Do drugiego mocujemy kamerę internetową
- wszystkie cztery serwomechanizmy i moduł laserowy podłączamy do złącza GPIO Malinki
- piszemy oprogramowanie pozwalające sterować w dowolny sposób wszystkimi serwomechanizmami oraz na włączanie/wyłączanie modułu laserowego
- tworzymy stronę internetową pozwalającą na wydawanie poleceń laserowi oraz serwomechanizmom, zawierającą również obraz z kamery wideo.
- do Raspberry PI podłączamy kartę wifi na USB i konfigurujemy aby przy starcie poprawnie logowała się do sieci lokalnej (DHCP), oraz poprawnie uruchamiała streaming video i serwer WWW.


Jeśli uda się zrealizować te założenia, będzie można sterować zabawką z komputera lub telefonu z sieci lokalnej.  Docelowo pewnie będzie potrzebne przekierowanie portów na routerze albo VPN aby można było wkurzać Sierściucha zdalnie :)

Plusem takiego podejścia do tematu będzie to że do podłączenia zabawki będzie potrzebny tylko jeden przewód - zasilający.

Problem pojawia się taki, że serwomechanizmów nie będzie można zasilić z Raspberry PI - komputerek potrafi dać tylko 700mA prądu co jest wartością zdecydowanie za małą do obsłużenia serwomechanizmów. Prawdopodobnie będę musiał zaprojektować malutką płytkę do której podłączony będzie zasilacz, serwomechanizmy, laser oraz Malinka.

Na razie zamówiłem trochę części (gniazda zasilające, taśmy, złącza). Moduł laserowy i serwomechanizmy właśnie lecą z Chin. Jak wszystko skompletuję, ciąg dalszy nastąpi :)

3 komentarze: