Dieses Tutorial ist Teil von: Relaissteuerung mit Arduino
Hier finden Sie Gruppenvideos zum Thema Staffellauf. Links zu weiteren Videos finden Sie unter diesem Artikel.
Verwendung eines TTP223B-Touchmoduls und eines Relais zur Steuerung von AC/DC-Lasten mit einem Arduino
In diesem Tutorial werden wir untersuchen, wie man das kapazitive Touch-Modul TTP223B zusammen mit einem Relais verwendet, um AC- oder DC-Lasten mit einem Arduino zu steuern. Dieser Aufbau ermöglicht eine bequeme berührungsbasierte Aktivierung von Geräten wie Glühbirnen oder anderen elektrischen Komponenten. Sie lernen, wie man die Komponenten verdrahtet, den Arduino-Code schreibt und die Zeitdauer anpasst, wie lange die Last nach einer Berührung aktiv bleibt. Dies ist ein großartiges Projekt sowohl für Anfänger als auch für erfahrene Benutzer, die ihre Fähigkeiten erweitern möchten.




In diesem Leitfaden führen wir Sie durch die wesentlichen Komponenten, die Verdrahtungsanweisungen und die Programmierung, die erforderlich sind, um dieses Projekt zum Laufen zu bringen. Sie lernen auch, wie Sie die Zeitdauer für die Lastaktivierung basierend auf Ihren Vorlieben ändern können (im Video bei 10:15). Schauen Sie sich unbedingt das begleitende Video für eine visuelle Demonstration des Prozesses an.
Hardware erklärt
Die wichtigsten Komponenten für dieses Projekt umfassen das TTP223B-Touch-Modul, ein Relais und einen Arduino. Das TTP223B-Modul erkennt Berührungseingaben und sendet ein Signal an den Arduino, der dann das Relais steuern kann. Das Relais fungiert als Schalter und ermöglicht es Ihnen, höherspannige AC- oder DC-Lasten sicher zu steuern.
Der TTP223B-Chip wird von Taiwan Semiconductor (TONTEK) hergestellt und das Modul arbeitet mit einer Versorgungsspannung von 2,2 V bis 5,5 V und hat drei Pins: VCC (Strom), GND (Masse) und SIG (Signal). Wenn das Touchpad aktiviert wird, sendet der SIG-Pin ein High-Signal an den Arduino. Vollständige Details finden Sie im Datenblatt. Das Relais hingegen benötigt ein Steuersignal vom Arduino, um die Last ein- oder auszuschalten. Diese Steuerung wird über einen digitalen Ausgangspin erreicht, der mit dem Relais verbunden ist.
Datenblattdetails
| Hersteller | Taiwan Semiconductor (TONTEK) |
|---|---|
| Teilenummer | TTP223B |
| Logik-/IO-Spannung | 2,2 - 5,5 V |
| Versorgungsspannung | 2,2 - 5,5 V |
| Ausgangsstrom (pro Kanal) | 20 mA max |
| Spitzenstrom (pro Kanal) | 50 mA max |
| PWM-Frequenzrichtlinie | N/A |
| Eingangslogikschwellen | 0,3 * VCC (niedrig), 0,7 * VCC (hoch) |
| Spannungsabfall / RDS(on) / Sättigung | N/A |
| Thermische Grenzen | N/A |
| Gehäuse | TO-220 |
| Hinweise / Varianten | Auch bekannt als BA6 |
- Sorgen Sie für eine ordnungsgemäße Erdung, um Fehlauslösungen zu vermeiden.
- Verwenden Sie einen Kondensator, um Rauschen auf der Berührungssignalleitung zu filtern.
- Überprüfen Sie die Relaisspezifikationen, um sie an die Lastanforderungen anzupassen.
- Seien Sie vorsichtig bei AC-Verbindungen—stellen Sie eine ordnungsgemäße Isolierung und Sicherheitsmaßnahmen sicher.
- Passen Sie die Zeitdauer im Code für die gewünschte Lastaktivierungsdauer an.
Verdrahtungsanweisungen
Um das TTP223B-Touch-Modul und das Relais mit dem Arduino zu verdrahten, befolgen Sie diese Schritte:
Verbinden Sie zuerst den VCC-Pin des TTP223B mit einer 5V-Stromquelle, entweder vom Arduino oder einer externen Versorgung. Verbinden Sie als Nächstes den GND-Pin des TTP223B mit der Masse. Der SIG-Pin sollte mit Pin 2 am Arduino verbunden werden, der den Berührungseingang liest.
Für das Relais verbinden Sie dessen VCC-Pin mit derselben 5V-Stromquelle und verbinden Sie dessen GND-Pin mit der Masse. Der Steuersignalpin des Relais sollte mit Pin 10 am Arduino verbunden werden. Stellen Sie sicher, dass das Relais korrekt mit der Last verdrahtet ist, die Sie steuern möchten, wobei ein Draht zum gemeinsamen (COM)-Pin und der andere zum Schließer (NO)-Pin führt. Dieser Aufbau ermöglicht es dem Relais, die Last basierend auf dem Steuersignal des Arduino ein- und auszuschalten.
Codebeispiele & Erläuterung
Der folgende Codeausschnitt initialisiert den Aufbau für das TTP223B-Touch-Modul und das Relais. Er setzt die Pin-Modi für Eingang und Ausgang, sodass der Arduino Berührungssignale lesen und das Relais steuern kann.
void setup() {
Serial.begin(9600);
pinMode(10, OUTPUT); // Relais-Steuerpin
pinMode(2, INPUT); // Berührungseingangspin
Serial.println("Robojax Test: TTP223B touch");
}
Im Setup definieren wir Pin 10 als Ausgang zur Steuerung des Relais und Pin 2 als Eingang zum Lesen des Berührungssignals. Ein serieller Monitor wird zu Debugging-Zwecken gestartet.
Die Hauptschleife des Programms prüft, ob der Berührungsknopf gedrückt ist. Wenn dies der Fall ist, wird das Relais aktiviert und die angeschlossene Last eingeschaltet.
void loop() {
if(digitalRead(2)) {
Serial.println("Button Touched");
digitalWrite(10, LOW); // Relais EIN schalten
delay(LD);
} else {
digitalWrite(10, HIGH); // Relais AUS schalten
}
}
Dieser Code liest kontinuierlich den Zustand von Pin 2. Wenn der Berührungssensor aktiviert ist, schaltet er das Relais für eine bestimmte Dauer ein, die durch die Variable LD definiert ist. Wenn der Sensor nicht berührt wird, schaltet sich das Relais aus.
Demonstration / Was Sie erwarten können
Nach Abschluss der Verdrahtung und dem Hochladen des Codes sollten Sie sehen, dass die angeschlossene Last (z. B. eine Glühbirne) eingeschaltet wird, wenn Sie das TTP223B-Modul berühren. Die Dauer, für die die Last eingeschaltet bleibt, wird durch die Variable LD im Code gesteuert. Wenn Sie möchten, dass die Last länger eingeschaltet bleibt, erhöhen Sie einfach den Wert von LD auf die gewünschte Dauer in Millisekunden.
Häufige Fallstricke sind falsche Verdrahtung, die dazu führen kann, dass das Relais nicht aktiviert wird oder der Berührungssensor nicht reagiert. Stellen Sie sicher, dass alle Verbindungen sicher sind und dass Sie die richtigen Pins verwenden, wie im Code definiert. Seien Sie außerdem vorsichtig bei der Arbeit mit AC-Lasten, um Stromschläge oder Schäden zu vermeiden.
Video-Zeitstempel
- 00:00 - Einführung in das Projekt
- 02:30 - Übersicht der Verkabelung
- 05:15 - Erklärung des Codes
- 10:15 - Demonstration des Aufbaus
Dieses Tutorial ist Teil von: Relaissteuerung mit Arduino
- Arduino-Code und Video für ein zweikanaliges 5V-Relais
- Ein 5V-Relais mit Arduino steuern, um AC- oder DC-Lasten wie eine Glühbirne oder einen Motor zu schalten
- TTP224 4-Kanal-Touchsensor zum Schalten von AC/DC-Lasten mit Relais
- Verwendung eines 5V-Relaismoduls (Low-Trigger) mit Arduino
- Verwendung eines MAX6675 K-Typ-Thermoelements mit Relais und Anzeige
- Verwendung eines Reed-Schalters zur Steuerung eines Relais und von AC/DC-Lasten mit einem Arduino
- Einen Arduino-Taster verwenden, um ein Relais und eine Wechselstromlampe zu schalten
/*
* Dies ist der Arduino-Code für den kapazitiven Touch-Schalter TTP223B mit Relais. Der Ausgangspin 10 ist mit dem Relais verbunden. Durch Berühren der Touch-Oberfläche TTP223B oder TTP223N-BA6 wird das Relais eingeschaltet.
*
* Geschrieben von Ahmad Nejrabi für Roboja Video. Datum: 4. Dezember 2017, in Ajax, Ontario, Kanada. Erlaubnis zur Weitergabe dieses Codes, sofern dieser Hinweis zusammen mit dem Code aufbewahrt wird. Haftungsausschluss: Dieser Code ist "WIE BESEHEN" und nur für Bildungszwecke.
*/
int LD = 200; // Schleifenverzögerung. Steuert, wie lange die Lampe nach dem Loslassen AN bleibt.
void setup() {
Serial.begin(9600);
// Ausgangspins
pinMode(10, OUTPUT); // LED für Taste 1
// Eingabepins
pinMode(2, INPUT); // Taste 1 Eingangspin 2
Serial.println("Robojax Test: TTP223B touch");
}
void loop() {
// Taste 1 Aktion
if(digitalRead(2)){
Serial.println("Button Touched");
digitalWrite(10, LOW); // Schalte die LED ein
delay(LD);
}else{
digitalWrite(10, HIGH); // Schalte die LED aus.
}
} // Schleife
/*
* Dies ist der Arduino-Code für den TTP223 kapazitiven Touch-Schalter mit Relais, um eine Wechselstrom- oder Gleichstromlast ein- oder auszuschalten.
* // 13. Dezember 2017
* // Geschrieben für das Robojax.com-Video
* // Verwendung des TTP223-Touchmoduls, um eine Wechselstrom- (oder Gleichstrom-) Last EIN oder AUS zu schalten.
* // Wenn das Touchpad berührt wird, leuchtet das Licht am Relais und die COM- und NO-Pins werden verbunden.
* Video ansehen für Details https://youtu.be/YSI1PdSLbt0
*
* Geschrieben von Ahmad Nejrabi für RoboJax Video
* Datum: 4. Dezember 2017, in Ajax, Ontario, Kanada
* Erlaubnis zur Weitergabe dieses Codes, sofern diese
* Notiz mit dem Code aufbewahrt wird.
* Haftungsausschluss: dieser Code ist "WIE BESEHEN" und nur für Bildungszwecke.
*
* /
*
* // 12. Dezember 2017
* // Geschrieben für das Robojax.com-Video
* // Verwendung des TTP223-Touchmoduls, um eine Wechselstrom- (oder Gleichstrom-) Last EIN oder AUS zu schalten.
* // Wenn das Touchpad berührt wird, leuchtet das Licht am Relais und die COM- und NO-Pins werden verbunden.
*/
int touchPin = 2; // Verbinden Sie den Ausgang von TTP223 mit diesem.
int val = 0;
int relayPin = 10; // Mit dem Relais verbunden
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();
}
/*
* Dies ist der Arduino-Code für den TTP223 kapazitiven Touch-Schalter mit Relais, um eine AC- oder DC-Last mit Verzögerung zu schalten.
* // 13. Dezember 2017
* // Verfasst für das Robojax.com-Video
* // Verwendung des TTP223-Touch-Moduls, um eine AC- (oder DC-)Last einzuschalten und 5 Sekunden zu warten, bevor sie ausgeschaltet wird
* // Wenn das Touchpad berührt wird, leuchtet das Licht am Relais auf und die COM- und NO-Pins werden verbunden
* Siehe das Video für Details: https://youtu.be/YSI1PdSLbt0
*
* Verfasst von Ahmad Nejrabi für das RoboJax-Video
* Datum: 4. Dezember 2017 in Ajax, Ontario, Kanada
* Genehmigung zur Weitergabe dieses Codes, sofern diese
* Notiz mit dem Code aufbewahrt wird.
* Haftungsausschluss: Dieser Code ist "WIE BESEHEN" und nur für Bildungszwecke.
*
* /
*
* // 12. Dezember 2017
* // Verfasst für das Robojax.com-Video
* // Verwendung des TTP223-Touch-Moduls, um eine AC- (oder DC-)Last ein- oder auszuschalten.
* // Wenn das Touchpad berührt wird, leuchtet das Licht am Relais auf und die COM- und NO-Pins werden verbunden.
*/
int touchPin = 2; // Verbinde den Ausgang von TTP223 damit.
int val = 0;
int relayPin = 10; // Mit Relay verbunden
int wait = 5; // warte 5 Sekunden
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(wait*1000);
}
delay(100);
Serial.println();
}
Ressourcen & Referenzen
Noch keine Ressourcen vorhanden.
Dateien📁
Datenblatt (pdf)
-
TTP223-Datenblatt von Taiwan Semiconductor (TONTEK)
TTP223_datasheet.pdf0.27 MB
Andere Dateien
-
TTP223B Benutzerhandbuch
robojax-TTP223B_manual.pdf0.15 MB