Кодты іздеу

Arduino үшін TTP223 сыйымдылықты сенсор модуліне кіріспе

Arduino үшін TTP223 сыйымдылықты сенсор модуліне кіріспе

Бұл оқулықта біз TTP223 сыйымдылықты сенсор модулін зерттеп, оны Arduino-мен біріктіріп, сенсорлы қосқыш жасау жолдарын қарастырамыз. TTP223 - бұл құрылғыларды, мысалы, реле немесе жарықтарды, тек бір тиіспен қосуға немесе өшіруге мүмкіндік беретін қарапайым және тиімді модуль. Бұл жоба модульді қалай қосу керектігін және сенсорлық енгізулерді оқып, шығу құрылғысын басқару үшін негізгі Arduino бағдарламасын қалай жазу керектігін көрсетеді.Бұл жобаның коды мен сымдары егжей-тегжейлі түсіндіріледі, сондықтан сіз орнатуды оңай қайталай аласыз. Көрнекі оқушыларға орнату мен кодтау процесі туралы түсінік алу үшін байланысты бейне оқулықты (бейне 03:15-те) көруді ұсынамын.

Аппараттық құралдар түсіндірілді

TTP223 сыйымдылықты сенсор модулі - сенсорлық енгізулерді сыйымдылықты сезу арқылы анықтайтын ықшам және қолдануға оңай құрылғы. Ол сенсорлық енгізу анықталған кезде жоғары болатын бір шығу пиніне ие, бұл оны электрониканы қарапайым сенсор арқылы басқарғыңыз келген қосымшалар үшін тамаша етеді. Модуль 2.0-ден 5.5 вольтқа дейінгі қуат кернеуінде жұмыс істейді, бұл оны көпшілік Arduino тақталарының үйлесімді етеді. Модульде әдетте бірнеше пин болады: қуат үшін VCC, жер үшін GND және сенсорлық енгізу анықталған кезде сигнал жіберетін шығу пині. Бұл шығу пині Arduino-ның цифрлық енгізу пиніне қосылуы мүмкін, бұл сенсорлық күйді оңай оқуға мүмкіндік береді. TTP223 модулі физикалық қосқыштың қажеті жоқ жобаларда әсіресе пайдалы.

Техникалық сипаттама мәліметтері

ӨндірушіSeeed Studio
Бөлшек нөміріTTP223
Логика/Кернеу вх.2.0 - 5.5 В
Жабдықтау кернеуі2.0 - 5.5 В
Шығыс ток20 мА макс
Шың ток30 мА
Жұмыс температурасы-40-тан 85 °C-қа дейін
ПакетTO-220

  • Модульды зақымдамау үшін дұрыс кернеу көзін (2.0 - 5.5 В) қамтамасыз етіңіз.
  • Шығыс пині Arduino-ның кез келген цифрлық пініне қосылуы мүмкін.
  • GND пинін Arduino жеріне қосыңыз.
  • Модульді электрлік шу көздерінен алыс ұстаңыз, жалған іске қосылудан аулақ болу үшін.
  • Қажет болса, тұрақты көрсеткіштер үшін тарту резисторларын пайдаланыңыз.

Сымдарды қосу нұсқаулары

TTP223 сыйымдылықты сенсор модулін Arduino-ға қосу үшін, алдымен модульдің VCC пинін Arduino-ның 5V пиніне қосыңыз. Келесі, модульдің GND пинін Arduino-ның GND пиндерінің біріне қосыңыз. TTP223-тің шығу пині, яғни сенсор сигналы жіберетін пин, Arduino-ның цифрлық пиндерінің біріне, мысалы, 2-пинге қосылуы тиіс. Егер сенсор модулімен реле қолдансаңыз, реленің басқару пинін басқа цифрлық пинге, мысалы, 8-пинге қосыңыз. Реленің қуат көзі оның сипаттамаларына сәйкес дұрыс қосылғанына көз жеткізіңіз. Егер бірнеше сенсор модульдерін қолдансаңыз, қосымша шығу пиндерін Arduino-ның басқа цифрлық пиндеріне қосып, сымдарды қосу процесін қайталауға болады.

Код мысалдары мен нұсқаулық

Келесі код үзіндісі пиндерді инициализациялайды және сериялық байланысты орнатады. Айнымалы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)команда сериялық байланыс үшін бит жылдамдығын орнатады, бұл сізге Serial Monitor арқылы сенсордың күйін бақылауға мүмкіндік береді. Циклда бағдарлама сенсорлық кірістің күйін тексереді және реле сәйкесінше қосылады. Егер сенсор анықталса, "Touched" дегенді Serial Monitor-ға шығарады және релені қосады.


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

Бұл үзінді сенсорлық енгізудің қалай оқылып, өңделетінін көрсетеді.digitalRead(touchPin)функция жанасу анықталғанын тексереді. Егер анықталса, реле қосылады, орнату арқылыrelayPinтөмен.

Көрсетілім / Не күту керек

Кодты іске қосқанда және TTP223 модуліне тигенде, Serial Monitor-де "Touched" деген жазу пайда болуы керек, бұл сенсордың анықталғанын көрсетеді. Оған қосылған релеrelayPinСондай-ақ, оны қосу арқылы оған қосылған кез келген құрылғыны басқаруға мүмкіндік береді. Дебаунс әсерін ескеріңіз; егер сенсорды тым жылдам бассаңыз, ол бірнеше басуды тіркеуі мүмкін. Күрделі конфигурация үшін, әртүрлі құрылғыларды басқару үшін бірнеше TTP223 модулін қосуға болады. Әр модульді бөлек кіріс пиніне қосып, бір цикл функциясында басқаруға болады, бұл бірнеше шығыстарды әртүрлі басқаруға мүмкіндік береді (бейнемен 10:45-те).

Бейне уақыт белгілері

  • 00:00- TTP223 модуліне кіріспе
  • 03:15- Сымдарды қосу нұсқаулары
  • 05:30- Кодты қарау
  • 10:45- Тасымалдау модулінің демонстрациясы
8-The source code for the TTP223 touch module for Arduino
Тіл: C++
/*
 * 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();
}
9-The source code for the TTP223 touch module for Arduino for a two-touch module
Тіл: C++
/*
 * 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 
}

Ресурстар мен сілтемелер

Әлі ресурстар жоқ.

Файлдар📁

Басқа файлдар