Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Flashowanie karty SD
- Krok 2: SSH do Pi
- Krok 3: Konfiguracja Wi-Fi
- Krok 4: Drukowanie części
- Krok 5: Montaż części (wstęp)
- Krok 6: Montaż blatu (dozownik)
- Krok 7: Montaż blatu (pojemnika)
- Krok 8: Montaż dna
- Krok 9: Elektronika, czujniki i siłowniki
- Krok 10: Elektronika, Raspberry Pi
- Krok 11: Testowanie elektroniki
- Krok 12: Zakończenie
- Krok 13: Dodatek: rozszerzenie Chrome
- Krok 14: Oprogramowanie
Wideo: Podajnik projektu: 14 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:28
Czy kiedykolwiek chciałeś nakarmić swoje zwierzęta z dala od domu lub po prostu w zaciszu swojej sofy? Jeśli tak, to ten projekt jest dla Ciebie! Project Feeder to projekt typu open source, który umożliwia automatyczne lub ręczne karmienie zwierząt domowych z telefonu lub komputera. Możesz także śledzić transmisję na żywo i śledzić zachowania żywieniowe swojego zwierzaka.
Zanim zaczniesz!
Ten projekt jest zadaniem na studia i był ograniczony czasowo, więc jest bardzo „praca w toku”. Dlatego zdaję sobie sprawę, że są rzeczy, które można poprawić i które mogą zostać zaktualizowane w przyszłości. Zachęcam do kreatywności, doskonalenia i rozwijania tej koncepcji.
Na początek omówimy wymagania do zbudowania tego projektu. Naprawdę będziesz potrzebować umiejętności i narzędzi wymienionych poniżej.
Umiejętności twórcy:
- Druk 3D lub dostęp do usługi drukowania
- Lutowanie
- Podstawowa wiedza z zakresu elektroniki
Narzędzia:
- drukarka 3d
- Lutownica
- Pistolet do klejenia na gorąco lub inny klej, który działa na włókna do drukarek 3D
- Wkrętaki
Kieszonkowe dzieci
Całkowity koszt budowy tego projektu wynosi około 120 € w zależności od tego, gdzie kupujesz część i jakie rabaty otrzymujesz.
Ważny:
Niektóre części są oznaczone jako „Unikalne”, co oznacza, że są specyficzne dla projektu konstrukcyjnego konstrukcji i potrzebujesz dokładnej kopii tej części.
Raspberry Pi 4 Model B / 2GB + 16GB (wymaganie min.) Karta Micro SD
Zapasy Rasberry Pi są w tej chwili bardzo ograniczone, będzie to wymagało rozejrzenia się.
Zasilacz 12V 60W
www.banggood.com/AC-100-240V-do-DC-12V-5A-…
Gniazdo zasilania prądem stałym 5,5 mm x 2,1 mm (unikalne)
www.banggood.com/10pcs-5_5-x-2_1mm-DC-Powe…
DC-DC 12V do 5V 3A Moduł zasilania obniżającego napięcie (unikalny)
www.banggood.com/LM2596-DC-DC-Voltage-Regu…
42mm 12V Nema 17 Dwufazowy silnik krokowy
www.banggood.com/42mm-12V-Nema-17-Two-Fas…
Moduł podwójnego mostka H L298N
www.banggood.com/Wholesale-L298N-Dual-H-Br…
GY6180 VL6180X Czas lotu czujnik odległości
www.banggood.com/GY6180-VL6180X-Time-Of-Fl…
Podczerwony czujnik unikania przeszkód (x3)
www.banggood.com/3Pcs-Podczerwień-Przeszkody-Av…
Kamera USB
www.banggood.com/Electronic-Camera-Module-…
Podświetlenie LCD 16×2, mikrokontroler 8051 I2C
www.hobbyelectronica.nl/product/1602-lcd-d…
Dwukierunkowy przesuwnik poziomu
www.banggood.com/nl/Two-Channel-IIC-I2C-Lo…
Rezystory o wspólnej wartości (10k, 220R, 470R)
www.banggood.com/Wholesale-Geekcreit-600pc…
Diody (x2)
Diody (x2)
Przełącznik ON/OFF 12V (unikalny)
www.banggood.com/5pcs-12V-Round-Rocker-Tog…
Nakrętki: 3x8mm, 3x10mm, 3x12mm
Krok 1: Flashowanie karty SD
W tym kroku będziesz musiał sflashować kartę SD z dostarczonym obrazem:
thomy.stackstorage.com/s/KbCfVgoU0t8gU3C
Obraz jest wyposażony we wstępnie skompilowany serwer WWW Apache, bazę danych i kod do interfejsu z podajnikiem. Więc nie musisz robić niczego, co wiąże się z konfiguracją oprogramowania.
Jeśli chcesz zajrzeć do kodu, możesz pobrać cały wymagany kod z:
github.com/VanIseghemThomas/ProjectFeeder
Upewnij się, że wiesz, jak poprawnie sflashować kartę SD lub nie przerywaj procesu, ponieważ może to spowodować uszkodzenie karty. Do flashowania karty użyłem oprogramowania o nazwie Win32DiskManager. Inny program, który znam, działa i jest nieco bardziej przyjazny dla użytkownika, nazywa się Ethcer. Oba działają równie dobrze.
Krok 2: SSH do Pi
Po zakończeniu flashowania możesz teraz włożyć kartę SD do pi i włączyć ją. Upewnij się, że jesteś podłączony do swojego pi za pomocą kabla Ethernet. Teraz powinieneś być w stanie połączyć się z nim za pomocą SSH z adresem IP 169.254.10.1. Używam programu o nazwie PuTTY, ale jeśli nie masz ochoty instalować oprogramowania, zawsze możesz wpisać następujące polecenie w wierszu polecenia:
ssh [email protected]
Teraz otwórz sesję. Podczas pierwszego łączenia napotkasz ostrzeżenie, możesz to zignorować i po prostu kontynuować. Zostaniesz poproszony o zalogowanie się jako użytkownik, a następnie hasło, dla tego obrazu użyj następujących danych logowania:
- Użytkownik: feederpi
- Hasło: Redeef1
Użytkownik 'pi' jest również aktywny, ale nie będziesz mógł się do niego zalogować. Dzieje się tak, ponieważ jest skonfigurowany do automatycznego logowania się przy zasilaniu i uruchamiania programu. Dlatego po zalogowaniu napotkasz następujące elementy:
[sudo] hasło do feederpi:
Po prostu naciśnij crtl+c i powinieneś mieć teraz powłokę.
Teraz wpisz:
sudo-i
Teraz jesteś zalogowany jako root.
Krok 3: Konfiguracja Wi-Fi
Teraz jesteś zalogowany jako root i możesz wpisać:
wpa_passphrase "Twój SSID" "Twoje hasło" >> /etc/wpa_supplicant/wpa_supplicant.conf
Aby sprawdzić, czy konfiguracja została dodana poprawnie, wpisz następujące polecenie. Możesz również usunąć hasło w postaci zwykłego tekstu dla bezpieczeństwa, jeśli chcesz, ale pamiętaj, aby zapisać zmiany po wyjściu.
nano /etc/wpa_supplicant/wpa_supplicant.conf
Teraz możesz zrestartować swoje pi, wpisując:
zrestartuj teraz
Teraz daj pi trochę czasu na uruchomienie i ponowne zalogowanie się przez SSH, tak jak poprzednio, aby sprawdzić, czy masz połączenie z Wi-Fi, wpisz:
ip a
Pod interfejsem wlan0 powinieneś zobaczyć coś podobnego z adresem IP, co oznacza, że udało Ci się połączyć z Wi-Fi. Później, gdy wszystko zostanie podłączone, oprogramowanie wyświetli to na wyświetlaczu LCD.
Krok 4: Drukowanie części
Części, których będziesz potrzebować do tego projektu, znajdziesz tutaj:
www.thingiverse.com/thing:4459996
Wydrukowanie wszystkich tych części zajmie trochę czasu, więc będziesz potrzebować trochę cierpliwości.
Oto ustawienia, których użyłem (PLA):
- Wysokość warstwy: 0,3 mm
- Prędkość drukowania: 50-60mm/s
- Temperatura dyszy: 200°C
- Temperatura łóżka: 60°C
Nie ma wiele do powiedzenia na ten temat, z wyjątkiem dobrej zabawy podczas drukowania.
Krok 5: Montaż części (wstęp)
W porządku, teraz wszystko składamy. Zanim to wszystko wyjaśnię, omówię kilka rzeczy, o których należy pamiętać, a które pomogą ci to zrobić.
WSKAZÓWKA 1:
Zdecydowałem się zrobić wszystkie otwory 2,5mm z wyjątkiem 3mm jak śruby. Umożliwia to gwintowanie gwintu przez wkręcanie śrub i eliminuje potrzebę stosowania nakrętek. Wkręcenie śruby jest dość trudne, użyj lutownicy, aby poszerzyć górę, co ułatwi włożenie śruby i rozpoczęcie wkręcania.
WSKAZÓWKA 2:
Jeśli tak jak ja brakuje ci śrub, po prostu wkręcaj tylko pary po przekątnej. Oszczędza to wiele z nich i działa dobrze.
Krok 6: Montaż blatu (dozownik)
Części są ułożone jak na zdjęciu.
Są one trzymane razem przez tak zwane "talerze". Jedna z płytek montuje się do silnika krokowego.
Upewnij się, że górna część śrub jest wyrównana z powierzchnią, w przeciwnym razie dopływ zostanie zablokowany. Powinieneś użyć do tego śrub 3x8mm i modelu "Stepper_offset" pomiędzy stepperem a zewnętrzną stroną płyty.
Teraz nałóż frez na stepper, powinno iść dość łatwo. Jeśli nie, możesz użyć wazeliny.
Reszta jest dość prosta, po prostu weź śrubę w miejscu, w którym znajdziesz otwór.
Krok 7: Montaż blatu (pojemnika)
Tutaj możesz zobaczyć, jak zrobiłem mój pojemnik. Kanister jest oryginalnie używany do wysuszonych kawałków zrostu.
Na górze chcesz przymocować czujnik TOF, ten będzie służył do pomiaru ilości jedzenia w pojemniku. Na zdjęciach widać jak go załączyłem. Najpierw wytopiłem otwory na piny lutownicą, a następnie przykleiłem czujnik gorącym klejem podczas podłączania kabli.
Do zamknięcia pojemnika zrobiłem 2 otwory lutownicą i wkręciłem 2 śruby. Aby zamknąć go w ten sposób, można użyć gumki, opaski na suwak lub drutu.
Krok 8: Montaż dna
Aby umieścić różne moduły, należy odnieść się do zdjęć, są one dość oczywiste. Część z tych zdjęć ma już okablowanie, na razie powinieneś spojrzeć w przeszłość. Zdjęcia zostały zrobione w trakcie opracowywania tego projektu. Początkowo plan polegał na zamontowaniu ogniwa obciążnikowego i zważeniu jedzenia, ale ze względu na awarię wzmacniacza ogniwa obciążnikowego w ostatniej chwili musiałem zrezygnować z tej funkcji i zastąpić ją transmisją wideo na żywo, która również jest całkiem fajna. Opcja jest zawsze dostępna, aby dodać komórkę obciążenia, ale będziesz musiał zagłębić się w kod i edytować kilka rzeczy.
Krok 9: Elektronika, czujniki i siłowniki
Teraz czas na założenie lutownicy. Dostarczyłem 2 reprezentacje tego, co musisz zrobić, jeden standardowy schemat elektryczny, jedną reprezentację wizualną. Gorąco sugeruję skorzystanie ze schematu elektrycznego, ponieważ daje on o wiele więcej wglądu w to, jak wszystko działa i jest moim zdaniem ze sobą połączone. Jedynym powodem, dla którego ta druga jest tutaj, jest to, że była obowiązkowa. Powodem, dla którego to mówię, jest to, że nie ma dużo miejsca na kable, więc musisz być wydajny z okablowaniem GND, +5V itp., co zależy od tego, jak chcesz poprowadzić kable. Więc nie podłączaj wszystkiego dokładnie do siebie jak na schemacie, będzie działać, ale nie będzie pasować.
W przypadku przełącznika, który widzisz, podłączyłem wszystkie 3 przewody, ponieważ przełącznik ma wbudowaną diodę LED, która wskazuje, czy zasilanie jest włączone. 2 niekolorowe przewody działają jak przełącznik, kolorowy przewód przechodzi do GND.
Ogólnie jest to kolejność, w której wszystko podłączyłem:
- Sekcja zasilania: gniazdo zasilania, mostek h, konwerter boost buck, przełącznik
- Raspberry Pi (patrz następny krok, aby uzyskać więcej informacji)
- Czujniki podczerwieni
- diody LED
- Wejścia krokowe
- Część I2C: 3,3 V, SDA, SCL
Posiadanie prototypowej płytki drukowanej do lutowania nie jest konieczne, ale przydatne, tak jak ja.
Nie zapomnij również podłączyć aparatu do portu USB pi.
Ważny:
Upewnij się, że ustawiłeś konwerter boost buck na 5 V przed podłączeniem części 5 V obwodu. W przeciwnym razie możesz zaryzykować smażenie wszystkiego. Aby to wyregulować, należy obrócić potencjometr i spojrzeć na odczyt napięcia na ekranie.
Krok 10: Elektronika, Raspberry Pi
Ze względu na ograniczenia w oprogramowaniu do rysowania schematu nie byłem w stanie narysować jak podłączyć Raspberry Pi.
Dla +5V możesz po prostu podłączyć do pinu 5V pi, ale to omija zabezpieczenia, takie jak bezpiecznik. Jeśli spojrzysz na dół, powinieneś zobaczyć kilka padów oznaczonych jako TPxx, w naszym przypadku szukamy TP1 lub TP2. Przylutuj swój przewód +5V do jednego z nich, ale uważaj, aby nie zmostkować z innymi śladami. Najprawdopodobniej spowoduje to również unieważnienie gwarancji. Osobiście próbowałem podłączyć go do obu padów testowych i doszedłem do wniosku, że jest to prawdopodobnie najłatwiejszy i najbezpieczniejszy w użyciu TP2, z dala od innych odsłoniętych padów i nie ma wokół niego zbyt wielu śladów.
W przypadku GND po prostu weź jeden z pinów na górze, jak pokazano na schemacie, teraz jest to w porządku.
Krok 11: Testowanie elektroniki
Gdy wszystko jest prawidłowo podłączone, dobrą praktyką jest najpierw przetestowanie wszystkiego przed całkowitym złożeniem.
Oto lista kontrolna:
- Adres IPV4 pojawia się na wyświetlaczu LCD
- Potrafi połączyć się z IP przez przeglądarkę
- Potrafi obrócić stepper przez "karmienie" i zobaczyć, jak zapalają się diody LED
- Odczyty i aktualizacje statusu kontenera
- Transmisja na żywo z kamery
- Wykrywanie zdarzeń związanych z jedzeniem
Rozwiązywanie problemów:
Tutaj wymieniam niektóre problemy, które napotkałem i jak je naprawić.
- Mój LCD świeci, ale nic nie wyświetla:
1) W momencie pisania tego, pi potrzebuje około 2 minut, aby w pełni się uruchomić, więc musisz dać mu trochę więcej czasu.
2) Nie podłączyłeś poprawnie LCD. Możesz sprawdzić, czy podłączyłeś go poprawnie, wpisując następujące polecenie w powłoce:
sudo i2cdetect -y 1
Musi to zwrócić 2 adresy: 0x27 (=LCD) i 0x29 (=czujnik TOF). Jeśli 0x27 się nie pojawi, musisz sprawdzić okablowanie lcd. Jeśli oba się nie pojawią, musisz sprawdzić okablowanie pinów SDA i SCL. Np. sprawdź, czy przypadkiem nie zamieniłeś tych dwóch. W najgorszym przypadku zrobiłeś coś złego z 2 pojedynczymi komponentami lub coś się zepsuło.
- Mój wyświetlacz LCD utknął na „Łączenie z Wi-Fi”
Oznacza to, że twoje pi utknęła podczas próby połączenia się z jedną z sieci, z którą skonfigurowałeś połączenie. Oznacza to, że albo nie znajdujesz się w zasięgu punktu dostępu, albo zrobiłeś coś nie tak podczas konfigurowania np. literówka. W takim przypadku wróć do „Konfigurowania Wi-Fi” i przejrzyj go ponownie.
Oprogramowanie jest również skonfigurowane do łączenia się z sieciami domowymi o adresie IP zaczynającym się od „192.168”. Jeśli twoja sieć jest skonfigurowana z innym prywatnym zakresem, takim jak "10.0" lub "172.16", będziesz musiał przejść do /home/pi/project/main.py i w funkcji get_ips() zmienić: jeśli "192.168" w ip if "Twój prywatny zakres tutaj" w ip.
- Mój LCD wyświetla ip, ale nie mogę się połączyć:
1) Upewnij się, że łączysz się z adresem IP 192.168. X. X, drugi adres 169.254.10.1 jest zawsze skonfigurowany do łączenia się przez Ethernet bezpośrednio z komputerem. To nie zadziała, jeśli nie jesteś podłączony.
2) Upewnij się, że jesteś w tej samej sieci lub masz włączone przekierowanie portów w swojej sieci, jeśli chcesz uzyskać dostęp do podajnika spoza sieci.
- Stepper trzęsie się i nie obraca:
Oznacza to, że nie podłączyłeś poprawnie wejść lub wyjść podwójnego mostka H. Spróbuj zamienić je, aż zadziała.
Krok 12: Zakończenie
Teraz, gdy wiesz, jak wszystko działa, nadszedł czas, aby wszystko połączyć. Musiałem połączyć 2 części taśmą, ponieważ konstrukcja otworów nie jest wystarczająco wytrzymała, aby utrzymać napięcie i pękła dla mnie. To jedna z głównych rzeczy, które należy poprawić w przyszłości. Czystszą opcją jest po prostu sklejenie dwóch części, ale może to stanowić problem, gdy coś w środku pęknie i chcesz uzyskać dostęp do środka. Dlatego wybrałem starą dobrą taśmę elektryczną.
Gdy wejdziesz na stronę, powinieneś zostać przywitany pulpitem nawigacyjnym, w którym możesz robić takie rzeczy, jak ręczne karmienie, sprawdzać status, przeglądać dane i dodawać ustawienia wstępne.
Krok 13: Dodatek: rozszerzenie Chrome
Jeśli nie masz ochoty przeglądać pulpitu nawigacyjnego i po prostu chcesz szybko sprawdzić stan lub kanał, możesz użyć rozszerzenia Chrome. Ponieważ nie znajduje się on w oficjalnym sklepie internetowym Chrome, będziesz musiał go załadować tak, jakbyś tworzył taki pakiet.
Najpierw upewnij się, że pobierasz folder Feeder Extension z katalogu github:
github.com/VanIseghemThomas/ProjectFeeder
Przejdź do następującego adresu URL:
chrome://rozszerzenia/
Tam włącz tryb programisty i załaduj folder rozszerzenia. Teraz powinien pojawić się jako rozszerzenie.
Jeśli nie pojawia się na pasku Chrome, możesz go znaleźć w menu Chrome.
Krok 14: Oprogramowanie
Jeśli lubisz majstrować przy oprogramowaniu lub z jakiegoś powodu potrzebujesz nowej kopii pliku, wszystkie potrzebne pliki znajdziesz w utworzonym przeze mnie repozytorium GitHub:
Dostarczyłem również schemat EER dla bazy danych, na wypadek gdybyś chciał dodać funkcje do API. Zrzut bazy danych można również znaleźć w repozytorium GitHub. Cały kod backendu jest napisany w Pythonie. Flask służy do routingu, a Socket.io do gniazd sieciowych.
Zalecana:
Automatyczny podajnik psa: 6 kroków
Auto Dog Feeder: To jest mój projekt Auto Pet Feeder. Nazywam się Parker, jestem w klasie 11 i wykonałem ten projekt 11 listopada 2020 r. Jako CCA (Course Culminating Activity) w tym projekcie pokażę ci, jak zrobić automatyczny karmnik dla zwierząt z Arduino UNO
Empatyczne projektowanie: automatyczny podajnik szczurów Arduino: 18 kroków
Empatyczne projektowanie: automatyczny podajnik szczurów Arduino: ten instruktaż służy jako wszechstronny przewodnik po stworzeniu automatycznego urządzenia do karmienia szczurów lub zwierząt domowych podobnej wielkości. Inspiracją do tego projektu był szczur mojej siostry, którego trzeba nakarmić dokładnie 4 granulkami pokarmu na
Podajnik kart do maszyny do kolekcjonowania kart: 10 kroków (ze zdjęciami)
Podajnik kart do maszyny do kolekcjonowania: Podajnik kart do maszyny do kolekcjonowania TłoKiedy byłem młody, zbierałem tony kart kolekcjonerskich, ale od kilku lat pasja do kolekcjonowania maleje. W międzyczasie mam dzieci i powoli, ale pewnie też zaczynają się
Automatyczny podajnik roślin WiFi ze zbiornikiem - Konfiguracja uprawy wewnątrz / na zewnątrz - Rośliny wodne automatycznie ze zdalnym monitorowaniem: 21 kroków
Automatyczny podajnik roślin Wi-Fi ze zbiornikiem - Konfiguracja uprawy wewnątrz / na zewnątrz - Rośliny wodne automatycznie ze zdalnym monitorowaniem: W tym samouczku zademonstrujemy, jak skonfigurować niestandardowy system podajnika roślin wewnątrz / na zewnątrz, który automatycznie podlewa rośliny i może być monitorowany zdalnie za pomocą platformy Adosia
Surowy 3-dniowy podajnik do ryb: 5 kroków
Surowy 3-dniowy podajnik do ryb: Jak długo ryby tropikalne mogą przetrwać bez jedzenia? Jest to prawdopodobnie najczęstsze pytanie wśród hodowców ryb, którzy planują podróżować w najbliższej przyszłości. Wiele tropikalnych ryb może wytrzymać bez jedzenia przez długi czas.Jako hodowca ryb, który planował tra