.. note:: Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten. **Warum beitreten?** - **Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams. - **Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern. - **Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken. - **Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte. - **Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil. 👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei! .. _1.3.3_js: 1.3.3 Relais ============== Einführung ------------ In diesem Projekt lernen wir, ein Relais zu verwenden. Es handelt sich um eine der häufig verwendeten Komponenten in automatischen Steuerungssystemen. Wenn Spannung, Strom, Temperatur, Druck usw. einen festgelegten Wert erreichen, überschreiten oder darunter liegen, schaltet das Relais den Stromkreis ein oder aus, um das Gerät zu steuern und zu schützen. Benötigte Komponenten ------------------------------ Für dieses Projekt benötigen wir die folgenden Komponenten. .. image:: ../img/list_1.3.4.png Es ist definitiv praktisch, ein ganzes Kit zu kaufen, hier ist der Link: .. list-table:: :widths: 20 20 20 :header-rows: 1 * - Name - ARTIKEL IN DIESEM KIT - LINK * - Raphael Kit - 337 - |link_Raphael_kit| Sie können diese auch einzeln über die untenstehenden Links kaufen. .. list-table:: :widths: 30 20 :header-rows: 1 * - KOMPONENTENBESCHREIBUNG - KAUF-LINK * - :ref:`cpn_gpio_board` - |link_gpio_board_buy| * - :ref:`cpn_breadboard` - |link_breadboard_buy| * - :ref:`cpn_wires` - |link_wires_buy| * - :ref:`cpn_resistor` - |link_resistor_buy| * - :ref:`cpn_led` - |link_led_buy| * - :ref:`cpn_transistor` - |link_transistor_buy| * - :ref:`cpn_relay` - |link_relay_buy| * - :ref:`cpn_diode` - |link_diode_buy| Schaltplan ----------------- .. image:: ../img/image345.png Experimentelle Verfahren ---------------------------- **Schritt 1:** Bauen Sie den Schaltkreis. .. image:: ../img/image144.png **Schritt 2:** Navigieren Sie zum Ordner des Codes. .. raw:: html .. code-block:: cd ~/raphael-kit/nodejs/ **Schritt 3:** Führen Sie den Code aus. .. raw:: html .. code-block:: sudo node relay.js Während der Code ausgeführt wird, leuchtet die LED. Außerdem hören Sie ein Ticken, verursacht durch das Öffnen des normalerweise geschlossenen Kontakts und das Schließen des normalerweise geöffneten Kontakts. **Code** .. code-block:: js const Gpio = require('pigpio').Gpio; const relay = new Gpio(17,{mode: Gpio.OUTPUT}); setInterval(() => { relay.digitalWrite(!relay.digitalRead()); }, 500); process.on('SIGINT',function(){ relay.digitalWrite(0); process.exit(); }); **Code-Erklärung** .. code-block:: js const Gpio = require('pigpio').Gpio; const relay = new Gpio(17,{mode: Gpio.OUTPUT}); Importieren Sie das ``pigpio`` Modul und erstellen Sie ein Gpio-Objekt "relay", um den IO-Port Gpio17 zu steuern und setzen Sie diesen auf den Ausgabemodus. .. code-block:: js setInterval(() => { relay.digitalWrite(!relay.digitalRead()); }, 500); Das Relais wird kontinuierlich geöffnet und geschlossen, und die LEDs werden ebenfalls in Abständen von 500ms kontinuierlich ein- und ausgeschaltet. .. code-block:: js process.on('SIGINT',function(){ relay.digitalWrite(0); process.exit(); }); Wenn ctrl+c erkannt wird, wird das Relais geöffnet. Phänomen-Bild -------------------- .. image:: ../img/image145.jpeg