- VL6180X టైమ్-ఆఫ్-ఫ్లైట్ (ToF) రేంజ్ ఫైండర్ సెన్సార్
- సర్క్యూట్ రేఖాచిత్రం
- VL6180 ToF సెన్సార్ కోసం అవసరమైన లైబ్రరీలను కలుపుతోంది
- ప్రోగ్రామింగ్ మరియు వర్కింగ్ వివరణ
TOF లేదా విమాన సమయం అల్ట్రాసోనిక్ సెన్సార్ వంటి వివిధ దూర కొలత సెన్సార్ ద్వారా సుదూర వస్తువుల దూరాన్ని కొలవడానికి సాధారణంగా ఉపయోగించే పద్ధతి. ఒక కణం, తరంగం లేదా ఒక మాధ్యమం ద్వారా దూరం ప్రయాణించడానికి తీసుకున్న సమయం యొక్క కొలతను టైమ్-ఆఫ్-ఫ్లైట్ (TOF) అంటారు. ఈ కొలత వేగం లేదా మార్గం పొడవును లెక్కించడానికి ఉపయోగించవచ్చు. కూర్పు లేదా ప్రవాహం రేటు వంటి మాధ్యమం యొక్క కణ లేదా లక్షణాల గురించి తెలుసుకోవడానికి కూడా దీనిని ఉపయోగించవచ్చు. ప్రయాణ వస్తువును ప్రత్యక్షంగా లేదా పరోక్షంగా కనుగొనవచ్చు.
అల్ట్రాసోనిక్ దూర కొలత పరికరాలు విమాన సమయం సూత్రాన్ని ఉపయోగించే ప్రారంభ పరికరాలలో ఒకటి. ఈ పరికరాలు అల్ట్రాసోనిక్ పల్స్ను విడుదల చేస్తాయి మరియు ఉద్గారిణికి తిరిగి బౌన్స్ అవ్వడానికి వేవ్ తీసుకున్న సమయం ఆధారంగా ఘన పదార్థానికి దూరాన్ని కొలుస్తాయి. దూరాన్ని కొలవడానికి మేము మా అనువర్తనంలో చాలావరకు అల్ట్రాసోనిక్ సెన్సార్ను ఉపయోగించాము:
- ఆర్డునో & అల్ట్రాసోనిక్ సెన్సార్ ఆధారిత దూర కొలత
- రాస్ప్బెర్రీ పై మరియు HCSR04 అల్ట్రాసోనిక్ సెన్సార్ ఉపయోగించి దూరాన్ని కొలవండి
- రెండు అల్ట్రాసోనిక్ సెన్సార్ల మధ్య దూరాన్ని ఎలా కొలవాలి
ఎలక్ట్రాన్ కదలికను అంచనా వేయడానికి విమాన పద్ధతి యొక్క సమయాన్ని కూడా ఉపయోగించవచ్చు. వాస్తవానికి, ఇది తక్కువ-వాహక సన్నని చలన చిత్రాల కొలత కోసం రూపొందించబడింది, తరువాత ఇది సాధారణ సెమీకండక్టర్ల కోసం సర్దుబాటు చేయబడింది. ఈ సాంకేతికత సేంద్రీయ క్షేత్ర ప్రభావ ట్రాన్సిస్టర్లతో పాటు లోహ-విద్యుద్వాహక-లోహ నిర్మాణాలకు ఉపయోగించబడుతుంది. లేజర్ లేదా వోల్టేజ్ పల్స్ యొక్క అనువర్తనం ద్వారా, అదనపు ఛార్జీలు ఉత్పత్తి చేయబడతాయి.
TOF సూత్రం ఒక సెన్సార్ మరియు ఒక వస్తువు మధ్య దూరం కొలిచే కోసం ఉపయోగిస్తారు. ఒక వస్తువు నుండి ప్రతిబింబించిన తర్వాత సెన్సార్కు తిరిగి రావడానికి సిగ్నల్ తీసుకున్న సమయం కొలుస్తారు మరియు దూరాన్ని లెక్కించడానికి ఇది ఉపయోగించబడుతుంది. TOF సూత్రంతో ధ్వని, కాంతి వంటి వివిధ రకాల సిగ్నల్స్ (క్యారియర్లు) ఉపయోగించవచ్చు. పరిధిని కనుగొనడానికి TOF ఉపయోగించినప్పుడు ధ్వని కంటే కాంతిని విడుదల చేసేటప్పుడు ఇది చాలా శక్తివంతమైనది. అల్ట్రాసౌండ్తో పోలిస్తే ఇది వేగంగా చదవడం, అధిక ఖచ్చితత్వం మరియు ఎక్కువ పరిధిని అందిస్తుంది, దాని తక్కువ బరువు, చిన్న పరిమాణం మరియు తక్కువ విద్యుత్ వినియోగ లక్షణాలను కొనసాగిస్తుంది.
ఇక్కడ ఈ ట్యుటోరియల్లో సెన్సార్ మరియు ఆబ్జెక్ట్ మధ్య దూరాన్ని లెక్కించడానికి ఆర్డునోతో VL6180X TOF రేంజ్ ఫైండర్ సెన్సార్ని ఉపయోగిస్తాము. ఈ సెన్సార్ LUX లోని లైట్ ఇంటెన్సిటీ విలువను కూడా చెబుతుంది.
VL6180X టైమ్-ఆఫ్-ఫ్లైట్ (ToF) రేంజ్ ఫైండర్ సెన్సార్
VL6180 ఇతర దూర సెన్సార్ల నుండి భిన్నంగా ఉంటుంది, ఎందుకంటే ఇది ఏదైనా ఉపరితలం నుండి తిరిగి ప్రతిబింబించడానికి కాంతి తీసుకున్న సమయాన్ని కొలవడానికి ఖచ్చితమైన గడియారాన్ని ఉపయోగిస్తుంది. ఇది VL6180 ఇతర సెన్సార్ల కంటే ప్రయోజనాన్ని ఇస్తుంది ఎందుకంటే ఇది మరింత ఖచ్చితమైనది మరియు శబ్దం నుండి రోగనిరోధక శక్తిని కలిగి ఉంటుంది.
VL6180 అనేది 3-ఇన్ -1 ప్యాకేజీ, దీనిలో IR ఉద్గారిణి, యాంబియంట్ లైట్ సెన్సార్ మరియు శ్రేణి సెన్సార్ ఉన్నాయి. ఇది I 2 C ఇంటర్ఫేస్ ద్వారా కమ్యూనికేట్ చేస్తుంది. దీనికి ఆన్బోర్డ్ 2.8 వి రెగ్యులేటర్ ఉంది. కాబట్టి మనం 2.8V కన్నా ఎక్కువ వోల్టేజ్ను ప్లగ్ చేసినా అది బోర్డుకి నష్టం లేకుండా స్వయంచాలకంగా క్రిందికి మారుతుంది. ఇది 25 సెం.మీ వరకు ఉంటుంది. ఇందులో రెండు ప్రోగ్రామబుల్ GPIO లు అందించబడ్డాయి.
సర్క్యూట్ రేఖాచిత్రం
ఇక్కడ నోకియా 5110 ఎల్సిడిని కాంతి స్థాయి మరియు దూరాన్ని ప్రదర్శించడానికి ఉపయోగిస్తారు. నోకియా 5110 ఎల్సిడి 3.3 వి వద్ద పనిచేస్తుంది కాబట్టి దీనిని ఆర్డునో నానో డిజిటల్ పిన్లతో నేరుగా కనెక్ట్ చేయలేము. కాబట్టి 5 వి డిజిటల్ పిన్ల నుండి 3.3 వి లైన్లను రక్షించడానికి డేటా సిగ్నల్లతో సిరీస్లో 10 కె రెసిస్టర్లను జోడించండి. Arduino తో నోకియా 5110 LCD ని ఉపయోగించడం గురించి మరింత తెలుసుకోండి .
VL6180 సెన్సార్ నేరుగా Arduino అనుసంధానించవచ్చు. VL6180 మరియు Arduino మధ్య కమ్యూనికేషన్ I2C. వాస్తవానికి I2C కమ్యూనికేషన్ ప్రోటోకాల్ SPI మరియు UART యొక్క ఉత్తమ లక్షణాలను మిళితం చేస్తుంది. ఇక్కడ మనం బహుళ బానిసలను ఒకే మాస్టర్కు కనెక్ట్ చేయవచ్చు మరియు సింగిల్ లేదా బహుళ బానిసలను నియంత్రించే బహుళ మాస్టర్లను కలిగి ఉండవచ్చు. UART కమ్యూనికేషన్ మాదిరిగా, I2C కమ్యూనికేషన్ SDA (సీరియల్ డేటా) మరియు SCL (సీరియల్ క్లాక్), డేటా లైన్ మరియు క్లాక్ లైన్ కోసం రెండు వైర్లను ఉపయోగిస్తుంది.
VL6180 ToF రేంజ్ ఫైండర్ సెన్సార్ను Arduino తో కనెక్ట్ చేయడానికి సర్క్యూట్ రేఖాచిత్రం క్రింద చూపబడింది:
- ఎల్సిడి యొక్క ఆర్ఎస్టి పిన్ను 10 కె రెసిస్టర్ ద్వారా ఆర్డునో యొక్క పిన్ 6 కి కనెక్ట్ చేయండి.
- ఎల్సిడి యొక్క సిఇ పిన్ను 10 కె రెసిస్టర్ ద్వారా ఆర్డునో యొక్క పిన్ 7 కి కనెక్ట్ చేయండి.
- ఎల్సిడి యొక్క డిసి పిన్ను 10 కె రెసిస్టర్ ద్వారా ఆర్డునో యొక్క పిన్ 5 కి కనెక్ట్ చేయండి.
- ఎల్సిడి యొక్క డిన్ పిన్ను 10 కె రెసిస్టర్ ద్వారా ఆర్డునో యొక్క పిన్ 4 కి కనెక్ట్ చేయండి.
- ఎల్సిడి యొక్క సిఎల్కె పిన్ను 10 కె రెసిస్టర్ ద్వారా ఆర్డునో యొక్క పిన్ 3 కి కనెక్ట్ చేయండి.
- ఎల్సిడి యొక్క విసిసి పిన్ను ఆర్డునో యొక్క 3.3 వి పిన్తో కనెక్ట్ చేయండి.
- LCD యొక్క GND పిన్ను Arduino యొక్క GND కి కనెక్ట్ చేయండి.
- VL6180 యొక్క SCL పిన్ను Arduino యొక్క A5 పిన్తో కనెక్ట్ చేయండి
- VL6180 యొక్క SDA పిన్ను Arduino యొక్క A4 పిన్తో కనెక్ట్ చేయండి
- VL6180 యొక్క VCC పిన్ను Arduino యొక్క 5V పిన్తో కనెక్ట్ చేయండి
- VL6180 యొక్క GND పిన్ను Arduino యొక్క GND పిన్తో కనెక్ట్ చేయండి
VL6180 ToF సెన్సార్ కోసం అవసరమైన లైబ్రరీలను కలుపుతోంది
ఆర్డునోతో VL6180 సెన్సార్ను ఇంటర్ఫేసింగ్లో మూడు లైబ్రరీలు ఉపయోగించబడతాయి.
1. అడాఫ్రూట్_పిసిడి 8544
Adafruit_PCD8544 మోనోక్రోమ్ నోకియా 5110 LCD డిస్ప్లేల కోసం ఒక లైబ్రరీ. ఈ డిస్ప్లేలు కమ్యూనికేషన్ కోసం SPI ని ఉపయోగిస్తాయి. ఈ ఎల్సిడిని ఇంటర్ఫేస్ చేయడానికి నాలుగు లేదా ఐదు పిన్లు అవసరం. ఈ లైబ్రరీని డౌన్లోడ్ చేయడానికి లింక్ క్రింద ఇవ్వబడింది:
github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-library/archive/master.zip
2. అడాఫ్రూట్_జిఎఫ్ఎక్స్
ఆర్డునో కోసం అడాఫ్రూట్_జిఎఫ్ఎక్స్ లైబ్రరీ అనేది ఎల్సిడి డిస్ప్లేల యొక్క ప్రధాన గ్రాఫిక్స్ లైబ్రరీ, ఇది సాధారణ వాక్యనిర్మాణం మరియు గ్రాఫిక్స్ ఆదిమ సమితిని అందిస్తుంది (పాయింట్లు, పంక్తులు, వృత్తాలు మొదలైనవి). మేము ఉపయోగించే ప్రతి ప్రదర్శన పరికరానికి (దిగువ స్థాయి విధులను నిర్వహించడానికి) హార్డ్వేర్ నిర్దిష్ట లైబ్రరీతో ఇది జత చేయాలి. ఈ లైబ్రరీని డౌన్లోడ్ చేయడానికి లింక్ క్రింద ఇవ్వబడింది:
github.com/adafruit/Adafruit-GFX- లైబ్రరీ
3. స్పార్క్ఫన్ VL6180
స్పార్క్ఫన్_విఎల్ 6180 అనేది విఎల్ 6180 సెన్సార్ యొక్క ప్రాథమిక కార్యాచరణ కలిగిన ఆర్డునో లైబ్రరీ. VL6180 లో IR ఉద్గారిణి, శ్రేణి సెన్సార్ మరియు I2C ఇంటర్ఫేస్ ద్వారా కమ్యూనికేట్ చేసే యాంబియంట్ లైట్ సెన్సార్ ఉంటాయి. ఈ లైబ్రరీ సెన్సార్ నుండి దూరం మరియు కాంతి ఫలితాలను చదవడానికి మిమ్మల్ని అనుమతిస్తుంది మరియు సీరియల్ కనెక్షన్ ద్వారా డేటాను అవుట్పుట్ చేస్తుంది. ఈ లైబ్రరీని డౌన్లోడ్ చేయడానికి లింక్ క్రింద ఇవ్వబడింది:
downloads.arduino.cc/libraries/github.com/sparkfun/SparkFun_VL6180_Sensor-1.1.0.zip
స్కెచ్లోకి వెళ్లడం ద్వారా అన్ని లైబ్రరీలను ఒక్కొక్కటిగా జోడించండి >> లైబ్రరీని చేర్చండి >> Arduino IDE లో .ZIP లైబ్రరీని జోడించండి . పై లింక్ల నుండి మీరు డౌన్లోడ్ చేసిన లైబ్రరీని అప్లోడ్ చేయండి.
కొన్నిసార్లు మీరు వైర్ మరియు SPI లైబ్రరీలను జోడించాల్సిన అవసరం లేదు, కానీ మీకు లోపం వస్తే దయచేసి డౌన్లోడ్ చేసి వాటిని మీ Arduino IDE కి జోడించండి.
github.com/PaulStoffregen/SPI
github.com/PaulStoffregen/Wire
ప్రోగ్రామింగ్ మరియు వర్కింగ్ వివరణ
ఈ ట్యుటోరియల్ చివరలో వర్కింగ్ వీడియోతో పూర్తి కోడ్ ఇవ్వబడింది, ఇక్కడ మేము ప్రాజెక్ట్ యొక్క పనిని అర్థం చేసుకోవడానికి పూర్తి ప్రోగ్రామ్ను వివరిస్తున్నాము.
ఈ ప్రోగ్రామ్లో ఎక్కువ భాగం మేము జోడించిన లైబ్రరీలచే నిర్వహించబడతాయి కాబట్టి మీరు దాని గురించి ఆందోళన చెందాల్సిన అవసరం లేదు.
లో సెటప్ భాగంగా లు 115200 గా బాడ్ రేటు సెట్ మరియు I2C కోసం వైర్ లైబ్రరీ ప్రారంభించడం. అప్పుడు VL6180 సెన్సార్ సరిగ్గా పనిచేస్తుందో లేదో తనిఖీ చేయండి, అది పని చేయకపోతే దోష సందేశాన్ని చూపించు.
కింది భాగంలో మేము డిస్ప్లేని సెటప్ చేస్తున్నాము, మీరు కోరుకున్న విలువకు విరుద్ధంగా మీరు ఇక్కడ మార్చవచ్చు
void setup () { Serial.begin (115200); // 115200bps Wire.begin () వద్ద సీరియల్ ప్రారంభించండి ; // ప్రారంభ I2C లైబ్రరీ ఆలస్యం (100); // ఆలస్యం. if (sens.VL6180xInit ()! = 0) { Serial.println ("ప్రారంభించడంలో విఫలమైంది"); // పరికరాన్ని ప్రారంభించండి మరియు లోపాల కోసం తనిఖీ చేయండి }; sens.VL6180xDefautSettings (); // ప్రారంభించడానికి డిఫాల్ట్ సెట్టింగులను లోడ్ చేయండి. ఆలస్యం (1000); // ఆలస్యం 1 సె display.begin (); // init పూర్తయింది // ప్రదర్శనను స్వీకరించడానికి మీరు దీనికి విరుద్ధంగా మార్చవచ్చు // ఉత్తమ వీక్షణ కోసం! display.setContrast (50); display.display (); // షో స్ప్లాష్స్క్రీన్ display.clearDisplay (); }
లో గర్జన లూప్ భాగంగా సెటప్ సూచనలు LCD తెరపై విలువలు ప్రదర్శించడానికి. ఇక్కడ మనం రెండు విలువలను ప్రదర్శిస్తున్నాము, ఒకటి “లక్స్లో పరిసర కాంతి స్థాయి” (ఒక లక్స్ వాస్తవానికి చదరపు మీటర్ ప్రాంతానికి ఒక ల్యూమన్), మరియు రెండవది “దూరం mm లో కొలుస్తారు”. LCD స్క్రీన్పై విభిన్న విలువలను ప్రదర్శించడానికి “display.setCursor (0,0);” ని ఉపయోగించి LCD స్క్రీన్లో ప్రదర్శించాల్సిన ప్రతి టెక్స్ట్ యొక్క స్థానాన్ని నిర్వచించండి.
శూన్య లూప్ () { display.clearDisplay (); // పరిసర కాంతి స్థాయిని పొందండి మరియు LUX Serial.print ("యాంబియంట్ లైట్ లెవల్ (లక్స్) =") లో రిపోర్ట్ చేయండి ; సీరియల్.ప్రింట్ల్న్ (సెన్సార్.జెట్అంబియంట్లైట్ (GAIN_1)); display.setTextSize (1); display.setTextColor (BLACK); display.setCursor (0,0); display.println ("లైట్ లెవల్"); display.setCursor (0,12); display.println (sens.getAmbientLight (GAIN_1)); // దూరం పొందండి మరియు mm సీరియల్.ప్రింట్ ("దూరం కొలుస్తారు (mm) ="); సీరియల్.ప్రింట్ల్న్ (సెన్సార్.జెట్ డిస్టాన్స్ ()); display.setTextSize (1); display.setTextColor (BLACK); display.setCursor (0, 24); display.println ("దూరం (mm) ="); display.setCursor (0, 36); b = sens.getDistance (); display.println (బి); display.display (); ఆలస్యం (500); }
ప్రోగ్రామ్ను అప్లోడ్ చేసిన తరువాత, సీరియల్ మానిటర్ను తెరవండి మరియు అది క్రింద చూపిన విధంగా అవుట్పుట్ను చూపించాలి.
VL6180 TOF శ్రేణి ఫైండర్లను స్మార్ట్ఫోన్లు, పోర్టబుల్ టచ్స్క్రీన్ పరికరాలు, టాబ్లెట్, ల్యాప్టాప్, గేమింగ్ పరికరాలు మరియు దేశీయ ఉపకరణాలు / పారిశ్రామిక పరికరాల్లో ఉపయోగిస్తారు.
ఇక్కడ మేము లక్స్లో యాంబియంట్ లైట్ లెవెల్ మరియు mm లో దూరం ప్రదర్శిస్తున్నాము.
పూర్తి ప్రోగ్రామ్ మరియు ప్రదర్శన వీడియోను క్రింద కనుగొనండి. BH1750 యాంబియంట్ లైట్ సెన్సార్ ఉపయోగించి అల్ట్రాసోనిక్ సెన్సార్ మరియు కాంతి స్థాయిని ఉపయోగించి దూరాన్ని ఎలా కొలవాలో కూడా తనిఖీ చేయండి.