Menggunakan Modul Max485 RS485 dengan Raspberry Pi

Using the MAX485 RS485 Module with the Raspberry Pi

Itu Max485 modul memungkinkan raspberry pi berkomunikasi menggunakan Protokol RS485, yang banyak digunakan untuk otomatisasi industri, komunikasi Modbus, dan transmisi data serial jarak jauh. Panduan ini akan menunjukkan kepada Anda cara menghubungkan, mengkonfigurasi, dan menggunakan Modul MAX485 RS485 dengan Raspberry Pi Menggunakan Python.


Apa yang Anda Butuhkan

  1. Raspberry Pi (Model apa pun dengan dukungan GPIO, mis., Pi 3, pi 4)
  2. Modul MAX485 RS485
  3. Perangkat RS485 (mis., Sensor Modbus, Pengontrol Industri)
  4. Kabel jumper
  5. Python terpasang di raspberry pi

Langkah 1: Memahami Modul Max485

Itu Max485 adalah a Transceiver TTL-TO-RS485 Itu memungkinkan Raspberry Pi untuk mengirim dan menerima sinyal RS485.

Fitur Utama:

  • Mendukung komunikasi setengah dupleks RS485
  • Beroperasi di Kekuatan 5V (Kompatibel dengan logika 3.3V pada Raspberry Pi)
  • Penggunaan Tx, rx, de, dan re Pin untuk Kontrol Komunikasi

Langkah 2: Kabel Max485 ke Raspberry Pi

Pin max485 Raspberry Pi Pin Fungsi
Vcc 5V (pin 2) Catu daya
Gnd GND (pin 6) Tanah
Ro Gpio15 (pin 10) Data RS485 menerima (RX)
Di Gpio14 (pin 8) RS485 Data Transmit (TX)
ULANG Gpio18 (pin 12) Menerima aktifkan (rendah untuk menerima)
De Gpio18 (pin 12) Pengemudi aktif (tinggi untuk dikirim)
A RS485 A Line Hubungkan ke perangkat RS485
B RS485 B Line Hubungkan ke perangkat RS485

Catatan: Itu ULANG Dan De Pin dikendalikan bersama oleh GPIO18, mengaktifkan atau menonaktifkan transmisi.


Langkah 3: Aktifkan UART di Raspberry Pi

  1. Buka alat konfigurasi Raspberry Pi:

    sudo raspi-config
    
  2. Navigasikan ke Opsi Antarmuka> Port Serial.

  3. Nonaktifkan konsol serial tapi Aktifkan perangkat keras serial.

  4. Reboot Raspberry Pi:

    sudo reboot
    
  5. Pastikan itu perangkat serial tersedia:

    ls /dev/serial*
    

    Anda harus melihat /dev/serial0.


Langkah 4: Instal perpustakaan python yang diperlukan

  1. Perbarui Raspberry Pi Anda:
    sudo apt update && sudo apt upgrade -y
    
  2. Instal Perpustakaan Komunikasi Serial Python:
    pip3 install pyserial
    

Langkah 5: Kode Python untuk berkomunikasi melalui RS485

Kode Python dasar untuk mengirim dan menerima data melalui RS485

import serial
import RPi.GPIO as GPIO
import time

# Define GPIO pin for RE/DE control
RS485_CONTROL = 18  

# Set up GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(RS485_CONTROL, GPIO.OUT)

# Configure the serial connection
ser = serial.Serial(
    port='/dev/serial0',  # Raspberry Pi UART port
    baudrate=9600,        # Set baud rate to match RS485 device
    timeout=1
)

def send_data(data):
    GPIO.output(RS485_CONTROL, GPIO.HIGH)  # Enable transmission
    time.sleep(0.01)  # Small delay before sending
    ser.write(data.encode())  # Send data as bytes
    time.sleep(0.01)  # Small delay to ensure data is sent
    GPIO.output(RS485_CONTROL, GPIO.LOW)  # Enable receiving

def receive_data():
    GPIO.output(RS485_CONTROL, GPIO.LOW)  # Enable reception
    data = ser.readline().decode('utf-8').strip()
    return data

try:
    while True:
        send_data("Hello RS485 Device!\n")
        print("Data sent!")

        # Wait for a response
        response = receive_data()
        if response:
            print(f"Received: {response}")

        time.sleep(2)
except KeyboardInterrupt:
    print("Exiting...")
finally:
    ser.close()
    GPIO.cleanup()

Langkah 6: Aplikasi Komunikasi RS485 dengan Raspberry Pi

  1. Otomatisasi Industri - Berkomunikasi dengan PLC, sensor, dan pengontrol menggunakan Modbus RTU.
  2. Komunikasi jarak jauh - Dukungan RS485 Transmisi data jarak jauh hingga 1.200 meter.
  3. Jaringan multi-perangkat - Hubungkan beberapa perangkat di bus RS485 yang sama.
  4. Meter Energi Cerdas -Baca meter energi yang kompatibel dengan Modbus.
  5. IoT dan Data Logging - Kumpulkan data sensor dan kirimkan ke server cloud.

Pemecahan masalah

  1. Tidak ada komunikasi

    • Periksa koneksi kabel, memastikan Garis A dan B terhubung dengan benar.
    • Pastikan itu UART diaktifkan menggunakan sudo raspi-config.
    • Pastikan Perangkat RS485 menggunakan baud rate yang sama seperti yang ditetapkan dalam Python.
  2. Izin ditolak kesalahan

    • Tambahkan pengguna ke dialout Grup untuk akses port serial:
      sudo usermod -aG dialout $USER
      sudo reboot
      
  3. Karakter sampah dalam data yang diterima

    • Pastikan kedua perangkat digunakan Tingkat baud dan pengaturan serial yang sama.
    • Periksa apakah kabel yang terlindung diperlukan untuk jarak yang lebih jauh.

Kesimpulan

Itu Modul max485 memungkinkan raspberry pi berkomunikasi RS485, membuatnya ideal untuk Otomatisasi Industri, Perangkat Modbus, dan Transmisi Data Serial Jangka Panjang. Dengan mengikuti panduan ini, Anda dapat membangun Komunikasi dua arah antara perangkat Raspberry PI dan RS485 untuk proyek sistem IoT dan tertanam. 🚀

Tinggalkan komentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.