
Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-23 15:08


Pozdravljeni vsi! Vesela noč čarovnic !! Zgradili smo bučno lučko, ki bo predvajala glasbo in pljuvala sladkarije, ko kdo pride do nje.
1. korak: Stvari, uporabljene v tem projektu


Strojne komponente
- Arduino UNO / Seeeduino V4.2
- Osnovni ščit V2
- Grove - PIR senzor gibanja
- Grove - MP3 v2.0
- Grove - WS2813 RGB LED trak Vodotesen - 60 LED/m - 1m
- EMax 12g ES08MD visoko občutljiv servo
Programske aplikacije in spletne storitve
Arduino IDE
2. korak: Zgodba



Prihaja noč čarovnic, bučne luči so nujne. Uporabljamo Seeeduino in PIR Motion Senser je zgradil bučno luč, ko kdo pride do nje, bo predvajala glasbo in pljuvala bonbone.
Mehanska zgradba
** 1. korak: ** Kupite nekaj sladkarij in bučo, za bučo izkopajte luknjo, da ji lahko damo Seeeduino.
** 2. korak: ** Tako razrežite škatlo in jo pritrdite na usta buče.
** Korak 3: ** Namestite roko na servo motor. Za pritrditev servo motorja v bučo uporabljamo pločevinko kot držalo.
** Korak 4: ** Ko se ročica servomotorja obrne navzgor, bodo bonboni v škatli izpljunjeni iz bučnih ust.
3. korak: Povezava strojne opreme
** 1. korak: ** Naredite mapo z imenom MP3 na kosu kartice SD, vanj kopirajte datoteko mp3, jo poimenujte 0001.mp3. Zvočnik povežite z MP3 Grove -jem prek 3,5 mm vhoda in povežite MP3 Grove z vrati D2 na Base Shieldu.
** 2. korak: ** Priključite Grove senzorja gibanja PIR na vrata D4 Base Shield in trak NeoPixel priključite na vrata D5 Base Shield.
** 3. korak: ** Servo Grove priključite na digitalni pin 9 osnovnega ščita, zato bomo morda morali uporabiti linije DuPont.
** 4. korak: ** priključite Base Shield na Seeeduino.
** 5. korak: ** Za prenos programa v Seeeduino uporabljamo kabel USB za povezavo z računalnikom. Po prenosu lahko uporabimo samo napajalni kabel znotraj buče.
4. korak: Programiranje programske opreme
** 1. korak: ** Namestite knjižnice
Za boljši učinek uporabljamo operacijski sistem FreeRTOS, ki ga lahko prenesete od tu.
Poleg tega ta projekt potrebuje naslednje knjižnice, jih naložite in namestite:
- Grove - MP3 v2.0
- Adafruit NeoPixel
- Adafruit TicoServo
Ali pa preprosto uporabite MP3.h v mapi projekta, če želite uporabiti MP3 Grove.
** 2. korak: ** Zgradite in naložite program
*OPOMBA: Marco MAX_BRIGHTNESS nadzoruje največjo svetlost NeoPixela, zmanjša svetlost le -te, da zmanjša porabo energije.*
Morda bo program težko razumeti, če prej niste uporabljali operacijskega sistema na Seeeduinu, naslednji članek bo poenostavil.
Pri metodi setup () smo normalno inicializirali serijski, MP3 Grove in servo motor ter ustvarili spremenljivko, ki jo imenujemo semafor, lahko jo obravnavate kot spremenljivko zastavice, ki je uporabljala za označbo, ali kdo pride ali ne.
vSemaphoreCreateBinary (xPIRBinarySemaphore);
Nato smo ustvarili 3 naloge, ki se lahko izvajajo skupaj. Toda prioritete takrat morda niso enake.
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 preverjanju, da so semafor in opravila pravilno inicializirana, metoda vTaskSetartScheduler () zažene celoten FreeRTOS.
if (xPIRBinarySemaphore == NULL || s1! = pdPASS || s2! = pdPASS || s3! = pdPASS)
{za (;;); } vTaskStartScheduler ();
Nerver metode loop (), ki se uporablja v FreeRTOS -u. Zdaj je ostalo preprosto, vFadingLEDsTask opravilo bledi spremenljiva barvna LED in vScanPIRTask opravilo skenira nalogo PIR senzor gibanja ves čas. Ko senzor gibanja PIR zazna, da nekdo prihaja, nastavi zastavico, nato pa se začne izvajati opravilo vHandlePIRTask. Ker je prednostna naloga naloge vHandlePIRTask 2, bosta med izvajanjem dve drugi preostali nalogi začasno ustavljeni.
Naslednji klici se uporabljajo za nastavitev ali ponastavitev zastavice.
xSemaphoreGive (xPIRBinarySemaphore);
xSemaphoreTake (xPIRBinarySemaphore, portMAX_DELAY);
5. korak: Delovanje
Zvočnik, Seeeduino in Groves postavite v luč za buče in ga vklopite. Zdaj lahko počakate, da pride kdo, zvijača ali zdravljenje:-).
Videoposnetek si oglejte tako, da kliknete luč za noč čarovnic. (https://www.youtube.com/embed/CFjuWXOIUN4)
Priporočena:
Brezstični razpršilnik sladkarij za noč čarovnic: 6 korakov

Brezstični razpršilnik sladkarij za noč čarovnic: spet je tisti čas v letu, ko praznujemo noč čarovnic, a letos zaradi COVID-19 vse stave ne veljajo. Toda v duhu noči čarovnic ne smemo pozabiti na zabavo Trika ali Zdravljenja. Tako je ta objava ustvarjena tako, da družini omogoči, da
Krsta za noč čarovnic: 5 korakov

Krsta za noč čarovnic: Ta krsta je okrasni predmet za noč čarovnic, vendar ne kakršna koli … Za nastavitev in dober čas z uporabnikom, ki z njo komunicira, smo predstavili Arduino, ki bo izkušnjo naredil prijetnejšo in grozljivo . Po eni strani,
Odlična svetlobna predstava za noč čarovnic z glasbo!: 5 korakov

Awesome Halloween Light Show with Music !: Za ta projekt sem naredil svetlobni prikaz Halloween z nekaj posebnimi lučmi, imenovanimi RGB slikovne pike, ki so sinhronizirane s 4 pesmi Halloween. Če bi radi videli te svetlobne predstave in prihodnje, pojdite sem. Ta svetlobni šov je lahko težko zgraditi
Robot za sladkarije za noč čarovnic: 7 korakov (s slikami)

Družbeni robot za čarovnice za noč čarovnic: če iščete zabaven nov način interakcije z letošnjimi triki ali zdravniki za noč čarovnic in ste pripravljeni na izziv, ki ga prinaša ta projekt, potem skočite in zgradite svojega! Ta robot za socialno distanciranje bo "videl", ko se zvijača ali zdravi
Stroj za strašenje za noč čarovnic z uporabo PIR -a, 3D natisnjene buče in združljivega avdio prankerja/praktične šale Board Troll Arduino .: 5 korakov

Stroj za strašenje za noč čarovnic z uporabo PIR, 3D natisnjene buče in združljivega avdio prankerja Troll Arduino/Praktična šala: deska Troll, ki jo je ustvaril Patrick Thomas Mitchell iz EngineeringShock Electronics in je bila pred kratkim v celoti financirana s strani Kickstarterja. Nekaj tednov prej sem dobil nagrado, da sem lahko poskusil napisati nekaj primerov uporabe in zgraditi knjižnico Arduino v poskusu