. Max485 Modül, Raspberry Pi'nin Rs485 protokolüendüstriyel otomasyon, modbus iletişimi ve uzun mesafeli seri veri iletimi için yaygın olarak kullanılan. Bu kılavuz size nasıl bağlanacağınızı, yapılandıracağınızı ve kullanacağınızı gösterecektir. Raspberry Pi ile Max485 RS485 Modülü Python kullanma.
Ne İhtiyacınız Olacak
- Ahududu pi (GPIO destekli herhangi bir model, örneğin Pi 3, Pi 4)
- MAX485 RS485 Modülü
- Rs485 cihazı (örn. Modbus sensörü, endüstriyel denetleyici)
- Jumper telleri
- Python yüklü Raspberry Pi'de
1. Adım: Max485 modülünü anlamak
. Max485 bir TTL-TO-RS485 Alıcı Bu, Raspberry Pi'nin Rs485 sinyalleri göndermesini ve almasını sağlar.
Temel Özellikler:
- Yarı dubleks RS485 iletişimini destekler
- Üzerinde çalışır 5V Güç (Raspberry Pi'de 3.3V mantığı ile uyumlu)
- Kullanma TX, RX, DE ve RE iletişim kontrolü için pimler
Adım 2: Max485'i Raspberry Pi'ye bağlama
Max485 pimi | Raspberry Pi Pimi | İşlev |
---|---|---|
VCC | 5V (pim 2) | Güç kaynağı |
Gnd | GND (pim 6) | Zemin |
Ro | GPIO15 (pim 10) | RS485 Veri Alım (RX) |
Di | GPIO14 (pim 8) | RS485 Veri İletimi (TX) |
TEKRAR | GPIO18 (pim 12) | Enable al (alacak düşük) |
DE | GPIO18 (pim 12) | Sürücü etkinleştirme (göndermek için yüksek) |
A | Rs485 bir çizgi | Rs485 cihazına bağlanın |
B | Rs485 B hattı | Rs485 cihazına bağlanın |
Not: . TEKRAR Ve DE Pimler birlikte kontrol edilir GPIO18, iletimi etkinleştirme veya devre dışı bırakma.
Adım 3: Raspberry Pi'de UART'ı etkinleştirin
-
Raspberry Pi yapılandırma aracını açın:
sudo raspi-config
-
Gezmek Arayüz Seçenekleri> Seri bağlantı noktası.
-
Seri konsolu devre dışı bırak ancak Seri Donanımı Etkinleştir.
-
Raspberry Pi'yi yeniden başlatın:
sudo reboot
-
Doğrula Seri cihaz mevcuttur:
ls /dev/serial*
Görmelisin
/dev/serial0
.
4. Adım: Gerekli Python kütüphanelerini kurun
- Raspberry Pi'nizi güncelleyin:
sudo apt update && sudo apt upgrade -y
- Python Seri İletişim Kütüphanesi'ni yükleyin:
pip3 install pyserial
Adım 5: Rs485 üzerinden iletişim kurmak için Python kodu
Rs485 üzerinden veri göndermek ve almak için temel Python kodu
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()
Adım 6: Rs485'in Raspberry Pi ile iletişim uygulamaları
- Endüstriyel otomasyon - Modbus RTU kullanarak PLC'ler, sensörler ve denetleyicilerle iletişim kurun.
- Uzun mesafeli iletişim - Rs485 destekler uzun menzilli veri iletimi 1200 metreye kadar.
- Çok Avantı Ağları - Aynı RS485 veri yoluna birden çok cihaz bağlayın.
- Akıllı Enerji Sayaçları -Modbus uyumlu enerji sayaçlarını okuyun.
- IoT ve Veri Günlüğü - Sensör verilerini toplayın ve bulut sunucularına iletin.
Sorun giderme
-
İletişim yok
- Kablo bağlantılarını kontrol edin, sağlayarak A ve B çizgileri doğru bağlanır.
- Doğrula Uart etkinleştirildi kullanma
sudo raspi-config
. - Sağlamak RS485 cihazı aynı baud hızını kullanır Python'da ayarlandığı gibi.
-
İzin reddedildi
- Kullanıcıyı ekleyin
dialout
Seri bağlantı noktası erişimi için grup:sudo usermod -aG dialout $USER sudo reboot
- Kullanıcıyı ekleyin
-
Alınan verilerde çöp karakterleri
- Her iki cihazın da kullanmasını sağlayın Aynı baud hızı ve seri ayarlar.
- Kelinmek korumalı kablolar daha uzun mesafeler için gereklidir.
Çözüm
. MAX485 Modülü Raspberry Pi'nin iletişim kurmasını sağlar Rs485, için ideal Endüstriyel otomasyon, modbus cihazları ve uzun mesafeli seri veri iletimi. Bu kılavuzu izleyerek kurabilirsiniz Raspberry Pi ve Rs485 cihazları arasındaki çift yönlü iletişim IoT ve gömülü sistem projeleri için. 🚀