Spisu treści:
- Krok 1: Rzeczy użyte w tym projekcie
- Krok 2: Historia
- Krok 3: Połączenie sprzętowe
- Krok 4: Programowanie oprogramowania
- Krok 5: Operacja
Wideo: Straszna maszyna do cukierków dyniowych na Halloween: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Cześć wszystkim! Szczęśliwy Holloween!! Zbudowaliśmy latarnię z dyni, która będzie odtwarzać muzykę i pluć cukierkami, gdy ktoś do niej podejdzie.
Krok 1: Rzeczy użyte w tym projekcie
Komponenty sprzętowe
- Arduino UNO / Seeeduino V4.2
- Tarcza podstawowa V2
- Grove - czujnik ruchu PIR
- Grove – MP3 v2.0
- Grove - Taśma LED RGB WS2813 Wodoodporna - 60 LED/m - 1m
- EMax 12g ES08MD o wysokiej czułości serwo
Aplikacje i usługi online
IDE Arduino
Krok 2: Historia
Zbliża się Halloween, lampiony dyniowe są niezbędne. Używamy Seeeduino i PIR Motion Senser zbudowaliśmy lampion dyniowy, gdy ktoś do niego podejdzie, odtworzy muzykę i wypluwa cukierki.
Struktura mechaniczna
**Krok 1: **Kup trochę cukierków i dyni, wykop dziurę za dynią, abyśmy mogli włożyć do niej Seeeduino.
**Krok 2: **Wytnij pudełko w ten sposób i przymocuj je do ust dyni.
**Setp 3: **Zamontuj ramię do serwomotoru. Do zamocowania serwomotoru wewnątrz dyni używamy puszki jako uchwytu.
**Krok 4: **Upewnij się, że gdy ramię siłownika podniesie się, cukierki w pudełku zostaną wyplute z pyska dyni.
Krok 3: Połączenie sprzętowe
**Krok 1: **Utwórz folder o nazwie MP3 na karcie SD, skopiuj do niego plik mp3 i nazwij go 0001.mp3. Podłącz głośnik do gniazda MP3 Grove przez port 3,5 mm, a MP3 Grove do portu D2 na osłonie podstawy.
**Krok 2: **Podłącz Grove czujnika ruchu PIR do portu D4 osłony podstawy i podłącz pasek NeoPixel do portu D5 osłony podstawy.
**Krok 3: **Podłącz Servo Grove do cyfrowego styku 9 Base Shield, więc może być konieczne użycie linii DuPont.
**Krok 4: **Podłącz osłonę bazową do Seeeduino.
**Krok 5: **W celu pobrania programu do Seeeduino używamy kabla USB do połączenia z komputerem. Po pobraniu możemy użyć tylko kabla zasilającego wewnątrz dyni.
Krok 4: Programowanie oprogramowania
**Krok 1: **Zainstaluj biblioteki
Dla lepszego efektu korzystamy z systemu operacyjnego o nazwie FreeRTOS, można go pobrać stąd.
Poza tym ten projekt wymaga następujących bibliotek, pobierz je i zainstaluj:
- Grove – MP3 v2.0
- Adafruit NeoPixel
- Adafruit TicoServo
Możesz też po prostu dołączyć plik MP3.h do folderu projektu, aby użyć MP3 Grove.
**Krok 2: **Zbuduj i prześlij program
*UWAGA: Marco MAX_BRIGHTNESS kontroluje maksymalną jasność NeoPixel, zmniejsza jasność, aby zmniejszyć zużycie energii.*
Zrozumienie programu może być trudne, jeśli wcześniej nie używałeś systemu operacyjnego na Seeeduino, poniższy artykuł ułatwi to.
W metodzie setup() normalnie zainicjalizowaliśmy Serial, MP3 Grove i Servo Motor i utworzyliśmy zmienną, którą nazywamy semaforem, można ją uznać za zmienną flagową, która wskazuje, czy ktoś przychodzi, czy nie.
vSemaphoreCreateBinary(xPIRBinarySemafor);
Następnie stworzyliśmy 3 zadania, które można uruchomić razem. Ale wtedy priorytety mogą nie być takie same.
s1 = xTaskCreate(vFadingLEDsTask, NULL, configMINIMAL_STACK_SIZE, NULL, 1, NULL);
s2 = xTaskCreate(vScaningPIRTask, NULL, configMINIMAL_STACK_SIZE, NULL, 1, NULL); s3 = xTaskCreate(vHandlePIRTask, NULL, configMINIMAL_STACK_SIZE, NULL, 2, NULL);
Po sprawdzeniu semafora i poprawnej inicjalizacji zadań, metoda vTaskSetartScheduler() uruchamia cały FreeRTOS.
if (xPIRBinarySemaphore == NULL || s1 != pdPASS || s2 != pdPASS || s3 != pdPASS)
{ dla (;;); } vTaskStartScheduler();
Metoda loop() nerwr używana we FreeRTOS. Teraz reszta jest prosta, zadanie vFadingLEDsTask gasnące Variable Color LED i vScanPIRTask skanują pin czujnika ruchu PIR przez cały czas. Gdy PIR Motion Sensor wykryje, że ktoś nadchodzi, ustawia flagę, a następnie uruchamia się zadanie vHandlePIRTask. Ponieważ priorytet zadania vHandlePIRTask wynosi 2, gdy jest uruchomione, pozostałe dwa zadania zostaną zawieszone.
Następujące wywołania służą do ustawiania lub resetowania flagi.
xSemaphoreGive(xPIRBinarySemafor);
xSemaphoreTake(xPIRBinarySemaphore, portMAX_DELAY);
Krok 5: Operacja
Umieść głośnik, Seeeduino i Grovesa w dyniowej latarni i włącz ją. Teraz możesz czekać, że ktoś do niego przyjdzie, Cukierek albo psikus:-).
Sprawdź wideo, klikając Światło dyni Halloween. (https://www.youtube.com/embed/CFjuWXOIUN4)
Zalecana:
Bezdotykowy dozownik cukierków na Halloween: 6 kroków
Bezdotykowy dozownik cukierków na Halloween: Znowu nadeszła ta pora roku, w której świętujemy Halloween, ale w tym roku z powodu COVID-19 wszystkie zakłady są wykluczone. Ale w duchu Halloween nie powinniśmy zapominać o zabawie w „Cukierek albo psikus”. Tak więc ten post został stworzony, aby umożliwić rodzinie
Halloweenowa dekoracja dozownika cukierków „głowa w słoiku” z Arduino: 5 kroków
Halloweenowa dekoracja dozownika cukierków „głowa w słoiku” z Arduino: Ten projekt wyjaśnia, jak zbudować dozownik cukierków, który będzie używany jako dekoracja Halloweenowa z Arduino Uno. Diody LED zaświecą się w sekwencji wstecz i do przodu na czerwono i zmienią kolor na zielony, jeśli czujnik ultradźwiękowy wykryje rękę. Następnie serwo zwolni
Maszyna do cukierków: 5 kroków
Candy Machine: Bardzo lubię jeść słodycze, zwłaszcza czekoladki, więc postanowiłem zrobić maszynę do cukierków. Z jednej strony może kontrolować mnie przed jedzeniem zbyt dużej ilości cukierków dziennie, a z drugiej strony może sprawić, że będę bardziej skłonna do prac domowych i uzyskania dobrej oceny. W
Licznik cukierków na Halloween: 4 kroki (ze zdjęciami)
Halloween Candy Counter: Jest to licznik cukierków na Halloween wykonany za pomocą Arduino nano z ulepszonymi funkcjami, takimi jak efekty dźwiękowe i świetlne za każdym razem, gdy wykryty zostanie cukierek. Jest zasilany przez power bank 2600 mAh, a dzięki konfiguracji o niskim poborze mocy halloweenowy licznik cukierków
Strzeż się okropnych dyniowych botów .: 9 kroków (ze zdjęciami)
Strzeż się Straszliwych Dyni Botów….: Wszystkie te roboty są niebezpieczne! Nadeszły na mnie z pełną siłą. Nie spodziewałem się, że będą tak potężne. Mam nadzieję, że wkrótce wszyscy stracą energię…;-)