Se Max485 Moduulin avulla Raspberry Pi voi kommunikoida RS485 -protokolla, jota käytetään laajasti teollisuusautomaatioon, modbus-viestintään ja pitkän matkan sarjan tiedonsiirtoon. Tämä opas näyttää kuinka yhdistää, määrittää ja käyttää Max485 RS485 -moduuli Raspberry Pi: n kanssa Pythonin käyttäminen.
Mitä tarvitset
- Raspberry Pi (Mikä tahansa malli, jolla on GPIO -tuki, esim. Pi 3, pi 4)
- MAX485 RS485 -moduuli
- RS485 -laite (esim. Modbus -anturi, teollisuusohjain)
- Hyppyjohdot
- Python asennettu Raspberry Pi
Vaihe 1: MAX485 -moduulin ymmärtäminen
Se Max485 on a TTL-to-RS485 -lähetin-vastaanotin Se antaa Raspberry Pi: lle lähettää ja vastaanottaa RS485 -signaaleja.
Tärkeimmät ominaisuudet:
- Tukee puolialueista RS485-viestintää
- Toimia 5 V: n voima (Yhteensopiva Raspberry PI: n 3,3 V: n logiikan kanssa)
- Käyttötarkoitukset TX, RX, DE ja Re viestinnän hallintaa
Vaihe 2: Max485: n johdotus Raspberry Pi: hen
Max485 -nasta | Raspberry Pi -tappi | Funktio |
---|---|---|
VCC | 5v (nasta 2) | Virtalähde |
Hölynpöly | GND (nasta 6) | Pohja |
Rouva | GPIO15 (nasta 10) | RS485 Data Vastaanotto (RX) |
DI | GPIO14 (nasta 8) | RS485 -datan lähetys (TX) |
Keksin | GPIO18 (nasta 12) | Vastaanota Enable (matala vastaanottaa) |
De | GPIO18 (nasta 12) | Kuljettajan käyttöön (korkea lähettää) |
Eräs | Rs485 linja | Yhdistä RS485 -laitteeseen |
B - | RS485 B -linja | Yhdistä RS485 -laitteeseen |
Huomaa: Se Keksin ja De nastat ohjataan yhteen GPIO18, lähetyksen mahdollistaminen tai poistaminen käytöstä.
Vaihe 3: Ota UART käyttöön Raspberry Pi
-
Avaa Raspberry Pi -määritystyökalu:
sudo raspi-config
-
Siirtyä jhk Käyttöliittymävaihtoehdot> sarjaportti.
-
Poista sarjikonsoli käytöstä, mutta Ota sarjalaitteisto käyttöön.
-
Käynnistä Raspberry Pi uudelleen:
sudo reboot
-
Varmista, että Sarjalaite on saatavana:
ls /dev/serial*
Sinun pitäisi nähdä
/dev/serial0
.
Vaihe 4: Asenna vaadittavat Python -kirjastot
- Päivitä Raspberry Pi:
sudo apt update && sudo apt upgrade -y
- Asenna Python -sarjaviestinnän kirjasto:
pip3 install pyserial
Vaihe 5: Python -koodi kommunikoida RS485: n kautta
Python -peruskoodi lähettää ja vastaanottaa tietoja RS485: n kautta
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()
Vaihe 6: RS485 -kommunikaation sovellukset Raspberry Pi: n kanssa
- Teollisuusautomaatio - Kommunikoi PLC: n, anturien ja ohjaimien kanssa Modbus RTU: ta käyttämällä.
- Pitkän matkan viestintä - RS485 tukee pitkän kantaman tiedonsiirto jopa 1200 metriä.
- Monilaiteverkot - Kytke useita laitteita samassa RS485 -väylässä.
- Älykkäät energiamittarit -Lue Modbus-yhteensopivat energiamittarit.
- IoT ja tietojen kirjaaminen - Kerää anturitiedot ja lähetä ne pilvipalvelimille.
Vianetsintä
-
Ei viestintää
- Tarkista johdotusyhteydet, varmista A- ja B -linjat ovat oikein kytkettyjä.
- Varmistaa, että UART on käytössä käyttäminen
sudo raspi-config
. - Varmistaa RS485 -laite käyttää samaa baud -määrää kuten python.
-
Lupa kielsi virheen
- Lisää käyttäjä
dialout
Ryhmä sarjasatamaan:sudo usermod -aG dialout $USER sudo reboot
- Lisää käyttäjä
-
Roskien merkkejä vastaanotetuissa tiedoissa
- Varmista, että molemmat laitteet käyttävät samat baud -arvo- ja sarja -asetukset.
- Tarkista suojata kaapelit tarvitaan pidempiin matkoihin.
Johtopäätös
Se MAX485 -moduuli antaa Raspberry Pi: lle kommunikoida RS485, mikä tekee siitä ihanteellisen Teollisuusautomaatio, Modbus-laitteet ja pitkän matkan sarjatiedonsiirto. Seuraamalla tätä opasta voit perustaa Kaksisuuntainen viestintä Raspberry PI- ja RS485 -laitteiden välillä Internet- ja sulautettuihin järjestelmäprojekteihin. 🚀