16-Kanal 12V Relais-Modul mit Optokoppler für Arduino, ESP32 & Raspberry Pi

 15,90

Schalte die volle Kontrolle frei mit diesem massiven 16-Kanal 12V Relais-Modul. Es ermöglicht dir, bis zu 16 unabhängige Hochleistungs-Geräte (bis 250V AC) sicher über deinen Mikrocontroller zu steuern. Jeder Kanal ist durch einen Optokoppler galvanisch getrennt, was maximale Sicherheit für deine Steuerelektronik gewährleistet. Perfekt für komplexe Hausautomations-Systeme, industrielle Steuerungen oder ambitionierte Maker-Projekte.

1 vorrätig

Artikelnummer: 200097 Kategorie: Schlagwörter: , , , ,

Wenn 8 Kanäle einfach nicht genug sind, ist dieses 16-Kanal 12V Relais-Modul die ultimative Lösung für deine Schaltzentrale. Es wurde für große Projekte entwickelt, bei denen du eine Vielzahl von Lampen, Motoren, Magnetventilen oder anderen Verbrauchern unabhängig voneinander steuern musst.

⚠️ Wichtiger Sicherheitshinweis: Das Arbeiten mit Spannungen über 24V, insbesondere mit 230V Netzspannung, ist lebensgefährlich! Alle Arbeiten an solchen Stromkreisen dürfen nur von qualifiziertem Fachpersonal (z.B. Elektrikern) unter Einhaltung aller Sicherheitsvorschriften durchgeführt werden. Bei unsachgemäßer Handhabung besteht die Gefahr eines elektrischen Schlags, von Bränden oder schweren Verletzungen.

Jeder der 16 Kanäle ist mit einem hochwertigen Songle-Relais ausgestattet, das für eine Spulenspannung von 12V ausgelegt ist. Die Ansteuerung erfolgt jedoch mit 5V- oder 3.3V-Logik (Active LOW), was es mit allen gängigen Mikrocontrollern kompatibel macht. Dank der Optokoppler-Isolation sind die Steuerstromkreise deines Arduinos vollständig von den Laststromkreisen getrennt. Über einen Jumper (JD-VCC) kannst du wählen, ob du die Relaisspulen mit einer separaten 12V-Quelle (empfohlen für maximale Sicherheit) oder über die 5V-Versorgung deines Boards betreiben möchtest (nur wenn deine 5V-Quelle stark genug ist).

Deine technischen Vorteile im Überblick:

  • Massive Kontrolle: Steuere 16 unabhängige Kanäle über ein einziges Board.
  • Hohe Schaltleistung: Jeder Kanal kann bis zu 10A bei 250V AC oder 30V DC schalten.
  • Sichere Optokoppler-Isolation: Schützt deinen Mikrocontroller zuverlässig vor hohen Spannungen und Störungen.
  • 12V Relais-Spulen: Robuste und zuverlässige Relais für den Dauerbetrieb.
  • Active-LOW-Ansteuerung: Kompatibel mit 5V und 3.3V Logikpegeln.
  • Visuelles Feedback: Eine separate Status-LED für jeden Kanal zeigt den aktuellen Schaltzustand an.
  • Flexible Stromversorgung: JD-VCC Jumper zur Trennung von Steuer- und Last-Spannung.

 

Technisches Datenblatt

Merkmal Spezifikation
Modell 16-Kanal Relais-Modul
Relaistyp Songle SRD-12VDC-SL-C oder äquivalent
Spulenspannung 12V DC
Steuersignal 5V / 3.3V (Active LOW)
Max. Schaltlast AC 10A / 250V AC
Max. Schaltlast DC 10A / 30V DC
Anschlüsse (Last) 16x Schraubklemmen: NO, COM, NC
Besonderheiten Optokoppler-Isolation, Status-LEDs pro Kanal
Abmessungen (LxB) ca. 180 mm x 90 mm

 

Arduino UNO R3, was du zusätzlich benötigst

  1. Ein MCP23017 I/O Expander (meist als kleines Breakout-Board erhältlich).
  2. Die passende Arduino-Bibliothek: Installiere die „Adafruit MCP23017 Library“ über den Bibliotheksverwalter in der Arduino IDE (Werkzeuge -> Bibliotheken verwalten...).

 

Verkabelung: Uno ➔ MCP23017 ➔ Relais-Modul

1. Stromversorgung:

  • Uno 5V ➔ Pin VCC am MCP23017 UND Pin VCC am Relais-Modul.
  • Uno GND ➔ Pin GND am MCP23017 UND Pin GND am Relais-Modul.
  • Externes 12V-Netzteil ➔ Entferne den Jumper VCC/JD-VCC am Relais-Modul und schließe das 12V-Netzteil an JD-VCC und GND an.

2. I2C-Bus (Steuerung des MCP23017):

  • Uno Pin A4 (SDA) ➔ Pin SDA am MCP23017.
  • Uno Pin A5 (SCL) ➔ Pin SCL am MCP23017.

3. Ausgänge (Steuerung der Relais):

  • MCP23017 Pins GPA0 bis GPA7 ➔ Relais-Modul Pins IN1 bis IN8.
  • MCP23017 Pins GPB0 bis GPB7 ➔ Relais-Modul Pins IN9 bis IN16.

 

Arduino Code

/*
  16-Kanal Relais-Modul mit Arduino Uno & MCP23017 I/O-Expander
  
  Dieses Programm schaltet alle 16 Relais nacheinander ein und aus,
  gesteuert über den I2C-Bus.
*/

#include <Wire.h>
#include <Adafruit_MCP23017.h>

// Erstelle ein Objekt für den MCP23017
Adafruit_MCP23017 mcp;

void setup() {
  Serial.begin(9600);
  Serial.println("16-Kanal Relais Test mit Arduino Uno + MCP23017");

  // Starte den MCP23017 auf der Standard-I2C-Adresse (0x20)
  mcp.begin();      

  // Konfiguriere alle 16 Pins des MCP23017 als Ausgänge
  for (int i = 0; i < 16; i++) {
    mcp.pinMode(i, OUTPUT);
    // Setze den Ausgang initial auf HIGH, um das Relais auszuschalten (Active LOW)
    mcp.digitalWrite(i, HIGH);
  }
}

void loop() {
  // Schalte alle Relais nacheinander ein und wieder aus
  for (int i = 0; i < 16; i++) {
    Serial.print("Schalte Relais ");
    Serial.print(i + 1);
    Serial.println(" EIN");
    
    // Schalte den entsprechenden Pin am MCP23017 auf LOW, um das Relais zu aktivieren
    mcp.digitalWrite(i, LOW); 
    delay(250); // Warte kurz
    
    Serial.print("Schalte Relais ");
    Serial.print(i + 1);
    Serial.println(" AUS");
    
    // Schalte den Pin wieder auf HIGH, um das Relais zu deaktivieren
    mcp.digitalWrite(i, HIGH);
    delay(250); // Warte kurz
  }
}

 

Was dieser Code tut

  1. Einbinden der Bibliotheken: Er lädt den nötigen Code für die I2C-Kommunikation (Wire.h) und die Steuerung des MCP23017-Chips (Adafruit_MCP23017.h).
  2. Objekt erstellen: Adafruit_MCP23017 mcp; legt eine Variable mcp an, über die du den Chip ansprechen kannst.
  3. Setup: Im setup() wird der Chip initialisiert (mcp.begin()). Danach werden alle 16 Pins des Chips (nummeriert von 0 bis 15) als Ausgänge konfiguriert und auf HIGH gesetzt, damit anfangs alle Relais aus sind.
  4. Loop: Die Endlosschleife geht alle Pin-Nummern von 0 bis 15 durch.
    • mcp.digitalWrite(i, LOW); sendet den Befehl „schalte Pin i auf LOW“ an den MCP23017. Dieser gibt das Signal an das Relais-Modul weiter, welches daraufhin das entsprechende Relais einschaltet.
    • mcp.digitalWrite(i, HIGH); schaltet das Relais wieder aus.