Katika baadhi ya miradi yako utakuwa umehitaji kupima umbali. Kweli, unapaswa kujua kwamba VL53L0X ni kifaa kinachoruhusu kuzipima kwa usahihi wa hali ya juu. Kwa kuongezea, saizi yake ndogo na bei ya chini hufanya iwe bora kwa miradi yako ya DIY, haswa kuunganishwa na Arduino.
Kuna vifaa vingi ambavyo vinaweza kupima umbali, zingine ni mita za umbali kulingana na ultrasound ambayo hutoa sauti na wakati wa kugongana na kitu huruhusu kujua kwa usahihi wa kutosha umbali uliopo. Lakini ikiwa unataka usahihi wa hali ya juu, kwa hili unahitaji mita ya umbali wa macho. Aina hii ya vifaa vya kupimia ni msingi wa laser, kama ilivyo kwa VL53L0X.
ToF ni nini?
Wakati wa Ndege au ToF (Muda wa Ndege) kamera ni mbinu inayotumika kupima umbali. Inategemea macho, kupima wakati uliopita kati ya chafu ya taa na mapokezi yake. Wanaweza kuwa CCD, sensorer za CMOS, na kunde zinaweza kuwa infrared, laser, nk. Mfumo utasawazishwa ili kuanza kipimo cha wakati tu wakati mapigo yanasababishwa na simamisha kaunta wakati wanapokea bounce kutoka kwa sensa.
Kwa njia hiyo umbali unaweza kuhesabiwa kwa usahihi kabisa. Inachukua tu mzunguko wa mantiki wa ziada uliounganishwa kwenye chip ili kufanya mahesabu kutoka wakati boriti inachomwa hadi inapokelewa na kwa hivyo kuamua umbali. Kanuni hiyo ni ya moja kwa moja.
Aina hii ya kifaa hutumiwa katika robotiki kuruhusu roboti au ndege isiyokuwa na rubani kuzuia vizuizi, kujua ni umbali gani kutoka kwa shabaha, kugundua mwendo au ukaribu, kwa sensorer za gari zinazotumiwa kwa matumizi tofauti, kutekeleza mita ya elektroniki, kama actuator ili Arduino ifanye kitu wakati hugundua ukaribu fulani wa kitu, n.k.
VL53L0X na data ni nini
El VL53L0X hutumia kanuni hii kupima umbali na infrared ya laser. kizazi cha mwisho. Pamoja na processor, kama Arduino, inaweza kuwa zana yenye nguvu ya kupima. Hasa, chip inaweza kukamata umbali kati ya 50mm na 2000mm, ambayo ni, kati ya sentimita 5 na mita 2.
Ili kupima umbali wa karibu labda unahitaji lahaja ya chip hii inayoitwa VL6180X ambayo hukuruhusu kupima anuwai ya kati ya 5 na 200 mm, ambayo ni, kati ya sentimita nusu na sentimita 20. Ikiwa unataka kupata kifaa kama hicho lakini kulingana na ultrasound kwa sababu yoyote ya kiufundi, basi unapaswa kuangalia HC-SR04, moduli nyingine ya bei rahisi inayojulikana na watunga.
El Chip ya VL53L0X imeundwa ili fanya kazi hata wakati taa iliyoko juu iko juu kabisa. Kumbuka kwamba wakati wa kufanya kazi kwa macho, "uchafuzi" mdogo wa mazingira, ndivyo itakavyokuwa ngumu zaidi kukamata bounce ya ishara. Lakini katika kesi hii haitoi shida nyingi. Kwa kuongezea, mfumo wa fidia ambayo inaunganisha inaruhusu kupima hata ikiwa unatumia nyuma ya glasi ya kinga.
Hiyo hufanya iwe moja ya sensorer bora za umbali utapata sokoni. Kwa usahihi wa juu zaidi kuliko sensorer kulingana na ultrasound au infrared (IR). Sababu ya kuwa sahihi ni kwamba laser haitaathiriwa na mwangwi au kutafakari kutoka kwa vitu kama katika kesi zingine.
Hivi sasa unaweza kuipata ikiwa imejumuishwa katika nyumbu na zingine za ziada kwa karibu € 16 au kwa sahani rahisi za zaidi ya € 1 au € 3 katika hali zingine. Tayari unajua kuwa utaipata katika duka kama eBay, AliExpress, Amazon, nk. Watengenezaji wa vifaa hivi ni anuwai, kwa hivyo ikiwa unahitaji kujua maelezo ya mfano ambao umenunua, ni bora kuangalia data ya mtengenezaji ambayo umechagua. Kwa mfano:
El VL53L0X Inayo ndani ya chip mtoaji wa mapigo ya laser na sensor kukamata boriti inayorudi. Katika kesi hii, mtoaji ni laser ya urefu wa 940nm ya aina ya VCSEL (Vertical Cavity Surface-Emitting Laser). Kwa habari ya sensorer ya kukamata, ni SPAD (Vipodozi vya Photon Avalanche moja). Pia inajumuisha umeme wa ndani uitwao FlightSense ™ ambao utahesabu umbali.
El pembe ya kipimo au FOV (Shamba la Mtazamo) ni 25º katika kesi hii. Hiyo inatafsiriwa kwa eneo la kipimo cha kipenyo cha 0,44m kwa umbali wa 1m. Ingawa kipimo cha kipimo kitategemea hali zinazozunguka. Ikiwa imefanywa ndani ya nyumba ni ya juu kidogo kuliko ikiwa inafanywa nje. Itategemea pia tafakari ya kitu unachoelekeza:
Kutafakari kwa lengo | Masharti | Mambo ya Ndani | Nje |
---|---|---|---|
Lengo nyeupe | Kawaida | 200cm | 80cm |
Uigaji | 120cm | 60cm | |
Lengo la kijivu | Kawaida | 80cm | 50cm |
Kima cha chini | 70cm | 40cm |
Kwa kuongeza, VL53L0X ina kadhaa njia za uendeshaji ambayo inaweza kutofautisha matokeo. Njia hizo zimefupishwa katika jedwali lifuatalo:
Modo | Majira | Fikia | Precision |
---|---|---|---|
Chaguo-msingi | 30ms | 1.2m | Tazama jedwali hapa chini |
Usahihi wa hali ya juu | 200ms | 1.2m | + / - 3% |
Masafa marefu | 33ms | 2m | Tazama jedwali hapa chini |
Kasi kubwa | 20ms | 1.2m | + / - 5% |
Kulingana na njia hizi, tuna kadhaa usahihi wa kiwango na masafa marefu uliyonayo katika jedwali hili:
Mambo ya Ndani | Nje | |||||
---|---|---|---|---|---|---|
Kutafakari kwa lengo | Umbali | 33ms | 66ms | Umbali | 33ms | 66ms |
Lengo nyeupe | 120cm | 4% | 3% | 60cm | 7% | 6% |
Lengo la kijivu | 70cm | 7% | 6% | 40cm | 12% | 9% |
Pinout na unganisho
Kwa haya yote kufanya kazi vizuri unahitaji kiolesura na ulimwengu wa nje. Na hiyo inafanikiwa kupitia pini au unganisho. Pinout ya VL53L0X ni rahisi sana, ina pini 6 tu. Kwa ujumuishaji wake na Arduino, mawasiliano yanaweza kufanywa kupitia I2C.
Ili kuilisha, unaweza unganisha pini Kwa hivyo:
- VCC hadi 5v kutoka Arduino
- GND kwa GND ya Arduino
- SCL kwa pini ya Analog ya Arduino. Kwa mfano A5
- SDA kwa pini nyingine ya analog. Kwa mfano A4
- Pini za GPI01 na XSHUT sio lazima zitumike kwa sasa.
Ushirikiano na Arduino
Kama kwa moduli zingine nyingi, kwa VL53L0X pia una maktaba (kwa mfano ile ya Matundaya nambari inayopatikana ambayo unaweza kutumia kufanya kazi na kazi zingine unapoandika nambari ya chanzo ya kushughulikia mradi wako katika Arduino IDE. Ikiwa ni mara yako ya kwanza na Arduino, ninapendekeza mwongozo wetu wa programu.
Mfano wa Nambari rahisi kwako kuchukua vipimo na kuonyesha thamani ya kipimo kupitia bandari ya serial ili uweze kuiona kutoka skrini yako ya PC wakati una bodi ya Arduino iliyounganishwa ni:
#include "Adafruit_VL53L0X.h" Adafruit_VL53L0X lox = Adafruit_VL53L0X(); void setup() { Serial.begin(9600); // Iniciar sensor Serial.println("VL53L0X test"); if (!lox.begin()) { Serial.println(F("Error al iniciar VL53L0X")); while(1); } } void loop() { VL53L0X_RangingMeasurementData_t measure; Serial.print("Leyendo sensor... "); lox.rangingTest(&measure, false); // si se pasa true como parametro, muestra por puerto serie datos de debug if (measure.RangeStatus != 4) { Serial.print("Distancia (mm): "); Serial.println(measure.RangeMilliMeter); } else { Serial.println(" Fuera de rango "); } delay(100); }
Katika maktaba ya Adafruit mwenyewe una mifano zaidi ya matumizi ikiwa unahitaji ..
Kuwa wa kwanza kutoa maoni