كود البحث

مقدمة في وحدة اللمس السعوية TTP223 لأردوينو

مقدمة في وحدة اللمس السعوية TTP223 لأردوينو

في هذا الدرس، سنستكشف وحدة اللمس السعوية TTP223 وكيف يمكن دمجها مع أردوينو لإنشاء مفتاح حساس للمس. تعتبر وحدة TTP223 وحدة بسيطة وفعالة تتيح لك تشغيل أو إيقاف الأجهزة مثل المرحلات أو الأضواء بلمسة واحدة فقط. سيظهر هذا المشروع كيفية توصيل الوحدة وكتابة برنامج أساسي لأردوينو لقراءة مدخلات اللمس والتحكم في جهاز إخراج.سيتم شرح الشيفرة والأسلاك لهذا المشروع بالتفصيل حتى تتمكن من تكرار الإعداد بسهولة. بالنسبة للمتعلمين بصريًا، أوصي بمشاهدة الفيديو التعليمي المرتبط للحصول على توضيح حول الإعداد وعملية الترميز (في الفيديو عند :15).

شرح الأجهزة

وحدة اللمس السعوية TTP223 هي جهاز مدمج وسهل الاستخدام يكشف عن مدخلات اللمس من خلال الاستشعار السعوي. تحتوي على دبوس إخراج واحد يرتفع عند اكتشاف اللمس، مما يجعلها مثالية للتطبيقات التي ترغب في التحكم في الإلكترونيات بلمسة بسيطة. تعمل الوحدة بجهد تغذية يتراوح بين 2.0 إلى 5.5 فولت، مما يجعلها متوافقة مع معظم لوحات Arduino. عادةً ما تحتوي الوحدة على عدد قليل من الدبابيس: VCC للطاقة، GND للأرض، ودبوس الإخراج الذي يرسل إشارة عند اكتشاف اللمس. يمكن توصيل دبوس الإخراج هذا بدبوس إدخال رقمي على Arduino، مما يتيح لك قراءة حالة اللمس بسهولة. تعتبر وحدة TTP223 مفيدة بشكل خاص في المشاريع التي لا يكون فيها المفتاح الفيزيائي مرغوبًا.

تفاصيل ورقة البيانات

المصنعسيد ستوديو
رقم الجزءTTP223
جهد المنطق/المدخلات والمخرجات2.0 - 5.5 ف
جهد الإمداد2.0 - 5.5 ف
التيار الكهربائي20 مللي أمبير كحد أقصى
التيار الذروي30 مللي أمبير
درجة حرارة التشغيل-40 إلى 85 درجة مئوية
حزمةTO-220

  • تأكد من توفير جهد مناسب (2.0 - 5.5 فولت) لتجنب تلف الوحدة.
  • يمكن توصيل دبوس الإخراج بأي دبوس رقمي على الأردوينو.
  • قم بتوصيل دبوس GND بالأرض الخاصة بأردوينو.
  • ابقِ الوحدة بعيدًا عن مصادر الضوضاء الكهربائية لتجنب التشغيل الخاطئ.
  • استخدم مقاومات السحب لأعلى إذا لزم الأمر للحصول على قراءات مستقرة.

تعليمات التوصيل

لتوصيل وحدة اللمس السعوية TTP223 بلوحة الأردوينو الخاصة بك، ابدأ بتوصيل دبوس VCC في الوحدة بدبوس 5V في الأردوينو. بعد ذلك، قم بتوصيل دبوس GND في الوحدة بأحد دبابيس GND في الأردوينو. يجب توصيل دبوس الإخراج من TTP223، الذي يرسل إشارة اللمس، بدبوس رقمي في الأردوينو، على سبيل المثال، الدبوس 2. إذا كنت تستخدم مرحلًا مع وحدة اللمس، قم بتوصيل دبوس التحكم في المرحل بدبوس رقمي آخر، مثل الدبوس 8. تأكد من أن مصدر الطاقة للمرحلة متصل بشكل صحيح، وفقًا لمواصفاته. إذا كنت تستخدم وحدات لمس متعددة، يمكنك توصيل دبابيس إخراج إضافية بدبابيس رقمية أخرى في الأردوينو وتكرار عملية التوصيل وفقًا لذلك.

أمثلة الشيفرة وشرح الخطوات

الشفرة التالية تقوم بتهيئة الدبابيس وإعداد الاتصال التسلسلي. المتغيرtouchPinمتصل بمخرج وحدة TTP223، بينماrelayPinيتحكم في المرحل.


int touchPin = 2; // connect output from TTP223 to this
int relayPin = 8; // Connected to relay

void setup() {
  Serial.begin(9600);
  pinMode(touchPin, INPUT); 
  pinMode(relayPin, OUTPUT);
}

هذا الكود يقوم بتهيئة وحدة اللمس ودبوس التتابع، مما يجعلهما جاهزين للاستخدام في دالة الحلقة.Serial.begin(9600)يحدد الأمر معدل البود للتواصل التسلسلي، مما يتيح لك مراقبة حالة اللمس عبر شاشة السيريال. في الحلقة، يتحقق البرنامج من حالة إدخال اللمس ويبدل المرحل وفقًا لذلك. إذا تم اكتشاف اللمس، فإنه يطبع "تم اللمس" على شاشة السيريال ويشغل المرحل.


void loop() {
  val = digitalRead(touchPin); 
  if(val == 1) {
    Serial.println("Touched");
    digitalWrite(relayPin, LOW); // turn relay ON
  }
  delay(100);
}

هذا المقتطف يوضح كيف يتم قراءة ومعالجة إدخال اللمس.digitalRead(touchPin)تتحقق الدالة مما إذا تم اكتشاف اللمس. إذا تم ذلك، يتم تفعيل المرحل عن طريق الإعدادrelayPinإلى منخفض.

عرض / ماذا تتوقع

عند تشغيل الكود ولمس وحدة TTP223، يجب أن ترى "تم اللمس" مطبوعة في شاشة السيريال، مما يدل على أنه تم اكتشاف اللمس. الريليه المتصل بـrelayPinسوف يتم تفعيله أيضًا، مما يتيح لك التحكم في أي جهاز متصل به. كن حذرًا من تأثير التبديل؛ إذا لمست المستشعر بسرعة كبيرة، فقد يسجل لمسات متعددة. لإعداد أكثر تعقيدًا، يمكنك إضافة عدة وحدات TTP223 للتحكم في أجهزة مختلفة. يمكن توصيل كل وحدة بدبوس إدخال منفصل وإدارتها في نفس دالة الحلقة، مما يسمح بالتحكم المتنوع في مخرجات متعددة (في الفيديو عند 10:45).

طوابع زمنية للفيديو

  • 00:00- مقدمة في وحدة TTP223
  • ٠٣:١٥- تعليمات التوصيل
  • ٠٥:٣٠- استعراض الشيفرة
  • ١٠:٤٥- عرض وحدة اللمس
8-The source code for the TTP223 touch module for Arduino
اللغة: C++
/*
 * هذا هو كود Arduino لجهاز تبديل TTP223 باللمس. عند لمس الوحدة، يرسل الطرف 8 إشارة لتشغيل المرحل أو المفتاح.
 * 
 * كتب بواسطة أحمد س. لموقع Robojax.com  
 * التاريخ: 1 أبريل 2017، في أجاكس، أونتاريو، كندا  
 * تم منح الإذن بمشاركة هذا الكود، بشرط الاحتفاظ بهذه الملاحظة مع الكود.  
 * تنبيه: هذا الكود "كما هو" ول لأغراض تعليمية فقط.
 */
int touchPin = 2; // قم بتوصيل المخرج من TTP223 بهذا
int val = 0;
int relayPin = 8; // متصل بالمرحّل

void setup() {
 Serial.begin(9600);
 pinMode(touchPin, INPUT);
  pinMode(relayPin, OUTPUT);

}

void loop() {
  digitalWrite(relayPin, HIGH);
  val = digitalRead(touchPin);
  if(val ==1){
  Serial.println("Touched");
  digitalWrite(relayPin, LOW);
  }
  delay(100);
  Serial.println();
}
9-The source code for the TTP223 touch module for Arduino for a two-touch module
اللغة: C++
/*
 * هذا هو كود Arduino لوحدة مفتاح اللمس TTP223.
 * من خلال لمس الوحدة، يقوم الدبوس 8 بإرسال إشارة لتشغيل المرحل أو المفتاح.
 * 
 * كتبها أحمد س. لموقع Robojax.com
 * التاريخ: 1 أبريل 2017، في أجاكس، أونتاريو، كندا
 * تم منح الإذن لمشاركة هذا الكود، بشرط أن تبقى هذه
 * الملاحظة مع الكود.
 * إخلاء المسؤولية: هذا الكود هو "كما هو" ولأغراض تعليمية فقط.
 */
int touchPin1 = 2; // اجمع المخرج من TTP223 إلى هذا
int val = 0;
int relayPin = 8; // متصل بالأداء

 // القناة الثانية
int touchPin2 = 3; // اجمع المخرج من TTP223 إلى هذا
int val2 = 0;
int relayPin2 = 9; // متصل بالأداء

void setup() {
 Serial.begin(9600);
 pinMode(touchPin, INPUT); // مدخل من لمس
 pinMode(relayPin, OUTPUT); // مخرجات لإعادة الإرسال

  pinMode(touchPin2, INPUT); // الإدخال من اللمس (2)
 pinMode(relayPin2, OUTPUT); // إخراج إلى مرحل (2)

}

void loop() {
 // بدء رمز القناة 1
  digitalWrite(relayPin, HIGH); // اضبط المرحل على HIGH (إذا كان المرحل لديك يعمل بتقنية التفعيل المنخفض. إذا لم يكن كذلك، أزل هذه السطر)
  val = digitalRead(touchPin); // اقرأ قيمة وحدة اللمس للقناة 1
  if(val ==1){
  Serial.println("Channel 1 Touched");
  digitalWrite(relayPin, LOW); // تشغيل المرحل (للمفتاح) 1
  }
  delay(100);
  Serial.println();
 // نهاية كود القناة 1

 // بداية رمز القناة ٢
  digitalWrite(relayPin2, HIGH); // اضبط المرحل على HIGH (إذا كان المرحل لديك يعمل بتقنية التفعيل المنخفض. إذا لم يكن كذلك، أزل هذه السطر)
  val2 = digitalRead(touchPin2); // اقرأ قيمة وحدة اللمس للقناة 2
  if(val2 ==1){
  Serial.println("Channel 2 Touched");
  digitalWrite(relayPin2, LOW); // تشغيل المرحل (للمفتاح) 2
  }
  delay(100);
  Serial.println();
 // نهاية كود القناة 2
}

الموارد والمراجع

لا توجد موارد حتى الآن.

ملفات📁

لا توجد ملفات متاحة.