Doel:€250.00
Donaties:€88.00

Per saldo:€-162.00

Steun ons nu!

Laatst bijgewerkt
op 03-06-2025

Vacature: secretaris bestuur
Algemeen

De stichting

Recente berichten

DB Cargo gaat op Betuweroute proeven doen met automatisch rijdende locomotief door Thom
Vandaag om 22:06:47
Mijn eerste H0-modeltreinbaan in aanbouw door Wim Vink
Vandaag om 22:04:55
vervolg op "veel AC wielen" door FritsT
Vandaag om 22:00:36
Raadplaatje door Dpc Fo
Vandaag om 21:48:30
Hulp gevraagd: Yamorc YD7010 en ESU loksound door bask185
Vandaag om 21:25:56
Nahmertaler Kleinbahn door NS264
Vandaag om 20:44:34
Modules van Kees Gorter (vervolg) door ca.gorter
Vandaag om 20:42:56
Eenvoudige, goedkope maar goede decoder? door Prutsert
Vandaag om 20:15:39
Spoor- en tramweg parafernalia door Scratchbuilt
Vandaag om 20:10:35
Van Veendam naar Stadskanaal en door naar Emmen door Scratchbuilt
Vandaag om 20:05:26
Klein baantje 1200x1200mm door Prutsert
Vandaag om 19:12:25
Rheinburg, TP V/VI door Dave.......
Vandaag om 18:49:24
Spoor 1 nem of finescale door FritsT
Vandaag om 18:37:50
Roco 2025 door Dennis94
Vandaag om 18:16:50
Toon hier je nieuwe (model-) spooraanwinst(en)... door Daan!
Vandaag om 18:16:11
Swalbenburg, N modulebaan door NS264
Vandaag om 17:49:43
Bentheimer Eisenbahn AG- dochterbedrijven. door Hans Reints
Vandaag om 17:36:10
De Hasseberg (spoor nul op 9mm) door Scratchbuilt
Vandaag om 17:22:19
Sfeer op je modelbaan door Scratchbuilt
Vandaag om 17:04:40
Toon hier je (model)TRAM foto's. door R1954
Vandaag om 16:45:09
"Litter Bin" voor Brits spoor en Britse modelspoorprojecten door willyTEE
Vandaag om 16:28:29
Ronald doet de Fork Challenge! door Ronald Halma
Vandaag om 16:24:18
Hengelo in 1981-1982, maar dan anders: Kassenberg in N door Mispoes
Vandaag om 15:12:02
De bouw van mijn modelbaan in Thailand door Sporlijn Úje
Vandaag om 15:07:23
Tips voor een natuurgetrouwe modelbaan door tijgernootje
Vandaag om 13:42:35
BR-18.6 Schaal-0. door FritsT
Vandaag om 13:22:45
ICR-rijtuigen, voor welk merk ga je? LSmodels, PBmodels, Exact Train of Piko? door Corné81
Vandaag om 13:08:23
De Projecten van RetroJack door RetroJack
Vandaag om 12:35:25
Nederland jaren 50 op basis van mijn roots door tijgernootje
Vandaag om 11:35:51
The R & J Colliery Ltd. 1:76 Brits. door Torikoos
Vandaag om 11:32:24
  

Auteur Topic: DCC-protocol voor loc / wissel  (gelezen 9245 keer)

SBBcargo

  • Offline Offline
  • Berichten: 657
Re: DCC-protocol voor loc / wissel
« Reactie #15 Gepost op: 28 December 2019, 16:54:20 »
Ik doe even een poging 8) in J&J taal:
Adressen spelen in eerste instantie nog geen rol. Eerst wordt bepaald of een locomotief-opdracht verzonden moet worden of een opdracht voor een wissel. Pas daarna komt een adres in beeld. Het adres zit in het pakketje.
 
Een centrale zend een opdrachtpakket naar de rails. Dat doet hij in zo genaamde opdrachten pakketjes die zijn voor wissels anders zijn dan voor locomotieven . Alle wissels en locomotieven luisteren allemaal welke pakketjes er allemaal via de rails worden verzonden.
Komt er een pakketje voorbij waarop staat: "dit is een pakje voor een locomotief" dan zal een locomotief snel het pakketje open maken en kijken of het wel voor hem bestemd is. Staat in het pakket: Dit is een opdracht voor locomotief met adres 12. Dan denkt de locomotief met adres 10, hé dat ben ik niet   :( en onderneemt geen actie. Een andere locomotief ziet dat pakketje ook langs komen en roept hé das voor mij  :D want ik ben een locomotief met adres 12.
Snel wordt het pakket verder open gemaakt en wordt gekeken welke opdrachten hij moet uitvoeren.
Ook wissels zien deze pakketjes voorbij komen. Telkens als er een pakketje voorbij komt  waarop staat "dit is een pakje voor een locomotief" dan zegt elke wissel doei, niet voor mij  >:(. Pas als er een pakket met de tekst: "dit is een pakje voor een wissel" dan denkt het wissel even kijken wat er in zit  ??? . Staat er in het pakket dit is een opdracht voor wissel 12 dan zegt wissel 10 jammer dat is niet voor mij >:(. Maar wissel 12 ziet het pakketje ook en denkt even lezen wat ik moet gaan doen, want ik ben wissel 12  :D.

Ik hoop dat ik een en ander hiermee wat verduidelijkt heb.
Marius

Klaas Zondervan

  • Offline Offline
  • Berichten: 26624
    • Pagina van klaas
Re: DCC-protocol voor loc / wissel
« Reactie #16 Gepost op: 28 December 2019, 17:01:27 »
Ik hoop dat ik een en ander hiermee wat verduidelijkt heb.
Nee, voor mij wordt het alleen maar mistiger.
Wat is dan het verschil tussen b.v. adres 5 voor een locdecoder en adres 5 voor een wisseldecoder? Bij DCC is het eerste byte na de pre-amble toch gewoon het adres? In de beschrijvingen bij NMRA en Morop zie ik nergens waar in het bericht wordt aangegeven dat het voor een loc of voor een wissel is.
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

meino

  • Offline Offline
  • Berichten: 2317
Re: DCC-protocol voor loc / wissel
« Reactie #17 Gepost op: 28 December 2019, 18:07:16 »
Klaas
in de NMRA norm wordt over adres reeksen gesproken, 0-127 voor loks met simpele adressen, 128-192 voor wisseldecoders enz. Maar je kunt er ook anders naar kijken, en de eerste 2-3 bits als indicator gebruiken, zoals ik het hier probeerde uit te leggen;
Eigenlijk ius het heel simpel. De decoder kijkt naar het adres in het commando. Als het eerste bit 0 is, dan is het een lokdecoder met een simpel adres (1-127), is het eerste bit 1 en het tweede bit 0, dan is het een wisseldecoder. Als het eerste bit 1 is en het tweede bit ook 1, dan is het een lokdecoder met lange adressen.
Het hangt dan gewoon van de programmeur af hoe hij daarmee omgaat.
Om het ingewikkeld te maken, moet je voor het echte adres dan ook nog kijken naar de bits uit het tweede byte dat volgt op het adress byte. Voor het echte adres van een wisseldecoder moet je er ook nog 5 bits uit het volgende byte er bij betrekken. Hoe dat adres geinterpreteerd wordt hangt van het type decoder af, Decoders met 4 functie uitgangen of een decoder met 1 functie uitgang, alhoewel dit meer een semantische exercitie is, dan dat het uitmaakt voor wat er in de 6+5bits staat, 511 + 4 functie uitgangen betekent 9 bits voor het adres en 2 bits voor de functie uitgang, is 11 bits. Voor decoders met 1 uitgang is de adres ruimte 2047, ook 11 bits.

Groet meino

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: DCC-protocol voor loc / wissel
« Reactie #18 Gepost op: 28 December 2019, 18:54:01 »
Ik heb geen idee hoe een decoder zijn eigen adres precies "herkent"

Een decoder krijgt af fabriek default het adres 3, dat wordt, met alle andere CV waarden, opgeslagen in een eeprom in de decoder. Bij het configureren ('programmeren') van een decoder is dat te veranderen, het oude adres wordt dan overschreven.
Citaat
... op mijn baan heb ik zowel locadressen als wisseladressen beneden de honderd in gebruik. Als ik rijd met een loc die luistert naar zijn adres 5 en ik schakel de wissel die ook adres 5 heeft met mijn centrale dan reageert de loc daar niet op.
Er zijn twee 'adresruimten', 1 voor (mobiele) locdecoders en 1 voor (stationaire) schakeldecoders (zie  DCC Wiki link). In beide adresruimten mag het adres '5' voorkomen. In het DCC pakketje zit in het adres informatie of het pakketje voor een loc- of schakeldecoder is. Iedere decoder  'weet' wat voor type decoder hij is en kijkt constant naar alle pakketjes die op de rails voorbijkomen. Alleen als er een pakketje voorbijkomt met zijn adres en zijn type dan zal hij het commando in de rest van het DCC pakketje uitvoeren.
Een locdecoder met adres 5 negeert een commando voor schakeldecoder met adres 5, en andersom ook.
Het is ook vrij zinloos om een schakeldecoder (voor b.v. een wissel) het commando 'verhoog snelheid' te laten uitvoeren.
« Laatst bewerkt op: 28 December 2019, 19:47:57 door 72sonett »
El Carrilet
"te dom om te poepen"
MH

Klaas Zondervan

  • Offline Offline
  • Berichten: 26624
    • Pagina van klaas
Re: DCC-protocol voor loc / wissel
« Reactie #19 Gepost op: 28 December 2019, 18:59:56 »
Het is me nog steeds niet helder. Kan iemand een bitpatroon laten zien (nullen en enen) van een adres 5 voor een locdecoder en een adres 5 voor een wisseldecoder. En daarin aanwijzen welke bits cruciaal zijn voor het verschil.
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

Martin Hornis

  • Offline Offline
  • Berichten: 1433
Re: DCC-protocol voor loc / wissel
« Reactie #20 Gepost op: 28 December 2019, 19:19:45 »
https://dccwiki.com/Digital_packet
In deze link staat alles. Het gaat mij er alleen om hoe de eenvoudigste uitvoering is. Dus zoals het in het begin van het digitale tijdperk geregeld was. Heel eenvoudig. Adres 0 mocht niet. De adressen 1..127 zijn voor locs bestemd. De adressen voor accessoires (1..64) worden gecodeerd verzonden door er 127 bij op te tellen. Het zijn daardoor de adressen 128..191. Aangezien alles via een 8-bits-formaat wordt verzonden, houdt het dus in dat loc-adressen met een 0 begonnen. De reeks is dan 0000 0001 t/m 0111 1111. Voor accessoires is die reeks: 1000 0000 t/m 1011 1111. Dus een accessoire-adres begint met 10. Voor locs en accessoires met een hoger adres, is een andere adresindeling 'verzonnen'. Maar dat mag iedereen voor zichzelf gaan uitzoeken. Ik ben tevreden met het gegeven antwoord.
Märklin K-rails met boogstralen > 500 mm; NS-lichtseinen met cijferbak: 4, 6 en 8 in één bak; iTrain; Intellibox I; OC32;
eigen treindetectiesysteem aangesloten op OC32;
controleprogramma voor OC32.

Martin Hornis

  • Offline Offline
  • Berichten: 1433
Re: DCC-protocol voor loc / wissel
« Reactie #21 Gepost op: 28 December 2019, 19:23:59 »
Kan iemand een bitpatroon laten zien (nullen en enen) van een adres 5 voor een locdecoder en een adres 5 voor een wisseldecoder.
Ja. Zie antwoord hier boven.
Locadres 5: 0000 0101. -> 3e bit van rechts -> 4. -> 1e bit van rechts -> 1. -> samen 5.
Wisseladres 5: 1000 0100 (127 + 5 = 132.-> 132 - 128 (-> meest linker bit) = 4 (-> 3e bit van rechts).
« Laatst bewerkt op: 28 December 2019, 19:25:53 door Martin Hornis. Reden: fout hersteld »
Märklin K-rails met boogstralen > 500 mm; NS-lichtseinen met cijferbak: 4, 6 en 8 in één bak; iTrain; Intellibox I; OC32;
eigen treindetectiesysteem aangesloten op OC32;
controleprogramma voor OC32.

MRdirect

  • Offline Offline
  • Berichten: 242
  • Marco Roede
Re: DCC-protocol voor loc / wissel
« Reactie #22 Gepost op: 28 December 2019, 19:28:37 »
Hierbij de beschrijving van de DCC commando’s in ENEN en NULLEN:

https://www.nmra.org/sites/default/files/s-9.2.1_2012_07.pdf

Je moet er even de tijd voor nemen, maar dan heb je ook alles!

M.vr.gr. Marco
Sinds april 2020 IntelliBox 650 ipv MRdirect en via LocoNet twee Power4 boosters.
Rosoft servo-wisseldecoders, Henk Kooiman stappenmotor draaischijf mbv Peter Giling hardware en eigen ontwerp DCC-decoder.

Bert_Apd

  • Offline Offline
  • Berichten: 1904
  • N-Spoor DB Epoche III
Re: DCC-protocol voor loc / wissel
« Reactie #23 Gepost op: 28 December 2019, 19:37:50 »
Hallo,

Misschien toch even iets recht zetten...

... Er zijn twee 'adresruimten', 1 voor (mobiele) locdecoders en 1 voor (stationaire) functiedecoders (zie  DCC Wiki link). In beide adresruimten mag het adres '5' voorkomen.

... Een locdecoder met adres 5 negeert een commando voor functiedecoder met adres 5, en andersom ook.
Het is ook vrij zinloos om een wisseldecoder het commando 'verhoog snelheid' te laten uitvoeren.

Hier wordt het woord functiedecoder gebruikt voor een "accessory decoder" (oftewel schakeldecoder), terwijl het woord functiedecoder normaal gebruikt wordt voor een "uitgeklede" locdecoder voor het schakelen van functies in rijdend materieel zonder motor...

http://wiki.modelspoorwijzer.net/index.php/Functiedecoder

De locdecoders en de z.g. functiedecoders maken wel degelijk gebruik van dezelfde adresruimte en luisteren naar dezelfde locadressen.

Een locdecoder met adres 5 negeert een commando voor functiedecoder met adres 5, en andersom ook.

Dus niet, zij luisteren beide naar loc-adres 5...


De "accessory decoders" (dus de schakeldecoders voor wissels en seinen) hebben hun eigen adresruimte, los van die van de loc- en functiedecoders.

Groeten,
Bert
« Laatst bewerkt op: 28 December 2019, 19:55:41 door Bert_Apd »

Klaas Zondervan

  • Offline Offline
  • Berichten: 26624
    • Pagina van klaas
Re: DCC-protocol voor loc / wissel
« Reactie #24 Gepost op: 28 December 2019, 19:46:10 »
Locadres 5: 0000 0101. -> 3e bit van rechts -> 4. -> 1e bit van rechts -> 1. -> samen 5.
Wisseladres 5: 1000 0100 (127 + 5 = 132.-> 132 - 128 (-> meest linker bit) = 4 (-> 3e bit van rechts).
Kijk, nu begint het me te dagen. Wisseladres 5 is dus helemaal niet adres 5, het is adres 132. (ik weet hoe binair tellen werkt)
Projecten:
Dubbelom
Halte Assel
Geluk, dat is vooraan staan als de overweg gesloten is.

72sonett

  • Team encyclopedie
  • Offline Offline
  • Berichten: 2083
    • El Carrilet
Re: DCC-protocol voor loc / wissel
« Reactie #25 Gepost op: 28 December 2019, 19:50:58 »
... even iets rechtzetten...
Ik heb de benaming aangepast.
El Carrilet
"te dom om te poepen"
MH

Ad Cleijsen

  • Offline Offline
  • Berichten: 1027
Re: DCC-protocol voor loc / wissel
« Reactie #26 Gepost op: 28 December 2019, 19:52:14 »
Klaas, dat heet kortsluiting  ;)

Bert_Apd

  • Offline Offline
  • Berichten: 1904
  • N-Spoor DB Epoche III
Re: DCC-protocol voor loc / wissel
« Reactie #27 Gepost op: 28 December 2019, 19:56:43 »
Ik heb de benaming aangepast.

Ik heb het gezien...  (y)

meino

  • Offline Offline
  • Berichten: 2317
Re: DCC-protocol voor loc / wissel
« Reactie #28 Gepost op: 29 December 2019, 01:05:31 »
Kijk, nu begint het me te dagen. Wisseladres 5 is dus helemaal niet adres 5, het is adres 132. (ik weet hoe binair tellen werkt)

Bijna goed.
Maar helaas is de adressering van wisseldecoders een aan elkaar gebreid zootje. Ik ben eens in de code van de DCC bibliotheek voor een Arduino gedoken om te kijken hoe het adres uit de pakketjes gehaald wordt.
Het kan erg verwarrend zijn, door de manier waarop dit door de NMRA is vastgelegd. Het eerste probleem is dat de standaard 2 verschillende manieren van adresseren beschrijft; 511 basic decoders, ieder met 4 binaire uitgangen, of 2044 basic decoders met 1 binaire uitgang.
Maar kijken we nu naar de inhoud van het pakket voor een basic accessory decoder, dan bevat dat altijd een 9 bit base adres dat loopt van 1 tot 511. Maar dat zelfde pakket bevat ook een 2 bit sub address dat een van de 4 uitgangen aanstuurt, voor het gemak loopt dat van 0-3.
Ik weet niet hoe het in andere treinbesturings programma's is, maar binnen Koploper gebruik je de laatste methode van adressering (max 2044 adressen), Iedere uitgang heeft zijn eigen adres.
Hoe werkt dat in de praktijk. Wisseldecoder 1 wordt base adres 1, sub adres 0. Wisseldecoder 4 wordt base adres 1, sub adres 3. Wisseldecoder 5 wordt nu base adres 2, sub adres 0. Etc.

Hoe ziet nu een fysiek pakket er uit. Bijv Wisseldecoder 3, wisselstand afbuigend. Dat ziet er in Hexadecimaal nu als volgt uit 81FC (ik laat voor het gemak de preamble, tussenbits en error byte even weg)

In bit notatie is dat als volgt 1000 0001 1111 1100, 2 bytes.
 
Dat kunnen we nu als volgt opbreken:
10              2 bits die aangeven dat we een Accessory decoder (wissel decoder) adresseren
00 0001     6 bits voor het eerste deel van het base address, noem dit A1.
1                1 bit die aangeeft dat dit voor een Basic accessory decoder (9bit adres is)
111            3 bits voor het tweede deel van het base address. Noem dit A2. Het vreemde is dat dit deel van het adres geinverteerd is, een 0 is een 1 en een 1 is een 0  ???

Het complete base address wordt nu gemaakt uit A1 en A2 volgens de volgende formule; (~A2<<6)+A1
Dat resulteert hier in een base address van 1 ( ~(111) wordt 000 )

gaan we nu verder.
1                1 bit, geeft aan of een coil geactiveerd moet worden. (voorzover ik het kan volgen zet Koploper dit altijd op 1)
10              2 bits die het sub address bevatten, sub address is hier 2, dat is dus de 3e uitgang, samen met het base address 1 maakt dit decoder adres 3  ;D.
0                1 bit voor de richting van de wissel, 1 is rechtdoor, 0 is afbuigend (tenminste dat gebeurd bij mij met Koploper)

Het is misschien een wat lang verhaal geworden en alleen maar de beschrijving van een simpele wissel decoder, maar ik hoop dat het nu wat duidelijker is.

Groet Meino
« Laatst bewerkt op: 29 December 2019, 01:08:40 door meino »

Martin Hornis

  • Offline Offline
  • Berichten: 1433
Re: DCC-protocol voor loc / wissel
« Reactie #29 Gepost op: 29 December 2019, 01:15:08 »
1                1 bit die aangeeft dat dit voor een Basic accessory decoder (9bit adres is)
Als die 1 er niet staat, dan zijn er maar 64 adressen beschikbaar. En is het maar een 6-bits-adres.
Märklin K-rails met boogstralen > 500 mm; NS-lichtseinen met cijferbak: 4, 6 en 8 in één bak; iTrain; Intellibox I; OC32;
eigen treindetectiesysteem aangesloten op OC32;
controleprogramma voor OC32.