Оглавление:
- Шаг 1. Проволока
- Шаг 2: Пример простого кода:
- Шаг 3: Код проверки четырех реле
- Шаг 4: Мой проект
- Шаг 5: вызов реле с помощью одной команды
Видео: Реле I2C с IDE Arduino: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:47
Я заказываю хорошую релейную плату, но там не было инструкции ArduinoIDE, только Raspberry Pi e.o. Я узнаю, как использовать его с Arduino, и хочу поделиться им, чтобы вы могли сэкономить время.
Оригинальный пример RaspberryPi:
wiki.52pi.com/index.php/DockerPi_4_Channel_Relay_SKU:_EP-0099
Приятно то, что можно складывать до 4 досок. Таким образом, вы можете использовать макс. 4 x 4 = 16 реле на одной шине I2C.
Есть и минусы:
- маленькие клеммы, не подходят для провода 1 мм2
- нельзя менять разводку нижних разъемов, когда они сложены вместе
Но все же под рукой доска.
Шаг 1. Проволока
На фотографиях вы можете увидеть проводку.
52Pi требует как 5 В (для реле), так и 3,3 В (микросхема I2C).
Итак, нужно 5 проводов:
- GND к GND
- От 5 В до 5 В
- От 3,3 В до 3,3 В
- SLA к SLA
- SCL в SCL
Если вы используете Arduino UNO или другой источник 5 В, будьте осторожны с максимальным напряжением 3, 6 В от контроллера I2C! Используйте резисторы или что-то еще, чтобы понизить 5 В на выводах Arduino!
Шаг 2: Пример простого кода:
/ * Пример Arduino IDE (ESP) для релейной платы I2C.
* Автор: Laurens Korste www.boktorrobotica.nl * бесплатное использование. * / #include // для связи I2C void setup () {// это правило не для UNO или плат с выделенными выводами I2C Wire.begin (D1, D2); // присоединяемся к шине i2c с SDA = D1 и SCL = D2 для NodeMCU} void loop () {Wire.beginTransmission (0x10); / * начинаем передачу на адрес 10 I2C (чтобы изменить также на 11, 12 или 13) * / Wire.write (0x01); / * выбор реле 1 (из 4) на плате 10 (также 0x02, 0x03, 0x04) * / Wire.write (0xFF); / * установить реле 1 на плате 10 в положение ON. все числа> 0 будут делать это * / Wire.endTransmission (); / * прекратить передачу * / delay (3000); Wire.beginTransmission (0x10); / * * / Wire.write (0x01); Wire.write (0x00); / * установить реле 1 на плате 10 в положение OFF * / Wire.endTransmission (); / * прекратить передачу * / delay (3000); }
Шаг 3: Код проверки четырех реле
/ * эскиз Лоренса Корсте для Arduino (ESP / NodeMCU)
* Но подойдут и другие платы * www.boktorrobotica.nl * В этом skeych al 4 реле будут активированы и деактивированы * / #include // для связи I2C void setup () {Serial.begin (115200); // начинаем серийный номер для отладки (9600 для UNO) Wire.begin (D1, D2); // присоединяемся к шине i2c с SDA = D1 и SCL = D2 для NodeMCU, UNO не требуется} void loop () {for (int i = 1; i <= 4; i ++) {Wire.beginTransmission (0x10); // начинаем с адреса устройства Wire.write (i); // выбор реле Wire.write (0xFF); // отправляем код включения FF (подойдет каждый счет от 01 до FF) Wire.endTransmission (); // прекращаем передачу Serial.write (i); Serial.println ("аан"); задержка (1000); Wire.beginTransmission (0x10); // начинаем с адреса устройства Wire.write (i); Wire.write (0x00); // Отправляем код отключения Wire.endTransmission (); // прекращаем передачу Serial.write (i); Serial.println ("uit"); задержка (1000); }}
Шаг 4: Мой проект
Я написал код для управления моими 3 жалюзи. Это можно сделать с помощью переключателей, а также с помощью приложения BLYNK, см. Изображение.
- Одно короткое нажатие приведет к перемещению одного затвора (или остановит его, когда он перемещается).
- Одно долгое нажатие - и все три створки открываются (или закрываются, или останавливаются).
- Двойное давление: створки переходят в положение «дырочки».
Как видно на картинке, я также встроил датчик температуры и света.
Теперь все на хорошей базовой плате и аккуратно в коробке.
Шаг 5: вызов реле с помощью одной команды
Это полезно, если вам нужна только одна команда для активации или деактивации реле. Ниже приведена функция, которая может это сделать (с младшим и старшим байтами).
/ * набросок Лоренса Корсте для Arduino (ESP / NodeMCU) с релейной платой I2C * Но другие платы тоже подойдут * href = https://www.boktorrobotica.nl; www.boktorrobotica.nl * https://wiki.52pi.com / index.php / DockerPi_4_Channel_Relay_SKU: _EP-0099; www.boktorrobotica.nl * В этом скетче реле будет активировано одним вызовом; * // #include // для связи I2C // Декларация реле.4 PCB на PCB Возможны 4 реле. В этом скетче объединены только две PCB // PCB и реле, поэтому их можно вызывать одной командой const byte PutOn = 0xFF; // команда для включения const byte PutOff = 0x00; // команда для выключения const word Relay1bord1 = 0x1001; // вы можете изменить имена на примере Relay1 const word Relay2bord1 = 0x1002; // вы можете изменить имена на примере Relay2 const word Relay3bord1 = 0x1003; // вы можете изменить имена на примере Relay3 const word Relay4bord1 = 0x1004; // вы можете случайным образом имена на примере Relay4 const word Relay1bord2 = 0x1101; // вы можете изменить имена на примере Relay5 const w ord Relay2bord2 = 0x1102; // вы можете случайно изменить имена на примере Relay6 const word Relay3bord2 = 0x1103; // вы можете случайно изменить имена на примере Relay7 const word Relay4bord2 = 0x1104; // вы можете случайно изменить имена на примере Relay8 const word Relay1bord3 = 0x1201; // вы можете случайно изменить имена на примере Relay9 const word Relay2bord4 = 0x1302; // вы можете изменить имена, например Relay14 void setup () {Serial.begin (115200); // начинаем серийный номер для отладки (9600 для UNO) Wire.begin (D1, D2); // подключаемся к шине i2c с SDA = D1 и SCL = D2 на NodeMCU, UNO не требуется} void loop () {// для переключения реле 4 на плате 2 на RelayActie (Relay4bord2, PutOn); задержка (1000); // выключить реле 4 на плате 2 RelayActie (Relay4bord2, PutOff); задержка (1000); } void RelayActie (слово Relay, байт OnOrOff) {Wire.beginTransmission (highByte (Relay)); Wire.write (lowByte (реле)); Wire.write (OnOrOff); Wire.endTransmission (); }
Рекомендуемые:
Как управлять реле с помощью Arduino: 7 шагов
Как управлять реле с помощью Arduino: реле - лучший способ управлять вашими приборами, поскольку они имеют меньшее сопротивление между контактами и могут использоваться во многих случаях, например, для включения и выключения приборов переменного тока (переменного тока), таких как освещение, телевизор, лампы и многое другое. Это
Как сделать умный дом с помощью модуля реле управления Arduino - Идеи домашней автоматизации: 15 шагов (с изображениями)
Как сделать умный дом с помощью модуля реле управления Arduino | Идеи домашней автоматизации: в этом проекте домашней автоматизации мы разработаем релейный модуль для умного дома, который сможет управлять 5 бытовыми приборами. Этим релейным модулем можно управлять с мобильного телефона или смартфона, ИК-пульта дистанционного управления или пульта дистанционного управления телевизором, ручного переключателя. Это интеллектуальное реле также может определять р
Музыка с Arduino и реле: 6 шагов
Музыка с Arduino и Relay: в этом уроке я покажу вам, как создавать музыку с Relay и Arduino, интересный проект для начинающих
Схема модуля управляющего реле Lora Arduino: 12 шагов
Схема модуля управления реле Arduino Lora: в этом проекте Lora мы увидим, как управлять устройствами высокого напряжения с помощью схемы управления реле LoRa Arduino. В этом проекте Arduino Lora мы будем использовать модуль Reyax RYLR896 Lora, Arduino и модуль реле 12 В для управления 5 бытовыми приборами с
IOT123 - 2-КАНАЛЬНЫЙ РЕЛЕ I2C КИРПИЧ: 5 шагов (с изображениями)
IOT123 - I2C 2CH RELAY BRICK: IOT123 BRICKS - это модульные блоки DIY, которые можно смешивать с другими IOT123 BRICKS, чтобы добавить функциональность к узлу или носить. В их основе лежат двухсторонние прототипы дюймового квадрата с соединенными между собой сквозными отверстиями. Некоторые из этих КИРПИЧНЫХ