RS-485 je ekonomické řešení pro sítě sériové komunikace. Lze jej použít s datovými rychlostmi 10 Mbit / s nebo na vzdálenosti až 1200 m při nižších rychlostech. RS-485 Shield je standardní štít pro Raspberry Pi. Je integrován s jednoduchým šroubovým terminálem a rozhraním DB9.
kup nyní |
Vlastnosti
- Jeden ovladač a jeden přijímač na část
- Minimalizace hluku EMI
- Přenosová rychlost až 2,5 Mb / s
- Žádné omezení rychlosti rampy řadiče
- Omezený zkratový proud
- Bezpečné aplikace
Specifikace
| Vlastnosti | Hodnota |
|---|---|
| Pracovní napětí | 3,3 V |
| Rozhraní | RS-485 DB9 Interf ejs X1 RS-485 Šroubové rozhraní X1 2 × 13 female konektor pro Raspberry X1 2 × 13 Dodatečná zásuvka X1 Interf ejs Grove I2C X1 |
| Rychlost přenosu dat | 2,5 Mb / s |
| Počet přijímačů | 32 |
Teplotní rozsah úložný prostor | od -65 ° C do 160 |
| Počet kanálů | 8 |
| Řešení | 12-bit |
| Spotřeba energie | Liší se v závislosti na přenosové rychlosti |
| Rozměry | 62 x 39,2 x 21,8 mm |
| Hmotnost | 23 g |
| Velikost balení | 140 x 75 x 25 mm |
| Celková hmotnost | 42 g |
typické aplikace
- Transceivery RS-485 s nízkou spotřebou energie
- Převaděče úrovní
- Vysílače a přijímače pro průmyslové aplikace v sítích citlivých na elektromagnetické rušení
- Poloduplexní aplikace
Přehled hardwaru
Distribuce vedení

Rozhraní RS-485 DB9 a RS-485 Šroubové rozhraní

Rozhraní 485 používá diferenciální přenos signálu. Zkontrolujte, zda je port A připojen k portu A zařízení 485 a port B k portu B zařízení 485.
485-A: Konec A datového kabelu RS485, připojení ke kolíku A čipu MAX485.
485-B: Kabelový konec B pro přenos dat RS485, připojení k kolíku B.
GND: Připojte se k GND Raspberry Pi.

Jak vidíte, pro přenos dat se používají GPIO14 a GPIO15 a jako aktivační signál se používá GPIO18.
Definici logických signálů naleznete v tabulce níže.
Zásuvka pro Raspberry

K připojení tohoto modulu k Raspberry Pi používáme 2X13 female konektor. Ujistěte se, že jsou kolíky zarovnané.
Extra zásuvka
Štít RS-485 má 26 pinů Raspberry Pi a ve skutečnosti se používá pouze 5 pinů GPIO. Těchto 26 kolíků odvozujeme, pokud je potřebujete pro jiné účely.
Seznam použitých GPIO
| Číslo GPIO | Funkce |
|---|---|
| GPIO02 | SDA pro port Grove I2C. |
| GPIO03 | SCL pro port Grove I2C. |
| GPIO14 | Připojte k DI pinu čipu Max485 pro přenos dat. |
| GPIO15 | Připojte k RO pinu čipu Max485 pro přenos dat. |
| GPIO18 | Připojte se k pinům RE a DE čipu Max485, funguje to jako signál povolení. |
Port Grove I2C
Vyhrazili jsme si rozhraní I2C, aby ho bylo možné snadno použít se zařízeními I2C. Všimněte si, že VCC tohoto portu je 5V. Zkontrolujte, zda modul pracuje s 5V.
SCL: Sériové hodiny I2C, připojení k GPIO03 Raspberry Pi.
SDA: Sériová data I2C, připojte se k GPIO02 na Raspberry Pi.
VCC: Připojte se k 5V pinu Raspberry Pi.
GND: Připojte ke kolíku GND Raspberry Pi.
Čip Max 485
Pro tento štít byl použit integrovaný obvod MAX485ESA. Další informace o tomto integrovanémobvodu najdete v datovém listu MAX485 .
Jak začít
Zařízení
Potřebné materiály
| Raspberry Pi | Štít RS-485 pro Raspberry Pi |
|---|---|
![]() | ![]() |
Krok 1. Připojte štít RS-485 k Raspberry Pi.
Krok 2. Připojte 485-A k vodiči A 485, připojte 485-B k vodiči B 485.
Pozor Pokud je kabel zaneprázdněn, nebude komunikace možná. |
- Krok 3. Připojte napájení k Raspberry Pi pomocí kabelu microUSB.
Software
Komunikační testovací kód
Můžete vytvořit nový soubor pythonu a zkopírovat následující kód do nového souboru, nebo si můžete stáhnout zdrojový soubor v oblasti stahování prostředků. Poté jej spusťte ve svém terminálu.
Poslat kód.
#! / usr / bin / env python
čas importu
importovat sériové číslo
import os
send_str = "******* rs485888888 - rn"
os.system ("echo 18> / sys / class / gpio / export")
os.system ("echo out> / sys / class / gpio / gpio18 / direction")
ser = serial.Serial (port = '/ dev / ttyAMA0', přenosová rychlost = 10 000 000, velikost bytu = 8, stopbity = 1, časový limit = 1)
last_time = time.time ()
now_time = time.time ()
os.system ("echo 1> / sys / class / gpio / gpio18 / value")
time.sleep (0,01)
n = 800
zatímco n> 0:
ser.write (send_str)
n = n-1
# time.sleep (0,001)
os.system ("echo 0> / sys / class / gpio / gpio18 / value")
Přijímací kód
#! / usr / bin / env python
čas importu
importovat sériové číslo
import os
send_str = "******** abcdefghijklmnopqrstuvwxyz &"
os.system ("echo 18> / sys / class / gpio / export")
os.system ("echo out> / sys / class / gpio / gpio18 / direction")
ser = serial.Serial (port = '/ dev / ttyAMA0', přenosová rychlost = 115200, velikost bytu = 8, stopbits = 1, časový limit = 1)
last_time = time.time ()
zatímco 1:
now_time = time.time ()
if ((now_time-last_time)> = 1):
last_time = now_time
# tisk „172 odesílání“
os.system ("echo 1> / sys / class / gpio / gpio18 / value")
time.sleep (0,01)
ser.write (send_str)
time.sleep (0,01)
os.system ("echo 0> / sys / class / gpio / gpio18 / value")
os.system ("echo 0> / sys / class / gpio / gpio18 / value")
time.sleep (0,01)
count = ser.inWaiting ()
if (count! = 0):
x = ser.readline ()
pokud „********“ v x:
# print "délka str je:" + str (počet)
tisk x
K otestování výše uvedeného kódu potřebujete dvě čepice a dvě Raspberry Pi, nebo můžete ke komunikaci s Raspberry Pi použít sériový nástroj v počítači.
Odkazy
[Zip] Testovací kód Pythonu
[PDF] Formát Wiki PDF






