Mô tả sản phẩm: Module thu hồng ngoại IR1838
Module Thu Hồng Ngoại IR1838 Giá Rẻ
Giới thiệu về mạch thu hồng ngoại
Module thu hồng ngoại IR1838 nhận hồng ngoại thông qua đầu thu hồng ngoại 1838. Ánh sáng điện trở, nhiễu điện từ mạnh,được xây dựng trong IC hồng ngoại chuyên dụng, có thể làm việc dưới cường độ ánh sáng 500lux.
Nó được sử dụng rộng rãi trong: âm thanh nổi, TV, máy video, đĩa máy, hộp set-top,khung ảnh kỹ thuật số, xe hơi stereo, đồ chơi điều khiển từ xa, thu vệ tinh,máy nghe nhạc đĩa cứng, máy lạnh, máy sưởi, quạt điện, ánh sáng và các thiết bị gia dụng khác.
Thông số kỹ thuật của mạch thu hồng ngoại IR1838
- Kích thước: 6.4 x 7.4 x 5.1mm
- Góc thu nhận: 90 °
- Điện áp làm việc: 2,7 ~ 5,5V
- Tần số: 37.9KHz
- Phạm vi nhận: 18m
Sơ đồ chân của module thu hồng ngoại
Sơ đồ chân của IR1838
Ứng dụng của module led hồng ngoại
Sau đây mình xin giới thiệu các bạn ứng dụng cơ bản nhất của IR1838 đó là điều khiển hồng ngoại.
Linh kiện cần dùng:
- Arduino (ở đây mình dùng Uno R3)
- Led x2(dùng 2 LED khác màu cho dễ nhìn)
- Trở 30k x2
- IR1838
- Remote
- Dây cắm
- Bo trắng
Đầu tiên các bạn tải thư viện của IR1838 về tại địa chỉ: https://github.com/z3t0/Arduino-IRremote . Sau đó add vào thư viện Arduino IDE.
Tiếp theo,các bạn nạp code cho Arduino:
#include <IRremote.h>
const int receiverPin = 8; // chân digital 8 dùng để đọc tín hiệu
IRrecv irrecv(receiverPin); // tạo đối tượng IRrecv mới
decode_results results;// lưu giữ kết quả giải mã tín hiệu
void setup()
{
Serial.begin(9600);// serial baudrate 9600
irrecv.enableIRIn(); // start the IR receiver
}
void loop()
{
if (irrecv.decode(&results)) // nếu nhận được tín hiệu
{
Serial.println(results.value, HEX); // in ra Serial Monitor
delay(200);
irrecv.resume(); // nhận giá trị tiếp theo
}
}
Sau khi nạp xong và cho chạy,các bạn mở cửa sổ “Serial Monitor” lên.Bấm nút của điều khiển nó sẽ hiện lên 1 loạt các số ở dạng hexa(các số hexa này sẽ khác nhau ở mỗi nút và các loại điều khiển).Như ở điều khiển của mình thì mình thu được kết quả như sau:
Trong đó: F7B04F – tương ứng với nút nhấn số 1 ở điều khiển
F7906F – tương ứng với nút nhấn số 2 ở điều khiển
Các bạn lưu ý 2 số này để áp dụng trong điều khiển LED ở phần dưới.
………………………………………………………
Từ các số hexa nhận được ở trên,mình tiếp tục với điều khiển LED:
Ảnh mô phỏng
Các bạn lắp linh kiện như hình bên trên.Dưới đây là phần code:
#include <IRremote.h>
const int receiverPin = 8; // chân digital 8 dùng để đọc tín hiệu
IRrecv irrecv(receiverPin); // tạo đối tượng IRrecv mới
decode_results results;// lưu giữ kết quả giải mã tín hiệu
const int RED = 7;// LED đỏ
const int BLUE = 5;// LED xanh dương
/* trạng thái của các LEDs*/
boolean stateRED = false;
boolean stateBLUE = false;
void setup()
{
Serial.begin(9600);// serial
irrecv.enableIRIn(); // start the IR receiver
pinMode(RED, OUTPUT);
pinMode(BLUE, OUTPUT);
}
// translate IR signals
void translateIR()
{
switch(results.value)
{
case 0xF7B04F: stateRED = !stateRED;
digitalWrite(RED, stateRED);
break;
case 0xF7906F: stateBLUE = !stateBLUE;
digitalWrite(BLUE, stateBLUE);
break;
}
}
void loop()
{
if (irrecv.decode(&results)) // nếu nhận được tín hiệu
{
translateIR();
Serial.println(results.value, HEX);
delay(200);
irrecv.resume(); // nhận giá trị tiếp theo
}
}
Với các điều khiển khác nhau thì sẽ ra số hexa khác nhau,các bạn chỉ cần quan tâm đến các số thu được trong Serial Monitor,chỉnh code trong 2 case của vòng lặp Switch ở trên là được.Khi ấn nút 1,LED đỏ sẽ sáng.Khi ấn nút 2 thì LED xanh dương sẽ sáng!
Dưới đây là kết quả thu được:
Ảnh test thực tế
Từ những ý tưởng sơ khai ban đầu này ,các bạn có thể tạo ra những sản phẩm nâng cấp hơn,đặc biệt điều khiển từ xa này có ứng dụng rất nhiều trong thực tế.
Chúc các bạn thành công !