• Erste Schritte
  • Hardware & GPIO
  • Projekte
  • Software
    • Webserver
  • Arduino & ESP8266
  • Hausautomatisierung
  • Sonstiges
    • News
Facebook Twitter YouTube
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
  • Einstieg
    • Erste Schritte
      • Raspberry Pi 3 Einstieg - Starter KitWas brauche und wie starte ich? – Raspberry Pi Einstieg
    • Einrichtung
      • microsd_karte_menuRaspbian Betriebssystem auf eine SD Karte flashen – Einfach & Schnell
      • wlanbluetooth_menuWLAN und Bluetooth einrichten – Raspberry Pi 4
      • wifi_menuWLAN Stick installieren und einrichten – Alternative
      • bash_menuSSH Zugriff einrichten via Putty – Kommandozeilen Zugriff
      • rdp_menuRemotedesktop Verbindung aufbauen – Fernsteuerung
    • Einsteiger Projekte
      • Sinnvolles Raspberry Pi Zubehör
      • 15 Raspberry Pi Projekte für Anfänger
      • Ampelschaltung mit GPIOs
      • GPIOs mit Port Expander erweitern
      • Elektronischer Würfel
      • 13 tolle Projekte für Kinder und Jugendliche
      • Roboter selber bauen
      • In Visual Studio Code mit C++ programmieren
      • Wünsch dir ein Tutorial
    • Programmieren lernen
      • Teil 1: Einführung
      • Teil 2: GPIOs steuern
      • Teil 3: GUI erstellen
      • Teil 4: PWM
      • C# GUI Apps entwickeln
  • Hardware & GPIO
    • 50 der wichtigsten Raspberry Pi Sensoren und Module – Aufgelistet mit Links zu den TutorialsRaspberry Pi Sensoren
    • Beliebte Tutorials
      • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
      • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
      • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Funksteckdosen (433MHz) steuern
      • Raspberry Pi Relais ModulRaspberry Pi: Relais-Schalter per GPIO steuern
      • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
      • Amazon-Alexa-deutsch-auf-dem-Raspberry-Pi-installierenAmazon Alexa (Deutsch) auf dem installieren
      • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
      • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren
      • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
      • Raspberry Pi USB Boot per Stick oder SSD Festplatte einrichtenUSB Boot per Stick oder SSD Festplatte
      • Analog
        • Raspberry Pi MCP3008 ADCMCP3008: Am Raspberry Pi analoge Signale auslesen
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
        • Raspberry Pi PulsmesserRaspberry Pi Pulsmesser: Herzfrequenz messen
        • Joystick am Raspberry Pi benutzen (mit MCP3008)Joystick am Raspberry Pi benutzen (mit MCP3008)
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Drehregler - Rotary EncoderKY040 Drehregler als Lautstärkeregler für den Raspberry Pi
        • Easpberry Pi Soil SensorBodenfeuchtigkeit mit dem Raspberry Pi messen
        • Raspberry Pi KeypadRaspberry Pi Keypad anschließen – Codeschloss
        • Raspberry Pi door sensorÜberwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
        • Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)Raspberry Pi Waage selber bauen (mit Gewichtssensor HX711)
      • Funk
        • 71-M-PU7vML.-S3L1500-Raspberry Pi’s über 433 MHz Funk kommunizieren lassen
        • Remote Control Raspberry Pi 433Mhz Radio TransmitterRaspberry Pi mit 433Mhz Funksender fernsteuern
        • Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433Mhz)Raspberry Pi Funksteckdosen (433MHz) steuern
        • Raspberry Pi MiFlora - Xiaomi Pflanzensensor in OpenHAB einbindenMiFlora – Xiaomi Pflanzensensor ins Smart Home einbinden
        • Raspberry Pi RFID RC522 TüröffnerRaspberry Pi RFID RC522 Tags auslesen (NFC)
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation (2.4 GHz): Arduino & Raspberry Pi
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen
        • Raspberry Pi Xbox 360 Wireless ControllerRaspberry Pi mittels Xbox 360 Controller steuern
        • Raspberry Pi GSM Modul - Huawei Internet SticksRaspberry Pi GSM Modul – Mobiles Internet
        • Raspberry Pi Bluetooth DatentransferRaspberry Pi Bluetooth Datentransfer zum Smartphone
      • Infrarot & Laser
        • Raspberry Pi Infrarot FernbedienungRaspberry Pi: Per IR Remote Befehle ausführen
        • infrarot sharp distance senserInfrarot Abstandsmessung mit dem Raspberry Pi
        • Raspberry Pi Laser Lichtschranke für weite DistanzenRaspberry Pi Laser Lichtschranke für weite Distanzen
        • Infrarot Raspberry Pi FernbedienungInfrarot Steuerung einrichten
        • Raspberry Pi Infrarot Lichtschranke bauen und Geschwindigkeit messenRaspberry Pi Infrarot Lichtschranke bauen
        • Raspberry Pi Fotowiderstand HelligkeitssensorFotowiderstand (Helligkeitssensor) am Raspberry Pi
      • Temperatur & Navigation
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorRaspberry Pi: Luftfeuchtigkeit und Temperatur messen
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Raspberry Pi RTC Real Time ClockReal Time Clock Modul steuern
        • Rotation und Beschleunigung mit dem Raspberry Pi messenRotation und Beschleunigung mit dem Raspberry Pi messen
        • Raspberry Pi GPS ModulRaspberry Pi GPS Ortungs- / Navigationsgerät bauen
        • Raspberry Pi Kompass selber bauenRaspberry Pi Kompass selber bauen (HMC5883L)
        • Kontaktlosen Infrarot-Temperatursensor MLX90614 am Raspberry Pi auslesenMLX90614 – Kontaktlos Temperaturen messen
      • Displays
        • Raspberrry Pi HD44780 I2CHD44780 LCD Display per I2C ansteuern
        • Raspbery Pi LCD DisplayRaspberry Pi LCD Display: 16×2 Zeichen anzeigen
        • DisplayTipps & Tricks zum offiziellen 7″ Raspberry Pi Touchscreen
        • Raspberry Pi TouchscreenTestbericht zum 7″ Raspberry Pi Touchscreen Display
        • LCD Touch Display (3.2″) am Raspberry PiLCD Touch Display (3.2″) am Raspberry Pi
        • tft lcd touch displayRaspberry Pi LCD Touch Display Teil 2 – Anpassungen
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtRaspberry Pi LED Matrix – Projektübersicht
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige mit MAX7219 am Raspberry Pi (Anode)
        • Raspberry Pi Tablet Raspad TestberichtRaspberry Pi Tablet „Sunfounder RasPad“ Testbericht
      • Motoren & Sonstige
        • Raspberry Pi Stepper Motor Control with L293D / ULN2003ARaspberry Pi Schrittmotor ansteuern
        • Raspberry Pi Servo MotorRaspberry Pi Servo Motor Steuerung
        • Raspberry Pi PCA9685 mehrere Servos gleichzeitig steuernMehrere Servo Motoren per Raspberry Pi steuern
        • Raspberry Pi PIR Motion SensorBewegungsmelder PIR anschließen und steuern
        • How to use a Raspberry Pi Fingerprint Sensor for AuthenticationRaspberry Pi Fingerprint Sensor zur Authentifizierung nutzen
        • Raspberry Pi Akku AdapterRaspberry Pi mit Akkus/Batterien betreiben
        • Entfernung messen mit Ultraschallsensor HC-SR04 – Raspberry PiEntfernung messen mit Ultraschallsensor HC-SR04
        • Raspberry Pi WS2801B RGB LED Streifen anschließen und steuernWS2801 RGB LED Streifen anschließen und steuern
        • Raspberry Pi WS2812 RGB LED StripWS2812 RGB LED Streifen per Raspberry Pi steuern
        • Raspberry Pi Überwachungskamera LivestreamÜberwachungskamera Livestream einrichten
        • NoIRAufnahmen mit dem offiziellen Kamera Modul
        • Raspberry Pi Zero - establishing an Ethernet connection (ENC28J60)Raspberry Pi Zero – Ethernet Verbindung
  • Software
    • Webserver Installation
      • apache2_menu25Teil 1 – Apache2
      • php_menu25Teil 2 – PHP 5
      • mysql_menu25Teil 3 – MySQL
      • phpmyadmin_menu25Teil 4 – phpMyAdmin
      • ftp_menu25Teil 5 – FTP Server
      • dns_menu25Teil 6 – DNS Server via No-IP
      • home_menu25Homeverzeichnis ändern
      • share_25Samba Server: Dateien im Netzwerk teilen
      • nodejs_menu25Node.js Webserver installieren und GPIOs schalten
      • ssl_menu25SSL Zertifikat kostenlos mit Let’s Encrypt
      • wordpress_25Eigenen WordPress-Server einrichten
      • cloud-25Nextcloud auf dem Raspberry Pi installieren
    • Entertainment
      • led_menu25Raspberry Pi Ambilight für alle Geräte mit OSMC selber bauen
      • amazon_menu25Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
      • controller_25Raspberry Pi RetroPie – Spielekonsole selber bauen
      • kodi_menu25Mediencenter Raspbmc als SmartTV mit dem Raspberry Pi
      • android_25Android TV Box zum selber bauen
      • apple-2316234_640Raspberry Pi als AirPlay-Empfänger
      • jukebox_menu25Raspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.)
      • steam_25Steam Spiele streamen
      • minecraft_menu25Raspberry Pi Minecraft Server
      • youtube_25YouTube Live Streaming einrichten
      • qr-code-tutorials-raspberrypi.de_25Raspberry Pi QR / Barcode Scanner
    • Fernsteuerung
      • rdp_menuRaspberry Pi Remotedesktop Verbindung
      • ssh_menu25SSH Zugriff einrichten via Putty (Windows)
      • vnc_menu25Raspberry Pi mittels VNC fernsteuern
      • welcome_menu25SSH Terminal Begrüßung ändern
      • telegram1_menu25Telegram Messenger auf dem RaspberryPi
      • telegram2_menu25Mit Telegram Messenger Raspberry Pi steuern
      • bluet_menu25Raspberry Pi Bluetooth Datentransfer zum Smartphone
      • alexa_voice_25Eigenen Raspberry Pi Alexa Skill bauen
      • microphone_25Sprachsteuerung selber bauen
      • mqtt_25MQTT Broker/Client Funkkommunikation
      • mail_25Vom Raspberry Pi Emails senden
      • twitter_25Per Twitter Bot Nachrichten posten
    • Weitere
      • loggen_menu25Sensordaten mit ThingSpeak loggen und auswerten
      • mysql_datalogger25Per lokaler MySQL Datenbank zum Raspberry Pi Datenlogger
      • opencv_menu25OpenCV auf dem Raspberry Pi installieren
      • arduino_menu30tWiringPi installieren & Pinbelegung (Raspberry Pi)
      • radio_menu25Raspberry Pi als Radio Sendestation
      • win10_menu25Windows 10 IoT auf dem Raspberry Pi installieren
      • printer_25Drucker einrichten und per Knopfdruck Bilder drucken
      • gsm_menu25Raspberry Pi GSM Modul – Mobiles Internet (LTE, 3G, UMTS)
      • autostart_menu25Autostart: Programm automatisch starten lassen
      • machine-learning-25Raspberry Pi Machine Learning erlernen
  • Projekte
      • roboter_menu30tRoboter
        • Raspberry Pi Roboter ProjektRaspberry Pi Roboter Projektübersicht
        • Raspberry Pi Roboter Bausatz fertigTeil 1: Zusammenbau
        • Raspberry Pi Roboter - Linien folgenTeil 2: Linien folgen lassen
        • Raspberry Pi Roboter per Infrarot Fernbedienung steuernTeil 3: Per Infrarot Fernbedienung steuern
        • Raspberry Pi Roboter: Ultraschall AutopilotTeil 4: Automatisch Hindernissen ausweichen
        • Raspberry Pi Roboter der eigenen Stimme folgen lassenTeil 5: Der eigenen Stimme folgen lassen
        • Raspberry Pi Roboter mit Xbox 360 Controller fernsteuernTeil 6: Mit Xbox 360 Controller Roboter fernsteuern
        • Raspberry Pi Robot Arm 6DOF6-Gelenkigen Roboter Arm am Raspberry Pi betreiben (6 DOF)
      • led_menu30LED Matrix
        • Raspberry Pi LED MAX7219 Dot Matrix – ProjektübersichtMAX7219 LED Matrix – Projektübersicht
        • 8×8 LED Dot Matrix Parts8×8 LED Matrix – Zusammenbau und Installation
        • Raspberry Pi Bibliothek für mehrzeilige m x n MAX7219 LED MatrizenBibliothek für mehrzeilige m x n MAX7219 LED Matrizen
        • Graphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnenGraphiken auf mehrzeiligen Raspberry Pi LED Matrizen zeichnen
        • Pong auf MAX7219 Matrizen spielen (mit Joystick) – Raspberry PiPong auf MAX7219 Matrizen spielen (mit Joystick)
        • Snake auf Raspberry Pi MAX7219 Matrizen spielenSnake auf Raspberry Pi MAX7219 Matrizen spielen
        • 7 Segment Anzeige (Anode) mit MAX7219 MAX7221 und Raspberry Pi7 Segment Anzeige (Anode) mit MAX7219/MAX7221
        • Raspberry Pi 7 Segment Anzeige Kathode mit MAX7219Raspberry Pi: 7 Segment Anzeigen mit MAX7219 steuern (Kathode)
      • wetterstation_menu30Wetterstation
        • Raspberry Pi Wetterstation mit OpenHAB 2 bauenEigene Raspberry Pi Wetterstation mit OpenHAB 2 bauen
        • Raspberry Pi Luftfeuchtigkeit/Temperatur SensorLuftfeuchtigkeit und Temperatur messen
        • raspberry_pi_thingspeak_daten_loggenSensordaten mit ThingSpeak loggen und auswerten
        • Raspberry Pi BMP180 SensorRaspberry Pi und I2C Luftdrucksensor BMP180
        • Measuring Temperature with a Raspberry Pi Temperature Sensor (1-Wire)Raspberry Pi Temperatursensor (1-Wire): Temperatur messen
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Raspberry Pi Gas Sensor MQ-2Raspberry Pi Gas Sensor (MQ-X) konfigurieren und auslesen
      • arduino_menu30tArduino & ESP8266
        • ESP8266 Microcontroller BoardEinführung & Programmierung des ESP8266 NodeMCU Boards
        • Raspberry Pi + ESP8266 NodeMCU: Per WLAN Daten sendenRaspberry Pi + ESP8266 NodeMCU: Per WLAN Daten senden
        • ESP8266 NodeMCU Außenposten-Wetterstation für den Raspberry PiESP8266 Wetterstation Außenposten für den Raspberry Pi
        • Mit dem NodeMCU ESP8266 433MHz Funksteckdosen steuernMit dem NodeMCU ESP8266 433MHz Funksteckdosen steuern
        • ESP8266 NodeMCU HD44780 LCD Display per I2C steuernNodeMCU ESP8266: HD44780 LCD Display per I2C steuern
        • ESP8266 Grafikdisplay: Am SSD1306 OLED per I2C Bilder & Text anzeigen
        • ESP8266 Google Maps API RoutenplanerESP8266 Google Maps API Routenplaner auf LCD anzeigen
        • 2000px-Arduino_Logo.svgRaspberry Pi und Arduino – Einführung
        • arduino unoArduino und Raspberry Pi miteinander kommunizieren lassen
        • Funkkommunikation zwischen Raspberry Pi's und Arduinos (2.4 GHz)Funkkommunikation zwischen Raspberry Pi’s und Arduinos (2.4 GHz)
        • NodeMCU: ESP8266 mit Solarpanel und Akku mit Strom versorgenNodeMCU: ESP8266 mit Solarzelle und Akku mit Strom versorgen
        • ESP8266 Access Point: Günstigen Wlan Repeater selber bauenESP8266 Access Point: Günstigen Wlan Repeater selber bauen
      • Mini Projekte
        • Raspberry Pi Gewächshaus automatisch selber bauenAutomatisches Raspberry Pi Gewächshaus selber bauen
        • Eigene Raspberry Pi Gartenbewässerung mit Webseite bauenEigene Gartenbewässerung mit Webseite bauen
        • Raspberry Pi Radio StationRaspberry Pi als Radio Sendestation verwenden
        • Raspberry Pi Radio ReceiverRaspberry Pi als Radioempfänger benutzen (Autoradio, Car PC)
        • spotify-logo-primary-horizontal-dark-background-rgbRaspberry Pi als Jukebox (Spotify, Soundcloud, TuneIn, uvm.) – Online Radio
        • Raspberry Pi RetroPie Guide - SNES Classic Spielekonsole selber bauenRaspberry Pi RetroPie Guide – SNES Spielekonsole bauen
        • Android + Raspberry Pi: Funksteckdosen App BedienungRaspberry Pi + Android/iOS: Funksteckdosen per App schalten
        • Indirekte Deckenbeleuchtung selber bauen mit farbigem LED LichtIndirekte Deckenbeleuchtung selber bauen mit farbigem LED Licht
  • Sonstiges
    • Wünsch dir ein Tutorial
    • News
    • Reviews
      • Pi Cap – Kapazitives Raspberry Pi Erweiterungsboard
      • Raspberry Pi Tablet „Sunfounder RasPad“ – Testbericht & Einrichtung
      • Testbericht zum 7″ Raspberry Pi Touchscreen Display
      • CrowPi 2 Testbericht: Laptop & Lern-Kit für Kinder
      • Daten auf dem Wio Terminal LCD Screen anzeigen
    • Raspberry Pi Zero
      • Offizielles 5$ Raspberry Pi Zero Modul vorgestellt
      • Raspberry Pi Zero – Ethernet Verbindung herstellen (ENC28J60)
      • Raspberry Pi: WS2801 RGB LED Streifen anschließen und steuern
  • Hausautomation
    • OpenHAB
      • steckdose_25Sonoff S20 Wifi Steckdose steuern
      • wireless_25Funksteckdosen (433 MHz) schalten
      • schalter_25Relais steuern (Rollladen, Lichter, etc.)
      • wetterstation_menu30Wetterstation mit OpenHAB 2 bauen
      • ws28_25WS28xx RGB LED Streifen steuern
      • touchscreen_25Touchscreen Panel bei Näherung aktivieren
      • mqtt_25MQTT Datenabfrage: Raspberry Pi an ESP8266
      • spotify_25Remote Spotify Player im Smart Home
      • heizung_25eQ-3 Thermostat im Smart Home
    • Einführung
      • Raspberry Pi Smart Home OpenHAB installierenOpenHAB installieren & konfigurieren
      • Home Assistant auf dem Raspberry Pi – Erste Schritte
    • ESP8266 NodeMCU
      • esp8266_25Einführung & Programmierung
      • arduino_25ESP8266: Arduino IDE installieren
      • lcd_25NodeMCU HD44780 LCD
      • battery_25Batteriebetrieb via Deep-Sleep
      • wifi_menuPer WLAN Daten senden
      • wetterstation_menu30Wetterstation Außenposten
      • maps_25Google Maps Routenplaner
      • wireless_25NodeMCU Funksteckdosen steuern
      • mail_25Vom NodeMCU Emails versenden
      • rgb_25WS2812B LEDs am Smartphone steuern
      • solar_25ESP8266 Stromversorgung mit Solarzelle
    • Überwachung
      • Aufnahmen mit dem offiziellen Kamera Modul des Raspberry Pi
      • Raspberry Pi: Überwachungskamera Livestream einrichten
      • mailbox_25Briefkasten Sensor – Email Benachrichtigung bei neuer Post
      • Raspberry Pi Überwachungskamera mit Webcam betreiben
      • Überwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais
      • ESP32 Cam Livestream Tutorial für Kamera Modul
    • Raspberry Pi + Android: Benachrichtigungen von Bewegungsmelder
    • Raspberry Pi + Android/iOS: Funksteckdosen per App schalten
    • Raspberry Pi + Android: Schwenkbarer Kamera-Livestream
      • Smart Home
        • Amazon Alexa (Deutsch) auf dem Raspberry Pi installieren
        • Raspberry Pi Funksteckdosen (433MHz) steuern – Tutorial
        • Raspberry Pi Sprachsteuerung selber bauen (Hausautomatisierung)
  • Englisch
  • Französisch
Tutorials for Raspberry Pi Tutorials for Raspberry Pi
Home»Hardware & GPIO»Raspberry Pi: Relais-Schalter per GPIO steuern

Raspberry Pi: Relais-Schalter per GPIO steuern

Facebook Twitter LinkedIn Tumblr Email Reddit
Raspberry Pi Relais Modul
Teilen
Facebook Twitter LinkedIn Email Tumblr Reddit Telegram WhatsApp

Oftmals will man auch Module mit höheren Spannung mit dem Raspberry Pi steuern. Für diesen Zweck können am Raspberry Pi Relais verwendet werden: Mittels eines niederspannigen Impulses wird der Relais-„Schalter“ umgelegt. Da der Pi nur maximal 5V (die GPIOs sogar nur 3.3V) verträgt bleibt ohne Relais das Risiko vorhanden, den Pi durchbrennen zu lassen. Hat man jedoch zwei voneinander getrennte Stromkreise kann das nicht passieren.

Wie man ein Relais mit dem Raspberry Pi steuert und was dabei beachtet werden muss zeige ich in diesem Tutorial.

Zubehör

  • 5V Relais Modul
  • Female – Female Jumper Kabel, ebay
  • externer Stromkreis (z.B. Batterien) und eine Anwendung (bspw. Motoren)

 

Die Relais gibt es als 2er, 4er, 8er und sogar als 16er Module, je nachdem was man braucht. Um nicht zu viele GPIOs auf dem Pi zu „verschwenden“ lohnt sich bei mehr als 4 Kanälen die Anschaffung eines GPIO Port Expander.

 

Aufbau

Der Aufbau ist sehr simpel, da alle Pins beschriftet sind. Links (GND) kommt an Pin 6 des Pi’s (GND), der rechte Pin (VCC) kommt an 3V3 (Pin 1) des Pis. Je nachdem wie viele der Relais du steuern willst, musst du entsprechend viele GPIOs mit den IN Pins verbinden. Es empfiehlt sich ein kleiner Widerstand zwischen Pi und Relais zu setzen, ist aber bei 3V3 nicht unbedingt nötig.
Solltest du 5V statt 3.3V an VCC setzen, solltest du auf jeden Fall jeweils einen Widerstand (~1kΩ) zwischen die GPIOs und die IN Pins setzen.

 

Auf der anderen Seite sind an jedem Relais 3 Verbindungen (siehe Bild unten):  Je nachdem ob am IN-Pin eine LOW (0V) oder HIGH (3.3V bzw. 5V) anliegt wird entweder der Schalter zwischen der Mitte und Rechts, bzw. Mitte und Links geöffnet. Falls du alle 3 Pins verbindest kannst du das Relais quasi als Switch verwenden, lässt du rechts oder links frei hat es einfach die Wirkung eines On/Off Schalters. Wo dabei VCC bzw. Ground angeschlossen werden (Mitte bzw. Rechts/Links) spielt keine Rolle.

 

Raspberry Pi Relais: Entweder Mitte-Links oder Mitte-Rechts wird verbunden/"geöffnet".
Entweder Mitte-Links oder Mitte-Rechts wird verbunden / „geöffnet“.

Solltest du Geräte mit hohen Spannungen anschließen wollen, solltest du entweder genaustens wissen was du tust oder einen Elektriker fragen! 230V sind lebensgefährlich. Achte zusätzlich auf die Spezifikationen des Relais und nimm möglichst keine zwielichtigen China-Teile (das ist im Niedrigstrom-Bereich zwar egal, bei höheren Spannungen sollte man aber der Sicherheit zu Liebe den Euro mehr ausgeben und geprüfte Ware nehmen). Ich übernehme keine Haftung für Schäden!

 

 

Raspberry Pi Relais Steuerung

Auch die Steuerung ist nicht sonderlich schwierig, da nur GPIOs geschaltet werden müssen. Du kannst dafür C++ (wiringPi) oder Python verwenden. Ich verwende Python und habe GPIO 17 (Pin 11) verwendet.

sudo python

Python
1
2
3
4
5
6
7
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM) # GPIO Nummern statt Board Nummern
 
RELAIS_1_GPIO = 17
GPIO.setup(RELAIS_1_GPIO, GPIO.OUT) # GPIO Modus zuweisen
GPIO.output(RELAIS_1_GPIO, GPIO.LOW) # aus
GPIO.output(RELAIS_1_GPIO, GPIO.HIGH) # an

Liegen 0V am Relais Pin an, leuchtet die entsprechende LED, bei einem HIGH Pegel erlischt die LED. Möchtest du, dass bei einem HIGH Pegel das Relais öffnet musst du also den mittleren und linken Pin mit dem Stromkreis verbinden. Dabei ist die LED aus. Soll das Relais öffnen, wenn die LED auch brennt werden mittlerer und rechter OUT Pin verbunden.

 

Das war es auch schon. Mich würde interessieren, in welchen Anwendungen die Raspberry Pi Relais bei euch Benutzung finden?

230V C# Hochspannung python Reed-Relais Relais Schalter Switch
Teilen Facebook Twitter Pinterest LinkedIn Tumblr Email
Vorheriger BeitragRaspberry Pi: Luftfeuchtigkeit und Temperatur messen
Nächster Beitrag Offizielles 7″ Raspberry Pi Touch Display vorgestellt

Ähnliche Beiträge

ESP32 TDS Sensor: Wasserqualität im Smart Home messen

ESP32 pH-Sensor – Automatische pH-Messung für Pool und Hydroponik

Home Assistant auf dem Raspberry Pi – Erste Schritte

Mit der Raspberry Pi REST API via Python alle GPIOs steuern

145 Kommentare

  1. Sebastian am 27. Oktober 2015 15:54

    Cool. Das habe ich für meine Weihnachtsbeleuchtung gesucht.
    Danke!!!

    Antworten
  2. Tim am 22. Dezember 2015 7:18

    Ich würde gerne unsere LED-Leisten im Wohnzimmer damit steuern.
    Finde das Tutorial gut beschrieben, würde mich jedoch auch darüber freuen, wie in den anderen gewohnte Tutorials eine Beispielverkabelung oder Schaltpläne zu sehen, wie du das ganze wo angeschlossen hast.

    Gruß!

    Antworten
    • Felix am 22. Dezember 2015 13:38

      Hi Tim,
      nunja so ein einzelnes Relais hat nur VCC, GND und einen Pin, der das Relais schaltet, wobei alle beschriftet sind. Daher habe ich hier auf einen Schaltplan verzichtet.

      Antworten
  3. Klaus Werner am 7. Januar 2016 2:59

    Hallo,

    Du hast nur eines wohl vergessen.
    Alle diese Relais die ich kenne werden mit Masse geschaltet und das kann der PI nicht!
    Also werden u. a. eine Transistor-Schaltung gebraucht.

    Klaus

    Antworten
    • Felix am 7. Januar 2016 13:47

      Hallo Klaus,
      bei welchen Relais hast du es denn getestet? Eizelne Relais oder verbaute Module?
      Bei den von mir verlinkten Relais Modulen ist eine Masse-Verbindung nicht nötig. Ich nehme an, dass in den Modulen die Verbindung zu Ground bereits eingebaut ist.
      LG Felix

      Antworten
      • martin am 30. März 2024 18:51

        Hi,
        ist zwar älter, aber auch deine verlinkten Relais schalten mit LOW Signal, steht auch in einer Rezession von 2016 so drin (> „was leider nirgends steht ist, daß die Teile Low-Aktiv sind. …“

        Was meinst du auch mit „Masse-Verbindung“ ? Du hast das „Problem“ nicht verstanden 😉

        Fakt ist, schließt man das Relais an einen GPIO an (der auch noch nicht konfiguriert sein muss), zeiht das Relais an, weil der GPIO ein „Low“ Signal hat …

    • Udo am 22. Juli 2017 19:33

      Hallo Felix ,

      ich habe 8 von den Relais die möchte ich über die Tastatur schalten z.B bei Taste 1 Relai 1 und 2 Relai 2…… .Ich bin nicht ganz so fit in Python bin Anfänger .
      Hättest Du einen Tipp ,Danke für die Antwort.

      Udo

      Antworten
      • Felix am 25. Juli 2017 21:42

        Hi Udo,
        schau dir mal diese beiden Tutorials an, der Einstieg ist wirklich einfach 🙂
        Programmieren lernen am Raspberry Pi – Teil 1: Einführung
        Raspberry Pi GPIO Erklärung für Beginner + Programmierung (Teil 2)

      • Udo Kralitschek am 29. Juli 2017 10:40

        Dankeschön

        Eine Super sache deine Tutorials

  4. Hugolost am 16. Februar 2016 19:11

    Bei mir reagiert das Relais garnicht. Woran könnte das liegen?

    Antworten
    • Felix am 17. Februar 2016 0:14

      Was du testen kannst: Schließe ganz normal VCC (3.3V) und GND des Relais an den Pi an. Dann verbinde den Schalt-Pin des Relais erst an 3.3V und danach and GND. Die LED des Relais sollte einmal aufleuchten und einmal ausgeschaltet sein. Falls das nicht der Fall ist, ist entweder dein Relais kaputt oder es benötigt eine andere Spannung.

      Antworten
  5. Hugolost am 17. Februar 2016 17:20

    Mit 3,3V an VCC schaltet das Relais garnicht (ist ein 5V Relais) Aber auch mit 5V klappt es nicht. Ein Arduino an das Relais angeschlossen und es klappt.

    Antworten
    • Felix am 17. Februar 2016 17:23

      Möglich, dass du ein anderes Relais benutzt. Ich habe aber mit allen getesteten 5V Relais die Erfahrung gemacht, dass auch 3.3V zum schalten ausreichen. Wenn aber auch 5V des Pi’s das Relais nicht schalten, muss das Problem wo anders liegen.

      Antworten
  6. Hugolost am 17. Februar 2016 19:27

    Mit 3,3V schaltet das Relais garnicht. Aber selbst mit 5V klappt es nicht. An einem arduino klappt es aber einwandfrei.

    Antworten
  7. Hauschi am 20. Februar 2016 16:24

    Hi Felix,
    dich interessiert ja was wir mit dem Relais so anfangen.

    Ich hab mir aus einer Heizmatte, einem Relais, einem DHT22 und ner Styroporbox einen Joghurtbereiter gebastelt.
    Der PI muss für 7 stunden die Temperatur zw. 42 und 45 Grad Celsius halten, und das wars eigentlich schon. (wo ist eigentlich das Grad Symbol auf ner Tastatur)
    Das alles mit sehr begrenzten Elektonik und Python Kentnissen.
    Die meisten Zeilen sind bei Dir und Adafruit geklaut.

    http://pastebin.com/uFeBRZxJ

    Ich beschäftige mich jetzt seit knapp 2 Wochen mit Python, ein zwei Rätsel kommen immer wieder auf, aber meistens klappts.

    Antworten
    • Hauschi am 20. Februar 2016 17:03

      P.s. wie bau ich da denn nen abbruch durch benutzer ein…

      Also durch tastendruck oder ctrl irgendwas

      Antworten
      • Felix am 20. Februar 2016 19:45

        STRG + C 😉

    • Felix am 20. Februar 2016 19:47

      Hi Hauschi,
      dein Projekt klingt wirklich interessant, gut möglich, dass ich in Zkunft so etwas auch baue 🙂
      PS: Grad Zeichen (°) oben links neben der 1 auf der Tastatur.

      Antworten
    • Hauschi am 20. Februar 2016 20:31

      Oh man strg c….

      Ich hab mir hier allen möglichen mist mit keyinterrupt auf englisch durchgelutscht und mein englisch ist wirklich für fachbezogenes nicht ausgelegt, eher um ein bier zu bestellen

      Antworten
    • Hauschi am 21. Februar 2016 18:09

      Nochmal zum KeyboardInterrupt:

      Hab noch mit „try: / except KeyboardInterrupt“ gespielt

      Habs jetzt so hinbekommen, daß er bei strg+c noch das relais auf low stellt bzw den gpio cleanup ausführt
      Nicht daß man abbruch macht und die heizmatte grillt weiter oder ähnliches.

      soll ich die Zeilen noch Posten oder war das nur für mich Neuland?

      gruß hauschi

      Antworten
      • Michael am 10. Januar 2018 14:49

        ja bitte kommt spät aber würde mir helfen
        mfg

    • Hauschi am 17. März 2016 11:08

      Noch was wichtiges, auf jeden Fall muss man mit except bei fehlern zumindesten das relais wieder ausschalten…
      Mir erging es wie folgt: ich hab damit eine heizung für ein minigewächshaus gesteuert, lief wochenlang stabil. Eines morgen waren alle pflänzchen gar gekocht. Der dht22 hatte wohl nen fehler und round (temperature,1) ging schief weil diese auf einmal als string erkannt wurde… programm wurde beendet und relais blieb auf Heizen stehen… hab noch nen 16×2 display dran, das zeigt dann aber ja auch nur die letzte gemessene temperatur.

      Naja aus fehlern lernt man..

      Gruß Hauschi

      P.S. Felix, wenn ich hier nochmal das aktuelle script poste, würdest du mal drüber schauen ob da noch mehr überraschungen lauern?

      Antworten
      • Felix am 17. März 2016 23:49

        Hey Hauschi,
        klar, ich kann einen Blick drüber werfen.

      • Kröger am 15. Dezember 2021 14:07

        Hallo Hauschi,

        wie hast Du es hinbekommen, dass bei Programmabbruch durch Strg+C und Fehler vorher noch ein gpio cleanup durchgeführt wird?
        Ich habe eine Lüftersteuerung für den Keller mit Raspberry Pi erstellt und möchte nicht, dass die Lüfter bei Programmabbruch (durch Strg+C oder Sensorfehler) ggfs. dauerhaft eingeschaltet sind. 😉
        Kannst Du mir den Python-Code zur Verfügung stellen?

        Vielen Dank!

        Mit freundlichen Grüßen
        Lars Kröger

    • Jörg Michael Günther am 11. April 2017 19:55

      Das Gradzeichen hat den ASCII-CODE 248 falls Dir das hilft

      Antworten
  8. Patrick am 25. Februar 2016 18:17

    Hallo zusammen,
    ich steuere über 2 Buttons auf einer html Seite jeweils ein Relai für Auf- und zufahren eines Rollladens. Nun möchte ich auch über einen Stopp Button den Rollladen stoppen. Im moment kann ich nur ganz auf oder zufahren.
    Hier habe ich das sh skript für zufahren mal unten eingefügt. Das für auffahren sieht fast genau so aus.
    Weis jemand wie es möglich ist, durch betätigen des Stopp Buttons die beiden Pins für die Relais daraufhin auf Eingang zu legen?

    Vielen Dank

    LG
    Patrick

    #!/bin/sh
    
    gpio -g write 17 0              #Verriegelung
    gpio export 17 in                #Verriegelung
    
    gpio export 23 out              #Port 23 wird auf Ausgang gelegt
    sleep 10                                    #Rollladen fährt zu
    
    gpio -g write 23 0              #Port 23 wird eine 0 zugewiesen (Relai faellt ab)
    gpio export 23 in               #Port 23 wird auf Eingang gelegt (Grundzustand)
    Antworten
    • Felix am 25. Februar 2016 18:22

      Hi Patrick,
      das Problem liegt in dersleep 10 Zeile. Dadurch hast du keine Möglichkeit zu stoppen.
      Ich würde eine Schleife laufen lassen und innerhalb der Schleife lediglich eine halbe Sekunde oder noch weniger warten. Außerdem überprüfst du den Status des Stop-Tasters jedes mal und falls er gedrückt wurde bricht die Schleife ab und das Relais wird geschaltet. Mit Python könntest du auf die nützlichen GPIO Funktionen zugreifen ggf. sogar auf die Schleife verzichten.
      LG Felix

      Antworten
    • Patrick am 25. Februar 2016 18:59

      Hi Felix,
      das sleep 10 ist ja dazu da, dass das Relai für 10 sec anzieht und anschließend wieder abfällt. Der Rollladen braucht genau 10 sec zum auf bzw. zufahren 🙂

      könntest zu mir ein beispiel code schreiben, wie du das realisieren würdest?

      Antworten
      • Felix am 25. Februar 2016 19:10

        Das ist mir klar, aber durch sleep wird alles andere lahmgelegt. Das System pausiert und dadurch kannst du es auch nicht abrrechen.
        Beispielcode in Python (ungetestet):

        import RPi.GPIO as GPIO
        import time
        
        GPIO.setmode(GPIO.BCM) # GPIO Nummern statt Board Nummern
        TASTER_GPIO = 17 # anpassen
        RELAIS_GPIO = 21 # anpassen
        GPIO.setup(TASTER_GPIO, GPIO.IN) # GPIO Modus zuweisen
        GPIO.setup(RELAIS_GPIO, GPIO.OUT) # GPIO Modus zuweisen
        
        def wechsel():
          # abfragen ob wieder starten oder stoppen
          # ...
          GPIO.output(RELAIS_GPIO, GPIO.HIGH)
        
        GPIO.add_event_detect(TASTER_GPIO, GPIO.BOTH, callback=wechsel)
        
        start = time.time()
        dauer = 10 # Sekunden
        while time.time() - dauer < start:
          time.sleep(0.1)
        

        Schau dir ggf. dieses Tutorial auch mal an: Überwachung von Fenstern und Türen mit dem Raspberry Pi und Reed-Relais

  9. Patrick am 25. Februar 2016 19:14

    ja da hast du recht da wird alles lahmgelegt, dass habe ich noch nicht bedacht gehabt
    okey danke ich teste das mal 🙂

    Antworten
    • Patrick am 25. Februar 2016 19:37

      Nochmal ne Frage, was meinst du eigendlich mit diesem Taster_GPIO?

      Antworten
      • Felix am 25. Februar 2016 19:38

        Naja, du hast doch einen Taster/Knopf den du drücken willst, wenn es stoppen soll oder nicht?

  10. Patrick am 25. Februar 2016 19:52

    Ne also ich habe eine html Seite mit 3 Buttons:
    Zufahren
    Auffahren
    Stopp

    und ich möchte über den Stopp button auf der Webseite den Rollladen stoppen.
    sorry vll hab ich das vorhin etwas schlecht beschrieben.

    Antworten
    • Felix am 25. Februar 2016 19:56

      Achso, ok. Dann musst du es natürlich etwas umschreiben: Überprüfe in der Schleife, ob Stopp gedrückt wurde und setze dann sofort den Relais GPIO auf LOW. Beispiel:

      if ... : # start button pressed
        GPIO.output(RELAIS_GPIO, GPIO.HIGH)
        while time.time() - dauer < start:
          if ... : # anpassen
            GPIO.output(RELAIS_GPIO, GPIO.LOW)
          time.sleep(0.1)
        GPIO.output(RELAIS_GPIO, GPIO.LOW)
      Antworten
  11. Patrick am 26. Februar 2016 15:19
    #!/bin/sh
    
    if zufahren button pressed : # start button pressed
      GPIO 23.output(RELAIS_GPIO, GPIO.HIGH)
      while time.time() - dauer < start:
        if stopp button pressed : # anpassen
          GPIO 23.output(RELAIS_GPIO, GPIO.LOW)
        time.sleep(0.1)
      GPIO 23.output(RELAIS_GPIO, GPIO.LOW)

    wenn ich den zufahren Button betätige ruft der über php das Shell Skript auf.
    Wenn ich die Schleife so mach funtkioniert gar nichts, und des Relai zieht nicht an. Ich glaube ich denke das is falsch wie ich es gemacht habe, vll denke ich da zu einfach 😀

    Antworten
    • Felix am 26. Februar 2016 17:09

      Du deklarierst ein shell Skript, benutzt aber Python Code? Hast du es gekürzt oder fehlen auch die imports der Libraries?
      Btw. was genau ist GPIO 23.output? eine Variable kann nicht durch Leerzeichen getrennt sein bzw. eine Zahl. Falls das alles an Code ist, macht dieser definitiv keinen Sinn (du solltest ihn testen und wirst bestimmt einige Fehlermeldungen bekommen).
      LG Felix

      Antworten
  12. M.Krause am 8. März 2016 17:52

    Hallo Felix,

    erstmal.. Du hast hier ne richtig geile Seite aufgebaut. Mach weiter so.
    Und nun zu meiner Frage.
    Ich habe wie hier in diesem Tutorial beschrieben eine 8er relaiskarge angeschlossen und daran wiederum aquariumpumpen.
    Aus einem deiner vorherigen tutorials hatte ich auch schon ein LCD-Display (4×20) in betrieb genommen.
    Nun spinnt mein display jedoch jedes mal rum wenn ich eine Pumpe ansteuere, ich habe schon gedacht das es vllt einen spannungeinbruch gibt, und habe die stromversorgungvom Raspberry und die der Pumpen getrennt.
    Das hat aber leider nicht geholfen. Hast du noch eine Idee an was es liegen könnte?

    Mit freundlichen Grüßen
    M.Krause

    Antworten
  13. Johannes am 16. März 2016 12:07

    Hi,

    vielen Dank für das Tutorial. Hab mich auch auf anderen Seiten eingelesen, aber leider funktioniert mein Skript nicht. Beide Relais schalten nach der Zeile GPIO.setup(….) und nach GPIO.cleanup(…). Das Umschlaten der Pins hat keinen Einfluss, weder auf die LEDs, noch auf das Relais. Wenn ich die Pins des Relais mit 3,3 V und GND direkt verbinde, schalten sie einwandfrei.

    Momentan bin ich noch am ausprobieren. Mein Ziel ist es eine Steuerung für einen Innenraumbelüftung zu bauen, die bei einer gewissen Temperatur meines Holzofens die Lüftung einschaltet, damit es unter dem Dach nicht so warm wird.

    Grüße Johannes

    import RPi.GPIO as GPIO
    import time
    #setup
    GPIO.setmode(GPIO.BOARD)
    pin1 = 7
    pin2 = 11
    GPIO.setup(pin1,GPIO.OUT)
    GPIO.setup(pin2,GPIO.OUT)
    
    #run
    GPIO.output(pin1,GPIO.HIGH)
    GPIO.output(pin2,GPIO.LOW)
    time.sleep(2)
    GPIO.output(pin1,GPIO.LOW)
    GPIO.output(pin2,GPIO.HIGH)
    
    #finish
    GPIO.cleanup([pin1, pin2])
    Antworten
    • Felix am 16. März 2016 13:36

      Hallo Johannes,
      hast du mal versucht einen Transistor dazwischen zu schalten? Diese brauchen nur eine geringe Stromstärke zum schalten und somit könntest du das Relais auch über 5V schalten. Ist zwar etwas umständlicher, aber vielleicht klappt es ja. Benutzt du irgendein spezielles Relais oder die verlinkten?
      LG Felix

      Antworten
    • Johannes am 20. März 2016 21:32

      Hallo Felix,

      Ich habe die gleichen Relais, auf dem Board sind bei mir aber andere Bausteine verbaut. Die zwei schwarzen rechteckigen fehlen. Könnte natürlich sein, dass das Transistoren sind… Auf dem Relais steht jedenfalls irgendwas von 5 VDC. Mir ist aber nicht ganz einleuchtend, wieso die Relais sauber schalten, wenn ich sie mit 3,3 V verbinde bzw. die Verbindung wieder unterbreche. Kann es sein, dass die Pins des Raspberry Pi nicht „sauber“ geerdet sind? Also dass eben nicht 0 V anliegen, sondern eine „zappelnde“ Spannung?

      Ich besorg mir mal einen Transistor und probiere es aus.

      Grüße
      Johannes

      Antworten
      • Felix am 20. März 2016 22:07

        Hallo Johannes,
        also eine „zappelnde“ Spannung habe ich bisher nie an den GPIOs gemessen. Ich habe bei vielen Bauteilen die Erfahrung gemacht, dass sie auch mit 3.3V funktionieren. Die Module sind meistens für den Arduino bestimmt und dessen IO Pins liefern 5V Spannung. Allerdings haben die verwendeten Komponenten eben oft einen Spannungsvereich von ca. 3-5.5V. Natürlich gibt es auch Module, die wirklich genau 5V brauchen, aber ich habe das mit solchen Standard Teilen wie Relais bisher nicht erlebt.

    • Johannes am 25. März 2016 17:12

      Hallo Felix,

      danke für den Hinweis mit dem Transistor. Hat geklappt. Ich habe die Verkabelung gemäß folgender Seite (Output Circuit, NPN-Transistor) vorgenommen: http://elinux.org/RPi_GPIO_Interface_Circuits Am GPIO-Pin liegen 3,14 V an, am Collector des Transistor, liegen 4,13 V an.

      Grüße
      Johannes

      Antworten
      • Felix am 25. März 2016 21:50

        Scheint wohl wirklich so zu sein, dass dein Relais mehr als 3V braucht. Nunja, hauptsache ist, dass es nun klappt 🙂

  14. Frank am 18. März 2016 9:25

    Hallo,

    super Tutorial……
    Ich möchte meine 12V LED Aquarium Beleuchtung damit Steuern.

    Frage: Was bräuchte ich, damit ich zusätzlich dimmen kann?

    Ich habe 4LED 12 V Leisten über dem Becken und habe jetzt einen DrehDimmer dran. So kann ich Stufenlos die Helligkeit einstellen, d.h. die LEDs sind einfach Dimmbar.

    Weisst du ob es vielleicht so etwas gibt? Dein Relais macht sicher nur ein/aus.

    Viele Grüße

    Frank

    Antworten
    • Felix am 18. März 2016 12:45

      Hallo Frank,
      normale Relais machen wirklich nur ein/aus. Du könntest es aber z.B. mit dimmbaren Funksteckdosen probieren: http://amzn.to/21yWIRj
      Funksteckdosen (433MHz) mit dem Raspberry Pi steuern

      Antworten
  15. Maurice am 24. März 2016 10:46

    Moin moin, danke für das super Tutorial!

    Ich habe ein bisschen grundsätzliche Ahnung von Elektrotechnik, aber trotzdem eine Frage dazu…

    Du hast geschrieben, dass du, wenn man die Relais mit 5V beschaltet, einen ~1k Widerstand zwischen GPIO und IN einbauen würdest – zur Sicherheit. Wie kommst du genau auf die ~1k?
    Ich habe nämlich ein entsprechendes Board zur Verfügung, das aber mit 12V versorgt wird. Wie müsste ich die Widerstände da dimensionieren?

    Wäre super, wenn du mir da aushelfen könntest.
    Danke!

    Antworten
    • Felix am 24. März 2016 12:25

      Hey Maurice,
      Im Grunde ist das bei 3.3V nicht wichtig, da der GPIO nur einen Strom sendet, aber keinen bekommt. Das war nur gedacht, falls man etwas falsch angeschlossen hat etc. Aber da sollte es auch eine Diode tun (solange der GPIO nur Output ist).
      Ansonten kannst du dir mal das Prinzip eines Spannungsteiler ansehen: https://de.wikipedia.org/wiki/Spannungsteiler

      Antworten
  16. 4711engel am 1. April 2016 19:25

    Hi,
    ich habe nun auch wiringPi installiert und das Relais an den Pi angeschlossen (VCC GND IN) und auf der anderen Seite einen Motor mit eigener Stromversorgung .
    Nun habe ich aber das Problem, dass wenn ich
    GPIO.setuup(RELAIS_1_GPIO, GPIO.OUT) eingebe, das Relais schließt (Motor läuft) und wenn ich
    GPIO.setup(RELAIS_1_GPIO, GPIO.IN) eingebe, das Relais öffnet (Motor aus).
    Also ohne dann GPIO.output ….. auf LOW oder HIGH zu setzen.
    Was mache ich falsch?

    Antworten
    • 4711engel am 7. April 2016 18:23

      Ist dieser Blog nicht mehr aktiv?
      Oder warum erhalte ich keine Antwort? Schade eigentlich. Ich würde gerne meinen Fehler finden. Da sollte es doch jemand geben, der einem Anfänger vielleicht helfen kann.

      Antworten
      • Felix am 7. April 2016 19:02

        Ist noch aktiv 😉 Nur bei so vielen Kommentaren überließt man mal ein, kümnmere mich ja nur in meiner Freizeit darum 🙂
        Zu deiner Frage: Ich vermute folgendes: Durch GPIO.IN agiert der Pin wie GND (oder auch GPIO.LOW). Der andere Zustand ist dann ggf. nicht HIGH sondern „nicht LOW“.
        Dennoch würde ich den Pin als Output deklarieren.
        LG Felix

  17. Daniel am 13. April 2016 13:56

    Habe jetzt dein „AN“ statement und dein „AUS“ statement getauscht, damit die LED am Relais nur brennt wenn das Relais meine Pumpe ansteuert. Spricht etwas dagegen das so zu tun. Wenn ich die Schaltung richtig verstehe liegt damit auf dem GPIO immer eine Spannung an wenn das Relais aus sein soll. Oder hat das negative Auswirkungen wenn der Raspberry vielleicht mal abstürzt und damit das Relais angeht weil die Spannung fehlt?

    Antworten
    • Felix am 13. April 2016 14:04

      Nein, das kannst du handhaben wie du möchtest. Es gibt auch unterschiedliche Arten von Relais (manche leuchten, wenn Spannung anliegt, manche wenn keine Spannung anliegt). Je nachdem welches du hast wird der Stromkreis unterbrochen, wenn z.B. der Pi keine Spannung mehr liefert (also gar keine – nicht nur LOW am Schalt-Pin).

      Antworten
  18. Winne am 21. April 2016 20:42

    Hallo Felix,
    ich weiß nun nicht mehr was nun richtig ist, bin leider totaler leihe. Dein Bericht ist nun das gegen teil was ich nun schon mehrfach über dieses Relay Modul gelesen habe. ( Hersteller ArtikelNr.: CP0408A )
    Hier mal eine Beschreibung was man machen soll wen man es mit ein Raspberry pi betreiben möchte. Ich einen Raspberry pi 3
    Was ist Deine Meinung dazu, für eine Antwort wäre ich dankbar.
    ————————————————————————————————–
    Problem: Das Relaismodul besteht aus zwei Stromkreisen, dem Steuerkreis und dem Relaiskreis. Beide sind auf 5V ausgelegt. Betreibt man beide Stromkreise mit 3,3V, so besteht die Gefahr, dass das Relais „hängt“ oder nicht zuverlässig schaltet, denn die Relais brauchen zwingend 5V; außerdem fressen dann die LEDs im Steuerkreis so viel Spannung, dass die dort befindlichen Transistoren (aus irgendwelchen elektrotechnischen Gründen, die ich ehrlich gesagt nicht vollständig verstanden habe…irgendwas mit Sättigung) ironischerweise durch ihre eigene Verlustwärme schleichend geröstet werden und irgendwann ausfallen können. Gibt man stattdessen beiden Stromkreisen 5V, so röstet man den GPIO des Raspberry Pi, da dieser nur 3,3V verkraften kann. Was tun, um aus diesem Dilemma herauszukommen?

    Lösung: Wir arbeiten mit unterschiedlichen Spannungen. Wir betreiben den Relaiskreis mit den erforderlichen 5V, während wir den Steuerkreis mit 3,3V betreiben. Auf diese Weise können auch die GPIOs nur 3,3V abbekommen.

    Howto:
    1.) Die vier LEDs mit einem Lötkolben auslöten. Die Stellen, an denen die LEDs waren, mit ausreichend Lötzinn überbrücken.
    2.) Den Jumper, der JD-VCC und VCC auf dem Board verbindet, abziehen. Wichtig! Solange dieser Jumper gesteckt ist, sind Relaiskreis und Steuerkreis miteinander verbunden. Diese Verbindung muss logischerweise getrennt werden, und das geschieht durch Abziehen des Jumpers.
    3.) 3,3V vom Raspberry Pi an VCC des Boards stecken (Pinleiste mit sechs Pins).
    4.) 5V vom Raspberry Pi an JD-VCC des Boards stecken (einer der Pins, wo der Jumper draufgesteckt hat – den richtigen wählen! Beschriftung JD-VCC!)
    5.) Masse vom Raspberry Pi an GND des Boards stecken (Pinleiste mit sechs Pins)

    Nun fehlt noch die Verbindung von den GPIOs zum Board. Da der Raspberry Pi pro GPIO-Port nur max. 8mA an Strom zur Verfügung stellen kann, der Steuerstrom aber lt. Produktbeschreibung mit 15-20mA angegeben ist, müssen wir verhindern, dass das Relaisboard zu irgendeinem Zeitpunkt mehr ziehen kann als diesen Wert. Nach dem Ohm’schen Gesetz (U=R*I) ergibt sich bei einer Spannung von U = 3,3V und einem Maximalstrom von I = 8mA = 0,008A ein Widerstand von R = 412,5 Ohm. In der Praxis eignet sich ein 470 Ohm-Widerstand, den man in das Kabel vom GPIO zum Board einlötet. Dieser begrenzt dann den Stromfluss auf 7mA. In der Praxis funktioniert das auch nach vielen Tests hervorragend.

    In einem letzten Schritt schließt man nun also ein derart präpariertes Kabel zwischen den GPIO-Pin des Raspberry Pi und dem gewünschten Eingang des Relais (z.B. IN1 für das erste Relais). Fertig!

    Antworten
    • Felix am 21. April 2016 22:46

      Hallo Winne,
      also vorweg gesagt, ein Relais hat keine eingebaute Transistoren sondern arbeitet mit einem Elektromagnet, der durch die Spannung (3.3V bzw. 5V) geschaltet wird und einen anderen (getrennten!) Stromkreis öffnet (siehe Wikipedia: https://de.wikipedia.org/wiki/Relais ).
      Zu der zweiten Aussage bzgl des Dauerbetriebs: Ich nutze Relais kaum im Dauerbetrieb, kann also dazu keine Aussage treffen. Allerdings haben sich alle bisher von mir getesten Relais auch mit 3.3V schalten lassen. Falls sich dein Relais nicht mit 3.3V schalten lässt oder du 5V anliegen haben möchtest, so kannst du einen Transistor (NPN) benutzen. Dabei schließt du den GPIO an die Basis an (bitte mit Vorwiderstand ~10k), an den Collector kommen die 5V des Pi’s und der Emitter geht zum Schalt Pin des Relais. Damit kannst du mittels eines GPIOs auch 5V schalten. Ein Beispiel zum Transistoren schalten findest du hier, ist aber nichts großes dabei (bzgl Vorwiderstand stimmt alles, was du kopiert hast) 🙂

      Antworten
  19. Winne am 22. April 2016 12:12

    Hallo Felix,
    erst mal danke für die schnelle Antwort.
    also ich möchte mir dieses Relay Modul kaufen ( http://www.avc-shop.de/epages/64272905.sf/de_DE/?ObjectID=55119743 ).
    Ich habe da nachgefragt, Sie haben gesagt das ich von Rasberry vom PIN 2 die 5v Stromversorgung an DC+ an Relay Modul und Masse vom Rasberry PIN 6 an DC- an Relay Modul ohne was dazwischen anzuschließen und an den IN 1-4 den GPIO anschließen muss ( Beispiel an PIN 7,11,13,15 am Raspberry .
    Nun meine Frage, ist die Aussage richtig, oder muss ich, wie Du geschrieben hast, auch noch ~10k Vorwiderstand dazwischen machen?
    Wie schon geschrieben bin leider totaler leihe.
    Danke im voraus.
    Winne

    Antworten
    • Felix am 22. April 2016 19:54

      Hallo Winne,
      ich habe gesagt, dass der Vorwiderstand vor die Basis des Transistor (falls du einen verwendest) kommt. Wenn du darauf verzichtest kannst du die GPIOs auch direkt anstecken. Ich würde aber ggf. eine Diode dazwischen schalten, damit du sicher gehen kannst, dass keine 5V an die GPIOs gelangen (falls du ausversehen einen Pin vertauschst oder sonstige Komplikationen auftreten), aber auch das ist kein Muss, aber damit bist du auf der sicheren Seite.

      Antworten
  20. Kevin Hans-Horst-Jaqueline am 31. Mai 2016 15:43

    Danke dir. Das Tutorial hat mir sehr geholfen.

    Antworten
  21. Andreas am 9. Juni 2016 6:47

    Hallo!
    Ich muss mit einem Raspberry Pi eine Pumpe für eine Fußbodenheizung ein- und ausschalten, je nach Temperatur. Kann ich mit Relias die 230V für die Pumpe ein- und ausschalten oder muss da was anderes her?

    Antworten
    • Felix am 9. Juni 2016 13:00

      Am einfachsten und sichersten wäre eine Funksteckdose – sofern die Pumpe per Steckdose angeschaltet werden kann.

      Antworten
    • Christoph am 5. Juli 2017 19:47

      Es kommt auf die Leistung ( bzw. Stromstärke ) der Pumpe an. Ich glaube diese Relais können maximal 10A schalten bei 250V. Auf dem Typenschild der Pumpe steht normalerweise der benötigte Strom.

      Antworten
  22. MatthiasB. am 11. Juni 2016 3:34

    Hallo miteinander,
    was ich hier so gelesen habe, finde ich einfach nur toll!
    Ich möchte ein Bastelprojekt starten, obwohl ich keinerlei Ahnung vom Raspberry und Steuerung, geschweige denn vom Programmieren habe. Also frag ich einfach mal drauf los.
    Ich möchte über den Raspberry mit Touchscreen 30 Relais in 3 Zehnergruppen ansteuern, und zwar so, daß bei zwei Zehnergruppen immer nur ein Relais geschlossen ist, bei einer Zehnergruppe sollen es möglich sein, auch 2 oder 3 Relais gleichzeitig anzusteuern.
    Nutzen will ich das als Umschalter meiner Musikanlage. Wie stell ich das an?
    Es gibt ja USB Relaiskarten, gänge sowas?
    Würde mich über eine Antwort freuen, ehe ich das alles kaufe und dann nicht weiter weiß

    Danke, Matthias

    Antworten
  23. Ben am 17. Juni 2016 10:30

    Hallo,
    Danke für das Tutorial!
    Habe aber mal eine Frage um sicher zu gehen:
    Wo muss ich am Relais Ausgang die Masse anschließen? In der Mitte oder Rechts/Links?
    Kenne mich damit nicht aus 😀

    Danke,
    Ben

    Antworten
    • Felix am 17. Juni 2016 13:47

      Ist dein Relais nicht beschriftet?

      Antworten
    • Jörg Michael Günther am 11. April 2017 20:17

      Hallo Ben
      Das Relais hat 3 Anschlüsse. Der mittlere Anschluss auf der Seite mit den Klemmkontakten (Ich denke Du meinst diese ) ist der an dem die Phase oder Plus anliegt. Die Klemme zu der der Strich in der Mitte zeigt ist im Ruhezustand geschlossen. Der Andere ist offen und wird bei Ansprache des Relais geschlossen. Die Frage ist nun ob Du Masse schalten willst oder Plus. Wenn Du ein Gerät an oder aus schalten willst musst Du Dich für eine Version entscheiden. Entweder Du schaltest Masse hat Plus an diesen Klemmen nichts verloren. Sonst gibt es einen Kurzschluss. Umgedreht genauso. Das nicht geschaltete Kabel wird am Relais vorbei geführt. Bei 230 V z.B. würde ich immer die Phase also den Stromführenden schalten um das Gerät im ausgeschaltetem Zustand spannungsfrei zu haben.

      Antworten
  24. Tobias am 22. Juni 2016 18:28

    Hallo Felix,

    dank deines Tutorials konnte ich erfolgreich mein „Neuftech 8-CH 5V 8-Kanäle Relais Modul“ an meinen Pi 2 Model B anschließen und ansteuern 🙂
    Nach etwas rumspielerei ist mir folgendes Problem aufgefallen, dass ich mir nicht erklären kann:
    Ich habe mir ein Script gebaut, mit dem ich alle oder gezielt einzelne Relais ein- bzw. ausschalten kann. Dies geschieht mit mehreren
    „GPIO.output(relais, GPIO.LOW)“ bzw. GPIO.HIGH
    Zeilen hintereinander, wobei Relais1 immer durch die jeweilige GPIO Nummer ersetzt wird. Zwischen den einzelnen Befehlen habe ich zum Test noch einen Sleeptimer von jeweils einer Sekunde eingebaut.
    Nun das für mich kuriose:
    Schalte ich alle Relais ein und nach ca. 30 Sekunden alle Relais aus, bleiben sporadisch Relais 1,3 und 6 an. Schalte ich nun gezielt Relais 1 aus, bleibt Relais 1 an. Schalte ich dann gezielt Relais 1 nochmal an und aus, geht Relais 1 aus. Gleiches Spiel mit Relais 3 und 6.
    Schalte ich alle Relais ein und nach ca. 5 Minuten aus, gehen alle Relais aus.
    Wenn die Relais geschalten werden (alle oder einzeln), ist immer das typische Relais klacken zu hören und die dementsprechende LED auf dem Board geht an bzw. aus.

    Dieses Phänomen tritt nur auf, wenn alle Relais eingeschalten sind. Sind z.B. nur Relais 1,3,4,6 und 8 aktiviert, kann ich diese einzeln aus und einschalten wie ich lustig bin.

    Wo liegt mein Fehler? Bin über jeden Tip dankbar.
    Viele Grüße,
    Tobias

    Antworten
    • Felix am 22. Juni 2016 18:33

      Hallo Tobias,
      hast du mal die anliegende Spannung der GPIOs von Relais 1,3,6 usw. gemessen, wenn du alle ausgeschaltet werden?

      Antworten
  25. Tobias am 22. Juni 2016 18:42

    Hallo Felix,
    nein, werde ich aber morgen mal machen 🙂 Habe mein Bauwerk derzeit nicht zu Hause.
    Ergänzend kann ich noch sagen: Das Problem tritt nur auf wenn Verbraucher an den Relais angeschlossen sind.

    Antworten
    • Tobias am 23. Juni 2016 18:26

      Hallo Felix,
      ich habe nun die Spannung der GPIOs in verschiedenen Konstellationen gemessen (sprich: Relais an/aus wie ich es oben beschrieben habe).
      Die Erkenntnis:
      Wenn der GPIO deaktiviert ist, liegen immer 0,0 V an.
      Wenn der GPIO aktiviert ist liegen immer 3,228V oder 3,229 V an.
      Mit meinem technischen Verständnis würde ich sagen das passt soweit.
      Ich bin nun am überlegen, einen ULN2803 Testweise zwischen GPIOs und Relaiseingänge zu installieren, da ich bei meinen aktuellen Recherchen oft gelesen habe, dass es nicht wirklich ratsam ist, die GPIOs direkt an das Relais anzuschließen.
      Wie siehst du das?

      Viele Grüße

      Antworten
      • Felix am 23. Juni 2016 19:46

        Die Spanungen sind soweit in Ordnung.
        Was du machen kannst ist einen normalen NPN Transistor zu verwenden und diesen zu schalten, sodass 5V an das Relais kommen: Basis (3.3V GPIO), Collector (5V Pi), Emitter (zum Relais Pin)

    • Tobias am 17. Juli 2016 13:03

      Hallo,

      nach einem Dauertest bin ich mir nun sicher, dass das Problem gelöst ist.
      Ich habe nun einen ULN2803A zwischen Pi und Relais eingebaut. Das Relais wird mit einem externen Netzteil mit 5 V versorgt.

      Antworten
  26. A. K. am 27. Juni 2016 13:59

    Hallo Felix, erstmal Danke dafür, dass Du in diesem Forum so viele interessante Informationen zur Verfügung stellst. Du fragst danach in welchem Zusammenhang die Relaissteuerung am Raspberry eingesetzt wird.
    Ich steuere in unserem Haus eine Vielzahl von Geräten über den Raspberry, so z. B. die Rolläden, NAS, Drucker, Zirkulationspumpe zum Warmwasser, ….; alles in Abhängigkeit des „Betriebszustandes des Hauses“, eingeschalteter Geräte (z. B. PCs) und der Uhrzeit. Basis ist ein C-Programm, dass als eine Art Scheduler funktioniert. Alle Steuerungsinformationen sind dabei in einer mysql-DB hinterlegt und können somit jederzeit ohne Programmunterbrechung verändert werden. Das Programm hat eine eigene Auslastungskontrolle und gibt- wenn immer möglich – die Steuerung an Betriebssystem zurück. Trotz einer erheblichen Anzahl von Steuerungsereignissen, erreiche ich einen Idle-Wert von ca. 99% auf dem Raspberry. Da mir die GPIOs ausgehen plane ich nun eine Ansteuerung der GPIOs über I2C Schieberegister-Module, z.b 2307. Hier fehlt mir noch die Information der Ansteuerung des I2C über die Programmiersprache C, wenn Du hier eine Info-Quelle hast, wäre das super, Gruß André.

    Antworten
    • Felix am 27. Juni 2016 14:07

      Hallo Andre,
      dein Projekt klingt interessant. Um dein GPIO Problem zu lösen könntest du einen MCP23017 per I2C ansprechen. Ich habe dazu bereits zwei Artikel geschrieben (Teil1, Teil2), jedoch benutze ich dazu Python. Ich denke allerdings, dass es nicht all zu viel Aufwand sein sollte den Code in C zu übersetzen. Auch auf Github gibt es wahrscheinlich einige Bibliotheken in C.
      LG, Felix

      Antworten
  27. Nils am 15. Juli 2016 13:58

    Ich verwende das Relais für sie automatische Bewässerung meiner Balkonpflanzen.

    Antworten
  28. Gunter am 22. August 2016 11:30

    Hier mal ein Hinweis für die Nutzer von Relaiskarten mit einer Steckbrücke (Jumper):
    Wenn Ihr diesen Jumper entfernt, dann wird auf der Karte VCC von JD-VCC getrennt.
    JD-VCC ist die Versorgungsspannung der Relaisspulen (5Volt). Hier könnt Ihr nun die 5Volt (Pin2 und Pin4 des Pi) anlegen. VCC wird mit den 3,3Volt (Pin1 und Pin 17 des Pi) verbunden. Jetzt stehen den Spulen der Relais die richtige Spannung zur Verfügung ohne dass Ihr Eure GPIOs gefährdet.
    Aber vorsicht bei den 8er Relaiskarten, hier überfordert die Last von 8 angezogenen (geschalteten) Relais recht schnell die Kapazität Eures Netzteils und der Pi kann wegen Spannungsschwankungen abstürzen.

    Noch ein Hinweis:
    Wenn Ihr, wie im Tutorial empfohlen, Euren Verbraucher über die NC/C Pins der Relais einschaltet, (LED leuchtet und der Verbraucher ist aus bzw. LED leuchtet nicht und der Verbraucher ist an) dann habt Ihr diesen Zustand immer auch im Ruhe zustand der Relais, also z.B. beim Booten des Pi. Das ist nicht wirklich sinnvoll.

    Besser Ihr nutzt nur die NO/C Kontakte der Relais zum Einschalten der Verbraucher – wenn also via Low-Pegel vom GPIO die LED eingeschaltet ist, und an der Relaisspule Spannung liegt, sollte auch Eure Last mit Strom versorgt werden.
    Solange der GPIO PIN nicht als Output definiert ist (als beim Booten und vor dem Start Eures Programmes) wird auch das Relais nicht ungewollt Euren Verbraucher einschalten. Setzt doch einfach den GPIO Pin auf „ON“ und dann erst teilt Ihr ihm mit dass er ein Output ist, dann wird das Relais erst dann schalten, wenn Ihr den GPIO kontrolliert auf „LOW“ setzt.
    …
    GPIO.output(RELAIS_1_GPIO, GPIO.HIGH) # PIN an aber Relais und LED aus
    GPIO.setup(RELAIS_1_GPIO, GPIO.OUT) # GPIO Modus zuweisen
    …
    …
    GPIO.output(RELAIS_1_GPIO, GPIO.LOW) # PIN aus aber Relais und LED an
    …

    Antworten
    • Felix am 22. August 2016 19:55

      Hallo Gunter,
      danke für deinen ausführlichen Kommentar 🙂
      LG, Felix

      Antworten
    • Hauschi am 21. Februar 2017 5:54

      Wird bei der low activ variante auch ein Widerstand zwischen gebaut und wenn ja wie hoch sollte der ausfallen? Die von mir weiter unten beschriebene transistor bauweise schaltet nicht sauber.

      Antworten
  29. gruß marco am 29. August 2016 10:53

    hallo,
    ich baue einen voll automatischen enten/hühnerstall mit solar panel und 12v batterie.
    die tür funktioniert schon seit etwa zwei jahren. aber jetzt kommt noch ein fütterungsautomat hinzu, und da hab ich mir gedacht ich probiers mal mit nem raspberry.
    ich hoffe es klappt.
    danke jedenfalls schonmal für das tutorial.

    Antworten
  30. Ernst Kloppenburg am 17. September 2016 21:39

    Hallo,

    im Tutorial-Text steht „und nimm möglichst keine zwielichtigen China-Teile“. Ein guter Hinweis.

    Ich möchte anregen, dann auch die Links zu Relais-Karten bei Amazon etwas zu verwenden. Aktuell verweisen sie auf Chinesische Händler, die über Amazon liefern (und sich, wie in der c’t zu lesen war, dabei an keine deutschen Standards halten müssen).

    Alternativen wären:
    http://www.watterott.com/de/4-Channel-Relay-Module-10A

    Antworten
  31. TimeMen am 20. September 2016 16:52

    Hey,

    Gibts in der Steuerung der GPIOs per Bash oder Python einen unterschied?
    Ich komme mit Python einfach nicht klar…
    Da würde ich eher C lernen wolle.

    Wenn ich bei uns mal ein Relais finden würde, würde ich das gerne zwischen Arduino und Stromversorgung hängen, und dann per Bash schalten. Oder notfalls mit einer Python Datei. Denn so könnte ich ganz einfach den Arduino per Datei anschalten, ihn seine Messungen machen lassen bzw. die Simulation starten, und wenn er fertig ist dann wieder per Raspi abschalten.

    LG
    TimeMen

    Antworten
    • Felix am 20. September 2016 23:30

      Per Bash kannst du auch GPIOs schalten. Bsp für Pin 27:

      sudo echo "27" > /sys/class/gpio/export
      echo "out" > /sys/class/gpio/gpio27/direction
      echo "1" > /sys/class/gpio/gpio27/value

      Alternativ geht es auch mit WiringPi.

      Antworten
  32. Axel am 5. Oktober 2016 21:48

    Ein freundliches „Hallo“ in die Runde…

    Sehr umfangreiche und gut verständliche Infos die hier zusammengetragen wurden. Ich bin jetzt seit einiger Zeit mit 3 Raspis daheim am herumspielen und steuere bereits erfolgreich einige Dinge in meiner Haussteuerung über den Raspi.
    Aktuell möchte ich meine Lüftungsanlage automatisieren. Diese wird derzeit noch mit einem Bedienteil gesteuert, welches neben einem Ein/Aus-Schalter und einem Betriebsstundenzähler einen Drehschalter zum Wählen der Lüfterstufe enthält.
    Der besagte Drehschalter leitet eine kleine Spannung (ca. 2V) weiter. Mit dem hier besprochenen Relais bzw. seinem Bruder mit 8 Kanälen könnte ich den Schalter ersetzten und der Rest passiert in Software. Das würde ich soweit hinbekommen.
    Ich möchte jedoch hardwareseitig sicher stellen, dass niemals mehr als einer der Kanäle geschaltet ist. Der Drehschalter kann auch immer nur eine Position einnehmen und ich möchte nicht ausprobieren, ob die Steuerung ein Schalten von mehr als einem Kanal gleichzeitig überlebt.

    Ich wäre dankbar für einen Hinweis auf eine Baugruppe die sich quasi verhält wie eine Gruppe Radio-Buttons, also jeweils sicherstellt dass bei einer Betätigung zuvor der aktuell durchgeschaltete Kanal unterbrochen wird. Meine Elektronik-Kenntnisse reichen leider nicht so weit, das ich wüsste wonach ich bei Google & Co suchen müsste.
    Gibt es ein Bauteil oder eine Baugruppe die dies so leistet?

    VG,
    Axel

    Antworten
  33. petere am 11. Oktober 2016 11:03

    Hallo Felix,
    wie gewohnt eine super Anleitung von dir.
    Ich möchte das Relais zum an/ausschalten einer IR-Lampe (akkubetrieben) für intervallmäßige Nachtaufnahmen nutzen. Da mein PI samt Kamera und Lichtsensor ebenfall per Akku betrieben wird, wäre es super das Relais wirklich nur dann mit Strom zu versorgen, wenn es die Lampe anschalten soll, d.h. wenn der Lichtsensor ‚dunkel‘ meldet.
    Soweit ich es verstanden habe zieht das Relais aber auch Strom, wenn es nicht angezogen ist.?
    Besteht ggf. Möglichkeit, das Relais von einem gewöhnlichen GPIO Pin (nicht VCC) aus mit Spannung zu versorgen oder ist die Pin-Leistung nicht ausreichend dafür?
    Hast du Ideen zur Umsetzung?
    Danke für deine Hilfe.

    Antworten
    • Felix am 11. Oktober 2016 17:44

      Die Pin Leistung ist nicht ausreichen, allerdings kannst du einen Transitor verwenden und diesem per GPIO schalten.

      Antworten
  34. petere am 12. Oktober 2016 16:40

    Ok, danke für den Hinweis…

    Antworten
  35. PotPirat am 20. November 2016 13:14

    Ich würde gerne per cronjob um 6 Uhr morgens ein Relais schalten, aber nur wenn ein Schalter ein GPIO.High Signal ausgibt. ist der schalter Low soll nichts geschehen.
    Mein Code sieht bis jetzt noch sehr schmal aus:

    import time
    import RPi.GPIO as GPIO
    
    
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(17,GPIO.IN)
    GPIO.setup(27,GPIO.OUT)
    
    if GPIO.input(17,GPIO.HIGH):
    	GPIO.output(27, GPIO.HIGH) # an
    else
    	print "Fertig"

    dabei soll das gleiche script auch nochmal um 8 uhr morgens starten aber je nach dem auf welcher position der schalter steht eins von beiden starten und das andere nichts tun. wäre sehr froh über eine korrektur meines scripts. lg und danke

    Antworten
    • Felix am 20. November 2016 14:21

      Ich habe deinen Code im Kommentar angepasst. Was du allerdings mit „eins von beiden starten und das andere nichts tun“ meinst, verstehe ich nicht. Du hast doch nur ein Relais definiert?

      Antworten
  36. Jan am 30. November 2016 12:11

    Hallo Felix,
    ich würde gerne einen Türöffner bauen, den ich zusätzlich zum vorhandenen Öffnungstaster an meiner Klingelanlage nutzen kann. Die Türöffnung erfolgt mit 12V. Kann ich diese Konstellation mit den von dir angegebenen Komponenten lösen? Am liebsten wäre mir, wenn ich das Relais ohne externes Netzteil betreiben könnte.
    Bin Neuling auf dem Gebiet der Elektrotechnik und würde mich freuen, wenn du mir helfen würdest.

    Antworten
    • Felix am 30. November 2016 12:18

      Hallo Jan,
      ja das funktioniert. Die 12V müssen aber natürlich extern angeschlossen werden. Falls dein Relais sich nur mit 5V schalten lässt, so kannst du einen Transistor verwenden. An die Basis kommt der GPIO und an den Kollektor die 5V vom Pi. Emitter an den Relais Input und fertig.

      Antworten
  37. Hauschi am 11. Dezember 2016 12:35

    Moin Felix,
    ich bastel grad mit den Relais etwas rum.
    Da stellt sich mir die Frage, wie kann ich am Ende eines Python skripts „sudo shutdown“
    einbauen, damit der RPi sich nach Programmende selbsttätig runterfährt.

    MfG Hauschi

    Antworten
    • Hauschi am 11. Dezember 2016 13:14

      os.system("shutdown now") ???

      oder muss da noch ein „sudo“ mit rein?

      Antworten
      • Felix am 11. Dezember 2016 21:36

        Ja, mit sudo. Herunterfahren benötigt root Rechte

  38. Hauschi am 21. Januar 2017 12:09

    Hi Felix,
    hab schon viel mit 1kanal relais gespielt, auch schön incl transistor usw, hat alles geklappt. nun hab ich mir dieses 2kanal relais bestellt. https://www.amazon.de/gp/product/d/B01EYW5SJM/ref=mp_s_a_1_4?__mk_de_DE=%C3%85M%C3%85Z%C3%95%C3%91&qid=1484996422&sr=8-4&pi=AC_SX236_SY340_FMwebp_QL65&keywords=2+kanal+relais+5v&dpPl=1&dpID=51tiO5y84wL&ref=plSrch

    hab ne ganze weile gebraucht… es schaltete nie, hab auch direkt an 3.3V und 5V angeschlossen und es funzt nicht.
    nun sehr zufällig habe ich VCC an 5v GND an GND und hab IN1 an GND angeschlossen und es hat geschaltet.

    ist das ein fehler oder werden die tatsächlich über masse gesteuert?

    und wie steuer ich die nun sicher über gpio? auch über transistor nur anders rum?

    MfG Hauschi

    Antworten
    • Gunter am 1. Februar 2017 10:48

      Hallo Hauschi,
      deine Vermutung ist richtig, die Relais schalten sobald Masse-Potential an den Eingangspins liegt. Deshalb musst du auch den zugehörigen GPIO Pin auf High setzen um den Ruhezustand zu definieren. Soll das Relais jetzt schalten, dann setzt du den GPIO Pin auf Low.
      Beachte bitte das zeitliche Verhalten der GPIOs.
      Normalerweise ist die Abfolge der GPIO Initialisierung so, dass du zuerst den Typ (Input oder Output) definierst und dann einen Wert (High oder Low) zuweist. Dabei ist Low der Default-Wert!
      Sobald du einen GPIO als Output definierst, wird dieser Pin somit automatisch auf Low (Default) gesetzt. Das heißt aber, dass dein Relais sofort anzieht! Dieser Zustand bleibt auch so bis du den Pin aus High setzt.
      Willst du einen solchen Zustand vermeiden, kannst du allerdings die Reihenfolge der Initialisierung ändern:
      Setz zuerst den Wert auf High und dann erst definierst du den Pin als Output. Jetzt bleibt auch das Relais im Ruhezustand bis du explizit den GPIO auf Low setzt.

      HTH
      Gunter

      Antworten
    • Hauschi am 4. Februar 2017 4:44

      ich habs jetzt schon anders gelöst. ich hab nen transistor zw eingangspin und gnd gebaut. und schalte den transistor dann mit nem high signal.
      so hab ich sozusagen aus lowactiv wieder ein highactiv gebastelt und die gpios sind in sicherheit.

      LG Hauschi

      Antworten
  39. Mexico67 am 2. Februar 2017 9:16

    Hallo liebe Raspberry PI User,
    möchte dieses Relais über ein Monitor-Panel (Touchscreen-Monitor)schalten, also 4 Taster „Ein“ und 4 Taster „Aus“,
    oder 4 Taster, ein Tasterdruck „Ein“ nächster Tasterdruck „Aus“.
    Kann mir bitte da jemand weiter helfen.
    Besten Dank
    Viele Grüße
    Mexico67

    Antworten
    • Felix am 2. Februar 2017 16:39

      Schau dir mal dieses Tutorial an, das hilft wahrscheinlich: Teil1 + Teil 2

      Antworten
  40. Mexico67 am 2. Februar 2017 19:11

    Hallo Felix
    vielen Dank für die schnelle Antwort.
    Das Skript ist in Ordnung funktioniert auch einwandfrei.
    Aber der Taster ist auf dem Beard Board installiert. Wie bekomme ich aber den Taster virtuell
    auf den Touchscreen um per Mausklick die LEDs (Relais) schalten ??
    Viele Grüße
    Mexico67

    Antworten
    • Felix am 2. Februar 2017 19:21

      Du könntest an die beiden Enden des Tasters Kabel löten und diese ggf. per GPIO und einem Transistor o.ä. schalten.

      Antworten
  41. mexico67 am 2. Februar 2017 19:43

    Hallo Felix
    was haben die Kabel des Tasters mit dem Touchscreen zu tun??
    Willst du mich vergackeiern??

    Antworten
    • Felix am 2. Februar 2017 19:48

      „Aber der Taster ist auf dem Beard Board installiert. Wie bekomme ich aber den Taster virtuell … schalten ??“
      Wie willst du den Schalter per Software schalten? Indem du z.B. einen GPIO schaltest, welcher die Funktion übernimmt. Dafür muss der Schalter aber quasi ersetzt werden, weshalb du Kabel dran löten müsstest. Den GPIO kannst du widerum per GUI schalten. Und nein, ich will dich nicht „vergackeiern“…

      Antworten
  42. Mexico67 am 2. Februar 2017 20:04

    Hallo Felix
    super, jetzt haben wir uns gedanklich verstanden. Habe mich ein Bisschen umständlich ausgedrückt. Entschuldigung.
    Vielen Dank für die Info “ GUI schalten“ ist genau das, was ich gesucht habe.
    Viele Grüße
    Mexico67

    Antworten
  43. Dirk am 4. Februar 2017 12:20

    Ich steuere 8 GPIO Ausgänge über PHP! Funktioniert auch soweit gut.

    Es wurde ja schon oft geschrieben, das man Transistor Schaltungen verwenden sollte damit die Relais auf dem 8-Kanal Relais Modul im Ruhezustand nicht ständig geschaltet sind.

    Gibt es da was fertiges in einer 8-Kanal Variante oder muss man selbst löten?

    Vielen Dank vorab!

    Antworten
    • Anhalter mit Handtuch am 27. Februar 2017 17:22

      Hallo Dirk, ja, es ist immer eine gute Idee mit Transistoren zu arbeiten.
      – Die Dinger kosten ein paar Cent, der zerstörte Pi ist um ein vielfaches teurer.
      Ich bekomme immer Bauchweh, wenn ich hier die Ansteuerung dieser 4-, 8-, n- Kanal Relais Module direkt über die GPIOs sehe/lese.

      Such bitte mal nach ULN2803A und schau dich in einschlägigen Mikroelektronikforen* um.

      Suchbegriffe: { Raspberry & Relais & ULN2803 }

      Wenn du nicht weiter kommst, melde dich einfach nochmal.

      WinkeWinke.

      *Das soll keine Schleichwerbung oder SPAM sein, ich möchte nur nicht, dass die Leute ihren Pi zerheizen.

      Antworten
    • Anhalter mit Handtuch am 27. Februar 2017 22:08

      So, ich hab das mal im Eilverfahren skizziert.

      Schaltplan Pi & ULN2308A & 8 Relay Module (Modul nur die Kontakte skizziert)

      http://up.picr.de/28448345qj.jpg

      Egal was der Pi beim Booten für Faxen macht, die Ansteuerung der Relais erfolgt nur dann, wenn die GPIOs auf HIGH gehen.

      Bei dem verlinkten Schaltplan:
      Die „scheinbaren“ Ausgänge an dem ULN werden auf GND des ULN gezogen, wenn der entsprechende Eingang (vom GPIO kommend) auf HIGH geht, und auch NUR dann!

      Die paar Cent sollte man investieren und seinen geliebten Pi mit dieser sauberen Lösung schützen.

      Gruß…

      Antworten
      • Udo am 22. Juli 2017 19:20

        Hallo,
        ich habe deinen Rat mit dem ULN2803a umgesetzt ,Danke noch für deine
        Zeichnung funktioniert sehr gut ,jedoch mit dem Jumper habe ich nicht hin bekommen,
        wenn ich den abziehe leuchten die LED´s die Relais schalten aber nicht .Die Spannung
        bekommen die 8 Relais über die VCC von der Leiste .Ist das richtig ?

        Danke noch einmal

  44. Ein Leser am 22. April 2017 15:39

    Ich besuche die Seite regelmäßig und gerne, nur leider nervt mich der „Blog abonnieren“ Dialog der JEDES MAL AUFS NEUE erscheint.

    So langsam regt mich das echt auf. Muss doch nicht sein. Irgendwann meide ich diese Seite komplett.

    Ein „Blog abonnieren“ in der Seitenleiste wäre komplett ausreichend und stört​niemand!

    Antworten
    • Felix am 22. April 2017 18:51

      Hey,
      löschst du evtl. deine Cookies jedes Mal? Normalerweise sollte das Popup nach dem Schließen für die nächsten 30 Tage deaktiviert sein (sofern Cookies aktiviert sind).

      Antworten
  45. Manu am 12. Mai 2017 22:25

    Servus,

    ich mich nun durch einiges an Text gekämpft. Vielen Dank für den Support und die Tutorials vorab!

    Ich möcht eine 12V Pumpe mittels Relais steuern und externem 12V Netzteil.
    Schaltung wie hier verkabelt https://youtu.be/xIQI4haTSPE

    Mich wundert das der Jumper zur Trennung nicht gezogen bzw. umgesteckt scheint. 5V vom Pi an das Relais und 12V über die Relais Klemme direkt zur Pumpe.

    Wie ist die Funktion des Jumpers? Was passiert beim umstecken auf GND und was beim abziehen?

    Vielen Dank im Voraus!

    Antworten
  46. Rene am 7. Juni 2017 18:22

    Hallo Felix,

    ich habe nun schon einige 2x Relais ausprobiert und so angeschlossen wie oben beschrieben.
    VCC auf Pin1 3,3V
    GND auf Pin6
    Input1 auf Pin11

    Aber kein Relais schaltet. Habe auf Pin 11 eine LED zwischengeschaltet und die leuchtet wenn ich auf Pin 11 ein High gebe.
    Wenn ich , wie weiter oben gelesen aber den Eingangspin des Relais Boards auf einen 2. GND vom RPI lege, dann schaltet das Relais jedes Mal ohne Probleme.
    Also VCC=3,3V , GND auf Pin6 und Input1 (auch mit 2 getestet, immer das Selbe) auf GND Pin25 und das Relais schaltet.
    Woran kann das liegen, weiß nicht mehr so richtig weiter.

    Antworten
    • Tobi am 20. August 2017 16:43

      Ich habe das gleiche Problem wie Rene:
      Das Relais reagiert dann, wenn ich an einen der Steuerungspins GND anlege (oder wieder wegnehme). Wenn ich einen GPIO-PIN nehme, reagiert das Relais weder auf HIGH, noch auf LOW.

      Antworten
  47. Rene am 9. Juni 2017 18:45

    Bin selbst drauf gekommen.
    Muss nicht auf High sondern auf Low schalten.

    Antworten
  48. Tungesten am 14. Juni 2017 16:52

    Habe mir dieses Relais geholt: https://www.amazon.de/gp/product/B005WR72S4
    Ist das gleiche wie im Bild oben. Es funktioniert soweit auch theoretisch. Die LEDs gehen beim Schalten auch an und aus, ich höre beim Schalten auch einmal ein leises klacken, aber das Relais schaltet nicht. Der Strom fließt immer nur bei einem Kontakt. Mache ich etwas falsch oder ist das Board defekt? Habe es an 2 der 4 Relais getestet.

    Antworten
    • Tungesten am 14. Juni 2017 17:07

      gelöst, es mussten 5V sein und nicht wie hier beschrieben 3,3V

      Antworten
  49. Udo am 3. August 2017 5:38

    Hallo

    Ich habe eine Waschmaschine die ich
    Mit dem Raspi Steuern möchte .Dafür
    Benutze ich die und noch andere
    Relais

    Udo

    Antworten
  50. Simon am 19. September 2017 15:46

    Hallo Felix liebe RaspiUsers
    Vielen Dank für das Tutorial! Ist es möglich, das Relais verspätet (ca. 10 Sekunden nach dem Start des PIs) zu schalten. Wenn ja, kannst du mir dabei helfen?
    Ich habe mit dem PI als Grundlage ein Autoradio gebaut. Wenn ich nun das Radio starte gibt es ein knacken auf den Boxen, da die Endstufe bereits läuft, wenn die externe USB Soundkarte gestartet wird. Nun möchte ich die Endstufe mit Hilfe des Relais verspätet (nach der Soundkarte) starten und somit das Knacken auf den Boxen verhindern.
    Danke im Voraus!
    Simon

    Antworten
    • Felix am 19. September 2017 16:23

      Ja, einfach ein Skript in den Autostart stellen, das 10 Sekunden wartet und dann deine Aktion ausführt.

      Antworten
  51. Sebastian am 7. Oktober 2017 17:42

    Wenn ich mein Relaikarte mit 5V betreibe soll ein 1k Wiederstand stumpf zwischen IN und GPIO ?
    Oder muss der dann zusätzlich noch gegen 3V oder GND laufen ?

    So
    IN —[1k]— GPIO

    oder So ?
    IN –[1k]— GPIO
    — GND/V

    Antworten
  52. Florian am 8. November 2017 15:27

    Hallo,

    das sieht alles sehr interessant aus.
    Ich habe mir folgendes Relai gekauft https://www.amazon.de/gp/product/B00PIMRGN4?ie=UTF8&linkCode=as2&camp=1634&creative=6738&tag=754-21&creativeASIN=B00PIMRGN4

    Ich möchte 2x Rolladenmotoren steuern mit einem Standard Taster (auf/zu) und den Motor Stoppen mit dem Taster.
    Gibt es hierzu ein Beispiel?

    Danke.

    Antworten
    • Felix am 8. November 2017 15:29

      Du kannst dich am Beispiel der Ampelschaltung orientieren, nur dass du statt LEDs eben Relais steuerst.

      Antworten
      • Florian am 12. November 2017 18:59

        Danke für die Info.
        Wenn ich das richtig verstehe brauche ich pro Rolladenmotor 2x Relais ?
        Relai1 Motor rauf, Relai2 Motor runter.

      • Felix am 12. November 2017 22:20

        Wenn du je einen Motor für auf und ab hast – dann ja.

  53. Alex am 12. November 2017 20:55

    Hi,
    ich bin dabei ein Projekt mit einem Freund zu starten, ‚Smart Schreibtisch‘ . Er ist dabei für die Programmierung (da er auf diesem Gebiet studiert) und ich für Verschaltung und Material verantwortlich.
    Im Schreibtisch soll pc und Raspi mit externer Lüftung verbaut werden.
    Der Raspi soll mit Hilfe der Relais Lautsprecher, Bedienpanel und lasertastatur Ausfahren lassen. Außerdem möchte ich ein Display in den Tisch integrieren, der mir zb Wetter anzeigen soll. Mit Hilfe eines Kapazitiven Sensors, an der Seite des Tisches, soll das Bedienpanel Ausfahren womit der Rest angesteuert wir.
    Der Raspi soll außerdem ein LED lauflicht um den Tisch herum (LED Band in der Tischkante Frontal verbaut) starten um das Starten des PC‘S zu zeigen.

    Hoffe auf Kritik, Hilfe und Tipps für mein Projekt!

    Ps: Viele Fragen haben sich durch die Tutorials auf dieser Seite erübrigt!! Vielen Dank!

    Antworten
  54. TMC am 17. November 2017 17:03

    Hallo zusammen,

    ich nutze eine Relaissteuerung um ein großes Wasserbecken mit einer Tauchpumpe abzupumpen. Hierzu habe ich ein Script geschrieben, das den Wasserpegel überwacht und bei einem niedrigen Wasserstand das Relais ausschaltet (welches eine Steckdose an/aus schaltet), damit die Tauchpumpe nicht trocken läuft.

    Hierzu nutze ich ein Relais (Speisespannung 3V3 vom RaspberryPi) mit Transistoransteuerung (ein ähnliches Modul wie oben im Artikelbild). Ich habe mich gewundert, warum das Relais beim Initialisieren der Ports gleich ansprang, wo ich doch den Pegel des Outpins auf LOW gesetzt habe.
    Als ich dann mit meinem Breadboard das ganze mit einem Minimalscript getestet habe wieder das gleiche!
    Dann habe ich Timer eingebaut über das Modul time mit dem time.sleep(3) Befehl, so dass das Relais verzögert angesprochen wird, da die Impulse zu schnell kamen mit dem obigen kleinen Script und habe die zu erwartende Reaktion mit print(„Relais aus“), bzw an nachvollzogen und mehrere Schaltungen durchgeführt…jetzt tat sich endlich was und ich habe gemerkt, dass mein Relais mit LOW geschaltet wird und HIGH ausgeschaltet wird…darauf muss man erstmal kommen!

    Deshalb hier die ausführliche Nachricht, welche Hindernisse ich für ein befriedigendes Ergebnis hatte.

    Antworten
  55. Andreas am 14. Dezember 2017 6:40

    Hallo Felix,

    vielen Dank für deine Tutorials, sie helfen mir wirklich sehr beim einstieg. Ich habe mir das unten angegebene Relais gekauft und deine Schaltung nachgebaut. Die LED am Relais ändert auch wie erwartet ihren Zustand. Aber das Relais schaltet nicht. Also die angeschlossene Pumpe beginnt nicht zu laufen. (Ohne Relais läuft sie perfekt)
    Ich habe eine andere Verkabelung im Netz gefunden die die 3.3V und IN auf der einen Seite und GND und VCC-JD auf der anderen Seite der Relaiskarte (Jumper entfernt, VCC-JD an 5V) verbindet. Wenn ich das so mache höre ich ein ganz leises Klack. Allerdings ist das sehr schwach und es passiert trotzdem nichts.

    Nun die Frage:
    Ist das Relais vielleicht kaputt oder was könnte ich falsch machen?

    Kannst du ein Relais für den Raspberry Pi 1 B empfehlen?

    Lieben Dank
    Andreas

    https://www.amazon.de/gp/aw/d/B005WR753Q/ref=yo_ii_img?ie=UTF8&psc=1

    Antworten
    • Felix am 14. Dezember 2017 16:41

      du kannst ggf. einen Transistor für 5V verwenden und diesen mit den GPIOs schalten, welcher dann wiederum das Relais schaltet.

      Antworten
  56. Hellma am 12. Januar 2018 22:17

    Hallo miteinander,

    ich bastele seit einigen Abenden ebenfalls an einem Relais, das von meinem Raspberry gesteuert werden soll. Leider komme ich jedoch nicht weiter.

    Ich schließe VCC an einen 5V-Ausgang vom Raspbi an, GND auf GND und das Eingangssignal auf einen freien GPIO. Wenn ich den entsprechenden GPIO nun als Output konfiguriere schaltet das Relais. Ob ich den Pegel des entsprechenden Pins dann auf High oder Low setze tut nichts zur Sache – das Relais schaltet weiterhin. Wenn ich aber die Signalleitung direkt auf Masse schalte, schaltet das Relais durch. Woran kann das liegen?

    Ich habe mir den Bericht von Johannes aus dem Jahr 2016 angeschaut – kann es sein, dass der Lösungsansatz mit Transistor bei mir auch Abhilfe verschaffen könnte?

    Viele Grüße,
    Hellma

    Antworten
    • Hellma am 12. Januar 2018 22:37

      Ich stelle mir die Lösungs grade so vor, dass ich die Basis an GPIO, Kollektor an IN des Relais und den Emitter an GND anschließe. So würde dann eine Verbindung von IN nach GND zustandekommen, wenn ich den GPIO auf High setze – macht das Sinn soweit?

      Antworten
      • Hellma am 1. Februar 2018 16:23

        Rückmeldung: hat geklappt! 🙂

  57. Philipp am 19. Januar 2018 22:26

    Kannn man es auch so programieren das ich durch einen Tasterdruck eine GPIO eingabe ablaufen lassen kann.

    Antworten
    • Felix am 19. Januar 2018 22:54

      Ja, siehe Raspberry Pi Ampelschaltung mit GPIO Teil 2

      Antworten
  58. Paul Kenning am 18. April 2018 19:14

    Moin, kann ich mit einem 2x4x0,6 Kabel das 5V Signal wohl so 10 Meter weit schicken?

    Antworten
  59. michael am 15. Juli 2018 11:55

    autsch….habe auch die relais „SainSmart 4 Kanäle RelaisModul Brett 5V Für Arduino PIC AVR DSP ARM Relay Module “ mir gekauft. auch bei mir funktioniert die schalterei nicht….da ich blutiger anfänger bin, verstehe ich auch das script nicht :
    ——————————————–
    import RPi.GPIO as GPIO
    GPIO.setmode(GPIO.BCM) # GPIO Nummern statt Board Nummern

    RELAIS_1_GPIO = 17
    GPIO.setup(RELAIS_1_GPIO, GPIO.OUT) # GPIO Modus zuweisen
    GPIO.output(RELAIS_1_GPIO, GPIO.LOW) # aus
    GPIO.output(RELAIS_1_GPIO, GPIO.HIGH) # an
    ——————————————–
    nun, ich bekomme über den GPIO 17 es nicht hin, das mein relais anzieht….
    die 3 anderen relais habe ich auf GPIO 27,22 und 10 gelegt.
    benötigen die nun 3,3V oder 5V ? oder überlaste ich den raspi, der an den anderen eingängen schon sensoren hat (ds18b20 & dht22 & bmp180) ?

    ansonnsten, prima tutorial…..nur manches (wie dieses script) erklärt sich NICHT für einen anfänger !

    Antworten
  60. Markus Leicht am 27. September 2018 20:04

    Kleine Verständnisfrage für mich als blutigen Anfänger: Für was wird der Jumper VCC-JD/VCC/GND auf der Relais-Platine benötigt? Muss da auch Masse angeschlossen werden? Danke für eine kurze Rückmeldung!

    Antworten
    • Uwe Hermann am 14. März 2019 11:58

      Wenn ich mich nicht täusche, kannst du dort auswählen, ob das Relais Strom vom Arduino/Rasp bekommt, oder über ein eigenes Netzteil.

      Antworten
  61. Mike Schröder am 19. März 2019 13:36

    Hallo Felix,
    ich beschäftige mich grade mit folgender Frage bzw. Gedankenprojekt..
    Ich habe in einem Mobilheim eine Gas-Therme. Diese wird einmal über Strom versorgt, es muss aber zum tatsächlichen Einschalten ein Knopf gedrückt werden.
    Nun ist es ja so, dass man zum Beispiel im Winter für längere Zeit nicht darin lebt und alles abgeschaltet wird, auch die Gas-Therme. Für das Starten aller Services wird Strom für einen Router und einen RPi bereitgestellt.
    Nun weiß ich also, dass ich in etwa einer Stunde vor Ort sein werde, aber die Bude soll nicht kalt sein.
    Über Internet wird der RPi angewiesen die Steckdose der Therme einzuschalten. Damit ist die grundsätzliche Betriebsbereitschaft gegeben…nur wie schalte ich den Knopf?
    Was ich nicht möchte ist, in der Elektronik herumpfuschen…sonst habe ich Bedenken, dass ich beim Eintreffen mein Mobilheim zusammenkehren kann.
    Daher liebäugel ich eigentlich mit einer Hubmagnetlösung oder einem Roboterfinger (vielleicht etwas übertrieben).
    Hast Du oder jemand hier aus der Community einen Tipp für einen Anfänger?

    Antworten
  62. Lui am 25. März 2019 15:06

    Hey Felix,
    Ich versuche schon seit längerer Zeit ein Phyton Programm für eine Zeitschaltuhr zu programmieren.
    Da ich noch neu in diesem Gebiet bin kenn ich mich noch nicht wirklich damit aus. Mit diesem Programm möchte ich dann Relais ansteuern welche die Signale an eine Glühbirne weiterleiten. Nun zu meinen Problem. Die Lampe schält sich nicht in den gewünscht Zeitabständen aus. Ich bin mir sicher das dies am Programm liegt. Könntest du mir ein Vorschlag geben wie du es am besten schreiben würdest.
    MFG

    Antworten
  63. Jens am 10. Mai 2019 0:18

    Hi, Felix,
    bei meinem RPI3 schaltet das Relais mit 3V nicht zuverlässig. Mit 5V geht es mit einem 4,7kOhm in Reihe an IN (nicht wie oben geschrieben 1k – da bleibt das Relais immer angezogen).
    Viele Grüße,
    Jens

    Antworten
  64. Marc Otto am 6. März 2020 19:03

    Auch wenns schon älter ist…

    Alle Relaiskarten ( egal ob für Raspi oder sonnstwas ) die ich bisher verbastelt habe arbeiten mit Optokopplern und haben einen Jumper den man abziehen kann.

    Schalten die 8 / 16 Kanal E-Bay dinger nicht mit 3,3 Volt ( oder will man dem Raspi das nicht zumuten ) zieht man den Jumper ab und gibt auf den Pin der NICHT MIT MASSE ODER +3,3 VOLT VOM Raspi verbunden ist halt +5Volt vom Raspi-Netzteil. Masse bezieht man dann auch ZUSÄTZLICH vom Raspi-Netzteil. Dann schaltet auch alles gut und der arme kleine Raspi wird auf seinen Leiterbahnen nicht überlastet. Er muss ja nur noch die Optokoppler bedienen.

    Und noch ein kleiner Tipp: Ich nutze alte ATX-Netzteile für den Raspi + Pheripherie, baue die Schaltung fertig auf und messe dann den Strom der fliesst. Dann erst kaufe ich mir ein passendes Netzteil.

    Antworten
  65. Fabi am 22. August 2020 17:00

    Werde mir jetzt auch mal ein Relai bestellen damit ích den Stromkreis der aufgeschraubten Zeitschaltuhr schließen kann. Die Zeitschaltuhr kommt dann zwischen Steckdose und Kaffeemaschine. Auf dem Pi Zero läuft dann ein Python-Serverscript welches mit meiner APP über das WLAN gesteuert werden kann und den Kochvorgang startet sobald ich morgens aufwache und mein wecker klingelt.

    Antworten
  66. HSS am 21. November 2020 17:23

    Hallo zusammen!
    Ich nutze das Relaisboard, um meine Türklingel smart zu machen.
    Ein Einzel-Relais (https://www.amazon.de/gp/product/B00HPLOPQC/) wird vom Klingelknopf angesprochen. Dessen „Ausgang“ zieht mir (wenn jemand klingelt) einen GPIO-Port auf Masse. Dann schaltet ein RasPi-Relais, und meine Türklingel klingelt. Gleichzeitig steuere ich (über den RasPi) eine Funkklingel an, die im zweiten Stockwerk hängt. So klingeln dann beide gleichzeitig.

    Antworten
  67. Ocean am 12. Dezember 2020 11:13

    Hallo,
    eins verstehe ich nicht bei diesen Relais Boards. An den Eingängen ist ein Optokoppler für die galvanische Trennung. Ist auch auch ok so. Aber in dem Optokoppler ist eine Led im Eingang. Nach dem Datenblatt zieht diese Led -20mA. Also bei 8 Relais -160mA. Das ist doch viel zuviel Strom für den Raspi. Ist der langsame Raspi gpio Tod vorprogrammiert? Auf Youtoube sieht man wie 16 Relais an die pins angeschlossen werdem.

    Antworten
  68. Michael am 14. Januar 2021 1:31

    Es funktioniert ja tatsächlich.
    Danke für dieses Tutorial, es hat mir sehr weiter geholfen. Ich habe aber ein paar Hinweise vermisst, die ich an anderer Stelle fand.
    Mein Ziel: einen alten Raspberry 2 als Schalter einsetzen und Festplatten, Licht und zwei weitere Raspberrys zu schalten. Nur shell Befehle.
    Der Weg: ein 8fach Relais Board von Elegoo (Amazon), dass dem Board oben ziemlich ähnlich sieht. Raspi OS lite. Mein Elegooboard wurde mit einem Stecker Flachbandkabel geliefert, die Stecker sind „male-female“; anscheinend für Arduino vorbereitet. Einen Satz (10x) Steckkabel von Renkforce female-female hatte ich noch. Da ich sehr umsichtig bin, nutze ich keine 330Ohm Widerstände als Schutz des RPi2, sondern ich schalte das Elegoo Board direkt auf die gpios. Bei mir hat es funktioniert. Sollte mir ein RPi irgendwann mal kaputt gehen, werde ich in Zukunft immer 330Ohm Widerstände einsetzen.
    Was habe ich gemacht:
    1. ssh pi@192.168….
    2. apt-get install wiringpi – mehr Software ist anscheinend nicht notwendig.
    3. alle 10 Pins des mitgelieferte Flachbandkabel auf das Elegoo gesteckt; schwarz auf Pin1 GND usw.
    4. das schwarze Kabel GND Masse auf Pin6 (0V – Masse) vom RPi geschaltet. Die beiden Boards kennen sich jetzt.
    5. den Jumper habe ich stecken lassen und die 5VCC (braun, Pin10) des Elegoo Boards auf Pin2 des RPis gesteckt. Das Elegooboard hat jetzt Spannungsversorgung 5V.
    6. den Pin IN1 (weiß) des Elegooboards auf den Pin26 (gpio7) des RPis gesteckt. Relais1 ist aufgeschaltet. Vorsichtig sein mit offenen Steckverbindungen und Kurzschlüssen. Genau schauen, was wohin gesteckt wird.
    7. auf der shell: gpio -g mode 7 out eingegeben – gpio7 ist jetzt als Steuerausgang vorbereitet
    8. auf der shell: gpio -g write 7 0 – die LED1 geht an und das Relais1 zieht und klackt laut
    9. auf der shell: gpio -g write 7 1 – die LED1 geht an und das Relais1 fällt ab und klackt etwas leiser
    10. die restlichen Kabel richtig(!) aufgesteckt (genau schauen was wohin) und ein script geschrieben, dass aus der /etc/rc.local gestartet wird und permanent auf eine samba Freigabe schaut und Relais schaltet.

    Mein Problem war dies:
    Beim Hochfahren des RPi, kurz bevor ich mich per ssh einwählen konnte, klackerten ziemlich alle Relais unkontrolliert für ca. 2 Sekunden sehr schnell ein und aus. Danach startet das OS und das script übernimmt die Steuerung. Das wäre nicht gut für meine Lampen und Festplatten und anderen RPis gewesen.
    Die gpio müssen deutlich vor dem Hochfahren des OS schon in den richtigen Modus und in die richtige Lage versetzt werden.
    Es hat etwas gedauert, bis ich diesen Hinweis fand:
    https://www.heise.de/ratgeber/Raspberry-GPIO-Pins-beim-Booten-initialisieren-4782030.html

    In der /boot/config.txt in der letzten Zeile dieser Eintrag:
    gpio=14,15,18,23,24,25,8,7=op,dh

    Dadurch werden die gpio (14,15,…) als Ausgang (op) auf „dh“ gelegt und die Relais werden von Anfang an ausgeschaltet. Und das ca. 5 Sekunden, bevor mein script wirken kann.

    Ich hoffe, ich konnte Vielen das Suchen nach diesem Hinweis ersparen.

    Ich habe ein paar Messungen durchgeführt und gebe die Infos gerne weiter:
    * der Optokoppler zieht über eine LED 2mA: das kann ein gpio anscheinend bedenkenlos verarbeiten. Die 330Ohm habe ich mir gespart. Die LED wird gegen Masse geschaltet, daher scheint ein Vorwiderstand für die LED nicht notwendig zu sein.Ich würde den Widerstand einsetzen, wenn das mein einziger RPi wäre. Immerhin ist das gpio als offener Ausgang geschaltet. Ich denke, ein Kurzschluss killt ein gpio. Kurzschlussfest werden die gpios erst durch den 330Ohm Widerstand. Ich habe es aber noch nicht ausprobiert, es ist eine Vermutung.
    * jedes geschaltete Relais zieht ca 70mA (Ocean: natürlich nicht über den gpio): da ich Bedenken habe, diese 8x70mA über die 3,3V Spannungsversorgung des RPis zu ziehen, habe ich das Elegooboard auf 5V betrieben. Anscheinend gibt es mit diesem Board keine Probleme. Wie das mit anderen Boards ist, kann ich nicht sagen. Ich habe ein 2A Netzteil für die gesamte Sache eingesetzt.

    Zwei kurze Hinweis noch, da Ocean, so denke ich, mindestens einen Gedankenfehler macht:
    Optokoppler trennen galvanisch, das ist richtig. Die galvanische Trennung wird aber nicht konsequent fortgeführt, da das Elegooboard und der RPi über die Masse und 5V verbunden sind. Da ist keine galvanische Trennung mehr vorhanden. Die „galvanische Trennung“ passiert in den Relais. Dort ist der notwendige Abstand zwischen den todbringenden 230V und mir. Ab diesem Punkt darf natürlich die Masse (0V) nicht mehr weiter verbunden werden. Das muss man verstehen, wenn man 230V schalten will – so wie ich das vorhabe – und die Relais sind ausgewiesen, 230V schalten zu können.

    Ich weiß, ich muss mich mehr mit diesen Dingen auseinandersetzen. Gerade, was die 3,3V Spannungsversorgung und die Vorwiderstände betrifft. Ein RPi ist als Schulungsdevice angedacht worden.
    Trotzdem, bis hierhin sieht es alles sehr gut aus.

    Antworten
  69. Elias am 4. November 2021 16:16

    Hallo,
    Ich würde gerne am Rasberry Pi Pico einen Stromkreis öffnen und schließen und öfters abfragen, ob der Stromkreis geöffnet oder geschlossen ist. Damit möchte ich dann eine andere Aktion triggern. Hätte jemand eine Idee, wie ich das anstellen kann? (MicroPython)
    Danke im Vorraus und Liebe Grüße
    Elias

    Antworten
    • Volker Rohlfs am 14. November 2021 1:07

      Wenn es der Raspi ist, der den Stromkreis öffnet und schliesst, brauchst du ja nichts abzufragen.
      Ich bastle grad ne Steuerung für ein Förderband, welches zum einen über ein Relais, welches wiederum einen Motorschütz schaltet, welches den Förderbandmotor mit 380V versorgt. Vom Förderband wird Fördergut über verschiedene Klappen entnommen, die pneumatisch betätigt das Fördergut in Behälter leitet, welche der Raspi auswiegt und mittels weiterer Relais die entsprechenden Luftventile (220v) anspricht.
      Im ersten Schritt 5 Wiegestäbe, 4 Pneumatikzylinder und der Förderbandmotor. Wenns funktioniert, fällt mir sicher noch mehr ein – irgendwann werden die gpios knapp 😉
      Oder sollte man die Aufgabe auf mehrere Picos verteilen?

      Antworten
  70. Timon am 31. Juli 2024 11:23

    Bei mir kommt beim Skript eine Fehlermeldung für Zeile 5

    Antworten

Hinterlasse einen Kommentar Antwort abbrechen

Windows 10 IoT auf dem Raspberry Pi installieren

Raspberry Pi Laser Lichtschranke für weite Distanzen

Raspberry Pi KI: Objekterkennung mittels TensorFlow und Kamera

Raspberry Pi Überwachungskamera mit Webcam betreiben

Home Assistant: Einfache Integration von ESP32 / ESP8266 mittels ESPHome

Raspberry Pi 4 WLAN und Bluetooth einrichten

Blog abonnieren

Abboniere Raspberry Pi Tutorials, um kein Tutorial mehr zu verpassen!

Tutorials for Raspberry Pi
Facebook Twitter YouTube
  • Kontakt & Impressum
  • Unterstützen
  • Datenschutz

Tippe den Suchbegriff oben ein und drücke Enter, um danach zu suchen. Drücke Esc, um abzubrechen.