Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Hunderte Relays mühelos steuern & synchronisieren mit IO-Expandern

Komponenten und Zubehör

IO Expander ×2
Relay Expander ×2
16-Kanal-Relay-Board ×2
Arduino Nano R3 ×1

Projektbeschreibung

Wer hunderte Relays gleichzeitig steuern und synchronisieren muss, verbindet Arduino, ESP8266, Raspberry Pi, PC oder Mac mit einem IO Expander und Relay Expandern. Die neue External Latching-Funktion ermöglicht:

  1. Relay-Einstellungen in kompakter Bit-Format an den Expander senden
  2. Per einzelner GPIO-Leitung (vom MCU oder IO-Expander-Ausgang) alle gelatchten Daten gleichzeitig ausgeben

Siehe auch Projekt „Control Up to 65,280 Relays with Your Arduino“.

Einrichtung: External Latching für 16-Relay-Board

Einfache Kommando-Struktur des IO Expanders:

>g4o1;g10n;el10
ok
ok
10
>

Relays setzen (e1o = Expander 1 Relay On), dann Latch auslösen:

>e1o;e10o;e16o
ok
ok
ok
>g4o0,1
ok
>

Erweiterung: 2× IO Expander, 2× Relay Expander, 2× 16-Relay-Boards

Zwei IO Expander im Multi-Drop 9-Bit-Protokoll (max. 255 Expander). Arduino Nano als Master.

IO Expander External Latching Diagram

Hunderte Relays mühelos steuern & synchronisieren mit IO-Expandern

Arduino Code

/* IO Expander - Relay Expander External Latching */
#include 
#include "IOExpander9Bit.h"
#include 

#define MAX_BOARDS 2

void setup() {
  Serial9Bit.begin(115200, SERIAL_9N1);
  Serial9Bit.write(0); // 9-Bit-Modus setzen
  wdt_enable(WDTO_8S);

  for (uint8_t b=1; b<=MAX_BOARDS; b++) SerialCmdDone(b, "eb1"); // Relay Expander aktivieren
  SerialCmdDone(1, "g4o1;g10n;el10"); // Board 1: Latch-Setup
  SerialCmdDone(2, "g10n;el10");      // Board 2: Latch-Setup (Pin 4 nur auf Board 1)
}

void loop() {
  static uint16_t i = 0;
  uint8_t r[2];
  r[0] = ~(uint8_t)(i >> 8); // High-Byte invertiert
  r[1] = ~(uint8_t)i++;       // Low-Byte invertiert, inkrementieren
  SerialWriteRelayExpander(1, r, 2); // An Board 1 senden
  delay(50);
  r[0] = ~r[0]; r[1] = ~r[1]; // Invertieren für Board 2
  SerialWriteRelayExpander(2, r, 2); // An Board 2 senden
  delay(50);
  SerialCmdDone(1, "g4o0,1"); // Latch auslösen (Pin 4 Low-Puls 1ms)
  wdt_reset();
}

External Latching in Aktion

IO Expander beschaffen und eigenes System aufbauen!

Schaltplan

Hunderte Relays mühelos steuern & synchronisieren mit IO-Expandern

Herstellungsprozess

  1. Robotik im 21. Jahrhundert: Verteilte Systeme, Telepräsenz & Weltraumforschung
  2. SaaS meistern: Strategien, um Kontrolle zu behalten und die Cloud zu nutzen
  3. Warum Lagerhäuser jetzt IoT adoptieren sollten: Effizienz, Genauigkeit, Sicherheit steigern
  4. Elektro-Schalttafeln: Design-Grundlagen für Sicherheit & ROI
  5. Effizienzsteigerung durch responsiven Roboter bei Energy Dynamics
  6. Kaufzyklus zurückgewinnen: Bewährte Strategien für Hersteller
  7. Das Motorsteuergerät (ECU): Das Gehirn moderner Fahrzeuge
  8. Kfz-Relais: Funktion, Typen, Aufbau & Schutzmechanismen
  9. Relais: Typen, Anwendungen, Geschichte & Auswahlkriterien – Der umfassende Leitfaden
  10. Erste Kfz-Versicherung: Schritt-für-Schritt zum günstigen Schutz