Tartalomjegyzék:
- 1. lépés: Használt alkatrészek és szoftverek
- 2. lépés: A kód
- 3. lépés: A hőmérséklet (páratartalom, nyomás) érzékelő kódja Min/Max jelzőkkel
Videó: Mikro: bit zajszintérzékelő: 3 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Ez csak egy rövid példa a micro: bit és a Pimoroni enviro: bit alapú zajszint -érzékelőre.
A környezet: bit mikrofonja érzékeli a zajszintet, és a kapott értékből kiszámítja az 5x5 LED mátrixon lévő pozíciót, és aktiválja a megfelelő LED -et. A mért maximális értékek tárolásra kerülnek és megjelennek a LED mátrixon.
Az értékek számokban is megjeleníthetők.
Tehát alapvetően egy nagyon egyszerű zajszint érzékelő eszközről van szó, pl. osztálytermi kísérletekhez.
A leírt módszer az aktuális és a maximális értékek megjelenítésére az érzékelő által a micro: bit 5x5 LED mátrixon más paraméterekhez is használható, mint például hőmérséklet, páratartalom vagy nyomás.
1. lépés: Használt alkatrészek és szoftverek
Hardver:
- Mikro: bit
- A Pimoroni környezet: bit - három érzékelővel rendelkezik a hang, a fény és a szín, valamint a nyomás/hőmérséklet/páratartalom érdekében (20 GBP a Pimoroni -nál)
- A Pimoroni tápellátás: bit - a készülék táplálása elemekből (opcionális, vagy bármilyen más módon a mikrobit táplálására, 6 GBP a Pimoroni -nál)
Szoftver:
- Microsoft MakeCode
- A Pimoroni környezet: bit MakeCode kiterjesztés
A szkript betöltéséhez a micro: bit-re csak másolja a mellékelt hex-fájlt a micro: bit-re, és csatoljon egy enviro: bit-et.
2. lépés: A kód
A kódot a Microsoft MakeCode használatával írták blokk módban, az Enviro: Bit kiterjesztéssel. Az alábbiakban megtalálja a megfelelő JavaScript kódot.
Az envirobit.getSoundLevel () függvény kiolvassa az érzékelő hangszintjét, 0 és 443 közötti értéket ad vissza.
A konstans signal_max határozza meg a dinamikus tartomány maximális értékét, amelyet a LED -mátrixon kell megjeleníteni, a fenti értékeket a jel_max értékként kezeljük. Ez lehetővé teszi az eszköz érzékenységének optimalizálását az alkalmazáshoz.
A mérési körben észlelt maximális érték a zaj_max változatban tárolódik, és továbbra is megjelenik a LED mátrixon.
Az "A" gomb megnyomása visszaállítja a noise_max értéket, és törli a képernyőt, a "B" gomb megnyomása pedig a mért zajértéket jeleníti meg tényleges számként.
Az érték megjelenítéséhez a signal_max alatti értékeket 25 "tartályba" kell helyezni, amelyeket egy LED jelöl, 0 (bal felső) és 24 (jobb alsó) között. Ezután kiszámítja az x/y pozíciót, és a megfelelő LED bekapcsol. A signal_max feletti értékeket a 24 -es tárolóba helyezzük. Ha az érték a zaj_max alatt van, a LED -ek újra kikapcsolnak.
let noise_x = 0let signal_max = 0 let noise_5 = 0 let noise_25 = 0 let noise_max = 0 basic.showString ("Noise") noise_max = 0 noise_25 = 0 noise_5 = 0 signal_max = 250 basic.forever (function () {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 (zaj_25 zaj_max) {zaj_max = zaj_25}})
3. lépés: A hőmérséklet (páratartalom, nyomás) érzékelő kódja Min/Max jelzőkkel
Itt talál egy kódot az enviro: bit hőmérséklet funkcióhoz.
A signal_min és a signal_max paraméterek beállítják a LED mátrixon megjelenő minimális és maximális hőmérsékletet (*C). Itt a jel_fő = 5 és a jel_max = 30 beállítása azt eredményezi, hogy az 5 és 6*C értékeket a bal felső LED (0, 0) és a 28/29*C a jobb alsó LED jelzi (4, 4).
Lehetőség van az optimalizálásra: a jelenlegi kód emelkedése és csökkenése után a LED -ek nyomát hagyják be- vagy kikapcsolva. Másrészt ez lehetővé teszi az aktuális hőmérsékleti tendencia (csökkenő/emelkedő) leolvasását, mivel az aktuális értéket a villogó LED jelzi.
Ha a getTemperature () értéket felváltja a getHumidity () vagy a getPressure (), és ennek megfelelően állítja be a signal_min és a signal_max értékeket (pl. 0/100 %, illetve 950/1150 hPA), akkor ezek a paraméterek megjeleníthetők a LED mátrixon.
let Temp_x = 0let Temp_5 = 0 let sign_delta = 0 let Temp_25 = 0 let Temp_Min = 0 let sign_min = 0 let Temp_Max = 0 let sign_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} if (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}})
Ajánlott:
Automatikus növényi öntözőrendszer mikro segítségével: bit: 8 lépés (képekkel)
Automatikus növényi öntözőrendszer Micro: bit használatával: Ebben az utasításban megmutatom, hogyan kell felépíteni egy automatikus növényi öntözőrendszert a Micro: bit és néhány más kis elektronikus alkatrész segítségével. A Micro: bit nedvességérzékelőt használ figyelemmel kíséri a nedvesség szintjét a növény talajában és
Három francia tyúk a dobozban (mikro: bit): 10 lépés
Három francia tyúk a dobozban (Micro: bit): Meglepetés (vagy megijesztés), ha három tyúk ugrik ki a dobozból. Ünnepi csavar elektronikával a klasszikus Jack-in-the-boxban. Ez a három tyúk természetesen francia
Mikro: bit - LED mátrix: 14 lépés
Micro: bit - LED -mátrix: Ebben az útmutatóban áttekintem, hogyan lehet LED -mátrixot készíteni a micro: bit számára a LED -csíkokból. Példaként 4x4 és 10x10 mátrixot fogok használni. Mivel egy iskolában dolgozom, ahol sok épületet építünk, sok mindenen megyünk keresztül
Szervo motorok futtatása Moto: bit segítségével Mikro: bit: 7 lépés (képekkel)
Szervo motorok futtatása a Moto: bit segítségével Micro: bit: A micro: bit funkcionalitásának kibővítésének egyik módja a SparkFun Electronics által moto: bit nevű tábla használata (kb. 15-20 USD). Bonyolultnak tűnik, és számos funkcióval rendelkezik, de nem nehéz szervomotorokat futtatni belőle. Moto: bit lehetővé teszi, hogy
Mikro: Bot - Mikro: Bit: 20 lépés
Micro: Bot - Micro: Bit: Építs magadnak Micro: Bot! Ez egy Micro: Bit vezérelt robot beépített szonárral az autonóm vezetéshez, vagy ha van két Micro: Bit, akkor rádióvezérelt vezetés