Satura rādītājs:

Biedējošā ķirbju konfekšu mašīna Helovīnam: 5 soļi
Biedējošā ķirbju konfekšu mašīna Helovīnam: 5 soļi

Video: Biedējošā ķirbju konfekšu mašīna Helovīnam: 5 soļi

Video: Biedējošā ķirbju konfekšu mašīna Helovīnam: 5 soļi
Video: Легкое печенье на Хэллоуин 2024, Jūlijs
Anonim
Image
Image

Sveiki visiem! Laimīgu Holloween !! Mēs uzbūvējām ķirbju laternu, kas atskaņos mūziku un spļaus konfektes, kad kāds pie tās nāks.

1. darbība. Šajā projektā izmantotās lietas

Šajā projektā izmantotās lietas
Šajā projektā izmantotās lietas
Šajā projektā izmantotās lietas
Šajā projektā izmantotās lietas

Aparatūras komponenti

  • Arduino UNO / Seeeduino V4.2
  • Bāzes vairogs V2
  • Grove - PIR kustības sensors
  • Grove - MP3 v2.0
  • Grove - WS2813 RGB LED sloksne Ūdensizturīga - 60 LED/m - 1 m
  • EMax 12g ES08MD augstas jutības servo

Programmatūras lietotnes un tiešsaistes pakalpojumi

Arduino IDE

2. darbība: stāsts

Stāsts
Stāsts
Stāsts
Stāsts
Stāsts
Stāsts

Helovīns tuvojas, ķirbju laternas ir būtiskas. Mēs izmantojam Seeeduino un PIR Motion Senser uzbūvēja ķirbju laternu, kad kāds nāk pie tās, tā atskaņos mūziku un spļaus konfektes.

Mehāniskā struktūra

** 1. solis: ** Nopērciet dažas konfektes un ķirbi, izrakiet caurumu aiz ķirbja, lai mēs varētu tam pielikt Seeeduino.

** 2. solis: ** Izgrieziet šādu kastīti un piestipriniet to pie ķirbja mutes.

** 3. iestatījums: ** Piestipriniet roku pie servomotora. Lai nostiprinātu servomotoru ķirbja iekšpusē, kā turētāju mēs izmantojam kārbu.

** 4. solis: ** Pārliecinieties, ka, kad servomotors paceļas uz augšu, kastītē esošās konfektes tiks izspļautas no ķirbja mutes.

3. darbība. Aparatūras savienojums

** 1. darbība: ** SD kartes gabalā izveidojiet mapi ar nosaukumu MP3, nokopējiet tajā mp3 failu un nosauciet to 0001.mp3. Pievienojiet skaļruni MP3 Grove's, izmantojot 3,5 mm portu, un pievienojiet MP3 Grove portam D2 uz Base Shield.

** 2. solis: ** Pievienojiet PIR kustības sensora gāzi Base Shield D4 portam un NeoPixel sloksni Base Shield D5 portam.

** 3. darbība: ** Savienojiet Servo Grove ar Base Shield digitālo tapu 9, tāpēc mums, iespējams, būs jāizmanto DuPont līnijas.

** 4. darbība: ** pievienojiet Base Shield pie Seeeduino.

** 5. darbība: ** Lai lejupielādētu programmu vietnē Seeeduino, mēs izmantojam USB kabeli, lai izveidotu savienojumu ar datoru. Pēc lejupielādes ķirbja iekšpusē varam izmantot tikai strāvas kabeli.

4. solis: programmatūras programmēšana

** 1. darbība: ** instalējiet bibliotēkas

Lai panāktu labāku efektu, mēs izmantojam operētājsistēmu ar nosaukumu FreeRTOS, to var lejupielādēt šeit.

Turklāt šim projektam ir nepieciešamas šādas bibliotēkas, lejupielādējiet un instalējiet:

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

Vai arī varat vienkārši iekļaut MP3.h projekta mapē, lai izmantotu MP3 Grove.

** 2. darbība: ** izveidojiet un augšupielādējiet programmu

*PAZIŅOJUMS: Marco MAX_BRIGHTNESS kontrolē NeoPixel maksimālo spilgtumu, samazina tā spilgtumu, lai samazinātu enerģijas patēriņu.*

Var būt grūti saprast programmu, ja iepriekš neizmantojāt operētājsistēmu vietnē Seeeduino, nākamajā rakstā to būs vienkārši izdarīt.

Izmantojot iestatīšanas () metodi, mēs parasti inicializējām Serial, MP3 Grove un Servo Motor un izveidojām mainīgo, ko mēs saucam par semaforu. Jūs to varat uzskatīt par karoga mainīgo, ko izmantoja, lai norādītu, vai kāds nāk vai nē.

vSemaphoreCreateBinary (xPIRBinarySemaphore);

Tad mēs izveidojām 3 uzdevumus, tie var darboties kopā. Bet tolaik prioritātes var nebūt vienādas.

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

Pēc semafora un uzdevumu pareizas inicializācijas pārbaudes vTaskSetartScheduler () metode sāk visu FreeRTOS.

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

{ priekš (;;); } vTaskStartScheduler ();

Cilpas () metodes nerver, ko izmanto FreeRTOS. Tagad pārējais ir vienkāršs, vFadingLEDsTask uzdevuma izbalēšana Mainīgas krāsas gaismas diode un vScanPIRTask uzdevumu skenēšanas PIR kustības sensora tapa visu laiku. Kad PIR kustības sensors nosaka, ka kāds nāk, tas nosaka karodziņu, pēc tam sāk darboties vHandlePIRTask uzdevums. Tā kā vHandlePIRTask uzdevuma prioritāte ir 2, tad, kad tas darbojas, pārējie divi atlikušie uzdevumi tiks apturēti.

Tālāk norādītie zvani tiek izmantoti, lai iestatītu vai atiestatītu karodziņu.

xSemaphoreGive (xPIRBinarySemaphore);

xSemaphoreTake (xPIRBinarySemaphore, portsMAX_DELAY);

5. darbība: darbība

Ielieciet skaļruni, Seeeduino un Groves ķirbju laternā un ieslēdziet to. Tagad jūs varat gaidīt, kad kāds atnāks, triks vai kārums:-).

Pārbaudiet videoklipu, noklikšķinot uz Helovīna ķirbju gaismas. (https://www.youtube.com/embed/CFjuWXOIUN4)

Ieteicams: