Arduino के साथ MPR121 कैपेसिटिव टच सेंसर का उपयोग कैसे करें

How to Use the MPR121 Capacitive Touch Sensor with Arduino

MPR121 एक कैपेसिटिव टच सेंसर कंट्रोलर है जो 12 टच-सेंसिटिव इलेक्ट्रोड तक का पता लगा सकता है। यह आमतौर पर स्पर्श-संवेदनशील इंटरफेस, संगीत वाद्ययंत्र और अन्य इंटरैक्टिव परियोजनाओं में उपयोग किया जाता है। इस ट्यूटोरियल में, हम आपको दिखाएंगे कि टच-आधारित एप्लिकेशन बनाने के लिए Arduino के साथ MPR121 को कैसे जोड़ा और उपयोग किया जाए।


आपको क्या चाहिए

  1. MPR121 टच सेंसर मॉड्यूल
  2. Arduino बोर्ड (जैसे, UNO, मेगा, नैनो)
  3. ब्रेडबोर्ड और जम्पर तार
  4. Arduino IDE के साथ एक कंप्यूटर स्थापित

चरण 1: MPR121 मॉड्यूल को समझना

MPR121 एक माइक्रोकंट्रोलर के साथ इंटरफ़ेस करने के लिए I2C संचार का उपयोग करता है। इसमें 12 टच-सेंसिटिव इनपुट हैं जो कैपेसिटिव परिवर्तनों का पता लगा सकते हैं जब एक प्रवाहकीय वस्तु (जैसे, एक उंगली) इलेक्ट्रोड के पास होती है।

MPR121 पिनआउट

नत्थी करना समारोह
वीसीसी बिजली की आपूर्ति (3.3V/5V)
Gnd मैदान
एसएडीए I2C डेटा लाइन
आयोग I2C क्लॉक लाइन
आईआरक्यू रुकावट आउटपुट (वैकल्पिक)

चरण 2: MPR121 को Arduino को वायरिंग करें

यहाँ MPR121 को Arduino UNO से कैसे कनेक्ट किया जाए:

MPR121 पिन अर्डुइनो पिन
वीसीसी 5V
Gnd Gnd
एसएडीए ए 4 (एसडीए)
आयोग ए 5 (एससीएल)
Irq (वैकल्पिक) जुड़े नहीं हैं

टिप्पणी: अन्य Arduino बोर्डों के लिए, अपने बोर्ड के प्रलेखन में I2C पिन को सत्यापित करें।


चरण 3: आवश्यक पुस्तकालय स्थापित करें

Adafruit MPR121 लाइब्रेरी सेंसर के साथ काम करने में सरल है।

स्थापित करने के लिए कदम:

  1. Arduino ide खोलें।
  2. जाओ स्केच > पुस्तकालय शामिल करें > पुस्तकालयों का प्रबंधन करें.
  3. "Adafruit MPR121" के लिए खोजें और क्लिक करें स्थापित करना.

चरण 4: कोड अपलोड करें

MPR121 से टच इनपुट का पता लगाने के लिए यहां एक उदाहरण स्केच है:

#include <Wire.h>
#include "Adafruit_MPR121.h"

Adafruit_MPR121 mpr121 = Adafruit_MPR121();

void setup() {
  Serial.begin(9600);
  Serial.println("Initializing MPR121...");

  if (!mpr121.begin(0x5A)) { // Default I2C address is 0x5A
    Serial.println("MPR121 not found. Check connections.");
    while (1);
  }

  Serial.println("MPR121 initialized.");
}

void loop() {
  // Read touch status
  uint16_t touchStatus = mpr121.touched();

  for (uint8_t i = 0; i < 12; i++) {
    if (touchStatus & (1 << i)) {
      Serial.print("Electrode ");
      Serial.print(i);
      Serial.println(" touched.");
    }
  }

  delay(100); // Update every 100ms
}

चरण 5: सेटअप का परीक्षण करें

  1. USB के माध्यम से अपने कंप्यूटर से Arduino कनेक्ट करें।
  2. Arduino ide खोलें और सही का चयन करें तख़्ता और पत्तन नीचे औजार मेनू।
  3. क्लिक करके Arduino पर कोड अपलोड करें अपलोड करना.
  4. सीरियल मॉनिटर खोलें (औजार > सीरियल मॉनिटर) और बॉड दर निर्धारित करें 9600.
  5. MPR121 मॉड्यूल पर इलेक्ट्रोड को स्पर्श करें, और पता लगाए गए टच इनपुट के लिए सीरियल मॉनिटर का निरीक्षण करें।

वैकल्पिक: इंटरप्ट के लिए IRQ पिन का उपयोग करना

IRQ पिन का उपयोग एक स्पर्श का पता लगाने पर एक रुकावट को ट्रिगर करने के लिए किया जा सकता है, जिससे सेंसर को लगातार पोल करने की आवश्यकता कम हो जाती है।

  1. कनेक्ट करना IRQ MPR121 का पिन Arduino पर एक डिजिटल पिन (जैसे, पिन 2) पर।
  2. इंटरप्ट सर्विस रूटीन (ISR) में एक इंटरप्ट और हैंडल टच डिटेक्शन को संलग्न करने के लिए कोड को संशोधित करें।

MPR121 के आवेदन

  1. कैपेसिटिव टच इंटरफेस
  2. संगीत वाद्ययंत्र
  3. इंटरैक्टिव कला प्रतिष्ठान
  4. इशारा आधारित नियंत्रण

समस्या निवारण

  • सेंसर से कोई प्रतिक्रिया नहीं: I2C कनेक्शन और पते को सत्यापित करें।
  • असंगत स्पर्श का पता लगाना: सुनिश्चित करें कि इलेक्ट्रोड साफ और ठीक से जुड़े हुए हैं।
  • पुस्तकालय त्रुटियां: पुष्टि करें कि Adafruit MPR121 लाइब्रेरी स्थापित है।

निष्कर्ष

आपने Arduino के साथ MPR121 कैपेसिटिव टच सेंसर को सफलतापूर्वक पार कर लिया है। यह बहुमुखी सेंसर इंटरैक्टिव और स्पर्श-संवेदनशील परियोजनाओं को बनाने के लिए संभावनाओं को खोलता है। इसकी कार्यक्षमता का विस्तार करने के लिए विभिन्न इलेक्ट्रोड डिजाइनों और कॉन्फ़िगरेशन के साथ प्रयोग करें!

एक टिप्पणी छोड़ें

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.