Sida 1 av 3
RS485: Terminering etc
Postat: 13 januari 2014, 11:06:10
av Wedge
Jag har funderat på lite kabeldragning i huset för att skicka lite data kors och tvärs. Diverse givare, lampstyrning etc. Tanken var att använda RS485, men då var det det här med nätverkstopologin och terminering och så. Alternativet att göra rätt, att ha allt i en lång daisy-chain med terminering i början och slutet av bussen kommer knappast att gå att genomföra då jag inte vet exakt vad jag vill ha på bussen, och var. Det får bli lite inkrementell utveckling här, och tillägg och bortplockning av enheter kommer säkerligen att förekomma. Så det kommer sannolikt att bli en trädliknande buss. Eller stjärnnät. Maximal längd mellan slav och mastern kan hamna runt 30-40 m.
Hastigheten på bussen behöver inte vara hög, även om det kanske kunde vara roligt att köra 250 kbps (DMX-protokollet) på den.
Så det här blir en fråga om hur långt snöret är... hur lång är en RS485-buss, kanske?

Var och hur kan man fuska utan att det garanterat slutar funka? Är det nån mening att välja drivkretsar med "hög" slewrate för att minska signalreflektionerna?
Re: RS485: Terminering etc
Postat: 13 januari 2014, 11:16:05
av blueint
På en kort (10m) sträcka kanske du kan nå 1000 kbit/s med en lite längre sträcka på 1330 m kan du uppnå 64 kbit/s. Det är i stort sett att välja mellan längd och hastighet.
Kanske du kan använda detta som överslagsräkning:
85 120 000 = längd [m] * bithastighet [bit/s]
Vilket skulle t.ex ge 170m och 500 kbit/s.
Re: RS485: Terminering etc
Postat: 13 januari 2014, 12:55:17
av TomasL
Du bör (måste) terminera i bägge ändar, stjärnnät är inte att rekommendera för RS485.
Skall du ha stjärnnät så är det korta stubbar som gäller, desto kortare, desto bättre.
Isolerade RS485kretsar är en fördel (nästan nödvändigt), om slavarna är jordanslutna och spänningsmatas från olika håll, använder du TP-kabel CAT5 eller liknande, kan du skicka med en matning på något av paren.
De flesta vettiga kretsar kan du ställa in om du vill ha slewrate eller inte.
http://en.wikipedia.org/wiki/RS-485
Re: RS485: Terminering etc
Postat: 14 januari 2014, 09:34:50
av Wedge
blueint skrev:Kanske du kan använda detta som överslagsräkning:
85 120 000 = längd [m] * bithastighet [bit/s]
Är det en formel som är tillämplig på ett hur-som-helst-kopplat skitnät utan termineringar? Var kommer den magiska konstanten ifrån?
Re: RS485: Terminering etc
Postat: 14 januari 2014, 13:07:14
av TomasL
Om du läst min länk ovan hade du förstått.
A rule of thumb is that the speed in bit/s multiplied by the length in meters should not exceed 10^8
Nej det är när allt är perfekt, dvs 100% impedansmatchning samt äkta Daisy-chain.
Re: RS485: Terminering etc
Postat: 14 januari 2014, 14:11:05
av Wedge
Jag hittade denna sida:
http://www.emcu.it/MCUandPeriph/RS485/RS485uk.html
Tumregel för när termineringen inte behövs:
SBTx > (10 * Tp)
SBTx = bitlängd
Tp = propageringstiden , med antagandet att pulsen färdas med 0,6 c genom ledningen.
Vilket ger att 40 m och 250000 bits/s skulle klara sig med god marginal. Utan terminering. Om nu påståendet/tumregeln stämmer.
Återstår bara att grunna på vilken reflektionssoppa man kokar ihop med ett stjärnnät med stubbar av varierande längd, och kanske att prova praktiskt. En terminering i stjärnans centrum är förmodligen bra att ha ändå.
Re: RS485: Terminering etc
Postat: 14 januari 2014, 14:22:54
av TomasL
Termineringen har inte bara med reflexioner att göra, den tar bort rätt mycket yttre störningar, då det är rätt låg impedans.
Re: RS485: Terminering etc
Postat: 14 januari 2014, 19:22:22
av blueint
Inga termineringar får ske i mitten på en RS-485 slinga.
Re: RS485: Terminering etc
Postat: 14 januari 2014, 19:56:29
av baron3d
Skall du ha stjärnnät bör du ha en hubb i mitten.
Re: RS485: Terminering etc
Postat: 14 januari 2014, 20:04:58
av Super7
Re: RS485: Terminering etc
Postat: 14 januari 2014, 20:57:22
av Platis
Vad skiljer egentligen mellan rs422,423 och RS485?
Elektor hade för några år sen(2010?) en artikel-serie om ett lätt utbyggbart hemma-nätverk som dom kallade "elektorbus" el "the bus"! Tror att det byggde på RS485 men med nån modifiering!
Re: RS485: Terminering etc
Postat: 14 januari 2014, 22:19:33
av TomasL
RS485 Multidrop Bi-direktionel på två eller fyra trådar, flera sändare och mottagare.
RS422 Multidrop Uni-direktionell på två trådar, Bidirektionell på Fyra trådar Dock endast med två enheter på trådarna, dvs samma som RS232 men differentiell
RS423 samma som RS422 men inte differentiell
Re: RS485: Terminering etc
Postat: 14 januari 2014, 22:24:16
av Platis
Tydligt förklarat! Tack!

Re: RS485: Terminering etc
Postat: 14 januari 2014, 22:37:19
av TomasL
Ett litet tillägg, det är inget som hindrar att man har flera passiva mottagare på RS422/423.
Eftersom en RS422 sändare inte kan stängas av, till skillnad från RS484, kan det bara finnas en sändare per trådpar.
RS423 är samma som RS232, i princip, med skillnaden att man till skillnad från RS232 kan ha flera passiva mottagare på linan.
Kort sagt, RS422/423 är samma som RS232, med skillnaden att man kan ha flera passiva mottagare, dock bara en sändare, samt att 422 är differentiell.
Som bekant tillåter RS232 standarden enbart en mottagare. (även om det kan funka med flera, ibland)
Re: RS485: Terminering etc
Postat: 14 januari 2014, 22:53:34
av Platis
Med differentiell, är det spänningsnivåerna man syftar på? Sving över och under 0v? Vad är finessen kontra inte differentiell? Ber om ursäkt om jag uttrycker mej korkat!