Sisällysluettelo:
- Vaihe 1: Käytetyt osat ja ohjelmistot
- Vaihe 2: Koodi
- Vaihe 3: Koodi lämpötila- (kosteus-, paine-) anturille, jossa on min/max -tunnisteet
Video: Micro: bit melutason ilmaisin: 3 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Tämä on vain lyhyt esimerkki melutasotunnistimelle, joka perustuu micro: bit ja Pimoroni enviro: bit.
Ympäristö: bitin mikrofoni tunnistaa äänitason, ja tuloksena olevasta arvosta lasketaan sijainti 5x5 LED -matriisissa ja vastaava LED aktivoituu. Suurimmat mitatut arvot tallennetaan ja näytetään LED -matriisissa.
Arvot voidaan näyttää myös numeroina.
Joten se on pohjimmiltaan hyvin yksinkertainen melutason tunnistustyökalu, esim. luokkahuoneessa tehtäviä kokeita varten.
Kuvattua tapaa näyttää todelliset ja anturin havaitsemat maksimiarvot micro: bitit 5x5 LED -matriisissa voidaan käyttää myös muihin parametreihin, kuten lämpötila, kosteus tai paine.
Vaihe 1: Käytetyt osat ja ohjelmistot
Laitteisto:
- Mikro: bitti
- Pimoroni -ympäristö: bitti - mukana tulee kolme anturia äänelle, valolle ja väreille sekä paineelle/lämpötilalle/kosteudelle (20 GBP Pimoronissa)
- A Pimoroni -teho: bitti - laitteen virta paristoista (valinnainen tai mikä tahansa muu tapa käyttää mikrobittiä, 6 GBP Pimoronissa)
Ohjelmisto:
- Microsoft MakeCode
- Pimoroni -ympäristö: bitti MakeCode -laajennus
Jos haluat ladata komentosarjan micro: bit-tiedostoosi, kopioi mukana toimitettu heksatiedosto micro: bit-tiedostoosi ja liitä siihen enviro: bit.
Vaihe 2: Koodi
Koodi on kirjoitettu käyttämällä Microsoft MakeCode -toimintoa lohkotilassa käyttäen Enviro: Bit -laajennusta. Alla on vastaava JavaScript -koodi.
Toiminto envirobit.getSoundLevel () lukee äänitason anturista ja palauttaa arvon 0-443.
Vakio signaali_max määrittää diodialueen maksimiarvon, joka näytetään LED -matriisissa, yllä olevia arvoja käsitellään olevan signaalin_max. Näin voit optimoida laitteen herkkyyden sovellukseesi.
Mittausympyrässä havaittu enimmäisarvo tallennetaan varianttiin noise_max ja pysyy näkyvissä LED -matriisissa.
Painikkeen "A" painaminen nollaa melun_max ja tyhjentää näytön, painikkeen "B" painaminen näyttää mitatun kohina -arvon todellisena numerona.
Arvon näyttämiseksi signaalin_max alla olevat arvot sijoitetaan 25 "lokeroon", joita edustaa yksi LED, alkaen 0 (vasen yläkulma) - 24 (oikea alareuna). Sitten x/y -asento lasketaan ja vastaava LED -valo syttyy. Signaalin_max yläpuolella olevat arvot sijoitetaan lokeroon 24. Jos arvo on kohina -maksimiarvon alapuolella, LEDit kytkeytyvät uudelleen pois päältä.
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 (noise_25 noise_max) {noise_max = noise_25}})
Vaihe 3: Koodi lämpötila- (kosteus-, paine-) anturille, jossa on min/max -tunnisteet
Täältä löydät koodin enviro: bit lämpötila -toiminnolle.
Parametrit signal_min ja signal_max asettavat LED -matriisissa näkyvän minimi- ja maksimilämpötilan (*C). Tässä signaalin_pää = 5 ja signaalin_max = 30 tuloksena 5 ja 6*C esitetään vasemmassa yläkulmassa (0, 0) ja 28/29*C oikeassa alakulmassa (4, 4).
Optimointitilaa on: nykyisen koodin noustessa ja laskiessa lämpötila jättää jälkiä LED -valoista joko päälle tai pois päältä. Toisaalta tämä mahdollistaa nykyisen lämpötilan suuntauksen (laskun/nousun) lukemisen, koska nykyinen arvo ilmaistaan vilkkuvalla LED -valolla.
Jos getTemperature () korvataan getHumidity () - tai getPressure () -arvolla ja säädetään signaalin_min- ja signaali_max -arvot vastaavasti (esim. 0/100 % vastaavasti 950/1150 hPA), nämä parametrit voidaan näyttää LED -matriisissa.
anna Temp_x = 0let Temp_5 = 0 let sign_delta = 0 anna Temp_25 = 0 anna Temp_Min = 0 let sign_min = 0 anna 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}})
Suositeltava:
Vedenpinnan ilmaisin: 7 vaihetta
Vedenpinnan ilmaisin: Ultraäänianturi toimii samoilla periaatteilla kuin tutkajärjestelmä. Ultraäänianturi voi muuntaa sähköenergian akustisiksi aaltoiksi ja päinvastoin. Kuuluisa HC SR04 -ääni -anturi tuottaa ultraääniaaltoja 40 kHz: n taajuudella
Vaaraton melutason mittari tai merkki: 4 vaihetta (kuvilla)
Vaaraton melutason mittari tai merkki: Rakastan ihmisten luovien projektien katsomista. Nykyaikaiset työkalut & tekniikka tarjoaa meille niin paljon luovia vaihtoehtoja. Opetan kovia materiaaleja lukion opiskelijoille Uuden -Seelannin lukiossa, joten kehitän jatkuvasti & kokeilemaan uusia asioita. Thi
Micro: bit - Micro Drum Machine: 10 vaihetta (kuvilla)
Micro: bit - Micro Drum Machine: Tämä on micro: bit mikrorumpukone, joka äänen tuottamisen sijaan toimii tehokkaasti. Se on raskas innoittamana micro: bit -orkesterin kaneista. Kesti jonkin aikaa löytää joitakin solenoideja, joita oli helppo käyttää mocro: bit
Micro: Bit Robot & Joystick -ohjelmointi: Bit Controller MicroPythonilla: 11 vaihetta
Micro: Bit Robot & Joystick -ohjelmointi: Bit Controller MicroPythonilla: Kesärobotiikkaleirillämme Robocamp 2019, 10-13-vuotiaat nuoret juottavat, ohjelmoivat ja rakentavat BBC: n bittipohjaista '' vastapainorobottia '' sekä ohjelmoivat mikro: bitti kauko -ohjaimena.Jos olet tällä hetkellä Robocampissa, hiihdä
Turvallinen melutason hälytysjärjestelmä: 11 vaihetta (kuvilla)
Turvallinen melutason hälytysjärjestelmä: Oshman Engineering Design Kitchen (OEDK) on Rice-yliopiston suurin tekijätila, joka tarjoaa tilaa kaikille opiskelijoille suunnitella ja prototyypata ratkaisuja todellisiin haasteisiin. Tätä tarkoitusta varten OEDK: ssa on useita sähkötyökaluja