Indholdsfortegnelse:
- Trin 1: Brugte dele og software
- Trin 2: Koden
- Trin 3: En kode for en temperatur (luftfugtighed, tryk) sensor med min/maks. Indikatorer
Video: Micro: bit Støjniveau -detektor: 3 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Dette er kun et kort eksempel på en støjniveau detektor baseret på micro: bit og Pimoroni enviro: bit.
Mikrofonen på enviro: bit registrerer lydniveauet, og ud fra den resulterende værdi beregnes en position på 5x5 LED -matrixen, og den tilsvarende LED aktiveres. De maksimale målte værdier gemmes og forbliver vist på LED -matricen.
Værdierne kan også vises i tal.
Så det er dybest set et meget simpelt støjniveau detekteringsværktøj, f.eks. til eksperimenter i klasseværelset.
Den beskrevne metode til visning af faktiske og maksimumværdier opdaget af en sensor på micro: bits 5x5 LED matrix kan også bruges til andre parametre som temperatur, fugtighed eller tryk.
Trin 1: Brugte dele og software
Hardware:
- En mikro: bit
- En Pimoroni enviro: bit - leveres med tre sensorer til lyd, lys og farve og tryk/temperatur/luftfugtighed (20 GBP på Pimoroni)
- En Pimoroni -effekt: bit - for at drive enheden fra batterier (valgfri eller anden måde at drive mikrobiten på, 6 GBP på Pimoroni)
Software:
- Microsoft MakeCode
- Pimoroni enviro: bit MakeCode -udvidelsen
For at indlæse scriptet til din micro: bit, skal du bare kopiere den medfølgende hex-fil til din micro: bit med en enviro: bit vedhæftet.
Trin 2: Koden
Koden er blevet skrevet ved hjælp af Microsoft MakeCode i blokeringstilstand ved hjælp af Enviro: Bit -udvidelsen. Her finder du den tilsvarende JavaScript -kode.
Funktionen envirobit.getSoundLevel () læser lydniveauet fra sensoren og returnerer en værdi fra 0 til 443.
Det konstante signal_max definerer en maksimal værdi for det dynamiske område, der skal vises på LED -matricen, værdier ovenfor vil blive behandlet som et værende signal_max. Dette giver dig mulighed for at optimere enhedens følsomhed til din applikation.
Den maksimale værdi, der registreres i en målekreds, gemmes i varianten noise_max og vises fortsat på LED -matricen.
Ved at trykke på knappen "A" nulstilles noise_max og rydder skærmen, tryk på knappen "B" viser den målte støjværdi som det faktiske tal.
For at vise værdien placeres værdierne under signal_max i 25 "bakker" repræsenteret af en LED, der starter fra 0 (øverst til venstre) til 24 (nederst til højre). Derefter beregnes x/y -positionen, og den tilhørende LED tændes. Værdier over signal_max placeres i bin 24. Hvis værdien er under noise_max, tændes lysdioderne igen.
lad noise_x = 0let signal_max = 0 lad noise_5 = 0 lad noise_25 = 0 lad noise_max = 0 basic.showString ("Noise") noise_max = 0 noise_25 = 0 noise_5 = 0 signal_max = 250 basic.forever (funktion () {while (input.buttonIsPressed (Button. B)) {basic.showNumber (envirobit.getSoundLevel ()) basic.showString ("-")} if (input.buttonIsPressed (Button. A)) {noise_max = 0 basic.clearScreen ()} noise_25 = Math.floor (envirobit.getSoundLevel () / signal_max * 25) if (noise_25> 24) {noise_25 = 24} noise_5 = Math.floor (noise_25 / 5) noise_x = noise_25 - noise_5 * 5 led.plot (noise_x, noise_5) basic.pause (200) if (noise_25 noise_max) {noise_max = noise_25}})
Trin 3: En kode for en temperatur (luftfugtighed, tryk) sensor med min/maks. Indikatorer
Her finder du en kode til enviro: bit temperatur funktion.
Parametre signal_min og signal_max indstiller minimum og maksimum temperaturer (*C), der vises på LED -matricen. Her resulterer indstilling af signal_main = 5 og signal_max = 30 i, at 5 og 6*C repræsenteres af den øverste venstre LED (0, 0) og 28/29*C af den nederste højre LED (4, 4).
Der er plads til optimering: med den nuværende kode stigende og faldende temperaturer efterlader et spor af lysdioder enten tændt eller slukket. På den anden side gør dette det muligt at aflæse den aktuelle temperaturtendens (faldende/stigende), da den aktuelle værdi er angivet med den blinkende LED.
Hvis du udskifter getTemperature () med getHumidity () eller getPressure () og justerer signal_min og signal_max værdierne i overensstemmelse hermed (f.eks.
lad Temp_x = 0let Temp_5 = 0 lad signal_delta = 0 lad Temp_25 = 0 lad Temp_Min = 0 lad signal_min = 0 lad Temp_Max = 0 lad signal_max = 0 basic.showString ("Temp") signal_max = 30 signal_min = 5 signal_delta = signal_max - signal_min Temp_Max = 0 Temp_Min = 24 basic.forever (function () {if (input.buttonIsPressed (Button. A)) {Temp_Max = 0 Temp_Min = 24 basic.clearScreen ()} while (input.buttonIsPressed (Button. B)) { basic.showNumber (Math.round (envirobit.getTemperature ())) basic.showString ("C")} Temp_25 = Math.floor ((envirobit.getTemperature () - signal_min) / signal_delta * 25) if (Temp_25> 24) {Temp_25 = 24} hvis (Temp_25 <0) {Temp_25 = 0} Temp_5 = Math.floor (Temp_25 / 5) Temp_x = Temp_25 - Temp_5 * 5 led.plot (Temp_x, Temp_5) basic.pause (100) if (Temp_25 Temp_Min) {led.unplot (Temp_x, Temp_5)} if (Temp_25> Temp_Max) {Temp_Max = Temp_25} if (Temp_25 <Temp_Min) {Temp_Min = Temp_25}})
Anbefalede:
Sådan køres servomotorer ved hjælp af Moto: bit Med Micro: bit: 7 trin (med billeder)
Sådan køres servomotorer ved hjælp af Moto: bit Med Micro: bit: En måde at udvide funktionaliteten af micro: bit på er at bruge et kort kaldet moto: bit af SparkFun Electronics (ca. $ 15-20). Det ser kompliceret ud og har mange funktioner, men det er ikke svært at køre servomotorer fra det. Moto: bit giver dig mulighed for at
Usikkert støjniveau måler eller tegn: 4 trin (med billeder)
Usikre støjniveau -måler eller tegn: Jeg elsker at se folks kreative projekter. Moderne værktøjer & teknologi giver os så mange kreative muligheder. Jeg underviser hårde materialer til gymnasieelever på et gymnasium i New Zealand, så jeg udvikler mig altid & prøve nye ting. Dette
Programmering af en Micro: Bit Robot & Joystick: Bit Controller Med MicroPython: 11 trin
Programmering af en Micro: Bit Robot & Joystick: Bit Controller Med MicroPython: Til Robocamp 2019, vores sommerrobotiklejr, lodder unge i alderen 10-13 år og programmerer og bygger en BBC micro: bit baseret 'antweight robot' samt programmering en mikro: bit til brug som fjernbetjening. Hvis du i øjeblikket er på Robocamp, kan du stå på ski
Usikkert støjniveau alarmsystem: 11 trin (med billeder)
Usikkert støjniveau-alarmsystem: Oshman Engineering Design Kitchen (OEDK) er det største makerspace på Rice University og giver alle studerende plads til at designe og prototype løsninger på udfordringer i den virkelige verden. For at tjene dette formål huser OEDK en række elværktøjer
Lys- og farvemålinger Med Pimoroni Enviro: bit til Micro: bit: 5 trin
Lys- og farvemålinger Med Pimoroni Enviro: bit til Micro: bit: Jeg havde tidligere arbejdet på nogle enheder, der muliggjorde lys- og farvemålinger, og du finder muligvis meget om teorien bag sådanne målinger, de instruerbare her og her. Pimoroni har for nylig udgivet enviro: bit, en tilføjelse til m