আরডুইনোর জন্য TTP223 ক্যাপাসিটিভ টাচ মডিউলের পরিচিতি
এই টিউটোরিয়ালে, আমরা TTP223 ক্যাপাসিটিভ টাচ মডিউলটি অন্বেষণ করব এবং কীভাবে এটি একটি টাচ-সংবেদনশীল সুইচ তৈরি করতে একটি আর্ডুইনোর সাথে সংযুক্ত করা যায়। TTP223 একটি সহজ এবং কার্যকরী মডিউল যা আপনাকে একটি স্পর্শের মাধ্যমে রিলে বা লাইটের মতো ডিভাইসগুলি চালু বা বন্ধ করতে দেয়। এই প্রকল্পটি মডিউলটি কীভাবে সংযুক্ত করতে হয় এবং স্পর্শ ইনপুট পড়তে এবং একটি আউটপুট ডিভাইস নিয়ন্ত্রণ করতে একটি মৌলিক আর্ডুইনো প্রোগ্রাম কীভাবে লিখতে হয় তা প্রদর্শন করবে।এই প্রকল্পের জন্য কোড এবং তারের সংযোগ বিস্তারিতভাবে ব্যাখ্যা করা হবে যাতে আপনি সহজেই সেটআপটি পুনরাবৃত্তি করতে পারেন। ভিজ্যুয়াল শিক্ষার্থীদের জন্য, আমি সেটআপ এবং কোডিং প্রক্রিয়ার ব্যাখ্যার জন্য সংশ্লিষ্ট ভিডিও টিউটোরিয়ালটি দেখার সুপারিশ করছি (ভিডিওতে :15)।
হার্ডওয়্যার ব্যাখ্যা করা
TTP223 ক্যাপাসিটিভ টাচ মডিউল একটি কম্প্যাক্ট এবং ব্যবহার করা সহজ ডিভাইস যা ক্যাপাসিটিভ সেন্সিংয়ের মাধ্যমে টাচ ইনপুট সনাক্ত করে। এতে একটি একক আউটপুট পিন রয়েছে যা টাচ সনাক্ত হলে উচ্চ হয়, যা এমন অ্যাপ্লিকেশনের জন্য আদর্শ যেখানে আপনি একটি সহজ টাচের মাধ্যমে ইলেকট্রনিক্স নিয়ন্ত্রণ করতে চান। মডিউলটি 2.0 থেকে 5.5 ভোল্টের সাপ্লাই ভোল্টেজে কাজ করে, যা এটিকে বেশিরভাগ আর্দুইনো বোর্ডের সাথে সামঞ্জস্যপূর্ণ করে। মডিউলটিতে সাধারণত কয়েকটি পিন থাকে: পাওয়ার জন্য VCC, গ্রাউন্ডের জন্য GND, এবং আউটপুট পিন যা টাচ সনাক্ত হলে একটি সিগন্যাল পাঠায়। এই আউটপুট পিনটি আর্দুইনোর একটি ডিজিটাল ইনপুট পিনের সাথে সংযুক্ত করা যেতে পারে, যা আপনাকে সহজেই টাচ স্ট্যাটাস পড়তে দেয়। TTP223 মডিউলটি বিশেষভাবে প্রকল্পগুলিতে উপকারী যেখানে একটি শারীরিক সুইচ কাম্য নয়।
ডেটাশিটের বিস্তারিত
| উৎপাদক | সীড স্টুডিও |
|---|---|
| পার্ট নম্বর | TTP223 |
| লজিক/আইও ভোল্টেজ | ২.০ - ৫.৫ ভি |
| সরবরাহ ভোল্টেজ | ২.০ - ৫.৫ ভি |
| আউটপুট বর্তমান | ২০ মি.এ. সর্বাধিক |
| শিখর বর্তমান | ৩০ মি.এ. |
| অপারেটিং তাপমাত্রা | -40 থেকে 85 °C |
| প্যাকেজ | TO-220 |
- মডিউলটি ক্ষতিগ্রস্ত হওয়া থেকে রক্ষা করতে সঠিক ভোল্টেজ সরবরাহ নিশ্চিত করুন (২.০ - ৫.৫ ভি)।
- আউটপুট পিনটি আরডুইনোর যেকোনো ডিজিটাল পিনের সাথে সংযুক্ত করা যেতে পারে।
- GND পিনটি আরডুইনোর গ্রাউন্ডের সাথে সংযুক্ত করুন।
- মডিউলটি বিদ্যুৎ শব্দের উৎস থেকে দূরে রাখুন যাতে মিথ্যা ট্রিগারিং এড়ানো যায়।
- প্রয়োজন হলে স্থিতিশীল পড়ার জন্য পুল-আপ রেজিস্টর ব্যবহার করুন।
তারের নির্দেশাবলী
আপনার আরডুইনোর সাথে TTP223 ক্যাপাসিটিভ টাচ মডিউলটি সংযোগ করতে, প্রথমে মডিউলের VCC পিনটি আরডুইনোর 5V পিনের সাথে সংযুক্ত করুন। পরবর্তীতে, মডিউলের GND পিনটি আরডুইনোর একটি GND পিনের সাথে সংযুক্ত করুন। TTP223 এর আউটপুট পিন, যা টাচ সিগন্যাল পাঠায়, সেটি আরডুইনোর একটি ডিজিটাল পিনের সাথে সংযুক্ত করা উচিত, উদাহরণস্বরূপ, পিন 2। যদি আপনি টাচ মডিউলের সাথে একটি রিলে ব্যবহার করেন, তবে রেলের নিয়ন্ত্রণ পিনটি অন্য একটি ডিজিটাল পিনের সাথে সংযুক্ত করুন, যেমন পিন 8। নিশ্চিত করুন যে রেলের পাওয়ার সাপ্লাই সঠিকভাবে সংযুক্ত হয়েছে, এর স্পেসিফিকেশন অনুযায়ী। যদি আপনি একাধিক টাচ মডিউল ব্যবহার করেন, তবে আপনি অতিরিক্ত আউটপুট পিনগুলি আরডুইনোর অন্যান্য ডিজিটাল পিনের সাথে সংযুক্ত করতে পারেন এবং অনুযায়ী সংযোগ প্রক্রিয়াটি পুনরাবৃত্তি করতে পারেন।
কোড উদাহরণ ও পদক্ষেপ নির্দেশিকা
নিচের কোড স্নিপেটটি পিনগুলি ইনিশিয়ালাইজ করে এবং সিরিয়াল যোগাযোগ সেট আপ করে। ভেরিয়েবলtouchPinTTP223 মডিউলের আউটপুটের সাথে সংযুক্ত।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 মডিউলে স্পর্শ করেন, আপনি সিরিয়াল মনিটরে "Touched" মুদ্রিত দেখতে পাবেন, যা নির্দেশ করে যে স্পর্শটি সনাক্ত হয়েছে। সংযুক্ত রিলেrelayPinএটি সক্রিয় হবে, আপনাকে এটি সংযুক্ত যেকোনো ডিভাইস নিয়ন্ত্রণ করার অনুমতি দেবে। ডেবাউন্স প্রভাব সম্পর্কে সচেতন থাকুন; যদি আপনি সেন্সরটি খুব দ্রুত স্পর্শ করেন, এটি একাধিক স্পর্শ রেজিস্টার করতে পারে।
একটি আরও জটিল সেটআপের জন্য, আপনি বিভিন্ন ডিভাইস নিয়ন্ত্রণ করতে একাধিক TTP223 মডিউল যোগ করতে পারেন। প্রতিটি মডিউলকে একটি পৃথক ইনপুট পিনে সংযুক্ত করা যেতে পারে এবং একই লুপ ফাংশনে পরিচালনা করা যেতে পারে, যা একাধিক আউটপুটের বহুমুখী নিয়ন্ত্রণের অনুমতি দেয় (ভিডিওতে 10:45 এ)।
ভিডিও টাইমস্ট্যাম্পস
- ০০:০০- TTP223 মডিউলের পরিচিতি
- ০৩:১৫- তারের নির্দেশাবলী
- ০৫:৩০- কোড ওয়াকথ্রু
- ১০:৪৫- টাচ মডিউলের প্রদর্শনী
/*
* This is the Arduino code for a TTP223 Touch module switch.
* By touching the module, the pin 8 sends a signal to turn the relay or switch ON.
*
* Written by Ahmad S. for Robojax.com
* Date: April 1, 2017, in Ajax, Ontario, Canada
* Permission granted to share this code, given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
int touchPin = 2;// connect output from TTP223 to this
int val = 0;
int relayPin = 8;// Connected to relay
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();
}
/*
* This is the Arduino code for a TTP223 touch module switch.
* By touching the module, the pin 8 is sending a signal to turn the relay or switch ON.
*
* Written by Ahmad S. for Robojax.com
* Date: April 1, 2017, in Ajax, Ontario, Canada
* Permission granted to share this code, given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
// 1st channel
int touchPin1 = 2;// connect output from TTP223 to this
int val = 0;
int relayPin = 8;// Connected to relay
// 2nd channel
int touchPin2 = 3;// connect output from TTP223 to this
int val2 = 0;
int relayPin2 = 9;// Connected to relay
void setup() {
Serial.begin(9600);
pinMode(touchPin, INPUT); // input from touch
pinMode(relayPin, OUTPUT);// output to relay
pinMode(touchPin2, INPUT); // input from touch (2)
pinMode(relayPin2, OUTPUT);// output to relay (2)
}
void loop() {
// start of channel 1 code
digitalWrite(relayPin, HIGH);// set the relay to HIGH (if your relay is low-trigger. If not, remove this line)
val = digitalRead(touchPin); // read channel 1 touch module value
if(val ==1){
Serial.println("Channel 1 Touched");
digitalWrite(relayPin, LOW);// turn relay (of switch) 1 ON
}
delay(100);
Serial.println();
// end of channel 1 code
// start of channel 2 code
digitalWrite(relayPin2, HIGH);// set the relay to HIGH (if your relay is low-trigger. If not, remove this line)
val2 = digitalRead(touchPin2); // read channel 2 touch module value
if(val2 ==1){
Serial.println("Channel 2 Touched");
digitalWrite(relayPin2, LOW);// turn relay (of switch) 2 ON
}
delay(100);
Serial.println();
// end of channel 2 code
}
সম্পদ ও রেফারেন্সসমূহ
এখনো কোনো সম্পদ নেই।
ফাইলসমূহ📁
অন্যান্য ফাইলগুলি
-
TP223 ডেটাশিট
robojax-0492_TTP223_Datasheet.pdf0.24 MB