Sadržaj:
- Korak 1: Korišteni dijelovi i softver
- Korak 2: Kodeks
- Korak 3: Kod za senzor temperature (vlažnosti, pritiska) s indikatorima min/maks
Video: Micro: bit Detektor nivoa buke: 3 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Ovo je samo kratak primjer detektora nivoa buke zasnovanog na micro: bit -u i Pimoroni enviro: bit -u.
Mikrofon na okruženju: bit detektira razinu zvuka, a iz rezultirajuće vrijednosti izračunava se položaj na LED matrici 5x5 i aktivira se odgovarajuća LED. Maksimalne izmjerene vrijednosti se pohranjuju i ostaju prikazane na LED matrici.
Vrednosti se takođe mogu prikazati u brojevima.
Dakle, to je u osnovi vrlo jednostavan alat za otkrivanje nivoa buke, npr. za eksperimente u učionici.
Opisana metoda za prikaz stvarnih i maksimalnih vrijednosti koje detektira senzor na mikro: bitovima 5x5 LED matrica može se koristiti i za druge parametre kao što su temperatura, vlažnost ili tlak.
Korak 1: Korišteni dijelovi i softver
Hardver:
- Mikro: bit
- Okolina Pimoronija: bit - dolazi s tri senzora za zvuk, svjetlost i boju te pritisak/temperaturu/vlažnost (20 GBP u Pimoroniju)
- Pimoronijevo napajanje: bit - za napajanje uređaja iz baterija (opcionalno ili na bilo koji drugi način za napajanje mikrobita, 6 GBP u Pimoroniju)
Softver:
- Microsoft MakeCode
- Pimoroni enviro: bit MakeCode ekstenzija
Da biste učitali skriptu na svoj micro: bit, samo kopirajte priloženu hex datoteku u svoj micro: bit sa priloženim enviro: bit.
Korak 2: Kodeks
Kôd je napisan korištenjem Microsoft MakeCode u blok načinu rada, koristeći proširenje Enviro: Bit. Bellow dobivate odgovarajući JavaScript kod.
Funkcija envirobit.getSoundLevel () čita razinu zvuka sa senzora, vraćajući vrijednost od 0 do 443.
Konstanta signal_max definira maksimalnu vrijednost dinamičkog raspona koja će biti prikazana na LED matrici, gornje vrijednosti će se tretirati kao signal_max. To vam omogućuje optimiziranje osjetljivosti uređaja za vašu aplikaciju.
Maksimalna vrijednost otkrivena u mjernom krugu pohranjena je u varijanti noise_max i ostaje prikazana na LED matrici.
Pritiskom na dugme "A" resetuje se noise_max i briše ekran, pritiskom na dugme "B" prikazuje se izmerena vrednost šuma kao stvarni broj.
Za prikaz vrijednosti, vrijednosti ispod signal_max smještene su u 25 "kanti" predstavljene jednom LED diodom, počevši od 0 (gornji lijevi) do 24 (donji desni). Zatim se izračunava položaj x/y i uključuje se odgovarajuća LED dioda. Vrijednosti iznad signal_max stavljaju se u pretinac 24. Ako je vrijednost ispod šuma_maksa, LED diode će se ponovo isključiti.
neka šum_x = 0let signal_max = 0 neka buka_5 = 0 neka buka_25 = 0 pusti šum_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}})
Korak 3: Kod za senzor temperature (vlažnosti, pritiska) s indikatorima min/maks
Ovdje ćete pronaći kôd za funkciju enviro: bit temperature.
Parametri signal_min i signal_max postavljaju minimalne i maksimalne temperature (*C) prikazane na LED matrici. Ovdje postavljanje signal_main = 5 i signal_max = 30 rezultira time da 5 i 6*C predstavljaju gornja lijeva LED (0, 0), a 28/29*C donja desna LED (4, 4).
Ima prostora za optimizaciju: s trenutnim kodom rastuće i padajuće temperature ostavljaju trag LED dioda ili uključenih ili isključenih. S druge strane, ovo omogućava očitavanje trenutne tendencije temperature (pad/rast), jer je trenutna vrijednost označena treperećom LED diodom.
Zamjena getTemperature () pomoću getHumidity () ili getPressure () i odgovarajuće prilagođavanje vrijednosti signal_min i signal_max (npr. 0/100 % odnosno 950/1150 hPA) omogućilo bi prikaz ovih parametara na LED matrici.
neka Temp_x = 0let Temp_5 = 0 neka signal_delta = 0 pusti Temp_25 = 0 neka Temp_Min = 0 dozvoli signal_min = 0 neka Temp_Max = 0 dozvoli 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} 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}})
Preporučuje se:
Detektor nivoa vode: 7 koraka
Detektor nivoa vode: Ultrazvučni senzor radi na istim principima kao i radarski sistem. Ultrazvučni senzor može pretvoriti električnu energiju u akustične valove i obrnuto. Čuveni ultrazvučni senzor HC SR04 generira ultrazvučne valove na frekvenciji od 40 kHz. Typica
LDR detektor nivoa svjetlosti: Otvaranje i zatvaranje očiju: 6 koraka
LDR detektor nivoa svjetlosti: Otvaranje i zatvaranje očiju: Pozdrav svima, nadam se da vam se ova instrukcija sviđa. Svaka sumnja, komentar ili ispravka bit će dobro prihvaćeni. Ovaj krug je realiziran kao upravljački modul za pružanje informacija o tome koliko ima svjetla u okolini, kako bi se
Detektor nivoa mašine za koks - sada sa govorom!: 6 koraka (sa slikama)
Detektor razine aparata za koks-sada s govorom!: Ovaj projekt je remiks mog detektora razine kante u aparatu za koks, (https://www.instructables.com/id/Coke-Machine-Can-Level-Detector/) s novim senzorima , i dodavanje izgovorenog zvuka! Nakon što sam napravio svoj prvi detektor, dodao sam piezo zujalicu u g
Bežični indikator nivoa vode sa alarmom - Domet do 1 km - Sedam nivoa: 7 koraka
Bežični indikator nivoa vode sa alarmom | Domet do 1 km | Sedam nivoa: Gledajte na Youtube -u: https://youtu.be/vdq5BanVS0YMožda ste vidjeli mnoge žičane i bežične indikatore nivoa vode koji bi pružali domet do 100 do 200 metara. Ali u ovom uputstvu ćete vidjeti Indikator bežične razine vode na daljinu
Detektor nivoa aparata za koks: 5 koraka (sa slikama)
Detektor nivoa mašine u aparatu za koks: Rev 2.5 - sredio je 3D štampane dijelove i nadogradio utični konektor na zajedničku PCB jedinicu. Rev 2 - ultrazvučno " dugme " zamjenjuje ručno dugme. Pritiskanje dugmeta je toliko stara moda, posebno kada već koristim ultrazvučni senzor