विषयसूची:

Arduino के साथ इन्फ्रारेड रडार: 6 कदम
Arduino के साथ इन्फ्रारेड रडार: 6 कदम

वीडियो: Arduino के साथ इन्फ्रारेड रडार: 6 कदम

वीडियो: Arduino के साथ इन्फ्रारेड रडार: 6 कदम
वीडियो: Beyond the Basics: Automatic Gatekeeper With IR Sensor And ChatGPT Generated Arduino Code 2024, नवंबर
Anonim
Image
Image

इस छोटे से प्रोजेक्ट में मैं आपको दिखाना चाहता हूं कि आप Arduino के साथ घर पर एक साधारण रडार कैसे बना सकते हैं। इंटरनेट पर कई समान परियोजनाएं हैं, लेकिन वे सभी दूरी मापने के लिए एक अल्ट्रासोनिक सेंसर का उपयोग कर रहे हैं। इस परियोजना में मैं दूरी माप के लिए एक इन्फ्रारेड सेंसर का उपयोग करता हूं।

मेरा लक्ष्य इसके साथ एक बहुत ही सरल और सस्ता LIDAR सिस्टम बनाना और एक मैपिंग डिवाइस को लागू करना है।

आपूर्ति

  • Arduino (मैंने मेपल मिनी का इस्तेमाल किया)
  • तीव्र दूरी सेंसर (मैंने तीव्र GP2Y0A02YK0F का उपयोग किया)
  • माइक्रो सर्वो (9g)
  • ब्रेडबोर्ड, तार
  • वैकल्पिक: 4.7k रोकनेवाला, 100nF संधारित्र

चरण 1: अल्ट्रासोनिक वीएस इन्फ्रारेड सेंसर

ढांच के रूप में
ढांच के रूप में

अल्ट्रासोनिक और इन्फ्रारेड दूरी सेंसर के बीच मुख्य अंतर यह है कि अल्ट्रासोनिक सेंसर व्यापक रेंज में दूरी को मापता है। इसलिए यह एक बाधा की स्थिति का ठीक-ठीक पता लगाने में सक्षम नहीं है। इसका मतलब है कि यह निकटतम वस्तु की दूरी को मापता है जो ~ + -30 डिग्री कोण सीमा के अंदर स्थित है।

बेशक, इसका मतलब यह नहीं है कि शार्प सेंसर बेहतर है। कभी-कभी यह गुण बहुत उपयोगी हो सकता है (उदाहरण के लिए जमीन से ऊंचाई मापने के लिए ड्रोन द्वारा उपयोग किया जाता है)। सही विकल्प पूरी तरह से आपकी परियोजना की आवश्यकताओं पर निर्भर करता है।

चरण 2: योजनाबद्ध

ढांच के रूप में
ढांच के रूप में
ढांच के रूप में
ढांच के रूप में

भागों के बीच संबंध बनाना बहुत सरल है। अपने Arduino बोर्ड पर एक PWM आउटपुट और एक एनालॉग इनपुट का चयन करें और उन पिनों के लिए सर्वो और शार्प डिस्टेंस सेंसर कनेक्ट करें। मैंने इस उद्देश्य के लिए निम्नलिखित पिनों का उपयोग किया:

  • PA0: तीव्र दूरी सेंसर के लिए एनालॉग इनपुट
  • PA9: सर्वो के लिए PWM आउटपुट

कभी-कभी शार्प IR सेंसर में नॉइज़ आउटपुट हो सकता है, इसलिए आपको उस पर एक साधारण लो पास फ़िल्टर लगाना होगा। मैंने एनालॉग पिन पर शोर को कम करने के लिए 4.7k रोकनेवाला और 100nF संधारित्र का उपयोग किया। इसके अलावा मैंने कोड में मापा मान को कई बार पढ़कर और औसत की गणना करके भी फ़िल्टर किया।

चरण 3: सेंसर विशेषता

सेंसर विशेषता
सेंसर विशेषता
सेंसर विशेषता
सेंसर विशेषता

दुर्भाग्य से प्रयुक्त अवरक्त दूरी सेंसर में गैर-रैखिक विशेषता है। इसका मतलब है कि दूरी प्राप्त करने के लिए, मापा एडीसी मान को एक स्थिर मान से गुणा करना और उसमें एक और स्थिर मान जोड़ना पर्याप्त नहीं है।

यद्यपि सेंसर की डेटाशीट विशेषता प्रदान करती है, मैं इसे विशिष्ट परियोजना में स्वयं मापना पसंद करता हूं (यह प्रयुक्त वोल्टेज पर निर्भर हो सकता है)। इसके लिए मैंने मापा एडीसी मान और प्रत्येक 10 सेमी की दूरी से जोड़े बनाए। (मेरा सेंसर 12 सेमी से सही दूरी मापने में सक्षम था)।

मैंने रेखीय प्रक्षेप के साथ सही दूरी प्राप्त करने के लिए कोड में इन युग्मों का उपयोग किया।

विशेषता माप के दौरान एडीसी मान को मापने के लिए आपको दस्तावेज़ के अंत में एक साधारण Arduino कोड मिलेगा।

चरण 4: सीरियल संचार

धारावाहिक संचार
धारावाहिक संचार

मैंने पीसी पर मापा कोण-दूरी मान भेजने के लिए धारावाहिक संचार का उपयोग किया। चूंकि मुझे कई बाइट्स और विभिन्न प्रकार के संदेश भेजने हैं, इसलिए मैंने एक साधारण संचार प्रोटोकॉल तैयार किया है।

यह प्रोटोकॉल विभिन्न संदेश प्रकारों को सामान्य तरीके से परिभाषित करने में सक्षम बनाता है। इस परियोजना में मैंने 2 संदेश प्रकारों का उपयोग किया:

  • पैरामीटर: पीसी एप्लिकेशन को पैरामीटर भेजने के लिए उपयोग किया जाता है, Arduino पर परिभाषित किया गया है जैसे अधिकतम दूरी और एक दौर में बाधाओं की संख्या।
  • बाधा: एक पता चला बाधा भेजने के लिए प्रयुक्त। यह सर्वो के कोण और मापी गई दूरी से पहचाना जाता है। एक्स-वाई स्थिति की गणना पीसी एप्लिकेशन द्वारा की जाएगी।

चरण 5: क्यूटी आवेदन

क्यूटी आवेदन
क्यूटी आवेदन

Arduino के साथ संवाद करने और एक रडार की तरह मापा बिंदुओं को आकर्षित करने के लिए मैंने Qt (C++) में एक पीसी एप्लीकेशन बनाया। यह कुछ पैरामीटर (Arduino पर परिभाषित) और मापा दूरी बिंदु प्राप्त करता है।

आप एप्लिकेशन और उसके स्रोत कोड को भी डाउनलोड कर सकते हैं।

चरण 6: Arduino स्रोत कोड

आप मैक्रोज़ के साथ कोड के शीर्ष पर कुछ पैरामीटर्स को कस्टमाइज़ कर सकते हैं।

ध्यान दें, कि यदि आप तीव्र दूरी सेंसर की विशेषता बदलते हैं, तो आपको distAdcMap सरणी मानों को संशोधित करना होगा!

  • InfraRadar.c: रडार का कोड। इसे अपने Arduino प्रोजेक्ट में कॉपी और पेस्ट करें।
  • InfraRadarMeasurement.c: विशेषता माप के लिए कोड। इसे अपने Arduino प्रोजेक्ट में कॉपी और पेस्ट करें। एडीसी मूल्यों की जांच के लिए सीरियल कंसोल का प्रयोग करें।

सिफारिश की: