Home » Elektronik » Digital MJ / DCC » Lenz RS-bus

 

När jag återupptog järnvägshobbyn för många år sedan och började undersöka vilka standards, tillverkare mm det finns så föll mitt val på Lenz och med det även RS-bussen för återkoppling. Av det jag kunde läsa mig till så tyckte väldigt många användare att RS-bussen inte är den bästa standard som finns, och att man fick vara försiktig när det gäller dragning av kablar, typ av kablar mm. RS-bussen är inte heller en öppen standard, så hitta en specifikation på den var helt omöjlig. Men jag valde ändå att köra på Lenz och köpte mina feedback moduler färdiga eller som byggsats från diverse tillverkade.

Men nu när jag skulle bygga upp banan igen efter flytten som gjorde jag en ny undersökning om det inte fanns en specifikation på RS-bussen. Och jojomänsan, visst finns det! Inte från Lenz såklart, men genom reverse-engineering av användare runt om i världen. Efter att ha studerat schemat och hur bussen fungerar så måste jag säga att det är en riktigt smart bus. Två kablar, endast feedback modulerna kan skicka data (master bestämmer bara när slaven skall skicka) och dessa två kablar hanterar även strömförsörjningen. Optokopplare skyddar kretsen på RS-bussen mot övrig elektronik.

 

Hur fungerar RS-bussen?

300px-RSBusPulsfolgeGanska enkelt faktiskt. LZ100 eller liknande fungerar som en mastern och skickar 130 pulsar,  cirka 109us hög och omkring 93us låga och ett pulsintervall på ca 7 ms.. Feedback modulerna räknar dessa pulsar. När antalet pulsar motsvarar adressen i feedback modulen så skickar modulen en byte med information om ingångarnas status. Dock kan endast 4 portar skickas i varje byte, så skall alla 8 portar skickas i en adress så är det 2 byte så klart. Dock får det göras nästa gång mastern skickar ut sina pulsar.

Elektroniskt så har den en fördel jämnfört med andra bussar och det är att överföringen sker genom strömflöde och inte spänningsnivå som i S88. Desutom är datat skyddat av paritetsbit, och bussen blir inte upptagen på samma sätt som de andra varianterna där ute.

 

Protokollet

Meddelandet skickas med en hastighet av 4800bit / s. Den består av 8 bitar av användardata:

  • Startbit (0)
  • Paritet (even)
  • 2 TT bitar (med repeater: 10)
  • Nibblebit (0 = input port 1-4, 1 = input port 5-8)
  • 4 databitar D3, D2, D1, D0

D0-D3 motsvarar altså ingång 1 till 4 eller 5 till 8 beroende på hur Nibblebiten är satt. Det är detta som gör att man måste skicka två bytes för samtliga ingångar på en adress.

TT biten identifierar typen av återkopplingsmodul.

00 – dekoder utan återkoppling
01 – dekoder med återkoppling
10 – repeater
11 – reserverad för framtida bruk

Praktiskt så är det fortfarande okänt varför Lenz har valt denna typen av kodning. För samtliga “vanliga” feedback moduler så skickar man in 10 i TT bitarna.

Dessa bitar skickas sedan, i motsats med vanliga UART’s med P först och D0 sist

P 1 (t), 0 (T), Nibble, D3, D2, D1, D0

 

Meddelande exempel

Meddelanden är kodade enligt följande:

S, P, T1, T0, N, D3, D2, D1, D0

S – Start bit (Låg)
P – Paritet(Even)
T1 – alltid 1 för feedback moduler
T0 – alltid 0 för feedback moduler
N – Nibble (0 för ingång 1-4, 1 för ingång 5-8)
D3 – Ingång 4 eller 8
D2 – Ingång 3 eller 7
D1 – Ingång 2 eller 6
D0 – Ingång 1 eller 5

Exempel:

No. S P T1 T0 N D3 D2 D1 D0 Beskrivning
1 0 0 1 0 0 0 0 0 0 ingång 1, 2, 3 & 4 passiva
2 0 1 1 0 0 0 0 0 1 1 aktiv, 2, 3 & 4 passiva
3 0 1 1 0 0 0 0 1 0 2 aktiv, 1, 3 & 4 passiva
4 0 0 1 0 0 0 1 0 1 1 & 3 aktiv, 2 & 4 passiva
5 0 0 1 0 1 0 0 0 1 5 aktiv, 6, 7 & 8 passiva
6 0 0 1 0 1 1 0 0 0 8 aktiv, 5, , & 7 passiva
7 0 1 1 0 1 0 0 0 0 ingång 5, 6, 7 & 8 passiva
8.1 0 1 1 0 0 0 0 0 1 2 meddelanden:: 1 aktiv och…
8.2 0 0 1 0 0 0 0 1 0 … 6 aktiv, resten passiv

Referenser

För ytterliggare information, och för övrigt sidan där jag lärde mig om hur RS-bussen fungerar så rekommenderar jag Der-Moba’s hemsida

 

Lämna ett svar

E-postadressen publiceras inte.

*