RS422/RS485 Shield¶
RS422/RS485 Shield antaa OpenMV Camille pitkän matkan differentiaalisen sarjayhteyden, joka soveltuu teollisuusväyliin, ja siinä on laaja tulojännitealue, ylijännitesuojaus sekä ADC-/digitaalinen I/O.
Täydellinen datalehti, kuvat ja tilaustiedot löytyvät RS422/RS485 Shield -tuotesivulta.
Kohokohdat¶
10 Mb/s RS-422 tai RS-485 sisäänrakennetulla päätevastuksella
6–36 V tulo, käänteisjännitesietoinen
0–5 V ADC-tulo ±36 V ylijännitesuojauksella
0–5 V digitaalinen I/O kameran synkronointiliipaisimiin, oikosulkusuojattu
Nastajärjestys¶
Nastaviite¶
Nasta |
Toiminto |
|---|---|
P4 |
RS-422 / RS-485 TX → ohjaa differentiaalilinjan ulos |
P5 |
RS-422 / RS-485 RX ← vastaanottaa differentiaalilinjan sisään |
P6 |
Tasonsiirretty AIN-takaisinluku (0–3,3 V P6:ssa) |
P10 |
SYN — avo-nielu (open-drain) digitaalinen I/O riviliittimessä |
PWR sisään |
6–36 V laaja tulo riviliittimessä (käänteisjännitesietoinen) |
AIN sisään |
Analoginen tulo riviliittimessä |
VIN ulos |
5,4 V jopa 600 mA sisäänrakennetusta säätimestä |
3,3 V kisko |
Syöttää virtaa shieldin sisäänrakennetulle elektroniikalle |
GND-kisko |
Yhteinen maa |
Muista
AIN on ylijännitesuojattu ±36 V:iin asti ja on oletuksena 0–5 V jännitetulo, joka skaalataan alas 0–3,3 V:iin P6:ssa. Silloita shieldin etupuolella oleva 4–20 mA -tilan shuntti vaihtaaksesi AIN:n 4–20 mA virtasilmukkatuloon.
Muista
SYN on avo-nielu digitaalinen linja, ylösvedetty 3,3 V:iin kameran puolella ja 5 V:iin SYN-riviliittimen puolella. Oletuksena se on tulo — shield siirtää SYN:n 0–5 V tason alas 0–3,3 V:iin P10:ssa. Vaihda sisäänrakennettu juotossilta kääntääksesi P10:n lähdöksi, jolloin P10:n 0–3,3 V siirretään ylös 0–5 V:iin SYN:ssä.
Muista
Kukin nastoista P4, P5, P6 ja P10 on oletuksena kytketty kameraan juotossillan kautta — avaa silta siltä nastalta, jonka haluat ottaa muuhun käyttöön. P6:n silta on shieldin takapuolella; P4, P5 ja P10 ovat etupuolella.
Muista
Sisäänrakennetut päätevastukset on oletuksena kytketty — avaa vastaavat takapuolen juotossillat kytkeäksesi ne irti. Kaksi kattaa RS-422 A/B -parin ja kaksi kattaa RS-422 Y/Z -parin (joka toimii myös RS-485 A/B -päätevastuksena), yhteensä neljä siltaa.
Tietoa RS-422:sta ja RS-485:stä
Molemmat standardit lähettävät sarjadataa tasapainotettuna (differentiaalisena) signaalina kierretyissä pareissa pitkän matkan, häiriönsietoisten yhteyksien aikaansaamiseksi:
RS-422 on full-duplex neljällä johtimella. Lähetin lähettää erillisessä TX-parissa nimeltä Y/Z, ja vastapuoli lähettää takaisin erillisessä RX-parissa nimeltä A/B. Yksi lähetin ja jopa kymmenen vastaanotinta paria kohti.
RS-485 on tyypillisesti half-duplex kahdella johtimella. Lähetys ja vastaanotto jakavat yhden parin, jota kutsutaan RS-485-terminologiassa nimellä A/B, mutta fyysisesti samat Y/Z-linjat tällä shieldillä. Jopa kolmekymmentäkaksi solmua voi jakaa väylän, ja mikä tahansa niistä voi ohjata sitä.
Kuinka shield tukee molempia
Shieldissä on kaksi THVD1426-lähetinvastaanotinta, joista kumpikin pystyy käsittelemään kumpaa tahansa standardia:
Ensimmäinen lähetinvastaanotin ohjaa Y/Z-paria (joka toimii myös RS-485 A/B -parina). Se on ainoa, jonka lähetin on kytketty, joten kaikki kameran lähtevä liikenne kulkee tämän parin kautta tilasta riippumatta.
Toinen lähetinvastaanotin ohjaa A/B-paria. Sen lähetin on kytketty pois — tämä lähetinvastaanotin on vain vastaanottava ja sillä on merkitystä vain 4-johtimisessa RS-422-tilassa.
Molempien lähetinvastaanottimien vastaanottimet ovat aina käytössä, ja niiden RX-lähdöt AND-yhdistetään yhdeksi vastaanottolinjaksi takaisin kameralle:
2-johtimisessa RS-485-tilassa vain ensimmäinen lähetinvastaanotin on aktiivinen. Johdota väylä Y/Z:aan; A/B-puoli on lepotilassa ja AND-portti vain päästää ensimmäisen lähetinvastaanottimen RX:n läpi.
4-johtimisessa RS-422-tilassa vastapuoli lähettää kameralle A/B-parissa (jonka toinen lähetinvastaanotin poimii), kun kamera lähettää Y/Z:ssa (ja ensimmäisen lähetinvastaanottimen oma vastaanotin kaiuttaa lähtevän datansa takaisin). AND-portti yhdistää ne — kumpi tahansa pari, joka näkee matalan pulssin (aloitusbitti, data), tavoittaa kameran.
Riviliittimen merkinnät heijastavat kaksoiskartoitusta:
RS-422 (4-johtiminen) — TX ulos Y/Z:ssa, RX sisään A/B:ssä.
RS-485 (2-johtiminen) — TX/RX jakavat Y/Z-parin (= A/B RS-485-nimistössä). Jätä shieldin A/B-riviliittimet kytkemättä.
Käyttö¶
Muista
Alla oleva UART(3) -oheislaitenumero noudattaa STM32-kartoitusta. Toisessa prosessorissa näihin nastoihin johdotettu väylä voi olla eri — tarkista korttisi viitetiedot.
Kommunikoi differentiaalisen sarjavastapuolen kanssa nastoissa P4 (TX) / P5 (RX):
from machine import UART
uart = UART(3, baudrate=115200)
uart.write("hello\n")
print(uart.read())
Lue AIN-riviliittimen tulo tasonsiirretyn P6-nastan kautta:
from machine import ADC
import time
ain = ADC("P6")
while True:
v = ain.read_u16() * 3.3 / 65535
print("AIN:", v * (5.0 / 3.3), "V")
time.sleep_ms(100)
Reagoi SYN-linjan laskevaan reunaan — esimerkiksi synkronoidaksesi kameran toisen laitteen kanssa, joka vetää SYN:n alas:
from machine import Pin
def on_sync(pin):
print("SYN falling edge")
syn = Pin("P10", Pin.IN)
syn.irq(on_sync, Pin.IRQ_FALLING)