विषयसूची:

रोबोट कार से बचने में बाधा: 9 कदम
रोबोट कार से बचने में बाधा: 9 कदम

वीडियो: रोबोट कार से बचने में बाधा: 9 कदम

वीडियो: रोबोट कार से बचने में बाधा: 9 कदम
वीडियो: trying to traps for motu 😂 | राक्षस ने मोटू के मरने की कोशिश 🤪 | #cartoon #trending #shorts 2024, जुलाई
Anonim
रोबोटिक कार से बचने में बाधा
रोबोटिक कार से बचने में बाधा
रोबोटिक कार से बचने में बाधा
रोबोटिक कार से बचने में बाधा

रोबोट से बचने वाली बाधा कैसे बनाएं

चरण 1: ब्लैक बॉक्स

ब्लैक बॉक्स
ब्लैक बॉक्स

पहला कदम मैंने अपने रोबोट के आधार के रूप में एक ब्लैक बॉक्स का उपयोग किया।

चरण 2: अरुडिनो

अरुडिनो
अरुडिनो

Arduino पूरे सिस्टम का दिमाग है और हमारे मोटरों को व्यवस्थित करता है

चरण 3: Arduino को ब्लैकबॉक्स में संलग्न करना

Arduino को ब्लैकबॉक्स से जोड़ना
Arduino को ब्लैकबॉक्स से जोड़ना

मैंने गर्म गोंद का उपयोग करके आर्डिनो को ब्लैकबॉक्स से जोड़ा

चरण 4: अल्ट्रासोनिक सेंसर

अतिध्वनि संवेदक
अतिध्वनि संवेदक

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

चरण 5: Arduino के लिए सेंसर का ब्रेडबोर्ड कनेक्शन

Arduino से सेंसर का ब्रेडबोर्ड कनेक्शन
Arduino से सेंसर का ब्रेडबोर्ड कनेक्शन
Arduino से सेंसर का ब्रेडबोर्ड कनेक्शन
Arduino से सेंसर का ब्रेडबोर्ड कनेक्शन

मैंने ब्रेडबोर्ड और आर्डिनो के बीच संबंध बनाने के लिए तारों का इस्तेमाल किया।

ध्यान दें कि आपके पिंग सेंसर का पिन लेआउट अलग हो सकता है लेकिन इसमें वोल्टेज पिन, ग्राउंड पिन, ट्रिग पिन और एक इको पिन होना चाहिए।

चरण 6: मोटर शील्ड

मोटर शील्ड
मोटर शील्ड

Arduino बोर्ड अपने आप से dc मोटर्स को नियंत्रित नहीं कर सकते हैं, क्योंकि वे जो धाराएँ उत्पन्न कर रहे हैं वे बहुत कम हैं। इस समस्या को हल करने के लिए हम मोटर शील्ड का उपयोग करते हैं। मोटर शील्ड में 2 चैनल होते हैं, जो दो DC मोटर्स के नियंत्रण की अनुमति देता है, या 1 स्टेपर मोटर। … इन पिनों को संबोधित करके आप आरंभ करने के लिए एक मोटर चैनल का चयन कर सकते हैं, मोटर दिशा (ध्रुवीयता) निर्दिष्ट कर सकते हैं, मोटर गति (पीडब्लूएम) सेट कर सकते हैं, मोटर को रोक सकते हैं और शुरू कर सकते हैं, और प्रत्येक चैनल के वर्तमान अवशोषण की निगरानी कर सकते हैं।

चरण 7: मोटर शील्ड को Arduino से जोड़ना

मोटर शील्ड को Arduino से कनेक्ट करना
मोटर शील्ड को Arduino से कनेक्ट करना

बस मोटर शील्ड को आर्डिनो में सेंसर तारों के साथ संलग्न करें

चरण 8: 4 मोटर्स और बैटरियों को शील्ड से जोड़ना

4 मोटर्स और बैटरियों को शील्ड से जोड़ना
4 मोटर्स और बैटरियों को शील्ड से जोड़ना

प्रत्येक मोटर शील्ड में (कम से कम) दो चैनल होते हैं, एक मोटर्स के लिए, और एक शक्ति स्रोत के लिए, उन्हें एक दूसरे के संबंध में कनेक्ट करें

चरण 9: रोबोट को प्रोग्राम करें

इस कोड को चलाएं

#शामिल करें #शामिल करें

न्यूपिंग सोनार(TRIG_PIN, ECHO_PIN, MAX_DISTANCE);

AF_DCMotor motor1(1, MOTOR12_1KHZ); AF_DCMotor motor2(2, MOTOR12_1KHZ); AF_DCMotor motor3(3, MOTOR34_1KHZ); AF_DCMotor motor4(4, MOTOR34_1KHZ); सर्वो मायसर्वो;

#define TRIG_PIN A2 #define ECHO_PIN A3 #define MAX_DISTANCE 150 #define MAX_SPEED 100 #define MAX_SPEED_OFFSET 10

बूलियन आगे बढ़ता है = झूठा; अंतर दूरी = 80; इंट स्पीडसेट = 0;

व्यर्थ व्यवस्था() {

myservo.attach(10); myservo.write(११५); देरी (2000); दूरी = रीडपिंग (); देरी (100); दूरी = रीडपिंग (); देरी (100); दूरी = रीडपिंग (); देरी (100); दूरी = रीडपिंग (); देरी (100); }

शून्य लूप () {इंट डिस्टेंसआर = 0; अंतर दूरी एल = 0; देरी (40); अगर (दूरी <= 15) {चाल रोकें (); देरी (50); पीछे की ओर जाएं(); देरी (150); मूवस्टॉप (); देरी (100); दूरीआर = लुकराइट (); देरी (100); दूरी एल = लुकलेफ्ट (); देरी (100);

अगर (दूरी आर> = दूरी एल) {टर्नराइट (); मूवस्टॉप (); } और {टर्न लेफ्ट (); मूवस्टॉप (); } } और { आगे बढ़ें (); } दूरी = रीडपिंग (); }

इंट लुकराइट () { myservo.write (५०); देरी (250); इंट डिस्टेंस = रीडपिंग (); देरी (50); myservo.write(100); वापसी की दूरी; }

इंट लुक लेफ्ट () { myservo.write (१२०); देरी (300); इंट डिस्टेंस = रीडपिंग (); देरी (100); myservo.write(११५); वापसी की दूरी; देरी (100); }

इंट रीडपिंग () {देरी (70); इंट सेमी = सोनार.पिंग_सेमी (); अगर (सेमी == 0) {सेमी = 200; } वापसी सेमी; }

शून्य चाल स्टॉप () {motor1.run (रिलीज); motor2.run (रिलीज); motor3.run (रिलीज); motor4.run (रिलीज); } शून्य चाल आगे () {

अगर (! जाता है आगे) { जाता है आगे = सच; motor1.run (आगे); motor2.run (आगे); motor3.run (आगे); motor4.run (आगे); के लिए (स्पीडसेट = 0; स्पीडसेट <MAX_SPEED; स्पीडसेट + = 2) {motor1.setSpeed (स्पीडसेट); motor2.setSpeed (स्पीडसेट); motor3.setSpeed (स्पीडसेट); motor4.setSpeed (स्पीडसेट); देरी(५); } } }

शून्य चाल पीछे की ओर () {आगे जाता है = गलत; motor1.run (पिछड़ा); motor2.run (पिछड़ा); motor3.run (पिछड़ा); motor4.run (पिछड़ा); के लिए (स्पीडसेट = 0; स्पीडसेट <MAX_SPEED; स्पीडसेट + = 2) {motor1.setSpeed (स्पीडसेट); motor2.setSpeed (स्पीडसेट); motor3.setSpeed (स्पीडसेट); motor4.setSpeed (स्पीडसेट); देरी(५); } शून्य टर्न लेफ्ट () {motor1.run (बैकवर्ड); motor2.run (पिछड़ा); motor3.run (आगे); motor4.run (आगे); देरी (500); motor1.run (आगे); motor2.run (आगे); motor3.run (आगे); motor4.run (आगे); }

शून्य टर्नलेफ्ट () {motor1.run (बैकवर्ड); motor2.run (पिछड़ा); motor3.run (आगे); motor4.run (आगे); देरी (500); motor1.run (आगे); motor2.run (आगे); motor3.run (आगे); motor4.run (आगे); }

सिफारिश की: