RF315 4 Kênh giao tiếp Arduino dùng Module Thu Phát RF315 dùng để thu tìn hiệu từ điều khiển từ xa hoặc sử dụng trong các điều khiển từ xa. Module thu phát RF315 nào được sử dụng trong điều khiển từ xa cho xe hơi, hoặc để điều khiển các tác vụ đơn giản, giống như tiếp sức kiểm soát bật / tắt việc sử dụng một ăng-ten tùy chọn sẽ làm tăng hiệu quả của truyền thông không dây của bạn.
- Phone : 0967.551.477
- Zalo : 0967.551.477
- FB : Huỳnh Nhật Tùng
- Email : dientunhattung@gmail.com
- Địa Chỉ: 106/14 Đường số 51, Phường 14, Gò Vấp, Tp HCM
- Chi tiết: Nhận làm mạch và đồ án Điện tử
Table of Contents
1. Linh kiện cần thiết làm mạch điều khiển thiết bị bằng thu, phát RF315 4 Kênh giao tiếp Arduino
1.1 Vi điều khiển Arduino trong mạch điều khiển thiết bị bằng thu, phát RF315 4 Kênh giao tiếp Arduino
a. Giới thiệu
Arduino Uno R3 (Dip) có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chúng chỉ có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA. Ở mỗi chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặc định thì các điện trở này không được kết nối).
Các chức năng khác
Arduino Uno R3 là một bảng mạch vi điều khiển nguồn mở dựa trên vi điều khiển Microchip ATmega328 được phát triển bởi Arduino.cc. Bảng mạch được trang bị các bộ chân đầu vào/ đầu ra Digital và Analog có thể giao tiếp với các bảng mạch mở rộng khác nhau. Mạch Arduino Uno thích hợp cho những bạn mới tiếp cận và đam mê về điện tử, lập trình…Dựa trên nền tảng mở do Arduino.cc cung cấp các bạn dễ dàng xây dựng cho mình một dự án nhanh nhất ( lập trình Robot, xe tự hành, điều khiển bật tắt led…). 

b. Chức năng của Arduino R3:
- 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive – RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này. Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây. Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết
- Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite(). Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.
Các chức năng khác
- Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.
- LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi chân này được người dùng sử dụng, LED sẽ sáng.
- Arduino Uno R3 có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog. Tức là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit. Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác.
c.Thông số kỹ thuật Arduino Uno R3 (Dip)
| Datasheets | Atmega328 |
| Standard Package | 27 |
| Category | Integrated Circuits (ICs) |
| Family | Embedded – Atmel |
| Series | Atmega |
| Packaging | Tube |
| Core Processor | AVR |
| Core Size | 8-Bit |
| Speed | 16MHz |
| Connectivity | I²C, SPI, UART / USART, USB |
| Peripherals | Brown-out Detec t/ Reset, HLVD, POR, PWM, WDT |
| Number of I /O | 14 |
| Program Memory Size | 32KB |
| Program Memory Type | FLASH |
| EEPROM Size | 1KB |
| RAM Size | 2K |
| Voltage – Supply (Vcc/Vdd) | 4.2 V ~ 5.5 V |
| Data Converters | A/D 6 x 10bit |
| Oscillator Type | Internal |
| Operating Temperature | -40°C ~ 85°C |
| Package / Case | 28-SOIC (0.295″, 7.50mm Width) |
| Other Names | Atmega328 |
d. Power
- LED: Có 1 LED được tích hợp trên bảng mạch và được nối vào chân D13. Khi chân có giá trị mức cao (HIGH) thì LED sẽ sáng và LED tắt khi ở mức thấp (LOW).
- VIN: Chân này dùng để cấp nguồn ngoài (điện áp cấp từ 7-12VDC).
- 5V: Điện áp ra 5V (dòng điện trên mỗi chân này tối đa là 500mA).
- 3V3: Điện áp ra 3.3V (dòng điện trên mỗi chân này tối đa là 50mA).
- GND: Là chân mang điện cực âm trên board.
- IOREF: Điệp áp hoạt động của vi điều khiển trên Arduino UNO và có thể đọc điện áp trên chân IOREF. Chân IOREF không dùng để làm chân cấp nguồn.
e.Bộ nhớ
Vi điều khiển ATmega328:- 32 KB bộ nhớ Plash: trong đó bootloader chiếm 0.5KB.
- 2 KB cho SRAM: (Static Random Access Menory): giá trị các biến khai báo sẽ được lưu ở đây. Khai báo càng nhiều biến thì càng tốn nhiều bộ nhớ RAM. Khi mất nguồn dữ liệu trên SRAM sẽ bị mất.
- 1 KB cho EEPROM: (Electrically Eraseble Programmable Read Only Memory): Là nơi có thể đọc và ghi dữ liệu vào đây và không bị mất dữ liệu khi mất nguồn.
f. Các chân đầu vào và đầu ra
Trên Board Arduino Uno có 14 chân Digital được sử dụng để làm chân đầu vào và đầu ra và chúng sử dụng các hàm pinMode(), digitalWrite(), digitalRead(). Giá trị điện áp trên mỗi chân là 5V, dòng trên mỗi chân là 20mA và bên trong có điện trở kéo lên là 20-50 ohm. Dòng tối đa trên mỗi chân I/O không vượt quá 40mA để tránh trường hợp gây hỏng board mạch. Ngoài ra, một số chân Digital có chức năng đặt biệt:- Serial: 0 (RX) và 1 (TX): Được sử dụng để nhận dữ liệu (RX) và truyền dữ liệu (TX) TTL.
- Ngắt ngoài: Chân 2 và 3.
- PWM: 3, 5, 6, 9 và 11 Cung cấp đầu ra xung PWM với độ phân giải 8 bit bằng hàm analogWrite ().
- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Các chân này hỗ trợ giao tiếp SPI bằng thư viện SPI.
- LED: Có 1 LED được tích hợp trên bảng mạch và được nối vào chân D13. Khi chân có giá trị mức cao (HIGH) thì LED sẽ sáng và LED tắt khi ở mức thấp (LOW).
- TWI/I2C: A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác.
1.2 RF315 dùng cho thu, phát RF315 4 Kênh giao tiếp Arduino
a. Giới thiệu
Module Thu Phát RF 315 dùng để thu tìn hiệu từ điều khiển từ xa hoặc sử dụng trong các điều khiển từ xa. Module thu phát RF315 nào được sử dụng trong điều khiển từ xa cho xe hơi, hoặc để điều khiển các tác vụ đơn giản, giống như tiếp sức kiểm soát bật / tắt việc sử dụng một ăng-ten tùy chọn sẽ làm tăng hiệu quả của truyền thông không dây của bạn.

b. Thông số kỹ thuật thu, phát RF315 4 Kênh
Remote thu 4 Kênh Pt2272
- Điện áp hoạt động: 12VDC (27A / 12V battery x 1)
- Dòng tiêu thụ: 10mA at 12V
- Radiated power: 10mW at 12V
- Khoảng cách phát: 50m(Theo thông số nhà sản xuất thử nghiệm trong điều kiện lý tưởng)
- Tần số RF hoạt động: 315MHZ
- Modulation mode: ASK (Amplitude Modulation)
- Encoder types: fixed code
- Dòng tiêu thụ ở trạng thái không hoạt động: 4.5mA.
- Nhiệt độ hoạt động: – 10 ~ 70oC.
Mạch thu không gắn chip giao tiếp Arduino
- Model: MX-05V.
- Điện áp hoạt động: 5VDC.
- Quiescent Current: 4mA.
- Tần số nhận: 315Mhz.
- Receiving sensitivity: – 105dB.
- Kích thước: 30 * 14 * 7mm.
- Anten cần lắp thêm: dài 32cm đơn lõi, có thể cuộn tròn.
Mạch phát không gắn chip
- Model: MX-FS-03V.
- Khoảng cách truyền: 20200m(điện áp cấp càng cao, truyền càng xa).
- Điện áp cấp: 3.5-12VDC.
- Kích thước: 19*19mm.
- Tốc độ truyền: 4Kb/s.
- Công suất truyền: 10mW.
- Tần số truyền: 315Mhz.
- Anten cần gắn thêm: dài 25cm đơn lõi có thể cuộn tròn.
- Thứ tự chân: DATA, VCC, GND.
c. Chức năng các chân thu phát RF315 4 Kênh
- Dữ liệu vào DATA
- Nguồn Cung Cấp Vcc
- GND
d. Lưu ý khi dùng
Khoảng cách không có Anten là 20Cm. Nếu bạn cần khoảng cách xa, bạn phải thêm Anten = 1/4 bước sóng. Sử dụng chiều dài Anten cho 315Mhz là 23Cm, Cho 433Mhz là 17Cm. Điện trở nội của dây là 50R ( Ôm).
1.3 Relay kích thiết bị 220v cho mạch thu, phát RF315 4 Kênh giao tiếp Arduino
a. Giới thiệu
Rơ le (relay) là một công tắc chuyển đổi, dùng để đóng cắt mạch điều khiển, nó hoạt động bằng điện. Nó là một công tắc vì có 2 trạng thái ON và OFF. Rơ le ở trạng thái ON hay OFF phụ thuộc vào có dòng điện chạy qua rơ le hay không.

b. Thông số kỹ thuật
- Điện áp điều khiển: 5V
- Dòng điện cực đại: 10A
- Thời gian tác động: 10ms
- Thời gian nhả hãm: 5ms
- Nhiệt độ hoạt động: -45oC ~ 75oC
2. Hướng dẫn đồ án thu, phát RF315 4 Kênh giao tiếp Arduino bật tắt thiết bị 220V qua relay
Phần này chưa được chia sẻ.
LIÊN HỆ thông tin ở TẠI ĐÂY để được hổ trợ tốt hơn.
Phần cứng

Phần mềm
Thư viện rm4.h tài tại đây: https://github.com/msparks/arduino-rm4
#include <rm4.h>
static const int kEnablePin = 13;
// Arduino pins connected to the data pins on the receiver.
static const int kData0Pin = 9;
static const int kData1Pin = 10;
static const int kData2Pin = 11;
static const int kData3Pin = 12;
const int relay1 = 14; // the number of the relay1 pin
const int relay2 = 15; // the number of the relay1 pin
const int relay3 = 16; // the number of the relay1 pin
const int relay4 = 17; // the number of the relay1 pin
// Create an RM4 object to read the button codes from the remote.
RM4 remote(kData0Pin, kData1Pin, kData2Pin, kData3Pin);
void setup() {
// Initialize the serial interface.
Serial.begin(9600);
// Turn on the receiver.
pinMode(kEnablePin, OUTPUT);
digitalWrite(kEnablePin, HIGH);
pinMode(relay1, OUTPUT);
pinMode(relay2, OUTPUT);
pinMode(relay3, OUTPUT);
pinMode(relay4, OUTPUT);
}
void loop() {
// Print the button code to the serial interface every 100 ms.
const int button_code = remote.buttonCode();
if (button_code == 8) { // pin 2 is pressed and connected to GND so it will be LOW
digitalWrite(relay1, LOW); // remove 5v from pin 11 so relay in1 will be 0v and this make relay on
delay (2000); // wait 1 second
} else {
digitalWrite(relay1, HIGH); // add 5v to arduino pin 11 so relay in1 will be 5v and this make relay off
}
if (button_code == 2) { // pin 2 is pressed and connected to GND so it will be LOW
digitalWrite(relay2, LOW); // remove 5v from pin 11 so relay in1 will be 0v and this make relay on
delay (2000); // wait 1 second
} else {
digitalWrite(relay2, HIGH); // add 5v to arduino pin 11 so relay in1 will be 5v and this make relay off
}
if (button_code == 1) { // pin 2 is pressed and connected to GND so it will be LOW
digitalWrite(relay3, LOW); // remove 5v from pin 11 so relay in1 will be 0v and this make relay on
delay (2000); // wait 1 second
} else {
digitalWrite(relay3, HIGH); // add 5v to arduino pin 11 so relay in1 will be 5v and this make relay off
}
if (button_code == 4) { // pin 2 is pressed and connected to GND so it will be LOW
digitalWrite(relay4, LOW); // remove 5v from pin 11 so relay in1 will be 0v and this make relay on
delay (2000); // wait 1 second
} else {
digitalWrite(relay4, HIGH); // add 5v to arduino pin 11 so relay in1 will be 5v and this make relay off
}
// Serial.println(button_code);
// delay(100);
}3. Hoạt động của mạch điều khiển thiết bị bằng thu, phát RF315 4 Kênh
Khi cấp điện hệ thống hoạt động, các thiết bị ban đầu tắt, vi điều khiển chờ tín hiệu từ bộ thu, phát RF315 4 Kênh giao tiếp Arduino được phát bởi remote rf315 4 kênh gửi vào. Khi nhận được tín hiệu vi điều khiển vi điều khiển xử lý kích hoạt hệ thống theo yêu cầu thiết bị bật tắt theo từng kênh đã được lập trình.
4. Cụ thể hoạt động của mạch điều khiển thiết bị bằng thu, phát RF315 4 Kênh giao tiếp Arduino
Chúc các bạn thành công…!!!

