HC-SR04: सभी अल्ट्रासोनिक सेंसर के बारे में

HC-SR04 सेंसर

कभी-कभी यह आवश्यक है दूरी नापें और इसके लिए आपके पास कई सेंसर हैं। हमने पहले ही एक लेख के बारे में बात करने के लिए समर्पित कर दिया है उच्च परिशुद्धता दूरी सेंसर जैसे कि VL52L0X। यह सेंसर टीओएफ प्रकार का था और यह अपने लेजर के लिए बहुत सटीक माप पर आधारित था। लेकिन अगर सटीकता आपके लिए महत्वपूर्ण नहीं है और आप कुछ ऐसा चाहते हैं जो आपको कम कीमत पर दूरी को मापने की अनुमति देता है, तो एक और संभावना है कि आपकी उंगलियों पर HC-SR04 है.

की दशा में HC-SR04 दूरी सेंसर, दूरी अल्ट्रासाउंड द्वारा मापा जाता है। प्रणाली VL52L0X के ऑप्टिकल विधि के समान है। यही है, यह उत्सर्जित होता है, एक उछाल होता है और यह प्राप्त होता है, लेकिन इस मामले में लेजर या आईआर होने के बजाय, यह अल्ट्रासाउंड है। यदि आप इलेक्ट्रॉनिक्स, रोबोटिक्स या शौकिया निर्माता के बारे में भावुक हैं, तो आप इसे DIY परियोजनाओं की एक भीड़ के लिए उपयोग कर सकते हैं जैसे कि रोबोट, उपस्थिति सेंसर, आदि के लिए बाधा पहचान प्रणाली।

HC-SR04 क्या है?

खैर, यह स्पष्ट है, जैसा कि मैंने पहले ही पिछले पैराग्राफ में टिप्पणी की है, HC-SR04 अल्ट्रासाउंड पर आधारित एक कम सटीक दूरी वाला सेंसर है। इसके साथ यह एक सरल और तेज़ तरीके से दूरी को मापने की अनुमति देता है, हालांकि सिद्धांत रूप में इसका आमतौर पर उपयोग नहीं किया जाता है। सबसे अधिक बार, यह सेंसर की प्रतिक्रिया से जुड़े अन्य तंत्रों के माध्यम से बाधाओं का पता लगाने और उनसे बचने के लिए एक ट्रांसड्यूसर के रूप में उपयोग किया जाता है।

की उपस्थिति HC-SR04 बहुत विशिष्ट और आसानी से पहचानने योग्य है। इसके अलावा, यह Arduino स्टार्टर किट में बहुत लोकप्रिय आइटम है और परियोजनाओं की एक भीड़ के लिए आवश्यक है। यह आसानी से पहचाना जाता है क्योंकि इसमें दो "आंखें" होती हैं जो वास्तव में अल्ट्रासाउंड डिवाइस हैं जो इस मॉड्यूल को एकीकृत करती हैं। उनमें से एक अल्ट्रासाउंड एमिटर और दूसरा एक रिसीवर है। यह 40 Khz की आवृत्ति पर काम करता है, इसलिए यह मनुष्यों के लिए अश्राव्य है।

अल्ट्रासोनिक सेंसर सिद्धांत

जिस सिद्धांत में जब आप किसी पत्थर को कुएं में फेंकते हैं तो उसकी गहराई को मापने के लिए इसका इस्तेमाल किया जाता है। आप पत्थर और समय को नीचे तक गिरने में कितना समय लगाते हैं। फिर आप बीते हुए समय के लिए गति की गणना करते हैं और आपको वह दूरी मिलती है जो पत्थर ने यात्रा की है। लेकिन उस मामले में सेंसर आप हैं।

ESP8266
संबंधित लेख:
ESP8266: Arduino के लिए वाईफ़ाई मॉड्यूल

HC-SR04 में, एमिटर अल्ट्रासाउंड का उत्सर्जन करेगा और जब वे किसी वस्तु या बाधा को उछाल देंगे, जिस तरह से वे रिसीवर द्वारा कब्जा कर लिया जाएगा। सर्किट आवश्यक गणना करेगा की दूरी को निर्धारित करने के लिए उस गूंज की। यह आपके लिए भी परिचित हो सकता है यदि आप सिस्टम को जानते हैं कि कुछ जानवर जैसे डॉल्फ़िन, व्हेल या चमगादड़ बाधाओं, शिकार, आदि का पता लगाने के लिए उपयोग करते हैं।

प्रतिक्रिया प्राप्त होने तक पल्स भेजे जाने के समय की गणना करके, समय और इसलिए दूरी को सटीक रूप से निर्धारित किया जा सकता है। उसे याद रखो [अंतरिक्ष = वेग समय] लेकिन HC-SR04 के मामले में, आपको इस मात्रा को / 2 से विभाजित करना होगा, क्योंकि जब अल्ट्रासाउंड बाहर निकलता है और अंतरिक्ष से गुजरता है, तो यह उस समय से मापा जाता है जब तक कि यह बाधा और रास्ते से नहीं टकराता है, इसलिए यह लगभग होगा इसका आधा ...

पिनआउट और डेटशीट

आप पहले से ही जानते हैं कि आपके द्वारा अधिग्रहित मॉडल का पूरा डेटा देखने के लिए, सबसे अच्छी बात यह है डेटशीट खोजें निर्माता का ठोस। उदाहरण के लिए, यहां ए स्पार्कफुन डेटशीट, लेकिन पीडीएफ में और भी कई उपलब्ध हैं। हालाँकि, यहाँ HC-SR04 के सबसे महत्वपूर्ण तकनीकी आंकड़े हैं:

  • बाहर पिन: पावर के लिए 4 पिन (Vcc), ट्रिगर (ट्रिगर), रिसीवर (इको) और ग्राउंड (GND)। ट्रिगर इंगित करता है कि कब सेंसर को सक्रिय किया जाना चाहिए (जब अल्ट्रासाउंड लॉन्च किया गया है), और इस प्रकार रिसीवर को सिग्नल प्राप्त होने पर बीतने वाले समय को जानना संभव होगा।
  • ALIMENTACION: 5 वी
  • अल्ट्रासाउंड आवृत्ति: 40 Khz, मानव कान केवल 20Hz से 20Khz तक सुन सकता है। 20Hz (infrasound) के नीचे और 20Khz (अल्ट्रासाउंड) के ऊपर की सभी चीजें बोधगम्य नहीं होंगी।
  • खपत (स्टैंड-बाय): <2mA
  • काम का उपभोग: १२००एमए
  • प्रभावी कोण: <15 objects, वस्तुओं के कोणों के आधार पर आपके बेहतर या बुरे परिणाम हो सकते हैं।
  • मापी गई दूरी: 2 सेमी से 400 सेमी, हालांकि 250 सेमी से संकल्प बहुत अच्छा नहीं होगा।
  • मध्यम संकल्प: वास्तविक दूरी और माप के बीच 0.3 सेमी की भिन्नता, इसलिए लेजर की तरह अत्यधिक सटीक नहीं होने के बावजूद, अधिकांश अनुप्रयोगों के लिए माप काफी स्वीकार्य हैं।
  • कीमत: लगभग € 0,65 से

Arduino के साथ एकीकरण

Arduino के साथ HC-SR04

पैरा इसे Arduino से जोड़ना आसान नहीं हो सकता। आपको बस अपने Arduino के संबंधित आउटपुट में GND को जोड़ने के प्रभारी के रूप में चिह्नित करना होगा, Vcc के साथ Arduino 5v बिजली की आपूर्ति और HC-SR04 के अन्य दो पिन इस प्रोजेक्ट के लिए चुने गए इनपुट / आउटपुट के साथ। आप देख सकते हैं कि ऊपरी फ्रिटिंग योजना में यह सरल है ...

आपको बस एक विचार करना होगा, कि बाघ को ठीक से सक्रिय करने के लिए कम से कम 10 माइक्रोसेकंड की एक विद्युत पल्स प्राप्त होनी चाहिए। पहले आपको यह सुनिश्चित करना होगा कि यह कम मूल्य में है।

के रूप में करने के Arduino IDE के लिए कोड, आप किसी भी पुस्तकालय या उस तरह का उपयोग करने के लिए अन्य घटकों के साथ की तरह नहीं है। बस दूरी और थोड़ा और गणना करने का सूत्र बनाएं ... बेशक, यदि आप चाहते हैं कि आपकी परियोजना HC-SR04 सेंसर की माप के जवाब में कुछ करे, तो आपको अपनी ज़रूरत का कोड जोड़ना होगा। उदाहरण के लिए, केवल कंसोल पर मापों को प्रदर्शित करने के बजाय, आप बाधा से बचने के लिए सर्विसमोटर्स को एक दिशा में या किसी अन्य स्थान पर ले जा सकते हैं, या एक मोटर को रोकने के लिए, जब यह निकटता का पता लगाता है, तो एक अलार्म सक्रिय होने के लिए। ।

 प्रोग्रामिंग के बारे में अधिक जानकारी: Arduino मैनुअल (मुफ्त पीडीएफ)

उदाहरण के लिए, आप इसे देख सकते हैं आधार के रूप में उपयोग करने के लिए मूल कोड:

//Define las constantes para los pines donde hayas conectado el pin Echo y Trigger
const int EchoPin = 8;
const int TriggerPin = 9;
 
void setup() {
   Serial.begin(9600);
   pinMode(TriggerPin, OUTPUT);
   pinMode(EchoPin, INPUT);
}

//Aquí la muestra de las mediciones
void loop() {
   int cm = ping(TriggerPin, EchoPin);
   Serial.print("Distancia medida: ");
   Serial.println(cm);
   delay(1000);
}

//Cálculo para la distancia
int ping(int TriggerPin, int EchoPin) {
   long duration, distanceCm;
   
   digitalWrite(TriggerPin, LOW);  //para generar un pulso limpio ponemos a LOW 4us
   delayMicroseconds(4);
   digitalWrite(TriggerPin, HIGH);  //generamos Trigger (disparo) de 10us
   delayMicroseconds(10);
   digitalWrite(TriggerPin, LOW);
   
   duration = pulseIn(EchoPin, HIGH);  //medimos el tiempo entre pulsos, en microsegundos
   
   distanceCm = duration * 10 / 292/ 2;   //convertimos a distancia, en cm
   return distanceCm;
}


एक टिप्पणी, अपनी छोड़ो

अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   जोस कहा

    मुझे स्पष्टीकरण बहुत उपयोगी और सरल लगा।