Obsah:

Stroj na strašidelné tekvicové cukríky na Halloween: 5 krokov
Stroj na strašidelné tekvicové cukríky na Halloween: 5 krokov

Video: Stroj na strašidelné tekvicové cukríky na Halloween: 5 krokov

Video: Stroj na strašidelné tekvicové cukríky na Halloween: 5 krokov
Video: HALLOWEEN - pesnička o tekviciach | jeseň | Hanička a Murko | vyrezávame tekvice | pre deti 2024, Júl
Anonim
Image
Image

Ahoj všetci! Šťastná Holloween !! Postavili sme tekvicový lampáš, ktorý bude hrať hudbu a pľuvať cukríky, keď na to niekto príde.

Krok 1: Veci použité v tomto projekte

Veci použité v tomto projekte
Veci použité v tomto projekte
Veci použité v tomto projekte
Veci použité v tomto projekte

Hardvérové komponenty

  • Arduino UNO / Seeeduino V4.2
  • Základný štít V2
  • Grove - snímač pohybu PIR
  • Grove - MP3 v2.0
  • Grove - WS2813 RGB LED pásik vodotesný - 60 LED/m - 1m
  • Servo s vysokou citlivosťou EMax 12g ES08MD

Softvérové aplikácie a online služby

Arduino IDE

Krok 2: Príbeh

Príbeh
Príbeh
Príbeh
Príbeh
Príbeh
Príbeh

Prichádza Halloween, tekvicové lampióny sú nevyhnutné. Používame Seeeduino a PIR Motion Sensor postavený z tekvicového lampáša, keď k nemu niekto príde, bude hrať hudbu a pľuvať cukríky.

Mechanická konštrukcia

** Krok 1: ** Kúpte si cukríky a tekvicu, za tekvicou vyhĺbte dieru, aby sme do nej mohli vložiť Seeeduino.

** Krok 2: ** Vystrihnite škatuľu takto a pripevnite ju k ústam tekvice.

** Nastav. 3: ** Namontujte rameno k servomotoru. Na upevnenie servomotora vo vnútri tekvice používame ako držiak plechovku.

** Krok 4: ** Uistite sa, že keď sa rameno servomotora objaví, cukríky v škatuľke budú vyplivnuté z tekvicových úst.

Krok 3: Pripojenie hardvéru

** Krok 1: ** Vytvorte priečinok s názvom MP3 na karte SD, skopírujte doň súbor mp3 a pomenujte ho 0001.mp3. Pripojte reproduktor k MP3 Grove cez 3,5 mm port a pripojte MP3 Grove k portu D2 na Base Shield.

** Krok 2: ** Pripojte snímač pohybu PIR Grove k portu D4 Base Shield a pripojte pásik NeoPixel k portu D5 Base Shield.

** Krok 3: ** Pripojte Servo Grove k digitálnemu pinu 9 Base Shield, takže možno budeme musieť použiť linky DuPont.

** Krok 4: ** Pripojte základný štít k Seeeduino.

** Krok 5: ** Na stiahnutie programu na server Seeeduino používame na pripojenie k počítaču kábel USB. Po stiahnutí môžeme vnútri tekvice používať iba napájací kábel.

Krok 4: Programovanie softvéru

** Krok 1: ** Nainštalujte si knižnice

Na dosiahnutie lepšieho účinku používame operačný systém s názvom FreeRTOS, ktorý je možné stiahnuť tu.

Okrem toho tento projekt potrebuje nasledujúce knižnice, stiahnite si ich a nainštalujte:

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

Alebo môžete jednoducho vložiť MP3.h do priečinka projektu a používať MP3 Grove.

** Krok 2: ** Vytvorte a nahrajte program

*UPOZORNENIE: Marco MAX_BRIGHTNESS riadi maximálny jas NeoPixel, znížte jeho jas, aby sa znížila spotreba energie.*

Ak ste predtým nepoužívali operačný systém na serveri Seeeduino, môže byť ťažké porozumieť programu, nasledujúci článok to zjednoduší.

V metóde setup () sme inicializovali sériový, MP3 Grove a servomotor normálne a vytvorili sme premennú, ktorú nazývame semafor, môžete ju považovať za premennú príznaku, ktorá označovala, či niekto príde alebo nie.

vSemaphoreCreateBinary (xPIRBinarySemaphore);

Potom sme vytvorili 3 úlohy, ktoré môžu bežať spoločne. Priority však nemusia byť rovnaké.

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 kontrole správneho inicializovania semaforu a úloh spustí metóda vTaskSetartScheduler () celý FreeRTOS.

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

{for (;;); } vTaskStartScheduler ();

Nerver metódy loop () používaný vo FreeRTOS. Teraz je ostatné jednoduché, postupné blednutie úlohy vFadingLEDsTask s premenlivými farbami LED a vScanPIRTask skenovanie úlohy PIR snímača pohybu neustále. Keď snímač pohybu PIR zistí, že niekto prichádza, nastaví príznak a potom sa spustí úloha vHandlePIRTask. Pretože úloha vHandlePIRTask má prioritu 2, keď je spustená, ďalšie dve zostávajúce úlohy budú pozastavené.

Nasledujúce hovory sa používajú na nastavenie alebo resetovanie príznaku.

xSemaphoreGive (xPIRBinarySemaphore);

xSemaphoreTake (xPIRBinarySemaphore, portMAX_DELAY);

Krok 5: Prevádzka

Vložte reproduktor, Seeeduino a Groves do tekvicového lampáša, a zapnite ho. Teraz môžete čakať, kým na to niekto príde, Trick or Treat:-).

Pozrite si video kliknutím na halloweenske tekvicové svetlo. (https://www.youtube.com/embed/CFjuWXOIUN4)

Odporúča: