Управление реле происходит через цифровые выводы Arduino: D4, D5, D6, D7. На данной плате расширения в цепи управления состояниями реле используются транзисторы n-p-n типа. Это значит, что для его открытия нужно подать на соответствующий цифровой вывод (D4…D7) сигнал высокого уровня функцией digitalWrite(pin, HIGH). После этого транзистор откроется и через управляющую цепь потечет ток, что приведет к срабатыванию нужного реле. Соответственно, отключение реле происходит подачей на базу сигнала низкого уровня функцией digitalWrite(pin, LOW). Для индикации текущего состояния каждого реле на плате установлены четыре светодиода.
В схеме управления реле используется гальваническая развязка. Это защищает схему от возможных помех, вызванных, например, отключением и подключением нагрузки в коммутируемой цепи.
Пример
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
int relay_1 = 7; // D7 к 1 реле int relay_2 = 6; // D6 к 2 реле int relay_3 = 5; // D5 к 3 реле int relay_4 = 4; // D4 к 4 реле int led_1 = 8; // COM1 подключаем к D8 int led_2 = 9; // COM2 подключаем к D9 int led_3 = 10; // COM3 подключаем к D10 int led_4 = 11; // COM4 подключаем к D11 void setup(){ pinMode(relay_1,OUTPUT); pinMode(relay_2,OUTPUT); pinMode(relay_3,OUTPUT); pinMode(relay_4,OUTPUT); pinMode(led_1,OUTPUT); pinMode(led_2,OUTPUT); pinMode(led_3,OUTPUT); pinMode(led_4,OUTPUT); // лог. 1 на светодиоды digitalWrite(led_1,HIGH); digitalWrite(led_2,HIGH); digitalWrite(led_3,HIGH); digitalWrite(led_4,HIGH); } void loop(){ // проверяем 1 реле digitalWrite(relay_1,HIGH); delay(3000); digitalWrite(relay_1,LOW); delay(3000); // проверяем 2 реле digitalWrite(relay_2,HIGH); delay(3000); digitalWrite(relay_2,LOW); delay(3000); // проверяем 3 реле digitalWrite(relay_3,HIGH); delay(3000); digitalWrite(relay_3,LOW); delay(3000); // проверяем 4 реле digitalWrite(relay_4,HIGH); delay(3000); digitalWrite(relay_4,LOW); delay(3000); } |