कुछ लोकप्रिय रोबोट परियोजनाओं जैसे लाइन फॉलोवर रोबोट, एज अवॉइड रोबोट, DTMF रोबोट, जेस्चर कंट्रोल रोबोट आदि को विकसित करने के बाद, इस परियोजना में हम एक ब्लूटूथ नियंत्रित रोबो कार विकसित करने जा रहे हैं । यहां हमने कार को नियंत्रित करने के लिए एक ब्लूटूथ मॉड्यूल का उपयोग किया, और यह एक एंड्रॉइड आधारित एप्लिकेशन भी है।
अवयव
- Arduino UNO
- डीसी मोटर्स
- ब्लूटूथ मॉड्यूल HC-05
- मोटर चालक L293D
- 9 वोल्ट बैटरी और 6 वोल्ट बैटरी
- बैटरी कनेक्टर
- खिलौना कार
ब्लूटूथ नियंत्रित कार को बटन, इशारा आदि जैसी किसी अन्य विधि के बजाय एंड्रॉइड मोबाइल फोन का उपयोग करके नियंत्रित किया जाता है। यहां कार को आगे, पीछे, बाएं और दाएं दिशाओं में नियंत्रित करने के लिए केवल एंड्रॉइड फोन में बटन को छूने की आवश्यकता है। इसलिए यहाँ android फोन को ट्रांसमिटिंग डिवाइस के रूप में इस्तेमाल किया जाता है और कार में रखा ब्लूटूथ मॉड्यूल रिसीवर के रूप में उपयोग किया जाता है। एंड्रॉइड फोन अपने इन-बिल्ट ब्लूटूथ का उपयोग करके कार को कमांड प्रसारित करेगा ताकि वह आवश्यक दिशा में आगे बढ़ सके जैसे कि आगे बढ़ना, रिवर्स करना, बाएं मुड़ना, दाएं मुड़ना और रुकना।
ब्लूटूथ मॉड्यूल
HC ब्लूटूथ मॉड्यूल में दो चीजें होती हैं एक ब्लूटूथ सीरियल इंटरफ़ेस मॉड्यूल और एक ब्लूटूथ एडाप्टर। ब्लूटूथ सीरियल मॉड्यूल का उपयोग सीरियल पोर्ट को ब्लूटूथ में परिवर्तित करने के लिए किया जाता है।
ब्लूटूथ मॉड्यूल कैसे संचालित करें?
आप बाजार से खरीदने के बाद सीधे ब्लूटूथ मॉड्यूल का उपयोग कर सकते हैं, क्योंकि ब्लूटूथ मॉड्यूल की किसी भी सेटिंग को बदलने की कोई आवश्यकता नहीं है। नए ब्लूटूथ मॉड्यूल की डिफ़ॉल्ट बॉड दर 9600 बीपीएस है। आपको बस rx और tx को कंट्रोलर या सीरियल कन्वर्टर से कनेक्ट करने और मॉड्यूल को 5 वोल्ट डीसी विनियमित बिजली आपूर्ति देने की आवश्यकता है।
ब्लूटूथ मॉड्यूल में दो मोड होते हैं एक मास्टर मोड और दूसरा एक स्लेव मोड होता है। उपयोगकर्ता कुछ एटी कमांड का उपयोग करके या तो मोड सेट कर सकते हैं। यहां तक कि उपयोगकर्ता एटी कमांड का उपयोग करके मॉड्यूल की सेटिंग सेट कर सकता है। यहाँ कुछ कमांड प्रयोग दिए गए हैं:
सबसे पहले उपयोगकर्ता को ब्लूटूथ मॉड्यूल पर एन बटन दबाकर या एन पिन पर उच्च स्तर देकर 38400 बीपीएस बॉड दर के साथ एटी मोड में प्रवेश करना होगा। नोट: सभी आदेश कीबोर्ड से \ r \ n (0x0d और 0x0a) या ENTER कुंजी के साथ समाप्त होने चाहिए।
इसके बाद अगर आप AT को मॉड्यूल भेजते हैं तो मॉड्यूल OK के साथ प्रतिक्रिया देगा
एटी → टेस्ट कमांड
AT + ROLE = 0 → स्लेव मोड का चयन करें
AT + ROLE = 1 → मास्टर मोड का चयन करें
AT + NAME = xyz → ब्लूटूथ नाम सेट करें
AT + PSWD = xyz → पासवर्ड सेट करें
AT + UART =
जैसे। AT + UART = 9600,0,0
एक्सीलरोमीटर का पिन विवरण
- स्टेट → ओपन
- Rx → सीरियल प्राप्त करने वाला पिन
- टीएक्स → सीरियल ट्रांसमिटिंग पिन
- GND → मैदान
- Vcc → + 5volt dc
- एन → एटी मोड में प्रवेश करने के लिए
कार्य की व्याख्या
इस परियोजना में हमने प्रदर्शन के लिए एक खिलौना कार का उपयोग किया है। यहाँ हमने एक RF टॉय कार को लेफ्ट राइट स्टेयरिंग फीचर के साथ चुना है। इस कार को खरीदने के बाद हमने इसके आरएफ सर्किट को हमारे Arduino सर्किट से बदल दिया है । इस कार में आगे और पीछे की तरफ दो डीसी मोटर हैं। फ्रंट साइड मोटर का उपयोग कार को दिशा देने के लिए किया जाता है जिसका अर्थ है बाईं या दाईं ओर मुड़ना (जैसे वास्तविक कार स्टीयरिंग सुविधा)। और आगे और पीछे की दिशा में कार चलाने के लिए रियर साइड मोटर का उपयोग किया जाता है। एक ब्लूटूथ मॉड्यूल का उपयोग एंड्रॉइड फोन से कमांड प्राप्त करने के लिए किया जाता है और Arduino UNO का उपयोग पूरे सिस्टम को नियंत्रित करने के लिए किया जाता है।
एंड्रॉइड ब्लूटूथ मोबाइल ऐप में छपे बटन के अनुसार ब्लूटूथ नियंत्रित कार चलती है। इस प्रोजेक्ट को चलाने के लिए सबसे पहले हमें ब्लूटूथ एप फॉर्म को गूगल प्ले स्टोर पर डाउनलोड करना होगा। हम किसी भी ब्लूटूथ ऐप का उपयोग कर सकते हैं जो समर्थन या डेटा भेज सकते हैं। यहां कुछ ऐप्स के नाम दिए गए हैं जो सही तरीके से काम कर सकते हैं।
- ब्लूटूथ एसपीपी प्रो
- ब्लूटूथ नियंत्रक
ऐप इंस्टॉल करने के बाद आपको इसे खोलने की जरूरत है और फिर ब्लूटूथ डिवाइस को सर्च करें और वांछित ब्लूटूथ डिवाइस का चयन करें। और फिर कुंजियों को कॉन्फ़िगर करें। यहाँ इस परियोजना में हमने ब्लूटूथ नियंत्रक ऐप का उपयोग किया है।
- ब्लूटूथ नियंत्रक डाउनलोड और स्थापित करें।
- मोबाइल ब्लूटूथ चालू।
- अब ब्लूटूथ कंट्रोलर ऐप खोलें
- स्कैन दबाएं
- वांछित ब्लूटूथ डिवाइस का चयन करें
- अब स्क्रीन पर सेट बटन दबाकर चाबियाँ सेट करें। कुंजी सेट करने के लिए हमें 'सेट बटन' को दबाने की जरूरत है और नीचे दी गई तस्वीर के अनुसार कुंजी सेट करें:
कीज़ सेट करने के बाद ओके दबाएं।
जब हम ब्लूटूथ कंट्रोलर ऐप में फॉरवर्ड बटन को टच करते हैं तो कार आगे की दिशा में बढ़ना शुरू कर देती है और अगले कमांड आने तक चलती रहती है।
जब हम ब्लूटूथ कंट्रोलर ऐप में बैकवर्ड बटन को छूते हैं तो कार रिवर्स दिशा में चलना शुरू कर देती है और अगले कमांड आने तक चलती रहती है।
जब हम ब्लूटूथ कंट्रोलर ऐप में लेफ्ट बटन को टच करते हैं तो कार लेफ्ट दिशा में चलना शुरू कर देती है और अगली कमांड आने तक लेफ्ट चलती रहती है। इस हालत में फ्रंट साइड मोटर लेफ्ट साइड व्हील्स को लेफ्ट दिशा में और रियर मोटर आगे की दिशा में चलती है।
जब हम ब्लूटूथ कंट्रोलर ऐप में राइट बटन टच करते हैं तो कार सही दिशा में चलना शुरू कर देती है और अगले कमांड आने तक चलती रहती है। इस हालत में फ्रंट साइड मोटर सही दिशा में आगे की ओर के पहिये और पीछे की मोटर आगे की दिशा में चलती है।
और स्टॉप बटन को टच करके हम कार को रोक सकते हैं।
सर्किट आरेख और स्पष्टीकरण
ब्लूटूथ नियंत्रित कार के लिए सर्किट आरेख को उपरोक्त आंकड़े में दिखाया गया है। कार चलाने के लिए एक मोटर चालक को आर्डूइनो से जोड़ा जाता है। मोटर चालक के इनपुट पिन 2, 7, 10 और 15 क्रमशः arduino के डिजिटल पिन नंबर 12, 11, 10 और 9 से जुड़े हैं। यहाँ हमने ड्राइवर कार में दो डीसी मोटर्स का उपयोग किया है जिसमें एक मोटर मोटर चालक 3 और 6 के आउटपुट पिन से जुड़ी है और दूसरी मोटर 11 और 14. 6 वोल्ट की मोटर से जुड़ी है। मोटर चालक को मोटर चलाने के लिए भी इस्तेमाल किया जाता है। । ब्लूटूथ मॉड्यूल के आरएक्स और टीएक्स पिन सीधे आर्कडिनो के टीएक्स और आरएक्स पर जुड़े हुए हैं। और ब्लूटूथ मॉड्यूल का vcc और ग्राउंड पिन Arduino के +5 वोल्ट और gnd से जुड़ा है। और Arduino के Vin पिन पर सर्किट को पावर देने के लिए 9 वोल्ट की बैटरी का इस्तेमाल किया जाता है
कार्यक्रम की व्याख्या
कार्यक्रम में सबसे पहले हमने मोटर्स के लिए आउटपुट पिंस को परिभाषित किया है।
#define m11 11 // रियर मोटर #define m12 12 #define m21 10 // फ्रंट मोटर #define m22 9
और फिर सेटअप में, हमने पिन करने के निर्देश दिए।
शून्य सेटअप () {Serial.begin (9600); पिनमोड (m11, OUTPUT); पिनमोड (m12, OUTPUT); पिनमोड (m21, OUTPUT); पिनमोड (m22, OUTPUT); }
इसके बाद हम सीरियल संचार रूप ब्लूटूथ मॉड्यूल का उपयोग करके इनपुट पढ़ते हैं और तदनुसार ऑपरेशन करते हैं।
शून्य लूप () {जबकि (Serial.available ()) {char ch = Serial.read (); str = ch; if (str == '1') {Serial.println ("फॉरवर्ड"); आगे(); i = 0; } और अगर (str == '2') {Serial.println ("वाम"); सही(); i = 0; } और अगर (str == '3') {Serial.println ("राइट"); बाएं(); i = 0; }
फिर हमने कार के विभिन्न दिशाओं के लिए फ़ंक्शन बनाए हैं। इस ब्लूटूथ नियंत्रित कार के लिए पांच शर्तें हैं जो निर्देश देने के लिए उपयोग की जाती हैं:
ब्लूटूथ कंट्रोलर ऐप में टच बटन |
दिशा देने के लिए सामने की ओर मोटर के लिए आउटपुट |
आगे या पीछे की दिशा में आगे बढ़ने के लिए रियर साइड मोटर के लिए आउटपुट |
|||
बटन |
एम 11 |
एम 12 |
M21 |
एम 22 |
दिशा |
रुकें |
० |
० |
० |
० |
रुकें |
आगे |
० |
० |
० |
1 |
आगे |
पिछड़ा |
० |
० |
1 |
० |
पिछड़ा |
सही |
1 |
० |
० |
1 |
सही |
बाएं |
० |
1 |
० |
1 |
बाएं |