Gamit ang module ng MAX485 RS485 kasama ang Raspberry Pi

Using the MAX485 RS485 Module with the Raspberry Pi

Ang MAX485 Pinapayagan ng module ang Raspberry Pi na makipag -usap gamit ang RS485 Protocol, na kung saan ay malawakang ginagamit para sa pang-industriya na automation, komunikasyon ng modbus, at paghahatid ng serial data ng distansya. Ang gabay na ito ay magpapakita sa iyo kung paano kumonekta, i -configure, at gamitin ang Max485 RS485 module na may Raspberry Pi Gamit ang Python.


Ano ang kakailanganin mo

  1. Raspberry Pi (Anumang modelo na may suporta sa GPIO, hal., PI 3, PI 4)
  2. Max485 RS485 Module
  3. RS485 aparato (hal., Modbus sensor, pang -industriya controller)
  4. Jumper wires
  5. Naka -install ang Python Sa Raspberry Pi

Hakbang 1: Pag -unawa sa module ng MAX485

Ang MAX485 ay a TTL-to-RS485 Transceiver Pinapayagan nito ang Raspberry Pi na magpadala at makatanggap ng mga signal ng RS485.

Mga pangunahing tampok:

  • Sinusuportahan ang half-duplex RS485 komunikasyon
  • Nagpapatakbo sa 5v kapangyarihan (katugma sa 3.3V logic sa Raspberry Pi)
  • Gamit TX, RX, DE, at RE Mga pin para sa kontrol sa komunikasyon

Hakbang 2: Ang mga kable ng MAX485 sa Raspberry Pi

MAX485 PIN Raspberry Pi Pin Function
VCC 5v (pin 2) Power Supply
Gnd GND (pin 6) Lupa
Ro GPIO15 (pin 10) RS485 Data Tumanggap (RX)
Di GPIO14 (pin 8) RS485 Data Transmit (TX)
Re Gpio18 (pin 12) Makatanggap Paganahin (Mababang Tanggap)
De Gpio18 (pin 12) Paganahin ang driver (Mataas na Magpadala)
A RS485 Isang linya Kumonekta sa aparato ng RS485
B RS485 B LINE Kumonekta sa aparato ng RS485

Tandaan: Ang Re at De Ang mga pin ay kinokontrol nang magkasama GPIO18, pagpapagana o hindi pagpapagana ng paghahatid.


Hakbang 3: Paganahin ang UART sa Raspberry Pi

  1. Buksan ang tool ng pagsasaayos ng Raspberry Pi:

    sudo raspi-config
    
  2. Mag -navigate sa Mga pagpipilian sa interface> serial port.

  3. Huwag paganahin ang serial console ngunit Paganahin ang serial hardware.

  4. I -reboot ang Raspberry Pi:

    sudo reboot
    
  5. I -verify na ang Magagamit ang serial device:

    ls /dev/serial*
    

    Dapat mong makita /dev/serial0.


Hakbang 4: I -install ang mga kinakailangang aklatan ng python

  1. I -update ang iyong Raspberry Pi:
    sudo apt update && sudo apt upgrade -y
    
  2. I -install ang Python Serial Communication Library:
    pip3 install pyserial
    

Hakbang 5: Python code upang makipag -usap sa pamamagitan ng RS485

Pangunahing Python Code Upang Magpadala at Tumanggap ng Data sa pamamagitan ng 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()

Hakbang 6: Mga Aplikasyon ng Rs485 Komunikasyon sa Raspberry Pi

  1. Pang -industriya na Pag -aautomat - Makipag -usap sa mga PLC, sensor, at mga magsusupil gamit ang ModBus RTU.
  2. Long-distansya na komunikasyon - Sinusuportahan ng RS485 Long-range na paghahatid ng data Hanggang sa 1200 metro.
  3. Mga network ng multi-aparato - Ikonekta ang maraming mga aparato sa parehong bus ng RS485.
  4. Smart Meters ng Enerhiya -Basahin ang mga metro na katugmang enerhiya na katugmang.
  5. IoT at data logging - Kolektahin ang data ng sensor at ipadala ito sa mga server ng ulap.

Pag -aayos

  1. Walang komunikasyon

    • Suriin ang mga koneksyon sa mga kable, tinitiyak Mga linya ng A at B. ay tama na konektado.
    • I -verify na Pinagana ang uart Paggamit sudo raspi-config.
    • Tiyakin ang Ang aparato ng RS485 ay gumagamit ng parehong rate ng baud tulad ng nakatakda sa Python.
  2. Ang pahintulot ay tinanggihan ang error

    • Idagdag ang gumagamit sa dialout Pangkat para sa Serial Port Access:
      sudo usermod -aG dialout $USER
      sudo reboot
      
  3. Mga character na basura sa natanggap na data

    • Tiyakin ang parehong aparato na ginagamit ang parehong rate ng baud at serial setting.
    • Suriin kung Shielded Cable ay kinakailangan para sa mas mahabang distansya.

Konklusyon

Ang Module ng MAX485 Pinapagana ang Raspberry Pi na makipag -usap sa ibabaw RS485, ginagawang perpekto para sa Pang-industriya Automation, Modbus Device, at Long-distance Serial Data Transmission. Sa pamamagitan ng pagsunod sa gabay na ito, maaari mong maitaguyod Komunikasyon ng Bidirectional sa pagitan ng mga aparato ng Raspberry Pi at Rs485 para sa mga proyekto ng IoT at naka -embed na system. 🚀

Mag -iwan ng komento

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.