Przejdź do głównej zawartości

LaserCat... od środka


poprzedniej części opisałem laserową zabawkę jako gotowe urządzenie dla zwykłego użytkownika, w tym poście pokażę jak to wszystko powstało, a na początku był... projekt 😇


PCB - strona opisowa

PCB - strona miedzi

To tyle jeśli chodzi o projekt, teraz trzeba to zmaterializować. Jak zwykle w garażowym zaciszu metodą "żelazkową" - elektronicy używają żelazka zdecydowanie częściej jak ich partnerki 😅 - powstaje mała płytka.
Płytka została zabezpieczona przed utlenianiem lakierem PVB 16.

Całą robotę wykonuje tutaj tani i lubiany układ ESP8266, który posiada moduł WiFi. Dioda laserowa jest zasilana źródłem prądowym dodatkowo kluczowanym z PWM-a co pozwala płynnie regulować jasność od 0% do 100%.

Skoro już bebechy mam, to teraz trzeba to wszystko złożyć w całość. Obudowę wykonałem ze sklejki wyciętej laserowo, składanej na wczepy palcowe.


No to składamy.


Dodanie serwomechanizmów do których przyczepiony jest laser. Oczywiście bez trytytki projekt by się nie udał 😏


No i sprzęt jest gotowy, ale co nam po sprzęcie jak on zupełnie nie wie co ma robić? Nie wie, że teraz trzeba machać tym laserkiem tak żeby kot ganiał w tę i we w tę 😉 Trzeba to wszystko zaprogramować.

Uruchamiamy nasze ulubione IDE czyli Visual Studio Code z wtyczką PlatformIO i zaczynamy pisać program. Soft został napisany z wykorzystaniem Arduino Core, a na całość składa się kilka części:

  • główny program sterujący silniczkami, wyznaczanie losowych ścieżek.
  • serwer www, który udostępnia ładny panel sterowania.
  • konfiguracja sieci WiFi z wykorzystaniem Captive Portal.
  • multicast DNS.
  • stworzenie strony www (html + css + javascript).
  • obsługa komunikacji po websockecie.
  • zdalne wgrywanie plików przez stronę www, np. zmiana wyglądu głównej strony.
  • zdalna aktualizacja oprogramowania bez zbędnych kabli.

W oczekiwaniu na gotowe oprogramowanie tester cierpliwie czeka.

Panel sterujący dostępny z poziomu przeglądarki internetowej nie jest hostowany nigdzie na zewnątrz, całość znajduje się w zabawce, wykorzystałem bootstrapa plus kilka dodatkowych komponentów.

Zastosowany mDNS pozwala połączyć się z urządzeniem wpisując w przeglądarce adres "lasercat.local" zamiast adresu IP. Niestety na chwilę obecną android nie wspiera tego typu rozwiązań, ale na iPhonach działa to bardzo dobrze.

A tak wygląda stronka przez którą możemy sterować zabawką.



Komentarze

  1. Udostępniasz może wsady programowe? Fajnie byłoby zbudować taką zabawkę nie pisząc wszystkiego od zera :)

    OdpowiedzUsuń
    Odpowiedzi
    1. Postaram się opracować źródła :) W kolejce na opis również czeka kilka nowych projektów.

      Usuń

Prześlij komentarz

Popularne posty z tego bloga

Smart Domofon

W tym artykule chciałem pokazać możliwość przerobienia zwykłego domofonu na wersję "smart" . W cyfrowych domofonach z punktu widzenia automatyzacji pewną trudnością jest to, że należy najpierw podnieść słuchawkę, aby móc otworzyć drzwi do klatki wejściowej. Moje pierwsze wersje takich przeróbek oparte były na przekaźnikach, które symulowały podniesienie słuchawki i naciśnięcie przycisku otwarcia rygla drzwi.   Podszedłem do tematu na nowo. Odkurzyłem oscyloskop i wykonałem analizę protokołu komunikacyjnego między kasetą domofonu a unifonem w mieszkaniu. W efekcie zaprojektowałem niewielki układ, który podpinamy kilkoma przewodami do naszej słuchawki. Nie ma już potrzeby stosowania przekaźników w celu symulowania osoby odbierającej.

Tablica Manipulacyjna

W przeróżnych pudełkach zawsze walają się u mnie jakieś przełączniki, pokrętła i innego rodzaju elementy. Córka (3 lata) od zawsze lubiła pstrykać wszelkimi guzikami. Wychodząc z mieszkania to ona zawsze przywołuje windę i wybiera piętro.

Sterownik rolet zewnętrznych

Kolejny element domowej automatyki to dziesięciokanałowy sterownik rolet zamknięty w jednej obudowie montowanej na szynę DIN. Użyty kontroler to moduł  ESP-WROOM-32  osadzony na płytce ewaluacyjnej  ESP32-DevKit .