Spisu treści:
- Krok 1: Tworzenie projektu
- Krok 2: Tworzenie modelu Fusion 360
- Krok 3: Konfiguracja Pi
- Krok 4: Instalowanie oprogramowania
- Krok 5: Konfiguracja serwera WWW
- Krok 6: Kontrolowanie IO
Wideo: Dozownik IoT Treat dla zwierząt: 7 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:32
Mam dwa koty i dawanie im smakołyków około 3 razy dziennie stało się dość uciążliwe. Patrzyli na mnie swoimi uroczymi twarzami i intensywnymi spojrzeniami, a potem biegli do pudełka pełnego kocich zielonych, miaucząc i błagając o nie. Uznałem, że wystarczy. Nigdy więcej wstawania tylko po to, by dać kotu kilka smakołyków. Teraz przyszedł czas na automat do wydawania smakołyków, bo jak mówi przysłowie: „Programiści istnieją po to, by robić skomplikowane rzeczy, żeby robić mniej prostych rzeczy”.
DFRobot sponsorował ten projekt.
Lista części:
- DFRobot Raspberry Pi 3
- Moduł kamery DFRobot Raspberry Pi
- Silnik krokowy DFRobot z przekładnią planetarną
- I2C LCD 16x2
- Gniazdo lufy do terminala
- DRV8825 Sterownik silnika krokowego
- Kondensator 100 µF
- Arduino UNO i oryginalne UNO
- Przewody połączeniowe (ogólne)
Krok 1: Tworzenie projektu
Pierwszym był wybór sposobu sterowania moją nowo myślącą maszyną. Bluetooth miałby zbyt mały zasięg, zaledwie 30 stóp bez przeszkód. Dzięki tym informacjom zdecydowałem się na korzystanie z WiFi. Ale teraz, jak używać Wi-Fi do sterowania maszyną? Raspberry Pi 3 ma wbudowane funkcje Wi-Fi, dzięki czemu mogę używać Flask do hostowania strony internetowej. Następny był temat obudowy i sposobu wydawania smakołyków. Zdecydowałem się na projekt obracającego się koła, w którym smakołyki spadałyby na małe sekcje, były obracane, a następnie smakołyki spadałyby na rampę i podróżowały do przodu maszyny.
Krok 2: Tworzenie modelu Fusion 360
Zacząłem od stworzenia podstawowego modelu pojemnika na smakołyki. Przysmaki wpadają do mini-zasypu, gdzie są następnie umieszczane w obracającym się kole.
Następnie dodałem Raspberry Pi 3 do projektu Fusion, wraz z inną elektroniką, w tym modułem kamery LCD i Raspberry Pi. Zrobiłem też lejek, w którym można przechowywać dodatkowe smakołyki.
Ścianki dozownika smakołyków mają być wycięte ze sklejki 1/4 cala na ploterze CNC. Składa się z 7 elementów, 4 ścian, podłogi oraz górnej i górnej części pokrywy, które można otwierać i zamykać, aby odsłonić smakołyki.
Na koniec stworzyłem „wymyślny” uchwyt do otwierania pokrywy.
Krok 3: Konfiguracja Pi
DFRobot skontaktował się ze mną i wysłał swój moduł kamery Raspberry Pi 3 i Raspberry Pi. Więc po otwarciu pudełek od razu zabrałem się do pracy, konfigurując kartę SD. Najpierw poszedłem na stronę pobierania Raspberry Pi i pobrałem najnowszą wersję Raspbiana. Następnie wyodrębniłem plik i umieściłem go w wygodnym katalogu. Nie możesz po prostu skopiować/wkleić pliku.img na kartę SD, musisz go „wypalić” na karcie. Możesz pobrać narzędzie do nagrywania, takie jak Etcher.io, aby łatwo przenieść obraz systemu operacyjnego. Po tym, jak plik.img znalazł się na mojej karcie SD, włożyłem go do Raspberry Pi i podałem mu zasilanie. Po około 50 sekundach odłączyłem przewód i wyjąłem kartę SD. Następnie włożyłem kartę SD z powrotem do komputera i przeszedłem do katalogu „boot”. Otworzyłem Notatnik i zapisałem go jako pusty plik o nazwie „ssh” bez rozszerzenia. Dodałem też plik o nazwie „wpa_supplicant.conf” i wstawiłem do niego ten tekst: network={ ssid= psk=} Następnie zapisałem i wysunąłem kartę i włożyłem ją z powrotem do Raspberry Pi 3. To powinno pozwolić na korzystanie z SSH i łączenie się z Wi-Fi.
Krok 4: Instalowanie oprogramowania
Istnieje kilka różnych programów, które mogą przesyłać strumieniowo wideo, takie jak VLC i motion, ale zdecydowałem się użyć streamera mjpeg ze względu na jego małe opóźnienia i łatwą instalację. Zgodnie z instrukcjami na stronie wykonaj a:git clone https://github.com/jacksonliam/mjpg-streamer.git Do folderu, a następnie wpisz: sudo apt-get install cmake libjpeg8-dev Aby zainstalować potrzebne biblioteki. Zmień katalog na pobrany folder, a następnie wpisz: make Następnie: sudo make install Aby skompilować oprogramowanie. Na koniec wpisz: export LD_LIBRARY_PATH=. Aby go uruchomić, wpisz:./mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" Możesz uzyskać dostęp do strumienia, przechodząc do: https:// Lokalny adres IP urządzenia pi:8080/stream. html Aby wyświetlić strumień.
Krok 5: Konfiguracja serwera WWW
Aby maszyna była sterowana zewnętrznie przez Wi-Fi, potrzebowałem serwera WWW. Serwer WWW w zasadzie obsługuje strony internetowe na żądanie, zwykle przez przeglądarkę. Chciałem czegoś szybkiego i prostego w konfiguracji i obsłudze, zdejmując Apache ze stołu. Chciałem również połączyć serwer WWW z Pythonem, aby móc sterować Arduino Uno za pomocą PySerial. To poszukiwanie ostatecznie doprowadziło mnie do Flask, ładnej biblioteki Pythona, która pozwala użytkownikom szybko stworzyć serwer WWW. Pełny kod jest dołączony do tej strony projektu. Skrypt Pythona zasadniczo konfiguruje 2 strony internetowe, jedną hostowaną w katalogu głównym „/”, a drugą hostowaną w „/dispense”. Strona indeksu zawiera formularz HTML, który po przesłaniu wysyła żądanie publikowania do strony dozowania. Strona dozowania sprawdza następnie, czy wartość post jest poprawna i czy jest to komunikat „D\n” jest wysyłany przez port szeregowy do Arduino Uno.
Krok 6: Kontrolowanie IO
Zdecydowałem się na użycie DRV8825 do napędzania mojego silnika krokowego, głównie ze względu na to, że potrzebuje tylko 2 pinów IO wraz z regulowanym ograniczeniem prądu. Próbowałem użyć L293D, ale nie mógł on obsłużyć obciążenia silnika krokowego. DRV8825 jest sterowany przez pulsowanie pinu STEP za pośrednictwem PWM, a kierunek jest kontrolowany przez przeciągnięcie pinu DIR w górę lub w dół. Silnik krokowy, którego używam, ma pobór prądu 1,2 A, więc ustawiłem napięcie VREF na 0,6 V. Następny był wyświetlacz LCD. Chciałem użyć I2C, aby zmniejszyć ilość potrzebnych IO i uprościć kod. Aby zainstalować bibliotekę, po prostu wyszukaj „LiquidCrystal_I2C” i zainstaluj ją. Na koniec Arduino Uno sprawdza, czy w buforze szeregowym są nowe informacje i czy pasuje do „D”. Jeśli tak się stanie, Uno powoduje, że silnik krokowy porusza się o 180 stopni, a następnie o -72 stopnie, aby zapobiec utknięciu smakołyków.
Zalecana:
Dozownik karmy dla zwierząt: 3 kroki
Dozownik karmy dla zwierząt: Para los amantes de mascotas, este es un proyecto que les puede ser muy útil! Un alimentador automático que te allowe observar cual es el pesaje de la comida, y solo es necesario que oprimas un botón.Un mecanismo sencillo que podrás armar desde tu
AUTOMATYCZNY DOZOWNIK KARMY DLA ZWIERZĄT: 9 kroków
AUTOMATYCZNY DOZOWNIK KARMY DLA ZWIERZĄT: Czy kiedykolwiek miałeś ochotę marnować zbyt dużo czasu na karmienie zwierzaka? Czy kiedykolwiek musiałeś zadzwonić do kogoś, aby nakarmił twoje zwierzęta, gdy byłeś na wakacjach? Próbowałem rozwiązać oba te problemy w moim obecnym projekcie szkolnym: Petfeed
Karmnik dla kotów (dla zwierząt domowych): 10 kroków
Karmnik dla kotów Industrial Strength (dla zwierząt domowych): Podróżuję przez wiele tygodni i mam te dzikie koty na zewnątrz, które muszą być karmione podczas mojej nieobecności. Od kilku lat korzystam ze zmodyfikowanych podajników zakupionych od Amazona sterowanych za pomocą komputera raspberry pi. Mimo że moje
Pier9: Biżuteria Eurion dla zagrożonych zwierząt: 7 kroków (ze zdjęciami)
Pier9: Biżuteria Eurion dla zagrożonych zwierząt: Unikalny wzór na tej biżuterii pomaga zagrożonym zwierzętom egzekwować roszczenia dotyczące praw autorskich do ich wizerunku. Ten wzór jest znany jako konstelacja Eurion, jest najczęściej używany w celu zapobiegania fałszowaniu pieniędzy i można go znaleźć na większości papierowych walut wokół
Zewnętrzne drzwiczki dla zwierząt IoT: 6 kroków (ze zdjęciami)
IoT Outdoor Pet Door: Ta instrukcja zainspirowała mnie do stworzenia automatycznych drzwi do kurnika. Nie tylko chciałem, aby drzwi kurnika były sterowane zegarem, ale także chciałem podłączyć drzwi do Internetu, aby móc sterować nimi za pomocą telefonu lub komputera. Ta d