विषयसूची:

सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2: 4 चरण (चित्रों के साथ)
सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2: 4 चरण (चित्रों के साथ)

वीडियो: सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2: 4 चरण (चित्रों के साथ)

वीडियो: सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2: 4 चरण (चित्रों के साथ)
वीडियो: How to Use CC2500 PA LNA 2.4GHz Wireless RF Modules 2024, जुलाई
Anonim
सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2
सस्ते 433 मेगाहर्ट्ज आरएफ मॉड्यूल और पिक माइक्रोकंट्रोलर का उपयोग करके वायरलेस संचार। भाग 2

इस निर्देश के पहले भाग पर, मैंने दिखाया कि कैसे एक PIC12F1822 को MPLAB IDE और XC8 कंपाइलर का उपयोग करके प्रोग्राम किया जाए, ताकि सस्ते TX / RX 433MHz मॉड्यूल का उपयोग करके एक साधारण स्ट्रिंग वायरलेस तरीके से भेजी जा सके।

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

इस परियोजना का दूसरा भाग दर्शाता है कि रिसीवर पर एक PIC16F887 माइक्रोकंट्रोलर और एक 16×2 वर्ण एलसीडी मॉड्यूल कैसे जोड़ा जाए। इसके अलावा, ट्रांसमीटर पर, कुछ प्रस्तावना बाइट्स को जोड़ने के साथ एक सरल प्रोटोकॉल का पालन किया जाता है। वास्तविक पेलोड प्राप्त करने से पहले आरएक्स मॉड्यूल के लाभ को समायोजित करने के लिए ये बाइट आवश्यक हैं। रिसीवर की तरफ, पीआईसी एलसीडी स्क्रीन पर प्रदर्शित होने वाले डेटा को प्राप्त करने और मान्य करने के लिए जिम्मेदार है।

चरण 1: ट्रांसमीटर संशोधन

ट्रांसमीटर संशोधन
ट्रांसमीटर संशोधन
ट्रांसमीटर संशोधन
ट्रांसमीटर संशोधन
ट्रांसमीटर संशोधन
ट्रांसमीटर संशोधन

पहले भाग पर, ट्रांसमीटर आठ डेटा बिट्स, एक स्टार्ट और 1200 बिट्स प्रति सेकंड पर स्टॉप बिट का उपयोग करके हर कुछ एमएस में एक साधारण स्ट्रिंग भेज रहा था। चूंकि ट्रांसमिशन लगभग निरंतर था, रिसीवर को प्राप्त डेटा के लाभ को समायोजित करने में कोई परेशानी नहीं हुई। दूसरे भाग पर, फर्मवेयर को संशोधित किया जाता है ताकि ट्रांसमिशन हर 2.3 सेकंड में किया जा सके। यह माइक्रोकंट्रोलर को जगाने के लिए वॉचडॉग टाइमर इंटरप्ट (2.3s पर सेट) का उपयोग करके प्राप्त किया जाता है, जिसे प्रत्येक ट्रांसमिशन के बीच स्लीप मोड में रखा जाता है।

रिसीवर को अपने लाभ को ठीक करने के लिए समय देने के लिए, कुछ प्रस्तावना बाइट्स छोटे LO समय के साथ "(0Xf8)(0Xf8)(0Xf8)(0Xf8)(0Xf8)(0Xfa)" वास्तविक डेटा से पहले भेजे जाते हैं। पेलोड को तब एक स्टार्ट '&' और एक स्टॉप '*' बाइट द्वारा दर्शाया जाता है।

इसलिए, सरल प्रोटोकॉल को निम्नानुसार वर्णित किया गया है:

(0Xf8)(0Xf8)(0Xf8)(0Xf8)(0Xf8)(0Xfa)&Hello InstWorld!*

इसके अलावा, डीसी-डीसी स्टेप अप मॉड्यूल के कारण होने वाली लहर से छुटकारा पाने के लिए आरएफ मॉड्यूल के वी + और जीएनडी के बीच एक 10uF डिकूपिंग टैंटलम कैपेसिटर जोड़ा जाता है।

बॉड दर वही रही, फिर भी मेरे परीक्षणों से पता चला कि 2400 बॉड पर भी संचरण कुशल था।

चरण 2: रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना

रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना
रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना
रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना
रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना
रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना
रिसीवर संशोधन: PIC16F887 और HD44780 LCD जोड़ना

रिसीवर का डिज़ाइन PIC16F887 पर आधारित था, लेकिन आप थोड़े संशोधनों के साथ एक अलग PIC का उपयोग कर सकते हैं। अपने प्रोजेक्ट में मैंने इस 40 पिन μC का उपयोग किया, क्योंकि मुझे इस डिज़ाइन के आधार पर भविष्य की परियोजनाओं के लिए अतिरिक्त पिन की आवश्यकता होगी। RF मॉड्यूल का आउटपुट UART rx पिन से जुड़ा होता है, जबकि प्राप्त डेटा को प्रदर्शित करने के लिए एक 16x2 कैरेक्टर का LCD (HD44780) PORTB पिन b2-b7 के माध्यम से जुड़ा होता है।

भाग 1 की तरह, प्राप्त डेटा को भी RealTerm पर प्रदर्शित किया जाता है। यह UART tx पिन का उपयोग करके प्राप्त किया जाता है जो एक USB से UART TTL केबल एडॉप्टर के माध्यम से एक पीसी से जुड़ा होता है।

फर्मवेयर को देखते हुए, जब एक UART इंटरप्ट होता है, तो प्रोग्राम जांचता है कि प्राप्त बाइट एक स्टार्ट बाइट ('&') है या नहीं। यदि हां, तो यह बाद के बाइट्स को रिकॉर्ड करना शुरू कर देता है, जब तक कि स्टॉप बाइट पकड़ा नहीं जाता ('*')। जैसे ही पूरा वाक्य प्राप्त होता है, और यदि यह पहले वर्णित सरल प्रोटोकॉल के अनुरूप है, तो इसे एलसीडी स्क्रीन पर और साथ ही यूएआरटी टीएक्स पोर्ट पर भेजा जाता है।

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

हार्डवेयर के संदर्भ में, रिसीवर के लिए कुछ भागों की आवश्यकता होती है:

1 एक्स PIC16F887

1 एक्स एचडी44780

1 एक्स आरएफ आरएक्स मॉड्यूल 433 मेगाहर्ट्ज

1 x 10 μF टैंटलम कैपेसिटर (डिकूपिंग)

1 x 10 K ट्रिमर (एलसीडी फ़ॉन्ट चमक)

1 x 220 1/4 W रोकनेवाला (एलसीडी बैकलाइट)

1 एक्स 1 केΩ 1/4 डब्ल्यू

1 एक्स एंटीना 433 मेगाहर्ट्ज, 3 डीबीआई

व्यवहार में, प्राप्त दीवारों ने 20 मीटर तक की दूरी में असाधारण रूप से अच्छी तरह से काम किया।

चरण 3: कुछ संदर्भ…

वेब पर कई ब्लॉग हैं जो आधिकारिक माइक्रोचिप वेबसाइट के अलावा पीआईसी प्रोग्रामिंग और समस्या निवारण पर सुझाव देते हैं। मुझे निम्नलिखित बहुत मददगार लगे:

www.romanblack.com/

0xee.net/

www.ibrahimlabs.com/

picforum.ric323.com/

चरण 4: निष्कर्ष और भविष्य का कार्य

मुझे उम्मीद है कि इस निर्देश ने आपको यह समझने में मदद की कि RF मॉड्यूल और Pic माइक्रोकंट्रोलर का उपयोग कैसे करें। आप अपने फर्मवेयर को अपनी आवश्यकताओं के अनुसार समायोजित कर सकते हैं और सीआरसी और एन्क्रिप्शन शामिल कर सकते हैं। यदि आप अपने डिज़ाइन को और अधिक परिष्कृत बनाना चाहते हैं, तो आप माइक्रोचिप की कीलोक तकनीक का उपयोग कर सकते हैं। यदि आपके एप्लिकेशन को द्वि-दिशात्मक डेटा की आवश्यकता है, तो आपको दोनों माइक्रोकंट्रोलर पर TX/RX की एक जोड़ी की आवश्यकता होगी, या आप अधिक परिष्कृत ट्रांसीवर का उपयोग कर सकते हैं। मॉड्यूल। हालांकि, इस तरह के सस्ते 433 मेगाहर्ट्ज मॉड्यूल का उपयोग करके, केवल आधा डुप्लेक्स संचार पूरा किया जा सकता है। इसके अलावा, संचार को अधिक विश्वसनीय बनाने के लिए आपको TX और RX के बीच किसी प्रकार के हैंडशेकिंग की आवश्यकता होगी।

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

सेंसर PIC12F1822 के i2c पोर्ट का उपयोग करेगा, जबकि ट्रांसमीटर और रिसीवर दोनों के कार्यान्वयन को योजनाबद्ध और पीसीबी फाइलों के माध्यम से उजागर किया जाएगा। मुझे पढ़ने के लिए धन्यवाद!

सिफारिश की: