Orodha ya maudhui:
- Hatua ya 1: Nadharia Nyuma ya Kifaa
- Hatua ya 2: Kutumia Kifaa
- Hatua ya 3: Vifaa vinahitajika
- Hatua ya 4: Mkutano
- Hatua ya 5: Hati ya MicroPython
- Hatua ya 6: Urahisishaji Mkubwa: Msimbo wa MakeCode / JavaScript
- Hatua ya 7: Toleo la Enviro: bit
- Hatua ya 8: Toleo la Uchunguzi wa Cable na Sensor
Video: Micro: kidogo kupiga mbizi-O-Mita: Hatua 8 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:53
Majira ya joto ni hapa, wakati wake wa kuogelea!
Nafasi nzuri ya kuchukua mwenyewe na micro yako: kidogo nje, na katika kesi hii hata ndani, bwawa la kuogelea.
Mita ndogo: kupiga mbizi-o-mita iliyoelezewa hapa ni kipimo rahisi cha kina cha DIY ambacho hukuruhusu kupima jinsi ulivyo, au ulikuwa ukipiga mbizi. Inajumuisha tu ndogo: kidogo, pakiti ya betri au LiPo, kontakt ya makali ya micro: bit, BMP280 au BME280 sensor barometric sensor na nyaya zingine za kuruka. Kutumia enviro ya Pimoroni: kidogo hufanya vitu kuwa rahisi zaidi. Yote hii imejaa katika tabaka mbili za mifuko ya plastiki wazi au mifuko ya silicone, na uzito mwingine umeongezwa kufidia nguvu ya maboya.
Ni matumizi ya kifaa cha sensorer ya shinikizo: kidogo nilichoelezea katika kufundisha hapo awali.
Unaweza kutumia kifaa e. g. kwa mashindano ya kupiga mbizi na marafiki na familia, au kujua ni kina gani dimbwi hilo liko. Niliijaribu kwa kutumia bwawa la kina kabisa katika ujirani wangu, na nikagundua kuwa inafanya kazi angalau kwa kina cha mita 3.2. Karibu mita tano ni upeo wa kinadharia. Hadi sasa sijajaribu usahihi wake kwa undani wowote, lakini nambari zilizoripotiwa zilikuwa angalau katika kiwango kinachotarajiwa.
Maneno mengine: Hii haikusudiwa kuwa zana ya anuwai halisi. Micro yako: kidogo itaharibika ikiwa inakuwa mvua. Unatumia mafunzo haya kwa hatari yako mwenyewe.
Sasisha Mei 27: Sasa unaweza kupata maandishi ya MakeCode HEX unaweza kupakia moja kwa moja kwa micro: bit yako. Tazama hatua ya 6. Sasisha Juni 13: Enviro: kidogo na toleo la kebo liliongezwa. Angalia hatua 7 & 8
Hatua ya 1: Nadharia Nyuma ya Kifaa
Tunaishi chini ya bahari ya hewa. Shinikizo hapa chini ni karibu 1020 hPa (hectoPascal) kwani uzani wa safu ya safu ya hewa hapa kwa nafasi ni karibu kilo 1 kwa sentimita ya mraba.
Uzito wa maji ni kubwa zaidi, kwani lita moja ya uzito wa hewa karibu 1.2 g na lita moja ya maji kilo 1, i.e. juu ya mara 800. Kwa hivyo kama kushuka kwa shinikizo la kibaometri ni karibu 1 hPa kwa kila mita 8 kwa urefu, faida ya shinikizo ni 1 hPa kwa kila sentimita chini ya uso wa maji. Kwa kina cha meta 10, shinikizo ni 2000 hPa, au anga mbili.
Sensor ya shinikizo iliyotumika hapa ina kipimo cha kipimo kati ya 750 na 1500 hPa kwa azimio la hPa moja. Hii inamaanisha tunaweza kupima kina hadi mita 5 kwa azimio la karibu 1 cm.
Kifaa hicho kitakuwa kipimo cha kina cha aina ya Boyle Marriotte. Mkutano wake ni rahisi na umeelezewa katika hatua ya baadaye. Sensor hutumia itifaki ya I2C, kwa hivyo kontakt ya makali ya micro: bit inakuja vizuri. Sehemu muhimu zaidi ni mifuko isiyo na maji, kwani unyevu wowote utaharibu micro: bit, sensor, au betri. Kama hewa itakavyonaswa ndani ya mifuko, kuongezewa kwa uzito husaidia kufidia nguvu ya maboya.
Hatua ya 2: Kutumia Kifaa
Hati, kama inavyoonyeshwa kwa undani katika hatua ya baadaye, ni tofauti ya hati niliyoiandaa mapema kwa mita ya shinikizo. Ili kujaribu kifaa, unaweza kutumia chumba rahisi cha shinikizo kilichoelezewa hapo.
Kwa madhumuni ya kupiga mbizi inaonyesha kina cha mita, kama ilivyohesabiwa kutoka kwa vipimo vya shinikizo, ama kama grafu ya bar katika hatua 20 cm au, kwa ombi, kwa idadi.
Kutumia kitufe A kwenye micro: kidogo, utaweka shinikizo la sasa kama thamani ya shinikizo la kumbukumbu. Ili kudhibitisha kuingia, tumbo linaangaza mara moja.
Unaweza kutumia hii ama kuona jinsi unavyopiga mbizi, au kurekodi jinsi ulivyokuwa ukipiga mbizi.
Katika kesi ya kwanza weka shinikizo la nje la sasa kama kumbukumbu. Katika kesi ya pili weka shinikizo sehemu ya chini kabisa wewe kama kumbukumbu ya shinikizo, ambayo hukuruhusu kuonyesha jinsi ulivyokuwa wa kina wakati umerudi juu ya uso. Kitufe B kinaonyesha kina, kilichohesabiwa kutoka kwa tofauti ya shinikizo, kama thamani ya nambari katika mita.
Hatua ya 3: Vifaa vinahitajika
Kidogo: kidogo. Mfano. saa 13 GBP / 16 Euro huko Pimoroni UK / DE.
Kiunganishi cha makali (Kitronic au Pimoroni), 5 GBP. Nilitumia toleo la Kitronic.
Kitambuzi cha BMP / BME280. Nilitumia sensa ya BMP280 kutoka Banggood, 4.33 Euro kwa vitengo vitatu.
Kamba za jumper kuunganisha kiunganishi na kontakt makali.
Njia mbadala bora kwa kiunganishi cha kontakt / sensorer ya hapo juu inaweza kuwa Pimoroni enviro: kidogo (haijajaribiwa na sasa, angalia hatua ya mwisho).
Pakiti ya betri au LiPo ya micro: bit.
Cable ya umeme na swichi (hiari lakini inasaidia) Futa mifuko isiyo na maji. Nilitumia mkoba wa silicone kwa simu ya rununu na begi moja au mbili ndogo za ziploc. Hakikisha kuwa nyenzo ni nene ya kutosha, kwa hivyo pini kwenye kontakt ya makali hazitaharibu mifuko hiyo.
Uzito fulani. Nilitumia vipande vya uzani wa risasi ambao hutumiwa kwa uvuvi.
Arduino IDE, na maktaba kadhaa.
Hatua ya 4: Mkutano
Sakinisha IDE ya Arduino na maktaba zinazohitajika. Maelezo yameelezwa hapa.
(Haihitajiki kwa maandishi ya MakeCode.) Kwa kuwa umetumia kontakt ya makali ya Kitronik, pini za kuuza kwa bandari za I2C 19 na 20. Hii haihitajiki kwa kiunganishi cha pembeni cha Pimoroni. Solder kichwa cha kichwa kwa kuvunja sensorer na unganisha kiunganishi na kontakt makali kwa kutumia nyaya za kuruka. Unganisha VCC kwa 3V, GND hadi 0 V, SCL hadi bandari 19 na SDA kwenye bandari ya 20. Vinginevyo tengeneza nyaya moja kwa moja kwa kuzuka. Unganisha ndogo: kidogo kwa kompyuta yetu kwa kebo ya USB. Fungua hati iliyotolewa na uifanye kwa micro: bit. Tumia mfuatiliaji wa serial au mpangaji, angalia ikiwa sensorer inatoa data inayofaa. Tenganisha micro: kidogo kutoka kwa kompyuta yako. Unganisha betri au LiPo kwa micro: bit. Bonyeza kifungo B, soma thamani Bonyeza kitufe A. Bonyeza kitufe B, soma thamani. Weka kifaa katika tabaka mbili za mifuko isiyopitisha hewa, ukiacha hewa kidogo tu kwenye mifuko. Kwa hali, weka uzito kufidia nguvu ya maboya. Angalia ikiwa kila kitu hakina maji. Nenda kwenye dimbwi ukacheze.
Hatua ya 5: Hati ya MicroPython
Hati hiyo inachukua tu shinikizo kutoka kwa sensorer, kuilinganisha na thamani ya kumbukumbu, na kisha kuhesabu kina kutoka kwa tofauti. Kwa kuonyesha maadili kama grafu ya bar, sehemu kamili na salio ya thamani ya kina huchukuliwa. Ya kwanza hufafanua urefu wa mstari. Zilizobaki zimevunjwa katika mapipa matano, ambayo hufafanua urefu wa baa. Ngazi ya juu ni 0 - 1 m, ya chini zaidi ya 4 - 5 m. Kama ilivyotajwa hapo awali, kitufe cha kubonyeza A kinaweka shinikizo la rejeleo, kitufe B kinaonyesha "kina cha jamaa" katika mita, iliyoonyeshwa kama nambari ya nambari. Kwa sasa, maadili hasi na mazuri yamewasilishwa kama bargraph kwenye tumbo la LED kwa njia ile ile. Jisikie huru kuongeza hati kwa mahitaji yako. Unaweza kubonyeza sauti kwa mistari fulani ili kuwasilisha maadili kwenye mfuatiliaji wa serial au mpangaji wa IDE ya Arduino. Ili kuiga kazi hiyo, unaweza kujenga kifaa nilichoelezea katika kufundisha hapo awali.
Sijaandika sehemu ya hati inayosoma sensa. Sina hakika juu ya chanzo, lakini napenda kuwashukuru waendeshaji. Marekebisho yoyote au vidokezo vya uboreshaji vinakaribishwa.
# pamoja
# pamoja na Adafruit_Microbit_Matrix microbit; #fafanua BME280_ADDRESS 0x76 bila saini ndefu ndani hum_raw, temp_raw, pres_raw; iliyosainiwa kwa muda mrefu t_fine; uint16_kumba_T1; int16_kumba_T2; int16_kumba_T3; uint16_t dig_P1; int16_kumba_P2; int16_kumba_P3; int16_kumba_P4; int16_kumba_P5; int16_kumba_P6; int16_kumba_P7; int16_kumba_P8; int16_kumba_P9; int8_kumba_H1; int16_kumba_H2; int8_kumba_H3; int16_kumba_H4; int16_kumba_H5; int8_kumba_H6; bonyeza mara mbili_norm = 1015; // thamani ya kuanzia kina mara mbili; // kina cha mahesabu // ------------------------------------------------ -------------------------------------------------- ---------------------- usanidi batili () {uint8_t osrs_t = 1; // Upungufu wa joto x 1 uint8_t osrs_p = 1; // Upungufu wa shinikizo x 1 uint8_t osrs_h = 1; // Upungufu wa unyevu x 1 uint8_t mode = 3; // Hali ya kawaida uint8_t t_sb = 5; // Kichujio cha 1000ms uint8_t = 0; // Chuja uint8_t spi3w_en = 0; // 3-waya SPI Lemaza uint8_t ctrl_meas_reg = (osrs_t << 5) | (osrs_p << 2) | mode; uint8_t config_reg = (t_sb << 5) | (chujio << 2) | spi3w_en; uint8_t ctrl_hum_reg = osrs_h; pinMode (PIN_BUTTON_A, INPUT); pinMode (PIN_BUTTON_B, INPUT); Serial. Kuanza (9600); // kuweka kasi ya bandari ya serial Serial.print ("Shinikizo [hPa]"); // kichwa cha pato la serial Wire.begin (); andikaReg (0xF2, ctrl_hum_reg); andikaReg (0xF4, ctrl_meas_reg); andikaReg (0xF5, config_reg); somaTrim (); // microbit. kuanza (); // microbit.print ("x"); kuchelewesha (1000); } // ----------------------------------------------- ----------------------------------------- {mara mbili temp_act = 0.0, bonyeza_act = 0.0, hum_act = 0.0; iliyosainiwa kwa muda mrefu int_cal; unsigned long int press_cal, hum_cal; int N; int M; bonyeza mara mbili_delta; // shinikizo la jamaa int kina_m; // kina kwa mita, sehemu kamili ni mara mbili kina_cm; // salio katika cm kusomaData (); // temp_cal = calibration_T (temp_raw); vyombo vya habari_cal = calibration_P (pres_raw); // hum_cal = calibration_H (hum_raw); // temp_act = (maradufu) temp_cal / 100.0; bonyeza_act = (mara mbili) bonyeza_cal / 100.0; // hum_act = (mara mbili) hum_cal / 1024.0; microbit safi (); // kuweka tena tumbo la LED // Kitufe A huweka thamani halisi kama rejeleo (P sifuri) // Kitufe B kuonyesha thamani ya sasa kama kina katika mita (iliyohesabiwa kutoka kwa tofauti ya shinikizo) ikiwa (! digitalRead (PIN_BUTTON_A)) {// weka shinikizo la kawaida la hewa kama sifuri vyombo vya habari_norm = bonyeza_tendo; // microbit.print ("P0:"); // microbit.print (bonyeza_norm, 0); // microbit.print ("hPa"); microbit.fillScreen (LED_ON); // blink mara moja kuthibitisha kuchelewa (100); } kingine ikiwa (! digitalRead (PIN_BUTTON_B)) {// onyesha kina katika mita microbit.print (kina, 2); microbit.print ("m"); // Serial.println (""); } mwingine {// mahesabu ya kina kutoka kwa tofauti ya shinikizo press_delta = (press_act - press_norm); // mahesabu ya kina cha shinikizo la jamaa = (bonyeza_delta / 100); // kina katika mita kina_m = int (abs (kina)); // kina mita mita kina_cm = (abs (kina) - kina_m); // salio / * // kutumika kwa maendeleo Serial.println (kina); Serial.println (kina_m); Serial.println (kina_cm); * / // Hatua za bargraph ikiwa (kina_cm> 0.8) {// weka urefu wa baa (N = 4); } mwingine ikiwa (kina_cm> 0.6) {(N = 3); } mwingine ikiwa (kina_cm> 0.4) {(N = 2); } mwingine ikiwa (kina_cm> 0.2) {(N = 1); } mwingine {(N = 0); }
ikiwa (kina_m == 4) {// kuweka kiwango == mita
(M = 4); } mwingine ikiwa (depth_m == 3) {(M = 3); } mwingine ikiwa (depth_m == 2) {(M = 2); } mwingine ikiwa (depth_m == 1) {(M = 1); } mwingine {(M = 0); // safu ya juu} / * // kutumika kwa madhumuni ya maendeleo Serial.print ("m:"); Serial.println (kina_m); Serial.print ("cm:"); Serial.println (kina_cm); Serial.print ("M:"); Serial.println (M); // kwa madhumuni ya maendeleo Serial.print ("N:"); Serial.println (N); // kwa kuchelewesha malengo ya maendeleo (500); * / // chora microbit ya bargraph.drawLine (0, M, N, M, LED_ON); }
// tuma thamani kwa bandari ya serial kwa mpangaji
Serial.print (bonyeza_delta); // chora mistari ya kiashiria na rekebisha safu iliyoonyeshwa ya Serial.print ("\ t"); Printa ya serial (0); Serial.print ("\ t"); Printa ya serial (-500); Serial.print ("\ t"); Serial.println (500); kuchelewesha (500); // Pima mara mbili kwa sekunde} // -------------------------------------- -------------------------------------------------- -------------------------------------------------- -------- // ifuatayo inahitajika kwa sensorer ya bmp / bme280, endelea kwani ni batili readTrim () {uint8_t data [32], i = 0; // Rekebisha 2014 / Wire.anza Usafirishaji (BME280_ADDRESS); Andika waya (0x88); Uwasilishaji wa waya (); Ombi la Wire. Toka (BME280_ADDRESS, 24); // Rekebisha 2014 / wakati (Wire haipatikani ()) {data = Wire.read (); i ++; } Waya.anza Usafirishaji (BME280_ADDRESS); // Ongeza 2014 / Wire.write (0xA1); // Ongeza 2014 / Wire.endUsambazaji (); // Ongeza 2014 / Wire.requestFrom (BME280_ADDRESS, 1); // Ongeza 2014 / data = Wire.read (); // Ongeza 2014 / i ++; // Ongeza 2014 / Wire.anza Usafirishaji (BME280_ADDRESS); Andika waya (0xE1); Uwasilishaji wa waya (); Ombi la Wire. Toka (BME280_ADDRESS, 7); // Rekebisha 2014 / wakati (Wire haipatikani ()) {data = Wire.read (); i ++; } dig_T1 = (data [1] << 8) | data [0]; dig_P1 = (data [7] << 8) | data [6]; dig_P2 = (data [9] << 8) | data [8]; dig_P3 = (data [11] << 8) | data [10]; dig_P4 = (data [13] << 8) | data [12]; dig_P5 = (data [15] << 8) | data [14]; dig_P6 = (data [17] << 8) | data [16]; dig_P7 = (data [19] << 8) | data [18]; dig_T2 = (data [3] << 8) | data [2]; dig_T3 = (data [5] << 8) | data [4]; dig_P8 = (data [21] << 8) | data [20]; dig_P9 = (data [23] << 8) | data [22]; dig_H1 = data [24]; dig_H2 = (data [26] << 8) | data [25]; dig_H3 = data [27]; dig_H4 = (data [28] << 4) | (0x0F & data [29]); dig_H5 = (data [30] 4) & 0x0F); // Rekebisha 2014 / dig_H6 = data [31]; // Rekebisha 2014 /} utupu wa kuandikaReg (uint8_t reg_adress, data uint8_t) {Wire.beginTransmission (BME280_ADDRESS); Andika waya (reg_adress); Andika waya (data); Uwasilishaji wa waya (); } batili kusomaData () {int i = 0; data ya uint32_t [8]; Uwasilishaji wa waya (BME280_ADDRESS); Andika waya (0xF7); Uwasilishaji wa waya (); Ombi la Wire. Toka (BME280_ADDRESS, 8); wakati (Wire.available ()) {data = Wire.read (); i ++; } pres_raw = (data [0] << 12) | (data [1] 4); temp_raw = (data [3] << 12) | (data [4] 4); hum_raw = (data [6] 3) - ((saini ndefu int) dig_T1 11; var2 = (((((adc_T >> 4)) ((saini ndefu int) dig_T1)) * ((adc_T >> 4) - ((saini ndefu int) dig_T1))) >> 12) * ((saini ndefu int) dig_T3)) >> 14; t_fine = var1 + var2; T = (t_fine * 5 + 128) >> 8; kurudi T; } usafirishaji wa muda mrefu uliowekwa saini_P (uliosainiwa muda mrefu int adc_P) {uliosainiwa muda mrefu int var1, var2; muda mrefu usiosainiwa int P; ((var1 >> 2) * (var1 >> 2)) >> 11) * ((iliyosainiwa muda mrefu int) dig_P6); ((saini ndefu int) dig_P4) 2) * (var1 >> 2)) >> 13)) >> 3) + ((((sign long int) dig_P2) * var1) >> 1)) >> 18; var1 = ((((32768 + var1)) * ((saini ndefu int) dig_P1)) >> 15); ikiwa (var1 == 0) {kurudi 0; } P = (((unsigned long int) (((sign long int) 1048576) -adc_P) - (var2 >> 12))) * 3125; ikiwa (P <0x80000000) {P = (P << 1) / ((unsigned long int) var1); } mwingine {P = (P / (unsigned long int) var1) * 2; } var1 = (((saini muda mrefu int) dig_P9) * ((saini ndefu int) (((P >> 3) * (P >> 3)) >> 13))) >> 12; var2 = (((iliyosainiwa muda mrefu int) (P >> 2)) * ((saini ndefu int) dig_P8)) >> 13; P = (unsigned long int) ((sign long int) P + ((var1 + var2 + dig_P7) >> 4)); kurudi P; } usafirishaji wa muda mrefu usiotiwa saini_H (uliosainiwa muda mrefu int adc_H) {uliosainiwa kwa muda mrefu int v_x1; v_x1 = (t_fine - ((iliyosainiwa kwa muda mrefu int) 76800)); v_x1 = (((((adc_H << 14) - (((saini ndefu int) dig_H4) 15) * ((((((v_x1 * ((sign long int) dig_H6)) >> 10) * (((v_x1 * ((iliyosainiwa muda mrefu int) dig_H3)) >> 11) + ((iliyosainiwa kwa muda mrefu int) 32768))) >> 10) + ((iliyosainiwa kwa muda mrefu int) 2097152)) * ((iliyosainiwa kwa muda mrefu) dig_H2) + 8192) >> 14)); v_x1 = (v_x1 419430400? 419430400: v_x1);
Hatua ya 6: Urahisishaji Mkubwa: Msimbo wa MakeCode / JavaScript
Mnamo Mei 2018, Pimoroni alitoa enviro: bit, ambayo inakuja na shinikizo la BME280 shinikizo / unyevu / joto, TCS3472 mwanga na sensa ya rangi na kipaza sauti cha MEMS. Kwa kuongeza wanatoa maktaba ya JavaScript kwa mhariri wa MakeCode na maktaba ya MicroPython kwa sensorer hizi.
Nimekuwa nikitumia maktaba yao ya MakeCode kukuza maandishi ya kifaa changu. Imeambatanishwa unapata faili za hex kulingana, ambazo unaweza kunakili moja kwa moja kwa micro: bit.
Hapo chini unapata nambari inayofanana ya JavaScript. Kujaribu kwenye dimbwi kulifanya kazi vizuri na toleo la mapema la hati, kwa hivyo nadhani watafanya kazi pia. Mbali na toleo la msingi, la bargraph, pia kuna toleo la msalaba (X) na toleo la L, linalokusudiwa kufanya usomaji kuwa rahisi, haswa chini ya hali nyepesi. Chagua unayopendelea.
basi Safuwima = 0
hebu Mita = 0 acha ibaki = 0 acha Mstari = 0 acha Delta = 0 acha Ref = 0 let Is = 0 Is = 1012 basic. showLeds (`# # # # #.. # #. #. #. # #… # # # # # # ``) Ref = 1180 ya msingi. ClearScreen () basic.forever (() => {basic.clearScreen () if (input.buttonIsPressed (Button. A)) {Ref = envirobit.get Pressure () msingi.onyeshaLeds (`#. #. #. #. #. # # # # #. #. #. #. #. #`) msingi.pause (1000)} mwingine ikiwa (kifungo. {basic.showString ("" + Row + "." + baki + "m") msingi.pumzika (200) basic.clearScreen ()} mwingine {Is = envirobit.getPressure () Delta = Is - Ref Meter = Math.abs (Delta) ikiwa (Mita> = 400) {Mstari = 4} mwingine ikiwa (Mita> = 300) {Mstari = 3} mwingine ikiwa (Mita> = 200) {Mstari = 2} mwingine ikiwa (Mita> = 100 {Row = 1} kingine {Row = 0} baki = Mita - Safu mlalo * 100 ikiwa (baki> = 80) {Safuwima = 4} mwingine ikiwa (bakia> = 60) {Safuwima = 3} mwingine ikiwa (bakia> = 40) {Column = 2} else if (kubaki> = 20) {Column = 1} else {Column = 0} for (let ColA = 0; ColA <= Column; ColA ++) {led.plot (C olA, Mstari)} msingi.pumzika (500)}}})
Hatua ya 7: Toleo la Enviro: bit
Wakati huo huo nilipokea enviro: kidogo (20 GBP) na nguvu: kidogo (6 GBP), zote kutoka Pimoroni.
Kama ilivyotajwa hapo awali, enviro: kidogo huja na shinikizo la BME280, unyevu na sensorer ya joto, lakini pia sensa ya taa na rangi (angalia programu hapa) na kipaza sauti cha MEMS.
Nguvu: kidogo ni suluhisho nzuri ya kuwezesha micro: kidogo na inakuja na kuzima / kuzima.
Jambo kubwa ni kwamba zote ni bonyeza tu na utumie, hakuna kuuziana, nyaya, ubao wa mkate. Ongeza enviro: kidogo kwa ndogo: kidogo, pakia nambari kwa ndogo: kidogo, tumia.
Katika kesi hii nilitumia micro, nguvu na enviro: kidogo, nikaiweka kwenye begi la Ziploc, nikaiweka kwenye mfuko wazi wa plastiki wenye maji kwa simu za rununu, tayari. Suluhisho la haraka sana na safi. Tazama picha. Kubadili ni kubwa ya kutosha kuitumia kupitia safu za ulinzi.
Imejaribiwa katika maji, ilikuwa inafanya kazi vizuri. Kwa kina cha karibu 1.8 m thamani iliyopimwa ilikuwa karibu 1.7 m. Sio mbaya sana kwa suluhisho la haraka na rahisi, lakini mbali na kuwa mkamilifu. Inachukua muda kuzoea, kwa hivyo unaweza kuhitaji kukaa kwa kina fulani kwa sekunde 10-15.
Hatua ya 8: Toleo la Uchunguzi wa Cable na Sensor
Hili kwa kweli lilikuwa wazo la kwanza kuwa na mita ndogo: kina kidogo, la mwisho kuwa la kujenga.
Hapa niliuza sensorer ya BMP280 kwa 5m ya kebo ya waya-4 na kuweka jumper ya kike upande mwingine. Ili kulinda sensorer kutoka kwa maji, kebo hiyo ilitekelezwa kupitia kork ya divai iliyotumiwa. Mwisho wa cork ulifungwa na gundi ya moto. Kabla nilikuwa nimekata notches mbili ndani ya cork, zote zikizunguka. Kisha nikaingiza sensorer ndani ya mpira wa sifongo, nikaweka puto kuzunguka na kuweka mwisho wa puto kwenye kork (notch ya chini). kisha nikaweka vipande 3 40 g vya uzito wa risasi kwenye puto ya pili, nikaifunga ya kwanza, uzito uliowekwa upande wa nje, na kurekebisha mwisho wa puto kwenye notch ya pili. Hewa iliondolewa kwenye puto ya pili, kisha kila kitu kilirekebishwa na mkanda wa bomba. Tazama picha, zingine za kina zinaweza kufuata.
The jumpers ziliunganishwa na micro: bit kupitia kontakt ya makali, kifaa kiliwashwa na shinikizo la kumbukumbu liliwekwa. Kisha kichwa cha sensorer kilitolewa polepole chini ya dimbwi (mnara wa kuruka 10 m, karibu kina cha m 4.5).
Matokeo:
Kwa mshangao wangu, ilifanya kazi hata na kebo hii ndefu. Kwa upande mwingine, lakini haishangazi, kosa la kipimo lilionekana kuwa kubwa kwa shinikizo kubwa, na kina cha wastani wa m 4 kiliripotiwa kama karibu 3 m.
Matumizi yanayowezekana:
Pamoja na masahihisho kadhaa ya makosa, kifaa kinaweza kutumiwa kupima kina hadi m 4.
Kwa kushirikiana na Arduino au Raspberry Pi, hii inaweza kutumika kupima na kudhibiti sehemu ya kujaza ya dimbwi au tanki la maji, e, g. kutoa onyo ikiwa viwango vya maji huenda juu au chini ya vizingiti fulani.
Mkimbiaji katika Shindano la Usawa wa Nje
Ilipendekeza:
Jinsi ya Kutengeneza Mazungumzo ya Siri Kutumia Kidogo Kidogo: Hatua 9
Jinsi ya Kutengeneza Mawasiliano ya Siri Kutumia Kidogo Kidogo: Nilivutiwa na 'mashine zingine' wewe bomba chanal. Hapa nilichopata kutoka -https: //youtu.be/mqlMo4LbfKQHaya hapa niliongeza kwenye onyesho langu la kibinafsi - LCD kwa benki zingine ndogo ndogo za nguvu- Nambari ya ziada kwake
Jinsi ya kuendesha Servo Motors Kutumia Moto: kidogo na Micro: kidogo: Hatua 7 (na Picha)
Jinsi ya kuendesha Servo Motors Kutumia Moto: kidogo na Micro: kidogo: Njia moja ya kupanua utendaji wa ndogo: kidogo ni kutumia bodi inayoitwa moto: kidogo na SparkFun Electronics (takriban $ 15-20). Inaonekana ngumu na ina huduma nyingi, lakini sio ngumu kuendesha motors kutoka kwake. Moto: kidogo hukuruhusu
Taa ya Kugusa ya Chapeo ya Kupiga Mbizi: Hatua 5
Taa ya Kugusa ya Chapeo ya Kupigia Mbizi: Katika hii inayoweza kufundishwa Utahitaji kofia ya Kuogelea au pete inayofanana ya Neopixel ya LED (nilitumia pete yenye LED 38) Wemos ESP32 bodi (au sawa) printa ya 3D
Vipimo vya Mwanga na Rangi na Pimoroni Enviro: kidogo kwa Micro: kidogo: 5 Hatua
Vipimo vya Nuru na Rangi Pamoja na Pimoroni Enviro: kidogo kwa Micro: kidogo: Nilikuwa nikifanya kazi kwa vifaa vingine ambavyo vinaruhusu vipimo vya mwangaza na rangi hapo awali na unaweza kupata mengi juu ya nadharia nyuma ya vipimo vile mafundisho hapa na hapa. ilitoa hivi karibuni enviro: bit, nyongeza ya m
Tengeneza Micro Micro: kidogo Hovercraft Pamoja: Hatua 6 (na Picha)
Tengeneza Micro Micro: kidogo Hovercraft Pamoja: Mara nyingi magari tuliyoyatengeneza yanaweza kukimbia tu juu ya uso wa ardhi. Leo tutaunda hovercraft, ambayo inaendesha ndani ya maji na chini, au hata hewani. Tunatumia motors mbili kupiga hewa chini kusaidia hovercraf