Arduino UNO R4 RS422

Trong hướng dẫn này, chúng tôi sẽ giải thích cách thiết lập giao tiếp RS422 bằng Arduino UNO R4. Chúng tôi sẽ đề cập chi tiết các bước sau:

Hướng dẫn này đưa ra hướng dẫn sử dụng cả Hardware SerialSoftwareSerial.

Arduino UNO R4 rs-422

Phần Cứng Cần Thiết

1×Arduino UNO R4 WiFi hoặc Arduino UNO R4 Minima
1×(Tùy chọn) DIYables STEM V4 IoT, tương thích với Arduino Uno R4 WiFi
1×Arduino UNO R4 Minima (Thay thế)
1×Cáp USB Type-C
1×Module TTL to RS422
1×Dây nối Jumper
1×(Tùy chọn) Cáp RS422 to USB
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino UNO R4
1×(Khuyến nghị) Breadboard Shield for Arduino UNO R4
1×(Khuyến nghị) Enclosure for Arduino UNO R4
1×(Khuyến nghị) Power Splitter for Arduino UNO R4
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

1×DIYables STEM V4 IoT Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về Module TTL to RS422

Khi sử dụng giao tiếp serial trên Arduino UNO R4 với các hàm như Serial.print(), Serial.read(), và Serial.write(), Arduino UNO R4 gửi dữ liệu sử dụng chân TX và nhận dữ liệu qua chân RX. Những chân này hoạt động ở mức TTL, có nghĩa là các tín hiệu chúng sử dụng có phạm vi ngắn. Vì vậy, để giao tiếp serial ở khoảng cách xa, bạn cần chuyển đổi tín hiệu TTL thành các tiêu chuẩn tín hiệu RS232, RS422, hoặc RS485.

Trong hướng dẫn này, chúng ta sẽ khám phá cách sử dụng RS422 với Arduino UNO R4 bằng cách sử dụng module TTL to RS422. Module này giúp chuyển đổi tín hiệu TTL thành tín hiệu RS422 và ngược lại.

Sơ Đồ Chân

Module RS422 to TTL có hai giao diện:

  • Giao diện TTL, mà bạn kết nối với Arduino UNO R4, có 4 chân cụ thể:
    • Chân VCC: Đây là chân nguồn mà bạn phải kết nối với VCC (5V hoặc 3.3V).
    • Chân GND: Một chân nguồn khác mà bạn nên kết nối với GND (0V).
    • Chân RXD: Đây là chân dữ liệu mà bạn nên kết nối với chân TX của Arduino UNO R4.
    • Chân TXD: Đây là chân dữ liệu mà bạn nên kết nối với chân RX của Arduino UNO R4.
  • Giao diện RS422 bao gồm các chân này:
    • Chân A (R+): Đây là chân RX+ của module. Kết nối nó với chân TX+ (T+ hoặc Y) của thiết bị RS422 khác.
    • Chân B (R-): Đây là chân RX- của module. Kết nối nó với chân TX- (T- hoặc Z) của thiết bị RS422 khác.
    • Chân Y (T+): Đây là chân TX+ của module. Kết nối nó với chân RX+ (R+ hoặc A) của thiết bị RS422 khác.
    • Chân Z (T-): Đây là chân TX- của module. Kết nối nó với chân RX- (R- hoặc B) của thiết bị RS422 khác.
    rs-422 module sơ đồ chân
    image source: diyables.io

Sơ Đồ Đấu Dây

  • Sơ đồ đấu dây để sử dụng hardware serial với RS422:
Arduino UNO R4 ttl to rs422 sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

  • Sơ đồ đấu dây để sử dụng software serial với RS422
Arduino UNO R4 rs-422 to ttl sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

Cách Lập Trình Arduino UNO R4 để Sử Dụng Module RS422

  • Thiết lập kết nối Serial:
Serial.begin(9600);
  • Để sử dụng Software Serial, bao gồm thư viện và tạo một đối tượng SoftwareSerial.
#include <SoftwareSerial.h> SoftwareSerial rs422(6, 7); // RX on Pin 6, TX on Pin 7

Code Arduino UNO R4 cho Hardware Serial

/* * Mã Arduino UNO R4 này được phát triển bởi newbiely.vn * Mã Arduino UNO R4 này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino-uno-r4/arduino-uno-r4-rs422 */ void setup() { // start communication with baud rate 9600 Serial.begin(9600); // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on Serial if (Serial.available()) { char data = Serial.read(); // read the received character Serial.print(data); // echo back to data to the sender } }

Code Arduino UNO R4 cho Software Serial

/* * Mã Arduino UNO R4 này được phát triển bởi newbiely.vn * Mã Arduino UNO R4 này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino-uno-r4/arduino-uno-r4-rs422 */ #include <SoftwareSerial.h> SoftwareSerial rs422(6, 7); // RX: 6, TX: 7 void setup() { // start communication with baud rate 9600 rs422.begin(9600); // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on rs422 if (rs422.available()) { char data = rs422.read(); // read the received character rs422.print(data); // echo back to data to the sender } }

Kiểm Tra

Thực hiện theo các hướng dẫn sau từng bước:

  • Nếu đây là lần đầu tiên bạn sử dụng Arduino Uno R4 WiFi/Minima, hãy tham khảo hướng dẫn về Arduino UNO R4 - Cài Đặt Phần Mềm.
  • Kết nối Arduino Uno R4 với module TTL-to-RS422 theo sơ đồ được cung cấp.
  • Kết nối Arduino Uno R4 với máy tính của bạn bằng cáp USB.
  • Khởi động Arduino IDE trên máy tính của bạn.
  • Chọn board Arduino Uno R4 phù hợp (ví dụ: Arduino Uno R4 WiFi) và cổng COM.
  • Sao chép code được cung cấp và dán vào Arduino IDE.
  • Nhấp vào nút Upload trong Arduino IDE để truyền code lên Arduino UNO R4.

Bạn có thể kiểm tra bằng cách gửi dữ liệu từ PC đến Arduino UNO R4 và ngược lại sử dụng RS-422. Dưới đây là các bước cần làm:

  • Kết nối Arduino UNO R4 của bạn với máy tính bằng cáp RS422-to-USB như hình dưới đây:
Arduino UNO R4 rs422 to pc communication
  • Tải xuống và cài đặt một chương trình Serial Terminal như Tera Term hoặc PuTTY.
  • Khởi động chương trình Serial Terminal và thiết lập các thông số Serial (cổng COM, baud rate, v.v.).
  • Nhập một số dữ liệu trong Serial Terminal để gửi đến Arduino UNO R4.
  • Nếu thiết lập đúng, bạn sẽ thấy dữ liệu bạn đã nhập được phản hồi lại trên màn hình Serial Terminal.

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.

Bài hướng dẫn liên quan