Мазмуну:
- 1 -кадам: Колдонулган бөлүктөр жана программалык камсыздоо
- 2 -кадам: Код
- 3 -кадам: Мин/Макс индикаторлору бар температура (нымдуулук, басым) сенсорунун коду
Video: Микро: кичине ызы -чуунун деңгээлин аныктоочу: 3 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Бул микро: битке жана Pimoroni enviro: bitке негизделген ызы -чуунун детекторунун кыска мисалы.
Айланадагы микрофон: бит үн деңгээлин аныктайт, натыйжада 5x5 LED матрицасындагы позиция эсептелет жана тиешелүү LED иштетилет. Өлчөнгөн максималдуу баалуулуктар LED матрицасында сакталып турат.
Маанилер да сандар менен көрсөтүлүшү мүмкүн.
Ошентип, бул негизинен ызы -чуунун деңгээлин аныктоочу өтө жөнөкөй курал, мис. класстык эксперименттер үчүн.
Микро: бит 5x5 LED матрицасында аныкталган чыныгы жана максималдуу маанилерди көрсөтүү үчүн сүрөттөлгөн ыкма температура, нымдуулук же басым сыяктуу башка параметрлер үчүн да колдонулушу мүмкүн.
1 -кадам: Колдонулган бөлүктөр жана программалык камсыздоо
Аппараттык:
- Микро: бит
- Pimoroni чөйрөсү: бит - үн, жарык жана түс, басым/температура/нымдуулук үчүн үч сенсор менен келет (20 GBP Pimoroni)
- Pimoroni күчү: бит - түзмөктү батарейкадан иштетүү үчүн (милдеттүү эмес, же микробиттин башка жолун иштетүү үчүн, 6 GBP Pimoroni)
Программалык камсыздоо:
- Microsoft MakeCode
- Pimoroni чөйрөсү: бит MakeCode кеңейтүүсү
Сценарийди micro: bitке жүктөө үчүн, берилген hex-файлды micro: bitке enviro: bit тиркелип көчүрүңүз.
2 -кадам: Код
Код Microsoft MakeCode менен блокированный режимде жазылган, Enviro: Bit кеңейтүүсүн колдонуу менен. Сиз тиешелүү JavaScript кодун табасыз.
Envirobit.getSoundLevel () функциясы сенсордон үн деңгээлин окуйт, 0дөн 443кө чейинки маанини кайтарат.
Туруктуу signal_max LED матрицасында көрсөтүлүүчү динамикалык диапазондун максималдуу маанисин аныктайт, жогорудагы маанилер signal_max катары каралат. Бул сиздин колдонмоңуз үчүн түзмөктүн сезгичтигин оптималдаштырууга мүмкүндүк берет.
Өлчөө чөйрөсүндө аныкталган максималдуу мааниси Variant_Sum_Max сакталат жана LED матрицасында көрсөтүлөт.
"А" баскычын басуу ызы_макты баштапкы абалга келтирет жана экранды тазалайт, "В" баскычын басуу чуунун көлөмүн чыныгы сан катары көрсөтөт.
Бааны көрсөтүү үчүн signal_max астындагы маанилер 0 (жогорку сол) менен 24 (астыңкы оң) баштап, бир LED менен көрсөтүлгөн 25 "контейнерге" жайгаштырылган. Андан кийин x/y позициясы эсептелет жана тиешелүү LED күйгүзүлөт. Signal_maxтан жогору маанилер 24 -контейнерге жайгаштырылган. Эгерде мааниси ызы -чуудан төмөн болсо, анда диоддор кайра күйгүзүлөт.
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 ()} ызы_25 = Math.floor (envirobit.getSoundLevel () / signal_max * 25) if (ызы_25> 24) {ызы_25 = 24} ызы -чуу = 5 -математика (ызы_25 / 5) ызы -чуу = шуу_25 - ызы_5 * 5 led.plot (ызы_х, ызы -чуу_5) негизги.пауза (200) эгер (ызы -чуу_25 ызы_мак) {ызы_мак = ызы_25}})
3 -кадам: Мин/Макс индикаторлору бар температура (нымдуулук, басым) сенсорунун коду
Бул жерде сиз enviro: бит температурасы функциясынын кодун таба аласыз.
Signal_min жана signal_max параметрлери LED матрицасында көрсөтүлгөн минималдуу жана максималдуу температураларды (*C) орнотот. Бул жерде signal_main = 5 жана signal_max = 30 жыйынтыктары 5 жана 6*C жогорку сол LED (0, 0) жана 28/29*C төмөнкү оң LED (4, 4) менен көрсөтүлөт.
Оптималдаштырууга орун бар: учурдагы коддун жогорулашы жана төмөндөшү менен диоддордун изи калат же күйөт же өчөт. Экинчи жагынан, бул учурдагы температуранын тенденциясын (түшүү/көтөрүлүү) окууга мүмкүндүк берет, анткени учурдагы мааниси жарк эткен LED менен көрсөтүлөт.
GetHumidity () же getPressure () менен getTemperature () алмаштыруу жана ага ылайык signal_min жана signal_max баалуулуктарын тууралоо (мис. 0/100 % тиешелүүлүгүнө жараша 950/1150 hPA) бул параметрлерди LED матрицасында көрсөтүүгө мүмкүндүк берет.
Let 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 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}})
Сунушталууда:
Суу деңгээлин аныктоочу: 7 кадам
Суу деңгээлинин детектору: УЗИ сенсору радар системасы менен бирдей принципте иштейт. УЗИ сенсору электр энергиясын акустикалык толкунга айландырат жана тескерисинче. Атактуу HC SR04 УЗИ сенсору 40 кГц жыштыктагы УЗИ толкундарын жаратат
Оксиметр жана жүрөктүн кагышы менен DIY фитнес трекер акылдуу сааты - TinyCircuitsтен Модулдук Электрондук Модулдар - Эң кичине аркада: 6 кадам
Оксиметр жана жүрөктүн кагышы менен DIY фитнес трекер акылдуу сааты | TinyCircuitsтен Модулдук Электрондук Модулдар | Эң кичинекей аркада: Эй, эмне болду, балдар! Akarsh бул жерден CETech.Todayден бизде сенсор модулдарыбыз бар, алар биздин күнүмдүк жашообузда абдан пайдалуу, бирок алардын кичинекей версиясында. Бүгүнкү күндө бизде бар сенсорлордун көлөмү тра -га салыштырмалуу өтө кичине
Микро: Бот - Микро: Бит: 20 кадам
Микро: Бот - Микро: Бит: Өзүңүзгө Микро: Ботту куруңуз! Бул Micro: Bit башкарылуучу робот, автономдуу айдоо үчүн sonar курулган, же эгер сизде эки Micro: Bits, радио башкарылган айдоо болсо
Микро: бит - Микро барабан машинасы: 10 кадам (Сүрөттөр менен)
Микро: бит - Микро барабан машинасы: Бул микро: бит микро барабан машинасы, жөн эле үндү чыгаруунун ордуна, актуалдуу барабандар. Бул микро: бит оркестринин коёндорунун жетеги менен жазылган. Mocro: bit менен колдонууга оңой болгон кээ бир соленоиддерди табуу мага бир аз убакытты талап кылды
Суу деңгээлин аныктоочу: 6 кадам
Суу деңгээлин аныктоочу: