विषयसूची:

OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग: 5 चरण (चित्रों के साथ)
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग: 5 चरण (चित्रों के साथ)

वीडियो: OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग: 5 चरण (चित्रों के साथ)

वीडियो: OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग: 5 चरण (चित्रों के साथ)
वीडियो: AmazingChina: Modular & Flexible LED TV Wall 2024, नवंबर
Anonim
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग
OLED डिस्प्ले प्रोजेक्ट के साथ GPS मॉनिटरिंग

सभी को नमस्कार, इस त्वरित लेख में मैं आपके साथ अपना प्रोजेक्ट साझा करूंगा: SAMD21J18 माइक्रोकंट्रोलर और SSD1306 OLED 128 * 64 डिस्प्ले के साथ ATGM332D GPS मॉड्यूल, मैंने इसके लिए ईगल ऑटोडेस्क पर एक विशेष पीसीबी बनाया, और इसे Atmel स्टूडियो 7.0 और ASF4 का उपयोग करके प्रोग्राम किया। इस लेख में मैं आपके साथ इस यात्रा और उन फाइलों को साझा करूंगा जिनका मैंने उपयोग किया है यदि आप इसे स्वयं करने के लिए दिलचस्प हैं।

अब यदि आप Arduino का उपयोग करके अपने MCU/विकास बोर्ड की प्रोग्रामिंग कर रहे हैं, तो यह परियोजना आपके लिए अपेक्षाकृत आसान होनी चाहिए, लेकिन यहाँ मैं Atmel/Microchip से ASF4 (उन्नत सॉफ़्टवेयर फ़्रेमवर्क 4) का उपयोग करूँगा जो C भाषा पर आधारित है और आपको एक विचार देगा USART एसिंक्रोनस ड्राइवर (कॉलबैक) का उपयोग करके GPS NMEA संदेश को कैसे पढ़ें और आपको एक साधारण पुस्तकालय प्रदान करें कि आप इसे किसी भी माइक्रो-नियंत्रक और विभिन्न प्लेटफ़ॉर्म के साथ उपयोग कर सकते हैं, बस उस उपयुक्त ड्राइवर को जोड़ें जिसका उपयोग आप संदेश प्राप्त करने के लिए कर रहे हैं। जीपीएस (एनएमईए संदेश)।

मैं इस लेख को इसमें विभाजित करूंगा:

  1. पीसीबी डिजाइन।
  2. बीओएम आपको पीसीबी को इकट्ठा करने की जरूरत है
  3. सॉफ़्टवेयर और कोड को त्वरित रूप से देखें और हार्डवेयर और सॉफ़्टवेयर के लिए एक परीक्षण।
  4. अंत में लेकिन कम से कम इस परियोजना के लिए सुधार के कुछ बिंदु नहीं।

आपको इस परियोजना से संबंधित सभी सामग्री जीथब (यहां) पर मिल जाएगी।

चरण 1: ईगल का उपयोग करके पीसीबी डिजाइन

ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन
ईगल का उपयोग कर पीसीबी डिजाइन

यह परियोजना मुख्य रूप से ATGM332D GPS मॉड्यूल पर आधारित है, उपयोग करने के लिए सरल GPS क्योंकि इसे काम करने के लिए केवल कुछ निष्क्रिय घटकों की आवश्यकता होती है, और यदि हम मॉड्यूल से मुख्य शक्ति स्रोत को बंद करते हैं, तो हम समय/तिथि बचाने के लिए एक बैकअप बैटरी जोड़ सकते हैं।

और सर्किट में सभी संकेतों को नियंत्रित करने के लिए मैं ATSAMD21J18B माइक्रोकंट्रोलर, TQFP64 पैकेज के साथ गया क्योंकि इसमें 128KByte प्रोग्राम मेमोरी स्टोरेज और 32KByte डेटा मेमोरी है (और मेरे पास उनमें से बहुत सारे मेरे कार्यक्षेत्र के आसपास हैं)।

सर्किट USB 5V स्रोत द्वारा संचालित होगा, साथ ही USB वर्चुअल COM पोर्ट (CDC USB) के रूप में कार्य कर सकता है और यदि आप USB के माध्यम से डिवाइस के साथ संचार करना चाहते हैं तो आप इसके लिए एक कोड जोड़ सकते हैं।

प्रदर्शन के लिए मैंने SPI बस के साथ SSD1306 0.96 'OLED डिस्प्ले का चयन किया, यह छोटा है लेकिन यह मेरे इच्छित पीसीबी आकार के लिए उपयुक्त है, बोर्ड आयाम 100x31 मिमी।

माइक्रोकंट्रोलर की प्रोग्रामिंग SWD प्रोग्रामर (मैं Atmel ICE का उपयोग करता हूं) के माध्यम से होगी और इसे 1.27mm 10p पिन हेडर के माध्यम से कनेक्ट करेगा।

मैंने बोर्ड के लिए 3डी दृश्य प्राप्त करने के लिए Fusion360 का भी उपयोग किया और आप इसके लिए कुछ प्रदान की गई छवि भी देख सकते हैं।

चरण 2: पीसीबी को टांका लगाना

पीसीबी को टांका लगाना
पीसीबी को टांका लगाना
पीसीबी सोल्डरिंग
पीसीबी सोल्डरिंग
पीसीबी सोल्डरिंग
पीसीबी सोल्डरिंग

आपके पास अपने पीसीबी के साथ एक स्टैंसिल ऑर्डर करने का विकल्प है, स्टैंसिल का उपयोग करके बोर्ड पर सोल्डर पेस्ट को लागू करना आसान है, मैंने घटकों को एक साथ मिलाप करने के लिए गर्म प्लेट का उपयोग किया, गर्म हवा का उपयोग करना भी ठीक है, लेकिन एलईडी को सोल्डर करते समय सावधान रहें वे गर्मी के प्रति इतने संवेदनशील होते हैं।

नीचे की तरफ टांका लगाना थोड़ा आसान है क्योंकि इसमें केवल SWD पिन हेडर और बैकअप बैटरी है, जिसे आप सोल्डरिंग आयरन का उपयोग करके मिलाप कर सकते हैं।

इससे पहले कि आप सर्किट को किसी यूएसबी पावर स्रोत से कनेक्ट करें, किसी भी शॉर्ट सर्किट की जांच करें।

अपने जीपीएस एंटीना को कनेक्ट करें और सुनिश्चित करें कि आपने इसे कनेक्टर को ठीक से मिलाप किया है, मैंने बोर्ड के नीचे की तरफ एंटीना को ठीक किया है।

चरण 3: सॉफ्टवेयर … कार्यक्षमता… परिणाम

Image
Image
सॉफ्टवेयर… कार्यक्षमता…परिणाम
सॉफ्टवेयर… कार्यक्षमता…परिणाम
सॉफ्टवेयर… कार्यक्षमता…परिणाम
सॉफ्टवेयर… कार्यक्षमता…परिणाम

सॉफ्टवेयर को 4 भागों में बांटा जाएगा:

  1. USART ATGM332 GPS मॉड्यूल के साथ संचार करेगा।
  2. ओएलईडी के साथ संवाद करने के लिए एसपीआई।
  3. यूएसबी सीडीसी।
  4. एलईडी को नियंत्रित करने के लिए GPIO

पहले USB कनेक्टर को सर्किट पर पावर से कनेक्ट करें और फिर रिबन केबल को SWD कनेक्टर से कनेक्ट करें।

जीथब से कोड डाउनलोड करें (यहां लिंक करें)।

भू-स्थान प्राप्त करने के लिए आपके पास 3 अलग-अलग NMEA संदेश विकल्प हैं:

  1. जीपीजीजीए
  2. जीपीआरएमसी
  3. जीपीजीएलएल

मैंने स्थान, समय और दिनांक (समय 0.0 GMT है) प्राप्त करने के लिए GPRMC वाक्य का उपयोग किया है, इसलिए कोड में आप पाएंगे:

GPRMC. Enable=1;/*0 अगर इस संदेश की कोई आवश्यकता नहीं है*/

GPGGA. Enable=0;/*0 अगर इस संदेश की कोई आवश्यकता नहीं है*/

GPGLL. Enable=0;/*0 यदि इस संदेश की कोई आवश्यकता नहीं है*/

आप उन सभी को एक साथ सक्षम कर सकते हैं और उन्हें एक ही समय में पढ़ सकते हैं जो आपको आवश्यक डेटा प्राप्त कर सकते हैं।

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

अगर फिक्स 'ए' है तो इसका मतलब है कि लोकेशन उपलब्ध है, अगर फिक्स 'वी' है तो इसका मतलब है कि लोकेशन उपलब्ध नहीं है।

ध्यान दें कि ATSAMD21 में आंतरिक RTC है, लेकिन यहां मैं इसका उपयोग नहीं करता और इसके बजाय मैं सीधे GPS से समय और दिनांक का उपयोग करता हूं, इसलिए यदि आप CR1220 बैकअप बैटरी का उपयोग नहीं करना चाहते हैं, तो एक बार जब आप USB पावर स्रोत को डिस्कनेक्ट कर देंगे समय / तिथि खो दें और अगली बार जब आप सर्किट पर बिजली चालू करेंगे तो डिस्प्ले पर समय / तारीख क्षेत्र तब तक खाली रहेगा जब तक कि जीपीएस का वैध समय / तिथि मान न हो।

डिस्प्ले आपको GPS की वर्तमान स्थिति दिखाएगा और उपलब्ध होने पर भू-स्थान दिखाएगा, हालाँकि बोर्ड पर 3 LED हैं:

  1. ग्रीन एलईडी PA06 से जुड़ा है, और अगर कोई वैध भू-स्थान मान है तो यह झपकेगा।
  2. ऑरेंज एलईडी PA07 से जुड़ा है और कोई वैध भू-स्थान नहीं होने पर एक सेकंड में एक बार झपकाएगा।
  3. लाल एलईडी यह जीपीएस मॉड्यूल के पीपीएस पिन से जुड़ा है और केवल तभी झपकाएगा जब स्थान से संबंधित एक वैध संकेत होगा।

परिणाम

सर्किट ने मेरे साथ बहुत अच्छा काम किया, जीपीएस से भू-स्थान प्राप्त करें, आकाश को स्पष्ट दृष्टि से और बिना किसी समस्या के इमारतों के बीच में बोर्ड के नीचे की तरफ एंटीना के साथ 20-30 सेकंड का समय लिया।

चरण ४: ३डी प्रिंटेड केस… क्रमबद्ध करें

३डी प्रिंटेड केस… सॉर्ट करें
३डी प्रिंटेड केस… सॉर्ट करें

मैंने इस सर्किट के लिए एक साधारण केस (अधिक सटीक धारक) तैयार किया था, लेकिन COVID-19 महामारी और लॉकडाउन के कारण, मैं इसे प्रिंट करने के लिए अपने 3D प्रिंटर तक नहीं पहुंच सका, इसलिए मैं इस अनुभाग को stl के साथ अपडेट करूंगा। एक बार उपलब्ध होने पर धारक के लिए फ़ाइल और एक फ़ोटो।

चरण 5: सुधार करने के लिए चीजें …

सुधार करने के लिए चीजें…
सुधार करने के लिए चीजें…
सुधार करने के लिए चीजें…
सुधार करने के लिए चीजें…
सुधार करने के लिए चीजें…
सुधार करने के लिए चीजें…
  1. SWD कनेक्टर को ऊपर की ओर ले जाना क्योंकि इसे अपने प्रोग्रामर से कनेक्ट करना आसान है।
  2. लिथियम बैटरी से सर्किट को पावर देना, मैंने इसे एक जम्पर को सोल्डर करके किया और यह ठीक काम किया, नंगे दिमाग में कि रैखिक (एलडीओ) नियामक में वी ड्रॉप वोल्टेज होता है यदि (वीबैट - वाउट) वीड्रॉप सीमा से कम सर्किट काम नहीं कर सकता है अच्छी तरह से ।
  3. उपयोगकर्ता बटन को थोड़ा बड़ा करना जिससे इसे दबाना आसान हो जाएगा।
  4. यूएसबी सीडीसी कोड जोड़ना ताकि आप मैक/पीसी/लिनक्स के लिए एक विशेष प्रोग्राम को संवाद/डिज़ाइन कर सकें।
  5. GPS एंटीना के लिए, मैंने इस परियोजना के लिए सक्रिय एंटीना का उपयोग किया, एक निष्क्रिय एंटीना का उपयोग करना संभव है, AT2659 जैसे कम शोर वाले op-Amp को जोड़कर (ATGM332 डेटाशीट P.14 पर योजनाबद्ध भी देखें)।
  6. OLED 0.96' SSD1306 के लिए, मूल रूप से 128*32 डिस्प्ले के लिए माइक्रोचिप से आधिकारिक पुस्तकालय, 128*64 के साथ काम करने के लिए कोड को संशोधित करने के लिए आपको ssd1306.c पर जाना होगा और कोड को संशोधित करना होगा (छवि की जांच करें)।

सिफारिश की: