మైక్రోపైథాన్ మైక్రోకంట్రోలర్లు మరియు ఎంబెడెడ్ సిస్టమ్లతో విస్తృతంగా ఉపయోగించబడుతుంది. మేము మైక్రోపైథాన్ IDE లోపల కోడ్ మరియు లైబ్రరీలను వ్రాయవచ్చు మరియు బహుళ సెన్సార్లను ఇంటర్ఫేస్ చేయవచ్చు. HC-SR04 సెన్సార్తో ESP32ని ఉపయోగించి దూరాన్ని కొలవడానికి ఈ రైటప్ మీకు మార్గనిర్దేశం చేస్తుంది.
మైక్రోపైథాన్ ఉపయోగించి HC-SR04 అల్ట్రాసోనిక్ సెన్సార్తో ESP32
అల్ట్రాసోనిక్తో ESP32ని ఇంటర్ఫేసింగ్ చేయడానికి కేవలం రెండు వైర్లను కనెక్ట్ చేయడం అవసరం. అల్ట్రాసోనిక్ సెన్సార్లను ఉపయోగించి, మేము ఆబ్జెక్ట్ దూరాన్ని కొలవగలము మరియు వాహనం తాకిడిని నివారించే సిస్టమ్ల వంటి ఈ సిస్టమ్ ఆధారంగా ప్రతిస్పందనలను ట్రిగ్గర్ చేయవచ్చు.
ESP32 మరియు ఇతర మైక్రోకంట్రోలర్ల కోసం రూపొందించబడిన భాష అయిన మైక్రోపైథాన్ని ఉపయోగించడం ద్వారా మనం అనేక సెన్సార్లను ఇంటర్ఫేస్ చేయవచ్చు HC-SR04 . మైక్రోపైథాన్ కోడ్ వ్రాయబడుతుంది, ఇది సెన్సార్ నుండి ఆబ్జెక్ట్కు మరియు తిరిగి ఆబ్జెక్ట్కు చేరుకోవడానికి సోనార్ వేవ్ తీసుకున్న సమయాన్ని గణిస్తుంది. తర్వాత దూర సూత్రాన్ని ఉపయోగించి, మనం వస్తువు దూరాన్ని లెక్కించవచ్చు.
HC-SR04 సెన్సార్ యొక్క కొన్ని ప్రధాన ముఖ్యాంశాలు ఇక్కడ ఉన్నాయి:
లక్షణాలు | విలువ |
ఆపరేటింగ్ వోల్టేజ్ | 5V DC |
ఆపరేటింగ్ కరెంట్ | 15mA |
ఆపరేటింగ్ ఫ్రీక్వెన్సీ | 40KHz |
నా రేంజ్ | 2cm/ 1 అంగుళం |
గరిష్ట పరిధి | 400 సెం.మీ/ 13 అడుగులు |
ఖచ్చితత్వం | 3 మి.మీ |
కొలిచే కోణం | <15 డిగ్రీలు |
HC-SR04 పిన్అవుట్ HC-SR04 కింది వాటిని కలిగి ఉంది నాలుగు పిన్స్:
- Vcc: ESP32 Vin పిన్కి కనెక్ట్ చేయండి
- Gnd: GNDకి కనెక్ట్ చేయండి
- ట్రిగ్: ESP32 బోర్డు నుండి నియంత్రణ సిగ్నల్ని స్వీకరించడానికి పిన్ చేయండి
- ప్రతిధ్వని: తిరిగి సిగ్నల్ పంపండి. మైక్రోకంట్రోలర్ బోర్డు సమయాన్ని ఉపయోగించి దూరాన్ని లెక్కించడానికి ఈ సంకేతాన్ని అందుకుంటుంది
అల్ట్రాసోనిక్ ఎలా పనిచేస్తుంది
HC-SR04 సెన్సార్ ESP32తో అనుసంధానించబడిన తర్వాత ఒక సిగ్నల్ వద్ద ట్రిగ్ పిన్ బోర్డు ద్వారా ఉత్పత్తి చేయబడుతుంది. HC-SR04 సెన్సార్ యొక్క ట్రిగ్ పిన్ వద్ద సిగ్నల్ అందిన తర్వాత ఒక అల్ట్రాసోనిక్ తరంగం ఏర్పడుతుంది, అది సెన్సార్ను వదిలి వస్తువు లేదా అడ్డంకి శరీరాన్ని తాకుతుంది. కొట్టిన తర్వాత అది వస్తువు ఉపరితలంపైకి బౌన్స్ అవుతుంది.
ప్రతిబింబించే తరంగం సెన్సార్ రిసీవింగ్ ఎండ్కు తిరిగి చేరుకున్న తర్వాత ఎకో పిన్ వద్ద సిగ్నల్ పల్స్ ఉత్పత్తి అవుతుంది. ESP32 ఎకో పిన్ సిగ్నల్ను అందుకుంటుంది మరియు ఉపయోగించి వస్తువు మరియు సెన్సార్ మధ్య దూరాన్ని గణిస్తుంది దూరం-ఫార్ములా.
లెక్కించిన మొత్తం దూరాన్ని ESP32 కోడ్ లోపల రెండుగా విభజించాలి, ఎందుకంటే మనం మొదట పొందే దూరం సెన్సార్ నుండి వస్తువుకు మరియు సెన్సార్ స్వీకరించే ముగింపుకు తిరిగి వచ్చే మొత్తం దూరానికి సమానం. కాబట్టి నిజమైన దూరం అంటే ఆ దూరంలో సగానికి సమానమైన సిగ్నల్.
స్కీమాటిక్
అల్ట్రాసోనిక్ సెన్సార్తో ESP32ని ఇంటర్ఫేసింగ్ చేయడానికి క్రింది స్కీమాటిక్ ఉంది:
సెన్సార్ యొక్క ట్రిగ్గర్ మరియు ఎకో పిన్ను వరుసగా ESP32 యొక్క GPIO 5 మరియు GPIO 18తో కనెక్ట్ చేయండి. సెన్సార్ పిన్లతో ESP32 GND మరియు విన్ పిన్లను కూడా కనెక్ట్ చేయండి.
HC-SR04 అల్ట్రాసోనిక్ సెన్సార్ | ESP32 పిన్ |
ట్రిగ్ | GPIO 5 |
ప్రతిధ్వని | GPIO 18 |
GND | GND |
VCC | రండి |
హార్డ్వేర్
అల్ట్రాసోనిక్ సెన్సార్ను ప్రోగ్రామ్ చేయడానికి క్రింది భాగాలు అవసరం:
- ESP32
- HC-SR04
- బ్రెడ్బోర్డ్
- జంపర్ వైర్లు
మైక్రోపైథాన్ని ఉపయోగించి ESP32తో అల్ట్రాసోనిక్ HC-SR04ని ఎలా సెటప్ చేయాలి
అల్ట్రాసోనిక్ సెన్సార్తో ESP32 ప్రోగ్రామ్ చేయడానికి ముందు మనం దానిలో లైబ్రరీని ఇన్స్టాల్ చేయాలి. ESP32 బోర్డుని PCకి కనెక్ట్ చేయండి. MicroPythonని ఉపయోగించి Thonny IDEలో అల్ట్రాసోనిక్ సెన్సార్తో ESP32 కాన్ఫిగరేషన్ను పూర్తి చేయడానికి దశలను అనుసరించండి.
దశ 1: ఇప్పుడు Thonny IDEని తెరవండి. ఎడిటర్ విండోలో కొత్త ఫైల్ను సృష్టించండి వెళ్ళండి : ఫైల్>కొత్తది లేదా నొక్కండి Ctrl + N .
కొత్త ఫైల్ తెరిచిన తర్వాత, కింది కోడ్ను Thonny IDE ఎడిటర్ విండోలో అతికించండి.
దిగుమతి యంత్రం , సమయంనుండి యంత్రం దిగుమతి పిన్ చేయండి
తరగతి HCSR04:
# echo_timeout_us చిప్ పరిధి పరిమితి (400cm)పై ఆధారపడి ఉంటుంది
డెఫ్ __వేడి__ ( స్వీయ , ట్రిగ్గర్_పిన్ , echo_pin , echo_timeout_us = 500 * రెండు * 30 ) :
స్వీయ . echo_timeout_us = echo_timeout_us
# Init ట్రిగ్గర్ పిన్ (అవుట్)
స్వీయ . ట్రిగ్గర్ = పిన్ చేయండి ( ట్రిగ్గర్_పిన్ , మోడ్ = పిన్ చేయండి. బయటకు , లాగండి = ఏదీ లేదు )
స్వీయ . ట్రిగ్గర్ . విలువ ( 0 )
# ఇనిట్ ఎకో పిన్ (ఇన్)
స్వీయ . ప్రతిధ్వని = పిన్ చేయండి ( echo_pin , మోడ్ = పిన్ చేయండి. IN , లాగండి = ఏదీ లేదు )
డెఫ్ _పల్స్_పంపు_మరియు_ఆగండి ( స్వీయ ) :
స్వీయ . ట్రిగ్గర్ . విలువ ( 0 ) # సెన్సార్ను స్థిరీకరించండి
సమయం . నిద్ర_మాకు ( 5 )
స్వీయ . ట్రిగ్గర్ . విలువ ( 1 )
# 10US పల్స్ పంపండి.
సమయం . నిద్ర_మాకు ( 10 )
స్వీయ . ట్రిగ్గర్ . విలువ ( 0 )
ప్రయత్నించండి :
పల్స్_సమయం = యంత్రం. సమయం_పల్స్_మా ( స్వీయ . ప్రతిధ్వని , 1 , స్వీయ . echo_timeout_us )
తిరిగి పల్స్_సమయం
తప్ప OSE లోపం వంటి ఉదా:
ఉంటే ఉదా. ఆర్గ్స్ [ 0 ] == 110 : # 110 = ETIMEDOUT
పెంచండి OSE లోపం ( 'పరిదిలో లేని' )
పెంచండి ఉదా
డెఫ్ దూరం_మి.మీ ( స్వీయ ) :
పల్స్_సమయం = స్వీయ ._పల్స్_పంపు_మరియు_ఆగండి ( )
మి.మీ = పల్స్_టైమ్ * 100 // 582
తిరిగి మి.మీ
డెఫ్ దూరం_సెం.మీ ( స్వీయ ) :
పల్స్_సమయం = స్వీయ ._పల్స్_పంపు_మరియు_ఆగండి ( )
సెం.మీ = ( పల్స్_టైమ్ / రెండు ) / 29.1
తిరిగి సెం.మీ
దశ 2: వ్రాసిన తరువాత గ్రంధాలయం ఎడిటర్ విండో లోపల కోడ్ ఇప్పుడు మనం దానిని MicroPython పరికరంలో సేవ్ చేయాలి.
దశ 3: వెళ్ళండి : ఫైల్>సేవ్ చేయండి లేదా నొక్కండి Ctrl + S .
దశ 4: కొత్త విండో కనిపిస్తుంది. ESP32 PCతో కనెక్ట్ చేయబడిందని నిర్ధారించుకోండి. లైబ్రరీ ఫైల్ను సేవ్ చేయడానికి MicroPython పరికరాన్ని ఎంచుకోండి.
దశ 5: అల్ట్రాసోనిక్ లైబ్రరీ ఫైల్ను పేరుతో సేవ్ చేయండి hcsr04.py మరియు క్లిక్ చేయండి అలాగే .
ఇప్పుడు అల్ట్రాసోనిక్ hcsr04 సెన్సార్ లైబ్రరీ విజయవంతంగా ESP32 బోర్డుకి జోడించబడింది. ఇప్పుడు మనం వివిధ వస్తువుల దూరాన్ని కొలవడానికి కోడ్ లోపల లైబ్రరీ ఫంక్షన్లను కాల్ చేయవచ్చు.
MicroPython ఉపయోగించి అల్ట్రాసోనిక్ సెన్సార్ కోసం కోడ్
అల్ట్రాసోనిక్ సెన్సార్ కోడ్ కోసం కొత్త ఫైల్ను సృష్టించండి ( Ctrl + N ) ఎడిటర్ విండోలో, క్రింద ఇవ్వబడిన కోడ్ను నమోదు చేసి, దాన్ని లోపల సేవ్ చేయండి main.py లేదా boot.py ఫైల్. ఈ కోడ్ HC-SR04 ముందు వచ్చే ఏదైనా వస్తువు యొక్క దూరాన్ని ముద్రిస్తుంది.
వంటి ముఖ్యమైన లైబ్రరీలకు కాల్ చేయడం ద్వారా కోడ్ ప్రారంభమైంది HCSR04 మరియు సమయం లైబ్రరీతో పాటు నిద్ర ఆలస్యం ఇవ్వాలని.
తరువాత, మేము పేరుతో కొత్త వస్తువును సృష్టించాము నమోదు చేయు పరికరము . ఈ వస్తువు మూడు విభిన్న ఆర్గ్యుమెంట్లను తీసుకుంటోంది: ట్రిగ్గర్, ఎకో మరియు సమయం ముగిసింది. సెన్సార్ పరిధి దాటి పోయిన తర్వాత గరిష్ట సమయంగా ఇక్కడ సమయం ముగిసింది.
నమోదు చేయు పరికరము = HCSR04 ( ట్రిగ్గర్_పిన్ = 5 , echo_pin = 18 , echo_timeout_us = 10000 )దూరాన్ని కొలవడానికి మరియు ఆదా చేయడానికి కొత్త వస్తువు పేరు పెట్టబడింది దూరం సృష్టించబడుతుంది. ఈ వస్తువు సెం.మీలో దూరాన్ని ఆదా చేస్తుంది.
దూరం = నమోదు చేయు పరికరము. దూరం_సెం.మీ ( )మిమీలో డేటాను పొందడానికి క్రింది కోడ్ను వ్రాయండి.
దూరం = నమోదు చేయు పరికరము. దూరం_మి.మీ ( )తరువాత, మేము MicroPython IDE షెల్లో ఫలితాన్ని ముద్రించాము.
ముద్రణ ( 'దూరం:' , దూరం , 'సెం' )చివరికి 1 సెకను ఆలస్యం ఇవ్వబడుతుంది.
నిద్ర ( 1 )పూర్తి కోడ్ క్రింద ఇవ్వబడింది:
నుండి hcsr04 దిగుమతి HCSR04నుండి సమయం దిగుమతి నిద్ర
# ESP32
నమోదు చేయు పరికరము = HCSR04 ( ట్రిగ్గర్_పిన్ = 5 , echo_pin = 18 , echo_timeout_us = 10000 )
# ESP8266
#సెన్సార్ = HCSR04(ట్రిగ్గర్_పిన్=12, echo_pin=14, echo_timeout_us=10000)
అయితే నిజమే :
దూరం = నమోదు చేయు పరికరము. దూరం_సెం.మీ ( )
ముద్రణ ( 'దూరం:' , దూరం , 'సెం' )
నిద్ర ( 1 )
మైక్రోపైథాన్ పరికరంలో కోడ్ని వ్రాసి, సేవ్ చేసిన తర్వాత, నేను ఇప్పుడు అల్ట్రాసోనిక్ సెన్సార్ను రన్ చేస్తున్నాను main.py ఫైల్ కోడ్. ప్లే బటన్ను క్లిక్ చేయండి లేదా నొక్కండి F5 .
వస్తువు సమీపంలో ఉన్నప్పుడు అల్ట్రాసోనిక్ సెన్సార్ అవుట్పుట్
ఇప్పుడు అల్ట్రాసోనిక్ సెన్సార్ దగ్గర ఒక వస్తువును ఉంచండి మరియు Arduino IDE యొక్క సీరియల్ మానిటర్ విండోలో కొలిచిన దూరాన్ని తనిఖీ చేయండి.
ఆబ్జెక్ట్ దూరం షెల్ టెర్మినల్లో చూపబడింది. ఇప్పుడు వస్తువు అల్ట్రాసోనిక్ సెన్సార్ నుండి 5 సెం.మీ.
వస్తువు దూరంగా ఉన్నప్పుడు అల్ట్రాసోనిక్ సెన్సార్ అవుట్పుట్
ఇప్పుడు మా ఫలితాన్ని ధృవీకరించడానికి మేము వస్తువులను సెన్సార్ నుండి దూరంగా ఉంచుతాము మరియు అల్ట్రాసోనిక్ సెన్సార్ పనిని తనిఖీ చేస్తాము. దిగువ చిత్రంలో చూపిన విధంగా వస్తువులను ఉంచండి:
అవుట్పుట్ విండో మనకు కొత్త దూరాన్ని ఇస్తుంది మరియు ఆ వస్తువు సెన్సార్కు దూరంగా ఉందని మనం చూడగలిగినట్లుగా, కొలవబడిన దూరం సుమారుగా ఉంటుంది. అల్ట్రాసోనిక్ సెన్సార్ నుండి 15 సెం.మీ.
ముగింపు
రోబోటిక్స్ మరియు ఇతర ప్రాజెక్ట్ల విషయానికి వస్తే దూరాన్ని కొలవడం గొప్ప అప్లికేషన్ను కలిగి ఉంది, దూరాన్ని కొలవడానికి వివిధ మార్గాలు ఉన్నాయి. ESP32తో HC-SR04 వివిధ వస్తువుల దూరాన్ని కొలవగలదు. ఇక్కడ ఈ రైటప్ ESP32తో దూరాన్ని కొలిచేందుకు మరియు ప్రారంభించడానికి అవసరమైన అన్ని దశలను కవర్ చేస్తుంది.