Module Relay 12VDC x 4
- Ứng dụng đóng cắt thiết bị điện ( Từ 1 tới 4 thiết bị cùng lúc).
- Module sử dụng 4 Relay 12VDC để đóng cắt 4 đầu ra tải với công suất lên tới 220VAC/5A với tải trở và 220V/1A với tải cảm
- Tín hiệu điều khiển để đóng relay ở mức cao từ 3VDC-12VDC.
- Module đã có phần bảo vệ chống cắm ngược nguồn
- Dễ dàng kết nối với các mạch điều khiển
- Sản phẩm được bảo hành 1 năm
Sử dụng các chân của Module Relay:
+/ DK : chân điều khiển đóng cắt relay. Relay đóng khi DK ở mức cao (3VDC-12VDC) và ngắt khi DK ở mức thấp (0VDC)
+/ VCC, GND: là 2 chân cấp nguồn cho cuộn hút relay. GND: 0VDC, VCC: 12VDC
Tham khảo sử dụng Arduino và LCD Keypad Shield điều khiển Module 4 Relay:
Sử dụng phím trên LCD Keypad Shield để điều khiển đóng cắt của relay, cụ thể :
Phím | SELECT | LEFT | UP | DOWN | RIGHT | RST |
On/Off | Cả 4 relay | Relay 1 | Relay 2 | Relay 3 | Relay 4 | Reset |
Code chương trình tham khảo:
#include
LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // Chon chan su dung cho LCD
int k1 = 0;
int adc_key_in = 0;
byte i1,i2,i3,i4,i5,j1 = 0; // Dat gia tri cac bien dem
#define btnRIGHT 0
#define btnUP 1
#define btnDOWN 2
#define btnLEFT 3
#define btnSELECT 4
#define btnNONE 5
const int L1 = 2;
const int L2 = 3;
const int L3 = 11;
const int L4 = 12; // Cac chan su dung tren tren Arduino
int read_LCD_buttons(){ // Ham doc
adc_key_in = analogRead(0); // Doc gia tri từ cảm bien
if (adc_key_in > 1000) return btnNONE;
if (adc_key_in < 50) return btnRIGHT;
if (adc_key_in < 250) return btnUP;
if (adc_key_in < 450) return btnDOWN;
if (adc_key_in < 650) return btnLEFT;
if (adc_key_in < 850) return btnSELECT; } // voi cac gia tri cua nut bam tuong ung voi dau vao cua adc_key_in tra loi
void setup(){
pinMode(L1,OUTPUT);
pinMode(L2,OUTPUT);
pinMode(L3,OUTPUT);
pinMode(L4,OUTPUT); // Dat bien dau ra
lcd.begin(16,2); } // Khoi dong thu vien
void loop(){
lcd.setCursor(0,0); // Lenh cat dat vi tri su dung tren man hinh LCD
lcd.print("Mlab Relay x4");
lcd.setCursor(0,1); // Chuyen in ra man hinh xuong hang 2
lcd.print("ON:");
if (j1==0) {k1 = read_LCD_buttons(); } // Gan gia tri buttom cho bien trung gian
if (k1 == btnLEFT) // Kiem tra co phai bam phim LEFT
{
delay(10); // Tre 10ms
k1 = read_LCD_buttons(); // Kiem tra lai phim bam co phai la LEFT khong
if (k1 == btnLEFT ){j1 = 1 ; } // Dua co len 1
else {
if (j1 == 1)
{
if (i1 == 0) {i1= 1;} else {i1 = 0 ;} // Dao gia tri trang thai cua relay 1
digitalWrite(L1, i1 );
lcd.setCursor(3,1);
if (i1 == 1) {lcd.print("1");}else{lcd.print(" ");} // in ra man hinh trang thai relay 1
j1 = 0; // Dua co xuong 0
}}}
if (k1 == btnUP) // Kiem tra co phai bam phim UP
{
delay(10);
k1 = read_LCD_buttons(); // Kiem tra lai phim bam co phai la UP khong
if (k1 == btnUP ){j1 = 1 ; } // Dua co len 1
else {
if (j1 == 1)
{
if (i2 == 0) {i2= 1;} else {i2 = 0 ;} // Dao gia tri trang thai cua relay 2
digitalWrite(L2, i2 );
lcd.setCursor(5,1);
if (i2 == 1){lcd.print("2");}else{lcd.print(" ");} // in ra man hinh trang thai relay 2
j1 = 0; // Dua co xuong 0
}}}
if (k1 == btnDOWN) // Kiem tra co phai bam phim DOWN
{
delay(10);
k1 = read_LCD_buttons(); // Kiem tra lai phim bam co phai la DOWN khong
if (k1 == btnDOWN ) {j1 = 1 ; } // Dua co len 1
else {
if (j1 == 1)
{
if (i3 == 0) {i3= 1;} else {i3 = 0 ;} // Dao gia tri trang thai cua relay 3
digitalWrite(L3, i3 );
lcd.setCursor(7,1);
if (i3 == 1){lcd.print("3");}else{lcd.print(" ");} // in ra man hinh trang thai relay 3
j1 = 0; // Dua co xuong 0
}}}
if (k1 == btnRIGHT) // Kiem tra co phai bam phim RIGHT
{
delay(10);
k1 = read_LCD_buttons(); // Kiem tra lai phim bam co phai la RIGHT khong
if (k1 == btnRIGHT) { j1 = 1 ; } // Dua co len 1
else {
if (j1 == 1)
{
if (i4 == 0) {i4= 1;} else {i4 = 0 ;} // Dao gia tri trang thai cua relay 4
digitalWrite(L4, i4 );
lcd.setCursor(9,1);
if(i4==1){lcd.print("4");} else {lcd.print(" ");} // in ra man hinh trang thai relay 4
j1 = 0; // Dua co xuong 0
}}}
if (k1 == btnSELECT) // Kiem tra co phai bam phim SELECT
{
delay(10);
k1 = read_LCD_buttons(); // Kiem tra lai phim bam co phai la SELECT khong
if (k1 == btnSELECT ) {j1 = 1 ; } // Dua co len 1
else {
if (j1 == 1)
{
if (i5 == 0) {i5= 1;} else {i5 = 0 ;} // Dao gia tri trang thai cua 4 relay
digitalWrite(L1, i5 ); digitalWrite(L2, i5 );
digitalWrite(L3, i5 ); digitalWrite(L4, i5 );
lcd.setCursor(3,1);
if (i5 == 1 ) {lcd.print("1 2 3 4");}else {lcd.print(" ");} // in ra man hinh trang thai 4 relay
j1 = 0; // Dua co xuong 0
}}}
}