Bestuur 65.280 Relais met Arduino: Uitbreidbare IO & Relais Oplossingen
Onderdelen en Benodigdheden
| Arduino Nano R3 | × | 1 |
| IO Expander | × | 1 |
| Relay Expander | × | 1 |
| IO Extender | × | 1 |
| Arduino 16 Relais Bord | × | 1 |
Apps en Online Diensten
- Arduino IDE
Over dit Project
Gebruik de IO Expander en Relay Expander om tot 65.280 relais te besturen.
Heb je veel relais nodig voor je project? Dan heb je de IO Expander met Relay Expanders nodig. Elke IO Expander kan tot 16 daisy-chained Relay Expanders besturen voor een totaal van 256 relais. Door 255 IO Expanders te koppelen kun je selectief tot 65.280 relais besturen.
Relais Besturen met een Enkele IO Expander
Functielijst
- Gebruik goedkope < $15 Arduino 16 relais borden
- Eenvoudige relais besturingscommando's
- Bestuur een individueel relais of een bank tegelijk
- Geen driver nodig. Bespaar code ruimte
- Geen data ruimte nodig voor relais status
- Geen extra voeding nodig
Onderdelen voor een Relais Bank
- IO Expander
- IO Extender
- Relay Expander
- Arduino 16 Relais Bord
Wiring Diagram
Let op: In het bovenstaande wiring diagram worden de IO Expander en Arduino Nano gevoed door het eerste relaisbord. Alle Relay Expanders worden gevoed door het relaisbord waar ze aan zitten.
Code Voorbeeld: Enkele IO Expander (64 Relais)
/* IO Expander
* Bestuur 64 Relais
*/
#include <SoftwareSerial.h>
#include "IOExpander.h"
#include <avr/wdt.h>
//#define SERIAL_DEBUG
#define MAX_RELAYS 64
#ifdef SERIAL_DEBUG
SoftwareSerial swSerial(8,7);
#endif
char cmd[10];
void setup() {
Serial.begin(115200);
#ifdef SERIAL_DEBUG
swSerial.begin(115200);
swSerialEcho = &swSerial;
#endif
wdt_enable(WDTO_8S);
sprintf(cmd, "eb%d", MAX_RELAYS / 16);
SerialCmdDone(cmd);
}
void loop() {
static int i = 1;
sprintf(cmd, "e%df", i);
SerialCmdDone(cmd);
if (i++ >= MAX_RELAYS) i = 1;
sprintf(cmd, "e%do", i);
SerialCmdDone(cmd);
delay(100);
wdt_reset();
}
Meerdere IO Expanders die Relais Besturen
Een andere manier is meerdere IO Expanders te gebruiken. Dit geeft de mogelijkheid om sensoren en relais te verdelen over een centrale of ster-netwerk, maar nog steeds alle IO Expanders op een enkele seriële bus te koppelen. Als je IO Expanders tot 4000ft (≈1200m) moet scheiden, gebruik dan de IO Extenders met standaard blauwe Cat5 netwerkkabel.
Wiring Diagram Meerdere Expanders
Let op: Alle IO Expanders en Arduino Nano worden gevoed door het eerste relaisbord via de seriële bus. Alle Relay Expanders worden gevoed door hun eigen relaisbord.
Code Voorbeeld: Meerdere IO Expanders
/* IO Expander
* Relais Bonanza met IO Expanders!
*/
#include <HardwareSerial9Bit.h>
#include "IOExpander9Bit.h"
#include <avr/wdt.h>
#define MAX_BOARDS 4
char cmd[10];
void setup() {
Serial9Bit.begin(115200, SERIAL_9N1);
Serial9Bit.write(0); // Zet IO Expanders op 9-bit
wdt_enable(WDTO_8S);
for (int board = 1; board <= 4; board++)
SerialCmdDone(board, "eb1");
}
void loop() {
static int board = 1;
static int relay = 1;
sprintf(cmd, "e%df", relay);
SerialCmdDone(board, cmd);
if (++relay > 16) {
relay = 1;
if (++board > MAX_BOARDS) board = 1;
}
sprintf(cmd, "e%do", relay);
SerialCmdDone(board, cmd);
delay(100);
wdt_reset();
}
Waarom Zoveel Relais Besturen?
Één toepassing is in aquaponica of hydroponica. Veel sensoren en apparaten moeten geautomatiseerd worden tot op elk groeibed of individuele plant. Dit vereist extreme IO en de IO Expander levert dat.
Krijg vandaag nog je IO Expander en bouw je systeem!
Code
- Bestuur 64 Relais met een Enkele Expander
- Bestuur 64 Relais met Meerdere Expanders
Schema's
Productieproces
- Je plafondventilator bedienen met Alexa: Stap-voor-stap handleiding
- Slimme spaarpot bouwen: Muntenacceptor besturen met Arduino Nano
- Arduino Power Control Center: N-FET, P-FET, Relais & RTC Kit
- Een LED bedienen via Bluetooth met Arduino – Eenvoudige DIY Handleiding
- DIY Arduino Luchtbevochtiger Controller met Relais – Veilige Hoogspanningsopstelling
- Twee Stappenmotors Sturen met Arduino Nano & Joystick – Simpele Tutorial
- Een Arduino LED besturen met Cortana via Bluetooth op Windows 10
- ThimbleKrox: Vingergemonteerde Muizenbesturing met Arduino Micro & MPU-6050
- Naadloze Smartphone-besturing van Huisverlichting met 1Sheeld
- DIY Arduino Kakerlakbesturingssysteem – Bouw voor minder dan $30
- 25 kHz 4-pins PWM-ventilatorbesturing met Arduino Uno – Bouw, Code & Test