विषयसूची:
वीडियो: Arduino टैंक कार पाठ 6--ब्लूटूथ और वाईफ़ाई हॉट स्पॉट नियंत्रण: 4 चरण
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:22
इस पाठ में, हम सीखेंगे कि वाईफाई और ब्लूटूथ के माध्यम से रोबोट कार मोबाइल एपीपी को कैसे नियंत्रित किया जाए।, हम विस्तार बोर्ड के रूप में esp8266 वाईफाई एस्पेशन बोर्ड का उपयोग करते हैं और पिछले पाठों में IR रिसीवर के माध्यम से टैंक कार को नियंत्रित करते हैं। इस पाठ में, हम सीखेंगे कि एक्सपेंशन बोर्ड से हॉट स्पॉट को जोड़ने के लिए फोन का उपयोग कैसे करें और फोन ऐप के माध्यम से कार की गति को नियंत्रित करें। साथ ही, आप ब्लूटूथ को एक्सपेंशन बोर्ड में भी लगा सकते हैं और फोन ब्लूटूथ के माध्यम से कार की गति को नियंत्रित कर सकते हैं।
विस्तृत ट्यूटोरियल:
इसे यूएसए के लिए खरीदें: Amazon.com
चरण 1: यह कैसे काम करता है
ESP8266 बोर्ड से DoitWIFI_Config नामक एक हॉट स्पॉट है
काम करने का समय और आप बिना पासवर्ड के फोन वाईफाई के जरिए हॉट स्पॉट को कनेक्ट कर सकते हैं। जब ESP8266 बोर्ड के स्विच को "ON" में बदल दें, तो arduino और esp8266 के संदेश को सीरियल पोर्ट द्वारा एक्सचेंज किया जा सकता है। कंट्रोल कमांड को ESP8266 को फोन ऐप के माध्यम से भेजा जा सकता है और फिर arduino और ESP8266 बोर्ड के बीच सीरियल पोर्ट के माध्यम से arduino को भेजा जा सकता है।.
जब Arduino और ESP8266 बोर्ड के बीच सीरियल पोर्ट को डिस्कनेक्ट करने के लिए ESP8266 बोर्ड के स्विच को "1" और "2" स्थिति में बदल दें। यदि आप ब्लूटूथ मॉड्यूल को esp8266 बोर्ड पर रखते हैं और इसे फोन ब्लूटूथ के माध्यम से कनेक्ट करते हैं, तो Arduino और esp8266 के संदेश को ब्लूटूथ मॉड्यूल के माध्यम से सीरियल पोर्ट द्वारा एक्सचेंज किया जा सकता है।
ESP8266 Wifi शील्ड बोर्ड के बारे में अधिक जानकारी प्राप्त करें, कृपया यहाँ जाएँ:
चरण 2: सॉफ़्टवेयर स्थापना
चरण 1: नवीनतम Arduino IDE स्थापित करें (यदि आपके पास 1.1.16 के बाद Arduino IDE संस्करण है, तो कृपया इस चरण को छोड़ दें)
Arduino IDE को https://www.arduino.cc/en/Main/Software?setlang=e… से डाउनलोड करें और फिर सॉफ्टवेयर इंस्टॉल करें।
चरण 2: https://www.kookye.com/download/car/tank_robot_les से पाठ 7 नमूना कोड डाउनलोड करें… डाउनलोड ज़िप फ़ाइल को अनज़िप करें Tank_robot_lesson7.zip, आपको Tank_robot_lesson7 नामक एक फ़ोल्डर दिखाई देगा।
चरण 3: UNO R3 बोर्ड को USB केबल से पीसी से कनेक्ट करें, Arduino IDE खोलें -> फ़ाइल पर क्लिक करें -> ओपन पर क्लिक करें -> टैंक_रोबोट_लेसन 7 फ़ोल्डर में कोड "tank_robot_lesson7.ino" चुनें, कोड को arduino में लोड करें।
चरण 4: अपने प्रोजेक्ट के लिए संबंधित बोर्ड और पोर्ट चुनें, स्केच को बोर्ड पर अपलोड करें।
चरण 5: एपीपी डाउनलोड करें और इसे अपने फोन पर इंस्टॉल करें: https://kookye.com/download/car/car.apkनोट: यह ऐप सिर्फ एंड्रॉइड का समर्थन कर सकता है और हम ऐप सोर्स कोड (https://kookye.com) प्रदान करते हैं। /डाउनलोड/कार/बीटीकार-मास्टर.ज़िप)। आप अपनी आवश्यकताओं के अनुसार कोड को संशोधित और निजीकृत कर सकते हैं।
चरण 3: कोड को समझें
इस प्रोग्राम का उपयोग फोन ऐप से कंट्रोल कमांड प्राप्त करने के लिए किया जाता है।
// सीरियल नियंत्रण के माध्यम से वाईफाई / ब्लूटूथ
शून्य do_Uart_Tick ()
{
चार Uart_Date=0;
अगर (सीरियल उपलब्ध ())
{ size_t लेन = सीरियल.उपलब्ध ();
uint8_t एसबीयूएफ [लेन + 1];
एसबीयूएफ [लेन] = 0x00;
Serial.readBytes(sbuf, len);
//parseUartPackage((char*)sbuf);
memcpy(buffUART + buffUARTIndex, sbuf, len);
// सुनिश्चित करें कि सीरियल पोर्ट डेटा के पूरे फ्रेम को पढ़ सकता है
बफुआर्टइंडेक्स += लेन;
preUARTTick = मिली ();
अगर (बफयूएआरटीइंडेक्स>= MAX_PACKETSIZE -1)
{ बफयूएआरटीइंडेक्स = MAX_PACKETSIZE - 2;
preUARTTick = preUARTTick - २००; }
}
if(buffUARTIndex > 0 && (मिली() - प्रीयूएआरटीटिक>= 100))
// एपीपी बाधा से बचने के मापदंडों को संशोधित करने के लिए ध्वज भेजता है
{// डेटा तैयार बफ़र [buffUARTIndex] = 0x00;
अगर (बफर्ट [0] == 'सी')
{ सीरियल.प्रिंट्लन (बफयूएआरटी);
Serial.println ("आपने मापदंडों को संशोधित किया है!");
// इंगित करता है कि बाधा परिहार दूरी पैरामीटर संशोधित किया गया है sscanf(buffUART, "CMD%d, %d, %d", &distancelimit, &sideistancelimit, &turntime);}
अन्य Uart_Date=buffUART[0];
बफयूएआरटीइंडेक्स = 0;
}
स्विच (Uart_Date) // सीरियल नियंत्रण निर्देश
{केस '2': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_ADVANCE; Serial.println ("फॉरवर्ड"); टूटना;
केस '4': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_LEFT; Serial.println ("बाएं मुड़ें"); ब्रेक;
केस '6': Drive_Status=MANUAL_DRIVE; Drive_Num=GO_RIGHT; Serial.println ("दाएं मुड़ें"); ब्रेक;
केस '8': Drive_Status=MANUAL_DRIVE; ड्राइव_नम = GO_BACK; Serial.println ("वापस जाओ"); ब्रेक;
केस '5': Drive_Status=MANUAL_DRIVE; Drive_Num=STOP_STOP;buzz_off();Serial.println("stop");break;
केस '3': Drive_Status=AUTO_DRIVE_UO; Serial.println ("बाधाओं से बचें…");ब्रेक;
केस '1': Drive_Status=AUTO_DRIVE_LF; Serial.println ("लाइन फॉलो करें…");ब्रेक;
डिफ़ॉल्ट: ब्रेक;
}
}
चरण 4: हार्डवेयर स्थापना
चरण 1: UNO R3 बोर्ड पर ESP8266 विस्तार बोर्ड स्थापित करें।
चरण 2: यदि आप ब्लूटूथ के माध्यम से कार को नियंत्रित करना चाहते हैं, तो कृपया ESP8266 पर ब्लूटूथ मॉड्यूल को निम्नानुसार स्थापित करें और स्विच को "1, 2" स्थिति में रखें। यदि आप वाईफाई के माध्यम से कार को नियंत्रित करना चाहते हैं, तो कृपया ब्लूटूथ मॉड्यूल के बिना esp8266 बोर्ड रखें और esp8266 के स्विच को "चालू" स्थिति में बदल दें।
नोट: ब्लूटूथ मॉड्यूल और Arduino बोर्ड UART सीरियल पोर्ट के माध्यम से एक दूसरे के साथ संवाद करते हैं। कृपया Arduino बोर्ड में स्केच अपलोड करने से पहले ब्लूटूथ मॉड्यूल को हटा दें, या स्केच को असफल रूप से अपलोड किया जाएगा।
चरण 3: दो 12865 बैटरी को बैटरी बॉक्स में डालें और बॉक्स के स्विथ को "चालू" में बदल दें। (यदि आपने पाठ एक पर उपरोक्त चरणों को पूरा कर लिया है, तो कृपया इन चरणों को छोड़ दें)
चरण 4: फोन ऐप और वाईफाई खोलें, "DoitWIFI_Config" नामक हॉट स्पॉट ढूंढें और इसे कनेक्ट करें।
Step5: ऐप खोलें >> वाईफाई मोड चुनें >> फिर आप वाईफाई के जरिए रोबोट कार को कंट्रोल कर सकते हैं
चरण 6: यदि आप ब्लूटूथ के माध्यम से रोबोट कार को नियंत्रित करना चाहते हैं, तो कृपया अपने एंड्रॉइड फोन के ब्लूटूथ को चालू करें जिसे आपने एपीपी स्थापित किया है और ब्लूटूथ स्कैन करें (अलग ब्लूटूथ मॉड्यूल अलग ब्लूटूथ नाम स्कैन करेगा), कनेक्ट पर क्लिक करें और पासवर्ड "1234" दर्ज करें या "0000" यदि कोई परिवर्तन नहीं है (आप वाईफाई या ब्लूटूथ के माध्यम से कार को नियंत्रित करने के लिए स्विच करने के लिए एंड्रॉइड फोन में वाईफाई या ब्लूटूथ सेटिंग्स बदल सकते हैं):
Step7: ऐप खोलें>> ब्लूटूथ मोड चुनें>> फिर आप ब्लूटूथ के माध्यम से रोबोट कार को नियंत्रित कर सकते हैं:
तीन कार्य मोड हैं: मैन्युअल नियंत्रण, बाधा से बचाव और ट्रैकिंग। उपयोगकर्ता तीन कार्य मोड के बीच स्वतंत्र रूप से स्विच कर सकते हैं। 1) मैन्युअल नियंत्रण मोड में, आप आगे और पीछे जाने के लिए रोबोट कार को नियंत्रित करने के लिए बटन (^) (वी) () पर क्लिक कर सकते हैं, दाएं और बाएं मुड़ सकते हैं। इस बीच, एपीपी कार वास्तविक समय आंदोलन का निरीक्षण कर सकता है।
2) वर्तमान मोड को ट्रैकिंग मोड में बदलने के लिए ऐप के "ट्रैकिंग" बटन पर क्लिक करें। रोबोट कार सफेद पृष्ठभूमि में काली रेखा के साथ आगे बढ़ेगी। इस बीच, एपीपी कार वास्तविक समय आंदोलन का निरीक्षण कर सकता है। प्रेस "||" आगे बढ़ना बंद करने के लिए बटन और रोबोट कार वर्किंग मोड को बदलने के लिए अन्य बटन पर क्लिक करें। इस विधा के बारे में अधिक जानने के लिए, कृपया हमारे पाठ 4 की समीक्षा करें।
3) वर्तमान मोड को बाधा परिहार मोड में बदलने के लिए "बाधा" बटन पर क्लिक करें। रोबोट कार को लगातार आगे बढ़ाया जा सकता है और रास्ते में कोई भी बाधा आने पर उसे रोका और दूर किया जा सकता है। प्रेस "||" हिलना बंद करने के लिए बटन और फिर रोबोट कार वर्किंग मोड को बदलने के लिए अन्य बटन पर क्लिक करें। इस विधा के बारे में अधिक जानने के लिए, कृपया हमारे पाठ 5 की समीक्षा करें।