Orodha ya maudhui:

Micro: kidogo Kelele ya kiwango cha kelele: 3 Hatua
Micro: kidogo Kelele ya kiwango cha kelele: 3 Hatua

Video: Micro: kidogo Kelele ya kiwango cha kelele: 3 Hatua

Video: Micro: kidogo Kelele ya kiwango cha kelele: 3 Hatua
Video: USIOGOPE MTOTO WAKO AKIFANYA HAYA | MAKUZI MIEZI 0-3 2024, Novemba
Anonim
Micro: Kidhibiti cha kiwango cha kelele kidogo
Micro: Kidhibiti cha kiwango cha kelele kidogo
Micro: Kidhibiti cha kiwango cha kelele kidogo
Micro: Kidhibiti cha kiwango cha kelele kidogo
Micro: Kidhibiti cha kiwango cha kelele kidogo
Micro: Kidhibiti cha kiwango cha kelele kidogo

Huu ni mfano mfupi tu wa kigunduzi cha kiwango cha kelele kulingana na micro: bit na Pimoroni enviro: bit.

Kipaza sauti kwenye enviro: kidogo hugundua kiwango cha sauti, na kutoka kwa thamani inayosababisha nafasi kwenye tumbo la 5x5 la LED imehesabiwa na LED inayofanana imeamilishwa. Thamani za kiwango cha juu zinahifadhiwa na hubaki kuonyeshwa kwenye tumbo la LED.

Maadili yanaweza pia kuonyeshwa kwa nambari.

Kwa hivyo kimsingi ni zana rahisi sana ya kugundua kiwango cha kelele, n.k. kwa majaribio ya chumba cha darasa.

Njia iliyoelezewa kuonyesha maadili halisi na ya kiwango cha juu yaliyogunduliwa na sensor kwenye micro: bits 5x5 LED matrix pia inaweza kutumika kwa vigezo vingine kama joto, unyevu au shinikizo.

Hatua ya 1: Sehemu na Programu Iliyotumiwa

Vifaa:

  • Kidogo: kidogo
  • Pimoroni enviro: kidogo - inakuja na sensorer tatu kwa sauti, mwanga na rangi, na shinikizo / joto / unyevu (20 GBP huko Pimoroni)
  • Nguvu ya Pimoroni: kidogo - kuwezesha kifaa kuunda betri (hiari, au njia nyingine yoyote ya kuwezesha microbit, 6 GBP huko Pimoroni)

Programu:

  • Microsoft MakeCode
  • Pimoroni enviro: ugani wa MakeCode

Ili kupakia hati kwenye micro: bit yako, nakili faili iliyotolewa ya hex kwa micro: bit yako na enviro: bit masharti.

Hatua ya 2: Kanuni

Nambari imeandikwa kwa kutumia Microsoft MakeCode katika hali ya kuzuia, kwa kutumia Enviro: Ugani wa Bit. Bellow unapata Nambari inayofanana ya JavaScript.

Kazi envirobit.getSoundLevel () inasoma kiwango cha sauti kutoka kwa sensa, ikirudisha thamani kutoka 0 hadi 443.

Ishara_max ya kila wakati inafafanua dhamana ya juu ya anuwai inayoweza kuonyeshwa kwenye tumbo la LED, maadili hapo juu yatashughulikiwa kama ishara_max. Hii hukuruhusu kuongeza unyeti wa kifaa kwa programu yako.

Thamani ya juu iliyogunduliwa kwenye mduara wa kipimo imehifadhiwa kwenye kelele_max tofauti na inabaki kuonyeshwa kwenye tumbo la LED.

Kubonyeza kitufe cha "A" kuweka upya sauti_max na kusafisha skrini, kubonyeza kitufe cha "B" inaonyesha thamani ya kelele iliyopimwa kama nambari halisi.

Kuonyesha thamani, maadili chini ya signal_max yamewekwa katika "mapipa" 25 yanayowakilishwa na LED moja, kuanzia 0 (juu kushoto) hadi 24 (chini kulia). Kisha nafasi ya x / y imehesabiwa na LED inayofanana imewashwa. Thamani zilizo juu ya signal_max zimewekwa kwenye pipa 24. Ikiwa thamani iko chini ya kelele_max, taa za LED zitabadilishwa tena.

let noise_x = 0let signal_max = 0 let noise_5 = 0 let noise_25 = 0 let noise_max = 0 basic.showString ("Noise"). ButtonIsPressed (Button. B)) {basic.showNumber (envirobit.getSoundLevel ()) basic.showString ("-")} if (input.buttonIsPressed (Button. A)) {noise_max = 0 basic.clearScreen ()} kelele_25 = Math.floor (envirobit.getSoundLevel () / signal_max * 25) ikiwa (kelele_25> 24) {noise_25 = 24} kelele_5 = Math.floor (kelele_25 / 5) kelele_x = kelele_25 - kelele_5 * 5 iliyoongozwa. kelele_5) msingi. sitisha (200) ikiwa (kelele_25 kelele_max) {kelele_max = kelele_25}})

Hatua ya 3: Nambari ya Kihisi cha Joto (Unyevu, Shinikizo) na Kitambulisho cha Min / Max

Nambari ya Kihisi cha Joto (Unyevu, Shinikizo) na Kitambulisho cha Min / Max
Nambari ya Kihisi cha Joto (Unyevu, Shinikizo) na Kitambulisho cha Min / Max

Hapa unapata nambari ya enviro: kazi ya joto kidogo.

Vigezo signal_min na signal_max huweka kiwango cha chini na joto la juu (* C) lililoonyeshwa kwenye tumbo la LED. Hapa kuweka signal_main = 5 na signal_max = matokeo 30 kwa 5 na 6 * C ikiwakilishwa na mwangaza wa juu kushoto (0, 0) na 28/29 * C na mwangaza wa kulia wa chini (4, 4).

Kuna nafasi ya uboreshaji: na nambari ya sasa inayopanda na kushuka kwa joto inaacha alama ya LED iwe imewashwa au kuzimwa. Kwa upande mwingine hii inaruhusu kusoma hali ya joto ya sasa (kushuka / kupanda), kwani thamani ya sasa inaonyeshwa na mwangaza wa mwangaza wa LED.

Kubadilisha GetTemperature () na GetHumidity () au getPressure () na kurekebisha signal_min na signal_max values ipasavyo (k.m 0/100% mtawaliwa 950/1150 hPA) itaruhusu kuonyesha vigezo hivi kwenye tumbo la LED.

hebu Temp_x = 0let Temp_5 = 0 let signal_delta = 0 let Temp_25 = 0 let Temp_Min = 0 let signal_min = 0 let Temp_Max = 0 let signal_max = 0 basic.showString ("Temp") signal_max = 30 signal_min = 5 signal_delta = signal_max - signal_min Temp_Max = 0 Temp_Min = 24 ya msingi. Milele (kazi () {if (input.buttonIsPressed (Button. A)) {Temp_Max = 0 Temp_Min = 24 basic.clearScreen ()} wakati (input.buttonIsPressed (Button. B)) { basic.showNumber (Math.round (envirobit.getTemperature ())) basic.showString ("C")} Temp_25 = Math.floor ((envirobit.getTemperature () - signal_min) / signal_delta * 25) ikiwa (Temp_25> 24) {Temp_25 = 24} ikiwa (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) msingi. Pumzika (100) ikiwa (Temp_25 Temp_Min) {led.unplot (Temp_x, Temp_5)} ikiwa (Temp_25> Temp_Max) {Temp_Max = Temp_25} ikiwa (Temp_25 <Temp_Min) {Temp_Min = Temp_25}})

Ilipendekeza: