![I2C Relay Met Arduino IDE: 5 stappe I2C Relay Met Arduino IDE: 5 stappe](https://i.howwhatproduce.com/images/001/image-1684-j.webp)
INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-23 12:53
![I2C Relay Met Arduino IDE I2C Relay Met Arduino IDE](https://i.howwhatproduce.com/images/001/image-1684-1-j.webp)
Ek bestel 'n lekker relayboard, maar daar was geen ArduinoIDE -instruksie nie, net Raspberry Pi e.o. Ek vind uit hoe ek dit met Arduino kan gebruik en wil dit deel, sodat u die tyd kan bespaar.
Oorspronklike RaspberryPi -voorbeeld:
wiki.52pi.com/index.php/DockerPi_4_Channel_Relay_SKU:_EP-0099
Die goeie ding is dat u tot 4 planke kan stapel. U kan dus maks. 4 x 4 = 16 aflosse op een I2C -bus.
Daar is ook 'n paar nadele:
- klein terminale, pas nie 1 mm2 draad nie
- U kan nie die bedrading van die onderste verbindings verander as hulle aanmekaar gestapel is nie
Maar steeds handige bordjies.
Stap 1: Bedrading
![Bedraad Bedraad](https://i.howwhatproduce.com/images/001/image-1684-2-j.webp)
![Bedraad Bedraad](https://i.howwhatproduce.com/images/001/image-1684-3-j.webp)
![Bedraad Bedraad](https://i.howwhatproduce.com/images/001/image-1684-4-j.webp)
Op die foto's kan u die draad sien.
Die 52Pi benodig beide 5V (vir relais) en 3.3V (I2C -chip).
Dus is 5 drade nodig:
- GND tot GND
- 5 V tot 5 V
- 3.3 V tot 3.3 V
- SLA tot SLA
- SCL tot SCL
As u 'n Arduino UNO of ander 5 V gebruik, moet u op die maksimum 3, 6 V van die I2C -kontroleerder let! Gebruik weerstande of verlaag die 5 V uit die Arduino PIN's!
Stap 2: Voorbeeld van eenvoudige kode:
/* Arduino IDE (ESP) voorbeeld vir I2C relaisboard.
* Deur Laurens Korste www.boktorrobotica.nl * gratis om te gebruik. */ #include // vir I2C kommunikasie leegte opstel () {// hierdie reël nie vir UNO of borde met toegewyde I2C penne Wire.begin (D1, D2); // sluit aan by i2c -bus met SDA = D1 en SCL = D2 vir NodeMCU} leemte lus () {Wire.beginTransmission (0x10);/ * begin stuur na I2C adres 10 (om ook te verander na 11, 12 of 13) */ Wire.skryf (0x01); / * choice relais 1 (uit 4) aan boord 10 (ook 0x02, 0x03, 0x04) */ Wire.write (0xFF); /* stel relais 1 aan boord 10 op AAN. alle getalle> 0 sal dit doen */ Wire.endTransmission (); / * stop stuur */ vertraging (3000); Wire.begin Transmissie (0x10); / * */ Wire.write (0x01); Wire.write (0x00); / * stel relais 1 aan boord 10 op OFF */ Wire.endTransmission (); / * stop stuur */ vertraging (3000); }
Stap 3: vier aflos -toetskode
/* skets deur Laurens Korste vir Arduino (ESP / NodeMCU)
* Maar ander borde sal dit ook doen * www.boktorrobotica.nl * In hierdie sleutel sal die 4 aflosse geaktiveer en gedeaktiveer word */ #include // vir die opstel van I2C -kommunikasie () {Serial.begin (115200); // begin reeks vir ontfouting (9600 vir UNO) Wire.begin (D1, D2); // sluit aan by i2c -bus met SDA = D1 en SCL = D2 van NodeMCU nie nodig vir UNO} leemte -lus () {vir (int i = 1; i <= 4; i ++) {Wire.beginTransmission (0x10); // begin met toesteladres Wire.write (i); // kies die relais Wire.write (0xFF); // stuur die "aan" -kode FF (elke telling van 01 tot FF sal doen) Wire.endTransmission (); // stop met die oordrag van Serial.write (i); Serial.println ("aan"); vertraging (1000); Wire.begin Transmissie (0x10); // begin met toesteladres Wire.write (i); Wire.write (0x00); // Stuur die "af" -kode Wire.endTransmission (); // stop met die oordrag van Serial.write (i); Serial.println ("uit"); vertraging (1000); }}
Stap 4: My projek
![My Projek My Projek](https://i.howwhatproduce.com/images/001/image-1684-5-j.webp)
![My Projek My Projek](https://i.howwhatproduce.com/images/001/image-1684-6-j.webp)
Ek het 'n kode geskryf om my 3 luike te gebruik, dit kan gedoen word met skakelaars, maar ook met die BLYNK -app, sien prent.
- Een kort druk sal een sluiter begin beweeg (of stop as dit beweeg).
- Een lang druk en al drie luike gaan oop (of sluit of stop).
- Dubbele druk: die luike gaan na die "gate" -posisie.
Soos op die foto gesien kan word, het ek ook 'n temperatuur- en ligsensor geïntegreer.
Nou alles op 'n goeie basis -PCB en netjies in 'n boks.
Stap 5: Bel 'n aflos met een opdrag
Dit is handig as u slegs een opdrag nodig het om 'n aflos te aktiveer of te deaktiveer. Hieronder is 'n funksie wat dit kan doen (met lowbyte en highbyte).
/ * skets deur Laurens Korste vir Arduino (ESP/NodeMCU) met I2C -relaisbord * Maar ander borde sal ook * href = https://www.boktorrobotica.nl; www.boktorrobotica.nl * https://wiki.52pi doen.com/index.php/DockerPi_4_Channel_Relay_SKU: _EP-0099; www.boktorrobotica.nl * In hierdie skets word die relais met een oproep geaktiveer; * // #include // vir I2C-kommunikasie // Relays declaratie. 4 PCB's per PCB 4 relais moontlik In hierdie skets word slegs twee PCB // PCB en relais saamgevoeg, sodat hulle met een opdrag const byte PutOn = 0xFF; // command om const byte PutOff = 0x00 aan te skakel; // comand om af te skakel const woord Relay1bord1 = 0x1001; // jy kan die name deur voorbeeld Relay1 const word Relay2bord1 = 0x1002; // jy kan die name deur voorbeeld Relay2 const word Relay3bord1 = 0x1003; // jy kan die name met voorbeeld Relay3 const word Relay4bord1 = 0x1004; // u kan die name deur voorbeeld toelaat Relay4 const -woord Relay1bord2 = 0x1101; // u kan die name deur voorbeeld Relay5 const w ord Relay2bord2 = 0x1102; // jy kan die name deur voorbeeld Relay6 const word Relay3bord2 = 0x1103; // jy kan die name deur voorbeeld Relay7 const word Relay4bord2 = 0x1104; // jy kan die name deur voorbeeld Relay8 const word Relay1bord3 = 0x1201; // jy kan die name deur voorbeeld Relay9 const word Relay2bord4 = 0x1302; // jy kan die name deur voorbeeld Relay14 leemte opstel () {Serial.begin (115200); // begin reeks vir ontfouting (9600 vir UNO) Wire.begin (D1, D2); // sluit aan by i2c -bus met SDA = D1 en SCL = D2 van NodeMCU nie nodig vir UNO} leemte -lus () {// om relais 4 op PCB 2 op RelayActie (Relay4bord2, PutOn) oor te skakel; vertraging (1000); // om relais 4 op PCB 2 af te skakel RelayActie (Relay4bord2, PutOff); vertraging (1000); } void RelayActie (woord Relay, byte OnOrOff) {Wire.beginTransmission (highByte (Relay)); Wire.write (lowByte (Relay)); Wire.write (OnOrOff); Wire.endTransmission (); }
Aanbeveel:
Hoe om 'n slim huis te maak met behulp van Arduino Control Relay Module - Tuis outomatisering idees: 15 stappe (met foto's)
![Hoe om 'n slim huis te maak met behulp van Arduino Control Relay Module - Tuis outomatisering idees: 15 stappe (met foto's) Hoe om 'n slim huis te maak met behulp van Arduino Control Relay Module - Tuis outomatisering idees: 15 stappe (met foto's)](https://i.howwhatproduce.com/images/003/image-6810-j.webp)
Hoe om 'n slim huis te maak met behulp van Arduino Control Relay Module | Tuisautomatiseringsidees: In hierdie tuisautomatiseringsprojek ontwerp ons 'n slim huis -aflosmodule wat 5 huistoestelle kan beheer. Hierdie aflosmodule kan beheer word vanaf mobiele of slimfoon, IR -afstandsbediening of TV -afstandsbediening, handskakelaar. Hierdie slim aflos kan ook die r
PWM Met ESP32 - Dim LED met PWM op ESP 32 Met Arduino IDE: 6 stappe
![PWM Met ESP32 - Dim LED met PWM op ESP 32 Met Arduino IDE: 6 stappe PWM Met ESP32 - Dim LED met PWM op ESP 32 Met Arduino IDE: 6 stappe](https://i.howwhatproduce.com/images/001/image-1144-103-j.webp)
PWM Met ESP32 | Dim LED met PWM op ESP 32 Met Arduino IDE: In hierdie instruksies sal ons sien hoe om PWM seine te genereer met ESP32 met behulp van Arduino IDE & PWM word basies gebruik om analoog uitset van enige MCU te genereer en die analoog uitset kan tussen 0V en 3.3V wees (in die geval van esp32) & van
I2C / IIC LCD -skerm - Gebruik 'n SPI LCD na die I2C LCD Display met behulp van SPI tot IIC module met Arduino: 5 stappe
![I2C / IIC LCD -skerm - Gebruik 'n SPI LCD na die I2C LCD Display met behulp van SPI tot IIC module met Arduino: 5 stappe I2C / IIC LCD -skerm - Gebruik 'n SPI LCD na die I2C LCD Display met behulp van SPI tot IIC module met Arduino: 5 stappe](https://i.howwhatproduce.com/images/001/image-2309-36-j.webp)
I2C / IIC LCD -skerm | Gebruik 'n SPI LCD na die I2C LCD -skerm Met behulp van SPI na IIC -module met Arduino: Hallo ouens, aangesien 'n normale SPI LCD 1602 te veel drade het om aan te sluit, is dit baie moeilik om dit met arduino te koppel, maar daar is een module op die mark wat kan omskep SPI -skerm in IIC -skerm, sodat u slegs 4 drade moet aansluit
Aan die slag met Esp 8266 Esp-01 Met Arduino IDE - Die installering van Esp -borde in Arduino Ide en programmering van Esp: 4 stappe
![Aan die slag met Esp 8266 Esp-01 Met Arduino IDE - Die installering van Esp -borde in Arduino Ide en programmering van Esp: 4 stappe Aan die slag met Esp 8266 Esp-01 Met Arduino IDE - Die installering van Esp -borde in Arduino Ide en programmering van Esp: 4 stappe](https://i.howwhatproduce.com/images/003/image-6001-15-j.webp)
Aan die slag met Esp 8266 Esp-01 Met Arduino IDE | Installering van Esp-borde in Arduino Ide en programmering van Esp: In hierdie instruksies gaan ons leer hoe om esp8266-borde in Arduino IDE te installeer en hoe om esp-01 te programmeer en kode daarin te laai. dit en die meeste mense het 'n probleem
IOT123 - I2C 2CH RELAY BRICK: 5 Stappe (met foto's)
![IOT123 - I2C 2CH RELAY BRICK: 5 Stappe (met foto's) IOT123 - I2C 2CH RELAY BRICK: 5 Stappe (met foto's)](https://i.howwhatproduce.com/images/001/image-475-71-j.webp)
IOT123 - I2C 2CH RELAY BRICK: Die IOT123 BRICKS is DIY -modulêre eenhede wat met ander IOT123 BRICKS saamgevoeg kan word om funksionaliteit by 'n knoop of draagbare te voeg. Hulle is gebaseer op die duim vierkantige, dubbelzijdige protoborde met onderling verbind gate. 'N Aantal hiervan