Innehållsförteckning:

Scary Pumpkin Candy Machine för Halloween: 5 steg
Scary Pumpkin Candy Machine för Halloween: 5 steg

Video: Scary Pumpkin Candy Machine för Halloween: 5 steg

Video: Scary Pumpkin Candy Machine för Halloween: 5 steg
Video: Siblings....am I right?😔 2024, Juli
Anonim
Image
Image

Hej allihopa! Happy Holloween !! Vi byggde en pumpa lykta som kommer att spela musik och spotta godis när någon kommer fram till det.

Steg 1: Saker som används i detta projekt

Saker som används i detta projekt
Saker som används i detta projekt
Saker som används i detta projekt
Saker som används i detta projekt

Hårdvarukomponenter

  • Arduino UNO / Seeeduino V4.2
  • Bassköld V2
  • Grove - PIR -rörelsesensor
  • Grove - MP3 v2.0
  • Grove - WS2813 RGB LED Strip Vattentät - 60 LED/m - 1m
  • EMax 12g ES08MD högkänslig servo

Programvaruappar och onlinetjänster

Arduino IDE

Steg 2: Berättelse

Berättelse
Berättelse
Berättelse
Berättelse
Berättelse
Berättelse

Halloween kommer, pumpa lyktor är viktiga. Vi använder Seeeduino och PIR Motion Senser byggde en pumpa lykta, när någon kommer fram till den kommer den att spela musik och spotta godis.

Mekanisk struktur

** Steg 1: ** Köp lite godis och en pumpa, gräva ett hål bakom pumpan så att vi kan lägga Seeeduino till den.

** Steg 2: ** Skär en låda så här och fixa den till munnen på pumpan.

** Inställning 3: ** Montera en arm på servomotorn. För att fixa en servomotor inuti pumpan använder vi en burk som hållare.

** Steg 4: ** Se till att när servomotorarmen dyker upp kommer godis i lådan att spottas ut ur pumpans mun.

Steg 3: Maskinvaruanslutning

** Steg 1: ** Skapa en mapp med namnet MP3 på ett SD -kort, kopiera en mp3 -fil till den, namnge den 0001.mp3. Anslut en högtalare till MP3 Groves via 3,5 mm -port och anslut MP3 Grove till port D2 på basskölden.

** Steg 2: ** Anslut PIR Motion Sensor Grove till Base Shields D4 -port och anslut NeoPixel -remsan till Base Shields D5 -port.

** Steg 3: ** Anslut Servo Grove till Base Shields digitala stift 9, så vi kan behöva använda DuPont -linjerna.

** Steg 4: ** anslut Base Shield till Seeeduino.

** Steg 5: ** För att ladda ner programmet till Seeeduino använder vi en USB -kabel för att ansluta till datorn. Efter nedladdning kan vi bara använda en strömkabel inuti pumpa.

Steg 4: Programvaruprogrammering

** Steg 1: ** Installera bibliotek

För bättre effekt använder vi ett operativsystem som heter FreeRTOS, det kan laddas ner härifrån.

Dessutom behöver detta projekt följande bibliotek, ladda ner och installera dem:

  • Grove - MP3 v2.0
  • Adafruit NeoPixel
  • Adafruit TicoServo

Eller så kan du helt enkelt inkludera MP3.h i projektmappen för att använda MP3 Grove.

** Steg 2: ** Bygg och ladda upp programmet

*ANMÄRKNING: Marco MAX_BRIGHTNESS styr den maximala ljusstyrkan för NeoPixel, minska ljusstyrkan för att minska strömförbrukningen.*

Det kan vara svårt att förstå programmet om du inte använde operativsystemet på Seeeduino tidigare, följande artikel gör det enkelt.

I setup () -metoden initierade vi normalt Serial, MP3 Grove och Servomotor normalt och skapade en variabel som vi kallar semafor, du kan betrakta det som en flaggvariabel som brukade indikera om det är någon som kommer eller inte.

vSemaphoreCreateBinary (xPIRBinarySemaphore);

Sedan skapade vi 3 uppgifter, de kan köras tillsammans. Men prioriteringarna för då kanske inte är desamma.

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);

Efter att ha kontrollerat semafor och uppgifter initialiserats korrekt startar metoden vTaskSetartScheduler () hela FreeRTOS.

om (xPIRBinarySemaphore == NULL || s1! = pdPASS || s2! = pdPASS || s3! = pdPASS)

{ för (;;); } vTaskStartScheduler ();

Loop () metod nerver som används i FreeRTOS. Nu är resten enkelt, vFadingLEDsTask task fading Variable Color LED och vScanPIRTask task scan PIR Motion Sensor 'pin hela tiden. När PIR -rörelsessensorn upptäcker att någon kommer, sätter den flaggan och sedan startar uppgiften vHandlePIRTask. Eftersom prioriteten för vHandlePIRTask -uppgiften är 2, avbryts andra två återstående uppgifter när den körs.

Följande samtal används för att ställa in eller återställa en flagga.

xSemaphoreGive (xPIRBinarySemaphore);

xSemaphoreTake (xPIRBinarySemaphore, portMAX_DELAY);

Steg 5: Drift

Sätt högtalaren, Seeeduino och Groves inuti pumpan lyktan och slå på den. Nu kan du vänta någon kommer till det, Trick or Treat:-).

Kontrollera videon genom att klicka på Halloween -pumpaljus. (https://www.youtube.com/embed/CFjuWXOIUN4)

Rekommenderad: