Bij de baan van Zolderspoor wordt gebruik gemaakt van het besturingsprogramma “Koploper”.
Dit programma is ontwikkeld en geschreven door Paul Haagsma en heeft ongekend veel mogelijkheden.
Daarnaast is het programma volledig gratis en heeft het mogelijkheden die andere programma’s niet hebben.
Bij enkele programma's kun je tegen een (forse) meerprijs extra opties aangeschafen, maar halen het nog niet bij de mogelijheden die Koploper heeft.
Het programma wordt weliswaar niet verder meer ontwikkeld, maar is zo uitgebreid en compleet, dat het volledig aan je behoeft kan voldoen.
Je zou je zelfs kunnen afvragen welke mogelijkheden nog iets toevoegen aan het programma.
Ook is er een enorme hoeveelheid kennis aanwezig op het forum en Facebook groep van Koploper.
Mocht je vastlopen of iets niet lukken, dan kun je hier hulp en informatie vragen of vinden.
Hier bespreek ik hoe bij Zolderspoor het besturingsprogramma Koploper is ingezet en wordt gebruikt.
Daarnaast worden ook de (test)bestanden in de toekomst beschikbaar om te downloaden.
Handig als je zelf er mee aan de slag wilt of wil weten hoe ik het gedaan heb.
Er zullen zeker bepaalde zaken anders of beter geregeld kunnen worden en sta dan ook open voor suggesties.
Omdat de totale baan nogal omvangrijk is, tref je ook hier een keuzemenu aan.
Zo kun je ook snel weer terugvinden hoe ik het gedaan heb.
De menu volgorde is ook gemaakt op de manier waarop ik het programma Koploper heb opgebouwd.
Voordat je überhaupt maar met Koploper aan de slag gaat, is het belangrijk dat het principe van het programma begrijpt.
Een handig document om het te leren kennen, kun je hier vinden.
Dit document komt van de site van Etecmo waarvan ik deel 1 en 2 heb samengevoegd.
Voorop gesteld dat je begrijpt hoe koploper werkt, zul je de manier van aanpak (beter) begrijpen.
Voordat ik met Koploper aan de slag ben gegaan, heb ik een overzicht van de baan gemaakt in de vorm van een baanplan.
Het baanplan heb ik uitgewerkt in het programma Scarm.
Vervolgens heb ik het baanplan ingedeeld in blokken, waarbij wisselstraten nooit een blok vormen.
Omdat mijn baan nogal wat rijlengte heeft, was het indelen best een flike klus.
Gelukkig kon ik gebruik maken van de mogelijkheid in Scarm, om de lengte van de trajecten te laten berekenen.
Het grote voordeel hierbij was, dat ik elk aaneengesloten traject in meerdere blokken kon indelen, waarbij (meestal) de bloklengte ook lang genoeg was voor langste treinen.
Voorbereidingen.
Voordat ik met de automatisering ben begonnen, zijn er eerst een aantal basis zaken geregeld.
Zo zijn in Koploper alle treinstellen en locomotieven ingevoerd in het locomotieven bestand (onderhouden locomotieven) en zijn ook de snelheden geijkt.
Daarnaast zijn er een aantal treintypes ingevoerd waaruit later gekozen kan worden.
Ook zijn er van de locomotieven en treinstellen foto's gemaakt die bij de locomtiefgegevens zijn gebruikt.
Ijken.
Diverse malen heb ik gelezen dat mensen vragen hebben over hoe je een locomtief in snelheid moet ijken of wat de beste methode is.
Over dat laatse kan ik kort zijn: dat is een methode die voor jou het beste werkt.
Ik kan wel aangeven hoe ik tot de resultaten gekomen ben en wat naar mijn menigng ook de handigste methode is (althans bij Koploper).
Vanwege de omvang en volledigheid hoe je dit in koploper kunt doen, heb ik hier een bestand van gemaakt dat je eventueel ook kunt opslaan.
Het bestand is "hier te lezen en te downloaden.
Doe er je voordeel mee.
In het kort komt het erop neer, dat je eerst de decoder zo moet instellen, dat de locomtief of treinstel op schaal zijn maximale snelheid niet kan overschrijden.
Bij de stap daarna begint het werkeleijke ijken pas.
Van start.
Met de opbouw van de automatisering is gestart bij het onderste schaduwstation, laag 0.
Nogal logisch lijkt me, omdat daar ook met de bouw van de baan is begonnen.
Om zowel het rijden als de automatisering te kunnen testen is er een tijdelijke lus aangelegd in het bestaande plan.
Wat betreft de automatisering heb ik het zo gemaakt, dat bij het verwijderen van de tijdelijke lus, de impact op veranderingen minimaal zal zijn.
Op deze manier voorkom je dat je telkens grote aanpassingen moet gaan maken in Koploper of bedrading.
De manier van regeling is in Koploper voor van alle schaduwstations hetzelfde en kan als het ware gekopieerd worden.
Het enige onderlinge verschil zit hem in de lengte en aantal gebruikte sporen.
Komen we gelijk bij een toepassing, die door (voor zover ik weet) niet door andere programma’s wordt ondersteund, een dynamische regeling voor het schaduwstation.
Om van extra mogelijkheden, zoals een dynamisch geregeld schaduwstation, gebruikt te kunnen maken, moet we in Koploper de uitgebreide functies inschakelen.
Dit doe je in het scherm "Algemeen", "Instellingen per database" op het tabblad "Algemeen-1" .
Hier zet je een vinkje bij: "Uitgebreide mogelijkheden" en beantwoord je de vraag die nu verschijnt.
Nu worden in diverse schermen meer mogeljkheden geactiveerd waarmee je bepaalde zaken kunt instellen.
Dit is nodig om van de extra mogelijkheden gebruik te kunnen maken.
Bedenk wel dat dit vinkje na het inschakelen niet meer uit gezet kan worden.
In het volgende deel 2: Schaduwstation laag 0 kom ik uitgebreid terug op een "Dynamisch blokregeling".
Zoals wordt aangegeven in dat deel, wordt er gebruik gemaakt van infrarood lichtsluizen.
Belangrijk hierbij is dat de infrarood straal constant onderbroken moet blijven als er een trein de lichtsluis passeert.
Dit vereist een juiste (mechanische) afstelling van de sensoren
Meer over deze infrarood lichtsluizen kun je vinden onder "Elektronica" in de subparagraaf "Infrarood lichtsluizen".
Inleiding.
Nu gaat het echter om de juiste instellingen die in Koploper gedaan moeten worden om het goed te laten werken.
Ik ga er nu echter vanuit dat je met het programma Koploper al een beetje bekend bent en dat je in beginsel weet hoe koploper werkt.
Als dit niet zo is, en wilt hier toch bekend mee raken, neem dan het document door zoals al in het begin al is aangegeven.
Omdat op de schaduwstations van dynamische lengte gebruik wordt gemaakt, zijn er een aantal extra gegevens nodig om het goed te laten werken.
Om te beginnen moet van de locomotieven en treinstellen de lengte worden ingevuld.
Ik heb hier de lengte genomen die je tussen het uiteinde van de koppelingen meet.
Deze vul je bij het onderdeel “onderhouden", "locomotieven” in.
De lengte van de locomotief of treinstel wordt in cm ingevuld in het vakje achter “lengte”.
In het vakje achter “draaischijf” kun je opgeven hoever de locomotief moet doorrijden om goed op de brug van de draaischijf te stoppen.
Deze afstand is na de 1e detectie (op de brug) van de draaischijf.
Als je geen gebruik maakt van een draaischijf bij automatisch rijden kun je dit gewoon op “0” laten staan.
De volgende stap is het invoeren van de treinlengte.
De treinlengte is de lengte van de sleep die door de locomotief wordt getrokken.
Bij (zeer) lange treinen moet je ook rekening houden met de speling tussen de koppelingen.
Je moet dan ook altijd de lengte meten als alle wagons getrokken zijn.
Dit kan van enkele centimeters tot wel 15 centimeter verschillen.
Ook hier heb ik de lengte gemeten tussen de koppelingen aan het uiteinde van de stam.
Deze gegevens worden ingevuld in het het rij-window van de locomotief.
Het programma rekent nu automatisch de totale lente uit en geeft dit weer in het rij-window.
Deze gegevens heb ik alleen voor de stammen ingevoerd voor de treinen waarmee is test gereden.
Later wordt de lengte automatisch gemeten, hierover later meer.
Om een dynamische regeling goed te laten werken moet er aardig wat zaken worden ingesteld in Koploper.
Mijn opstelsporen in de schaduwstations, zijn veel langer dan de langste trein die gaat rijden.
Hoofdreden hiervoor is dat ik al mijn treinen moet kunnen "parkeren" in het schaduwstations.
Om te beginnen moet voor de dynamische regeling elk opstelspoor in het schaduwstation worden opgedeeld in 2 blokken.
Hieronder een plaatje zoals dit in het 1e en 2e deel, beide op niveau 0, van mijn schaduwstation is gedaan.
Ter informatie:
Bovenstaande afbeelding is een tijdelijk plan wat ik getekend heb in Koploper om het schaduwstation te kunnen testen.
In de uiteindelijke Koploper tekening (dus ook het uiteindelijke plan) krijgen deze sporen in het schaduwstation dezelfde blokken en terugmeldnummers toegekend.
Blok 1 is hier een tijdelijke omloop om het schaduwstation te kunnen testen en is in het uiteindelijke plan dus niet op deze manier aanwezig.
Wel blijft blok 1 het inkomende spoor van het 1e deel van het schaduwstation.
Het tussen liggende blok 12 blijft wel in het definitieve plan aanwezig.
Nu het basisplan gereed is en de blokken op de juiste plaats staan kunnen we beginnen om voor elk blok gegevens in te voeren.
Als eerste moeten we in "Onderhouden blokken" het volgende instellen:
1. In blok 1 moet de keuze van de blokken 2, 4, 6, 8 en 10 worden gedaan op basis van optimale lengte en moet er twee blokken vooruit worden gekeken.
opm.: deze sporen mogen alleen maar in één richting worden bereden.
2: Van de blokken 2, 4, 6, 8 en 10 moet het bloktype als "Normaal blok" (= vrije baan blok) ingesteld zijn.
3: In blokken 2, 4, 6, 8 en 10 zullen de te verwachten bezetmelders allemaal gelijk zijn.
Afhankelijk van welke ingangen je van de bezetmelder gebruikt en met welk systeem je werkt vul je deze in.
Zelf maak ik gebruik van de S88 en zijn de ingangen verdeelt over twee modules met elk 16 meldingangen.
Omdat alle sporen bij het binnenrijden door dezelfde infrarood melder worden bewaakt, is er voor de binnenkomst en stopmelder voor de blokken 2, 4, 6, 8 en 10 eenzelfde meldingang gebruikt.
In mij geval zit deze op de 4e ingang van de 1e terugmelder.
Hierbij is het enige verschil tussen de ingangsmelder t.o.v. de stopmelder, dat bij de stopmelder wordt vermeld dat dit bij het “vrijkomen van” de meldingang gebeurt.
Voor al deze blokken (2, 4, 6, 8 en 10) wordt dus ook hetzelfde ingevuld.
Het plaatje ziet er dan als volgt uit:
4: Voor de blokken 3, 5, 7, 9 en 11 mag elk bloktype gekozen worden
Hiervoor heb ik een bloktype "Dynamisch blok stop" voor aangemaakt.
5: Ook zijn in de blokken 3, 5, 7 en 9 de te verwachten bezetmeldpunten allemaal gelijk.
Dit is namelijk het bezetmeldpunt welke is gekoppeld aan de volgende lichtsluis.
In mijn geval zit dit op de 1e ingang van de 2e terugmelder.
In deze blokken gebeurt er overigens iets eigenaardigs.
Indien de trein moet stoppen, zal, zodra de stopmelder wordt geactiveerd, de trein een stukje achteruitrijden om de melder weer vrij te krijgen.
Dit gebeurt straks geheel automatisch en hiervoor hoef je niets apart in te stellen.
Indien de trein mag doorrijden wordt er natuurlijk niet gestopt en wordt er ook niet achteruit gereden.
De voorgaande 5 instellingen zullen herhaald moeten worden voor de blokken 12 t/m 24.
Het volgende wijzigt dan:
blok 1 = blok12 ,
blok 2, 4, 6, 8 en 10 zijn de blokken 13, 15, 17, 19, 21 en 23,
blok 3,5,7,9, en 11 zijn de blokken 14, 15, 16, 18, 20, 22 en 24.
Omdat we in "Onderhouden blokken" bij stap 1 hebben opgegeven dat er 2 blokken vooruit gekeken moet worden en de keuze gemaakt moet wordt op basis van optimale lengte, worden er blokparen gevormd.
Van ieder blokpaar moet hier worden aangegeven dat de lengte dynamisch bepaald mag worden.
We doen dit met de optie "Onderhouden dynamische bloklengte".
In het aangegeven plan geldt dit hier voor de paren 2 en 3, 4 en 5, 6 en 7, 8 en 9 en ten slotte 10 en 11 voor het 1e deel.
Voor het tweede deel geldt dit voor de paren 13 en 14, 15 en 16, 17 en 18, 19 en 29, 21 en 22 en ten slotte voor 23 en 24.
Om te voorkomen dat de treinen erg dicht op elkaar komen te staan met het gevaar voor aankoppelen, geef je hier ook een veiligheidsmarge op.
Deze marge geldt dus als ruimte tussen de treinen in dit dynamisch blok.
Nadat dit allemaal is ingevoerd gaan we de bloklengte invoeren.
Het programma moet weten hoe lang de blokken zijn, om te kunnen bepalen welke treinen er in de blokken passen.
Dit doen we in het onderdeel "Onderhouden aanvullende blokgegevens".
Het is van belang dat de juiste maximale treinlengte van alle blokken wordt opgegeven.
In principe maakt het niet uit in welk blok van een dynamisch blokpaar dit wordt vastgelegd, maar om eenheid te houden heb ik bij ieder blok de helft van de totale lengte ingevuld.
De totale lengte is de lengte tussen de infrarood lichtstralen.
Wel heb ik hier een marge van 10cm aangehouden, omdat treinen niet direct achter de infrarood lichtsluis zullen stoppen.
Ook heb ik hier opgegeven dat de maximale snelheid maar 50km/u mag zijn bij geijkte snelheden en gemiddeld voor niet geijkte snelheden.
Hiermee voorkom je in ieder geval dat de treinen erg abrupt stoppen indien er gestopt moet worden.
Bij volle snelheid kunnen hierdoor koppelingen door los raken of kan de zaak ontsporen, met alle gevolgen van dien.
Dan moet er nog duidelijk gemaakt worden welke blokken bij elkaar horen.
Dat doen we met de optie "Onderhouden blokgroepen".
De blokken 3, 5, 7, 9 en 11 moeten samen een blokgroep vormen.
Hierbij zijn de volgende opties van belang:
• Enkele treinbeweging moet zijn geactiveerd.
• Gecombineerde stopmelder moet ook zijn geactiveerd.
Ditzelfde geld voor de blokken 14, 16, 18, 20, 22 en 24.
Ook deze vormen een blokgroep.
De belangrijkste instellingen zijn nu gemaakt.
Blijft over dat de bezetmelders voor blok 1 en 12 nog ingevuld moeten worden.
Dit zijn standaard instellingen zoals je bij een normaal blok doet.
Wel heb ik bij de stopmelder (2e melder) opgegeven dat het vorige blok vrijgegeven mag worden.
Nu kan er proef gereden worden op het schaduwstation.
Hoe de 1e proefritten zijn verlopen kun je dit filmpje zien.
Het schaduwstation op laag 1 is qua instellingen in koploper nagenoeg hetzelfde als die van laag 0.
Alleen de sporen die naar het schaduwstation liggen er iets anders bij.
Zo komt het binnenkomende spoor op dezelfde plaats binnen (voorzijde) en ligt het uitgaande spoor naast het binnenkomende spoor en niet aan de achterzijde.
De enige echte afwijking is de overgang van voorzijde naar achterzijde van het schaduwstation.
Hier is een extra aftakking gemaakt om naar het schaduwstation van laag 0 te kunnen komen.
In deze sistuatie zal de instelling van Koploper iets anders moeten dan op laag 0, maar verder is deze nagenoeg hetzelfde.
Omdat straks dezelfde locomotieven worden gebruikt als in het schaduwstation op laag 0, hoeven we daarin niets meer in te voeren.
De treinlengtes worden in eerste instantie gewist, omdat we voor de 1e testen alleen de locomotieven laten rijden.
Om uberhaupt rond te kunnen (test)rijden op het schaduwstation op laag 1, moeten we het dalende spoor en stijgende spoor met elkaar gaan verbinden.
Door hier een tijdeljke lus in te leggen, kan dit eenvoudig worden gerealiseerd.
Omdat in het definitieve plan het railplan op laag 0 er iets anders uit ziet, is meteen ook dit aangepast in Koploper.
Op deze manier kan ook direct de route van het schaduwstation op laag 1 naar laag 0 worden getest.
Helaas kunnen dan de treinen niet terug keren naar laag 1 omdat hier nog geen spoorverbinding tussen ligt.
Hieronder een plaatje zoals het er in koploper dan uit komt te zien.
Ter informatie:
Omdat in het definive railplan de sporen na blok 49 een tegengestelde polariteit hebben, wordt er in blok 49 een keerlus module aangesloten.
I.v.m. de mogelijkheid dat de treinlengte langer kan zijn dan het keerlusdeel, wordt er gebruik gemaakt van een extensie mogelijkheid op de keerlus module.
Hiermee kan het keerlusdeel verlengt worden en kunnen er twee blokken door de keerlusmodule geschakeld worden.
In koploper kun je dan van de mogelijkheid gebruik maken dat beide blokken leeg moeten zijn, voordat er een volgende trein naar dit blok mag.
Om nu rond te lunnen rijden, wordt er tijdelijk tussem blok 50 en 51 ook een keerlusmodule geplaatst.
In het definitieve plan zal deze laatse dus weer verdwijnen.
De blokken 53 en 54 zij fictief en doen in dit deel nog niet echt mee.
In "Onderhouden blokken" moeten we het volgende instellen:
1. In blok 25 moet de keuze van de blokken 26, 28, 30, 32 en 34 worden gedaan op basis van optimale lengte en moet er twee blokken vooruit worden gekeken.
Dit is dus hetzelfde als het schaduwstation op laag 0 echter met andere bloknummers.
2: Ook hier geld dat de blokken 26, 28, 30, 32 en 34 van het bloktype als "Normaal blok" (= vrije baan blok) moet worden ingesteld.
3: In blokken 26, 28, 30, 32 en 34 zullen de te verwachten bezetmelders allemaal gelijk zijn.
Omdat alle sporen bij het binnenrijden door dezelfde infrarood melder worden bewaakt, is er voor de binnenkomst en stopmelder voor de blokken 26, 28, 30, 32 en 34 eenzelfde meldingang gebruikt.
In mij geval zit deze op de 12e ingang van de 1e terugmelder, dus 1.12.
Hierbij is het enige verschil tussen de ingangsmelder t.o.v. de stopmelder, dat bij de stopmelder wordt vermeld dat dit bij het “vrijkomen van” de meldingang gebeurt.
Voor al deze blokken (26, 28, 30, 32 en 34) wordt dus ook hetzelfde ingevuld.
Het plaatje ziet er dan als volgt uit:
4: Voor de blokken 27, 29, 31, 33 en 35 mag elk bloktype gekozen worden
Hiervoor heb ik een bloktype "Dynamisch blok stop" voor aangemaakt.
5: Ook zijn in de blokken 27, 29, 31, 33 en 35 de te verwachten bezetmeldpunten allemaal gelijk.
Dit is namelijk het bezetmeldpunt welke is gekoppeld aan de volgende lichtsluis.
In mijn geval zit dit op de 8e ingang van de 3e terugmelder.
De voorgaande 5 instellingen zullen herhaald moeten worden voor de blokken 36 t/m 47.
Het volgende wijzigt dan:
blok 25 = blok 36 ,
Bij blok 36 is ook nog een richting naar blok 37.
Deze kan ook op basis van optimale lengte worden ingesteld, echter met 1 blok vooruit.
blok 26, 28, 30, 32 en 34 zijn de blokken 38, 40, 42, 44 en 46,
blok 27,29,31,33, en35 zijn de blokken 39, 41, 43, 45 en 47.
Omdat we in "Onderhouden blokken" bij stap 1 hebben opgegeven dat er 2 blokken vooruit gekeken moet worden (m.u.v. blok37) en de keuze gemaakt moet wordt op basis van optimale lengte, worden er blokparen gevormd.
Van ieder blokpaar moet hier worden aangegeven dat de lengte dynamisch bepaald mag worden.
We doen dit met de optie "Onderhouden dynamische bloklengte".
Buiten de reeds aangegeven blokparen komen er nu een aantal bij.
In het aangegeven plan geldt dit hier voor de paren 26 en 27, 28 en 29, 30 en 31, 32 en 33 en ten slotte 34 en 35 voor het 1e deel.
Voor het tweede deel geldt dit voor de paren 38 en 39, 40 en 41, 42 en 43, 44 en 45 en ten slotte voor 46 en 47.
Om te voorkomen dat de treinen erg dicht op elkaar komen te staan met het gevaar voor aankoppelen, geef je hier ook een veiligheidsmarge op.
Deze marge geldt dus als ruimte tussen de treinen in dit dynamisch blok.
Nadat dit allemaal is ingevoerd gaan we de bloklengte invoeren.
Het programma moet weten hoe lang de blokken zijn, om te kunnen bepalen welke treinen er in de blokken passen.
Dit doen we weer in het onderdeel "Onderhouden aanvullende blokgegevens".
Ook hier heb ik een marge van 10cm aangehouden, omdat treinen niet direct achter de infrarood lichtsluis zullen stoppen.
De maximale snelheid is op 50km/u gezet bij geijkte snelheden en gemiddeld voor niet geijkte snelheden.
Hiermee voorkom je bij abrupt stoppen. dat koppelingen los kunnen raken of kan de zaak kan ontsporen.
Dan moet er nog duidelijk gemaakt worden welke blokken bij elkaar horen.
Dat doen we met de optie "Onderhouden blokgroepen".
De blokken 27, 29, 31, 33 en 35 moeten samen een blokgroep vormen.
Hierbij zijn de volgende opties van belang:
• Enkele treinbeweging moet zijn geactiveerd.
• Gecombineerde stopmelder moet ook zijn geactiveerd.
Ditzelfde geld voor de blokken 39, 41, 43, 45 en 47.
Ook deze vormen een blokgroep.
De belangrijkste instellingen zijn nu gemaakt.
Blijft over dat de bezetmelders voor blok 25 en 36 nog ingevuld moeten worden.
Dit zijn standaard instellingen zoals je bij een normaal blok doet.
Wel heb ik bij de stopmelder (2e melder) opgegeven dat het vorige blok vrijgegeven mag worden.
Nu kan er proef gereden worden op het schaduwstation.
Hoe de 1e proefritten zijn verlopen kun je in lezen.