INHOUDSOPGAWE:

Scary Pumpkin Candy Machine vir Halloween: 5 stappe
Scary Pumpkin Candy Machine vir Halloween: 5 stappe

Video: Scary Pumpkin Candy Machine vir Halloween: 5 stappe

Video: Scary Pumpkin Candy Machine vir Halloween: 5 stappe
Video: PIXEL GUN 3D LIVE 2024, Julie
Anonim
Image
Image

Hallo almal! Gelukkige Holloween !! Ons het 'n pampoenlantaarn gebou wat musiek sal speel en lekkergoed sal spoeg as iemand daarby uitkom.

Stap 1: Dinge wat in hierdie projek gebruik word

Dinge wat in hierdie projek gebruik word
Dinge wat in hierdie projek gebruik word
Dinge wat in hierdie projek gebruik word
Dinge wat in hierdie projek gebruik word

Hardeware komponente

  • Arduino UNO / Seeeduino V4.2
  • Base Shield V2
  • Grove - PIR bewegingsensor
  • Grove - MP3 v2.0
  • Grove - WS2813 RGB LED Strip Waterproof - 60 LED/m - 1m
  • EMax 12g ES08MD hoëgevoelige servo

Sagteware -programme en aanlyndienste

Arduino IDE

Stap 2: Verhaal

Verhaal
Verhaal
Verhaal
Verhaal
Verhaal
Verhaal

Halloween kom, pampoenlanterns is noodsaaklik. Ons gebruik Seeeduino en PIR Motion Senser het 'n pampoenlantaarn gebou, as iemand daarby uitkom, speel dit musiek en snoepgoed.

Meganiese struktuur

** Stap 1: ** Koop lekkergoed en 'n pampoen, grawe 'n gat agter die pampoen sodat ons Seeeduino daarby kan sit.

** Stap 2: ** Sny so 'n boks en maak dit vas aan die mond van die pampoen.

** Stel 3: ** Monteer 'n arm op die servomotor. Om 'n servomotor in die pampoen vas te maak, gebruik ons 'n blikkie as houer.

** Stap 4: ** Maak seker dat wanneer die servomotorarm opdaag, lekkergoed in die boks uit die pampoen se mond gespoeg word.

Stap 3: Hardewareverbinding

** Stap 1: ** Maak 'n gids met die naam MP3 in 'n stuk SD -kaart, kopieer 'n mp3 -lêer daarna, noem dit 0001.mp3. Koppel 'n luidspreker via die 3,5 mm -poort aan MP3 Grove's en koppel MP3 Grove aan by poort D2 op die basisskerm.

** Stap 2: ** Koppel die PIR Motion Sensor Grove aan die D4 -poort van Base Shield en koppel die NeoPixel -strook aan die D5 -poort van Base Shield.

** Stap 3: ** Koppel Servo Grove aan die digitale pen 9 van Base Shield, sodat ons moontlik die DuPont -lyne moet gebruik.

** Stap 4: ** Sluit Base Shield aan op Seeeduino.

** Stap 5: ** Om die program na Seeeduino af te laai, gebruik ons 'n USB -kabel om 'n rekenaar aan te sluit. Na aflaai kan ons slegs 'n kragkabel in die pampoen gebruik.

Stap 4: sagteware programmering

** Stap 1: ** Installeer biblioteke

Vir 'n beter effek, gebruik ons 'n bedryfstelsel genaamd FreeRTOS, dit kan hier afgelaai word.

Boonop benodig hierdie projek die volgende biblioteke, laai dit af en installeer dit:

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

Of u kan eenvoudig MP3.h in die projektmap insluit om MP3 Grove te gebruik.

** Stap 2: ** Bou en laai die program op

*KENNISGEWING: Marco MAX_BRIGHTNESS beheer die maksimum helderheid van NeoPixel, verminder die helderheid daarvan om die kragverbruik te verminder.*

Dit kan moeilik wees om die program te verstaan as u nie die bedryfstelsel op Seeeduino voorheen gebruik het nie; die volgende artikel sal dit eenvoudig maak.

In die setup () -metode het ons Serial, MP3 Grove en Servo Motor normaalweg geïnitialiseer en 'n veranderlike geskep wat ons semafoor noem; u kan dit beskou as 'n vlagveranderlike wat gebruik het om aan te dui of iemand kom of nie.

vSemaphoreCreateBinary (xPIRBinarySemaphore);

Toe skep ons 3 take, hulle kan saam loop. Maar die prioriteite van dan is moontlik nie dieselfde nie.

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

Nadat die semafoor nagegaan is en take korrek geïnisieer is, begin die vTaskSetartScheduler () -metode die hele FreeRTOS.

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

{vir (;;); } vTaskStartScheduler ();

Die lus () metode nerver wat in FreeRTOS gebruik word. Nou is die res eenvoudig: vFadingLEDsTask taak vervaag veranderlike kleur LED en vScanPIRTask taak scan PIR Motion Sensor se pen heeltyd. As PIR -bewegingsensor opspoor dat iemand kom, stel dit die vlag, dan begin die vHandlePIRTask -taak. Omdat die prioriteit van die vHandlePIRTask -taak 2 is, word die ander twee oorblywende take opgeskort as dit aan die gang is.

Die volgende oproepe word gebruik om 'n vlag op te stel of terug te stel.

xSemaphoreGive (xPIRBinarySemaphore);

xSemaphoreTake (xPIRBinarySemaphore, portMAX_DELAY);

Stap 5: Bediening

Plaas die luidspreker Seeeduino en Groves in die pampoenlantaarn en skakel dit aan. Nou kan u wag, iemand kom, Trick or Treat:-).

Kyk na die video deur op Halloween -pampoenlig te klik. (https://www.youtube.com/embed/CFjuWXOIUN4)

Aanbeveel: