Print deze pagina | Sluit het venster

Complexe functie programmeren: beetje te moeilijk voor me

Geprint door: Koploperforum Digitale Treinbesturing
Webadres onderwerp: http://www.koploperforum.nl/topic.asp?TOPIC_ID=6173
Geprint op: 23 apr 2019

Onderwerp:


Auteur onderwerp: Marcobello
Onderwerp: Complexe functie programmeren: beetje te moeilijk voor me
Geplaatst op: 08 dec 2018 11:47:39
Bericht:

Beste mensen,

Ik zit met een probleem dat ik niet opgelost krijg, maar dat wellicht voor velen makkelijk te programmeren is in Koploper. Ik beschrijf het even. Ik heb een lokomotief die ontspoort wanneer hij te snel over n bepaalde wissel rijdt. Het blok in aanloop naar die wissel is tamelijk lang. Ik zou dus die lok willen laten afremmen net voor hij aan die wissel arriveert en dan zachtjes de wissel laten nemen, waarna hij weer mag versnellen naar de snelheid van het daarop volgende stationsblok. Eigenlijk wil ik dus een snelheidsbeperking opleggen aan een wisselstraat, maar voor slechts 1 (of enkele) loks.


Ik wil er ook nog bij vermelden dat het blok voorafgaand aan de wissel 2 bezetmeldingen heeft. En bij het binnenrijden van het blok en n op 25 cm van de wissel bij het binnenrijden van de stopsectie.

De logische actie die ik wil opzetten is dus:
als lok 15 op bloksectie 8.02 kan doorrijden, dan mag hij vanaf deze sectie niet sneller dan 40 km/uur de wisselstraat (1 wissel) oprijden.

Kunnen jullie mijn geest en gemoed verlichten (in 2 betekenissen). Erg bedankt.

Marc

Reacties:


Reageer op auteur: Bonaza
Gereageerd: 08 dec 2018 17:14:10
Bericht:

Dag Marc,

In koploper is het mogelijk om een snelheidsbeperking in een wisselstraat op te geven. Zie hiervoor bijgevoegd voorbeeld.
Dit doe je in onderhouden baandefinities "baanontwerp". En dan vastleggen wisselstraten. Dan krijg je het voorbeeld venster en kan je de wisselstraat opvragen.

Een tweede mogelijkheid heb je door een maximum snelheid in te voeren bij "Onderhouden" "Gegevens treintype/bloktype". Dit doe je dan in het voorgaande blok van de wissel. Maar je zal dit toch nog in de wisselstraat moeten onderhouden.

Met vriendelijke groeten

Marcel

Download Attachment: Naamloos.jpg
59,36KB


Reageer op auteur: Marcobello
Gereageerd: 08 dec 2018 18:23:25
Bericht:

Marcel,

Bedankt voor je reactie.

De functies die je noemt ken ik, maar die gelden voor alle loks. Ik wil dat doen voor slechts een paar loks apart. Ik vrees dus dat dat enkel met een logische actie gaat lukken. En die programmeren, kan ik niet.

Marc


Reageer op auteur: Bonaza
Gereageerd: 08 dec 2018 20:42:52
Bericht:

Marc,

Toch denk ik dat het met de tweede mogelijkheid kan. Daar de laatste bezetmelding slechts op 25 cm van de wissel is, de loc zal nooit op 25 cm terug kunnen optrekken naar een onaanvaardbare snelheid. Via treintype/bloktype kan je dit perfect voor slechts enkele locs instellen.

Groeten

Marcel


Reageer op auteur: phdirk
Gereageerd: 09 dec 2018 22:10:18
Bericht:

Hallo Marc,

De oplossing die voor jou wel eens zou kunnen werken is de snelheidsbeperking per loc bij [Aanvulling Blokgegevens]=>[Divers]. Daar kun je op basis van een logische actie een maximum snelheid instellen. Dus bijvoorbeeld Logische actie 'Onspoorloc in blok voor lastige wissel' en dan een maximum snelheid instellen die laag genoeg is om de loc veilig over het lastige wissel heen te loodsen. Zo heb ik dit soort problemen wel eens opgelost, al blijft het natuurlijk beter ervoor te zorgen dat de loc niet op het wissel ontspoort, maar soms is dat lastig te bereiken.


Met beste groeten
Dirk
HO=TC


Reageer op auteur: Marcobello
Gereageerd: 11 dec 2018 16:10:28
Bericht:

PhDirk, bedankt voor je suggestie. Kun jij ook concreet zeggen hoe ik die actie moet programmeren? Bedankt.


Reageer op auteur: Wim Ros
Gereageerd: 11 dec 2018 17:48:49
Bericht:

Dirk,

quote:
De oplossing die voor jou wel eens zou kunnen werken is de snelheidsbeperking per loc bij [Aanvulling Blokgegevens]=>[Divers].


Waar vind ik die optie, die ken ik nog niet.

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: phdirk
Gereageerd: 11 dec 2018 22:26:22
Bericht:

Hallo Wim,

De formulering is inderdaad wat kort door de bocht, maar het werkt wel. Als je een logische actie maakt die kijkt of loc X in blok Y is en als die logische actie waar is de snelheidsbeperking laat ingaan werkt het zo. Bij mij werkt het in ieder geval prima.

Marc, op basis van het bovenstaande moet je dus een logische actie maken en vervolgens die actie gebruiken voor je snelheidsbeperking.
Als je in de buurt van Putten woont kan ik ook eens bij je langskomen om het samen aan te pakken.

Met beste groeten
Dirk
HO=TC


Reageer op auteur: Wim Ros
Gereageerd: 12 dec 2018 11:57:01
Bericht:

Dirk,

Je geeft alleen geen antwoord op mijn vraag.

Aanvullende blokgegevens? waar geef ik daar die snelheidsbeperking in via een logische actie? Heb jij een andere koploper versie? Of heb jij een andere anvullende blokgegevens' of bedoel je iets anders?

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Ben
Gereageerd: 12 dec 2018 13:30:32
Bericht:

Hier Wim:



Gr, Ben.


Reageer op auteur: Wim Ros
Gereageerd: 12 dec 2018 17:35:00
Bericht:

Ok, oorzaak waarom ik dat niet in beeld kreeg was ik had een database waar de uitgebreide mogelijkheden nog niet actief waren.
Dus dit werkt alleen als je deze actief maakt, misschien ook een hint voor Marc.

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Bonaza
Gereageerd: 12 dec 2018 17:51:24
Bericht:

Ook weeral iets bij geleerd in koploper. Deze mogelijkheid kende ik ook nog niet. Goede tip Dirk.

Grts

Marcel


Reageer op auteur: Bonaza
Gereageerd: 12 dec 2018 21:05:34
Bericht:

Maar we blijven wel voorbij het probleem van Marc stappen. Zijn vraag is niet de snelheid te beperken in het blok voor de wissel, maar in de wisselstraat.

Eigenlijk wil ik dus een snelheidsbeperking opleggen aan een wisselstraat, maar voor slechts 1 (of enkele) loks.

Een snelheids beperking oplegggen voor een bepaalde loc in een wisselstraat is dus niet mogelijk. Moraal van het verhaal: Zorg dat de loc niet ontspoort op de wissel.

Grts

Marcel




Reageer op auteur: JPJ
Gereageerd: 12 dec 2018 22:40:46
Bericht:

Is toch op te lossen met logische actie trein rijd van naar blok.
En dan de speciale actie erbij.

Jos


Reageer op auteur: Ben
Gereageerd: 13 dec 2018 06:58:58
Bericht:

Zo is het. Probeer het maar uit Marcel.

Gr, Ben.


Reageer op auteur: Marcobello
Gereageerd: 15 dec 2018 09:56:24
Bericht:

En dat laatste, beste mensen, lukt me niet om in te stellen en te programmeren.

Ik krijg dus die 'divers' niet op het scherm, ook al kies ik voor de uitgebreide functies (heb voor alle zekerheid de laatste versie van Koploper gedownload).

Kan iemand me dan ook stapje voor stapje uitleggen hoe en wat ik moet instellen (ook de logische actie) om dat voor elkaar te krijgen? En dus best niet enkel op de wisselstraat maar ook al in de stopsectie van het blok dat voor de wissel ligt. Bedankt!


Reageer op auteur: Marcobello
Gereageerd: 15 dec 2018 10:10:59
Bericht:



En dat laatste, beste mensen, lukt me niet om te programmeren.

Kan iemand me dan ook stapje voor stapje uitleggen hoe en wat ik moet instellen (ook de logische actie) om dat voor elkaar te krijgen? En dus best niet enkel op de wisselstraat maar ook al in de stopsectie van het blok dat voor de wissel ligt. Bedankt!
[/quote]


Reageer op auteur: Wim Ros
Gereageerd: 15 dec 2018 12:02:06
Bericht:

Stap 1 is zet bij INSTELLINGEN PER DATABASE tabblad 1 het vinkje bij uitgebreide mogelijkheden, zoals ik in mij vorige bericht al aangaf.
Dan heb jij de mogelijkheden divers.

Logische actie rijden van blok x naar blok y geldig voor locomotief.

Deze logische actie vul je in bij divers en je bepaald de snelheid daar voor die locomotief.

En klaar is klaartje.

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Marcobello
Gereageerd: 15 dec 2018 14:54:41
Bericht:

Bedankt allemaal voor jullie ideen.

Maar bij de concrete omschrijving van Wim gaat het nog steeds om een blok waarin de loc vertraagt(voor de wissel) en bv. niet voor de remsectie die voor de wissel ligt. Ik zit namelijk met een lang blok voor die wissel en dan gaat de trein te lang traag rijden. Ik zou iets moeten kunnen instellen met een bezetmelder. Dus: als die lok over die bezetmelder rijdt, moet hij vertragen.


Reageer op auteur: phdirk
Gereageerd: 15 dec 2018 17:08:15
Bericht:

Hallo Marc,

Ook dat is min of meer op dezelfde wijze in te regelen, maar het is wel iets complexer.
In plaats van de logische actie Loc A rijdt van x naar y maak je dan de logische actie Bezetmelder Z wordt bezet door Loc A. Dan gaat op het moment dat loc A op bezetmelder Z komt deze langzamer rijden. Je kunt dan als bezetmelder de laatste melder voor de wissel nemen, maar dan is de vraag of de snelheid voldoende laag is als de loc het wissel bereikt. Je zou dan eerder in het blok nog een bezetmelder moeten opnemen die de triggerfunctie op zich neemt.


Met beste groeten
Dirk
HO=TC


Reageer op auteur: Ben
Gereageerd: 15 dec 2018 17:17:52
Bericht:

Virtuele melder in het blok voor het wissel zetten kan dan een oplossing zijn.


Reageer op auteur: JPJ
Gereageerd: 15 dec 2018 18:20:19
Bericht:

Of de maximum snelheid in het blok staat nog te hoog.
Oftewel waar blijft de database ?


Reageer op auteur: Bonaza
Gereageerd: 15 dec 2018 19:08:10
Bericht:

Marc,

Over hoeveel locomotieven gaat dit probleem ? En tegen welke snelheid denderen deze dan door het laatste blok voor de wissel? Want misschien is het mogelijk van inderdaad in het blok voor de wissel de maximum snelheid toch ietsje te verlagen. Zonder dat het een eeuwigheid duurt voordat de locomotieven door dit blok rijden. Mogelijk kan je de maximum snelheid van de probleem locomotieven ietsje verlagen. Een vituele melder plaatsen is een mogelijkheid. Een drastische mogelijkheid is dit blok opsplitsen in twee blokken. Je kan ook nog het blok met de laatste bezetmelder voor de wissel langer maken. Plaats best toch maar eens je database dat we je probleem eens kunnen bekijken.

Groeten

Marcel


Reageer op auteur: Wim Ros
Gereageerd: 15 dec 2018 19:51:23
Bericht:

Marc,

Het was ook maar een voorbeeld op de optie van/naar te gebruiken in de logische actie.

Je kunt ook de voorwaarde bezetmeldpunt is bezet gebruiken. Koploper bied je verschillende opties waar je uit kunt kiezen. Kies een optie die het beste jouw aan jouw wens/voorwaarde voldoet.

Mvg
Wim.



Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Marcobello
Gereageerd: 16 dec 2018 20:21:01
Bericht:

Beste mensen,

De computer waarop Koploper draait, staat niet op dezelfde plek als de computer waarmee ik mail, maar indien nodig haal ik de database eraf en breng ze naar hier.

Maar eigenlijk gaat het om n lok trager te laten rijden vanaf het bezetmeldpunt voor de wissel.

De laatste suggestie van Wim lijkt de oplossing in te houden, nl. een logische actie opzetten wanneer de lok over een bezetmeldpunt rijdt. Vraag is wel nog hoe ik die logische actie kan koppelen aan n lok (ik kan nl bij "bezetmeldpunt is bezet" geen lok aanvinken - loks blijven grijs) en waar ik die logische actie moet gebruiken in Koploper, want dat is wellicht toch niet meer bij "aanvullende blokgegevens". Kun je nog n keer heel concreet schrijven welke stapjes ik daarvoor moet zetten? Bedankt.


Reageer op auteur: Ben
Gereageerd: 17 dec 2018 08:41:56
Bericht:

Uitbreiden met extra logische acties dan.

* Maak een logische actie "Lok rijdt van / naar blok", selecteer het gewenste van / naar blok en selecteer de bewuste lok.
* Maak een logische actie "melder bezet" en kies de bewuste stopmelder waarbij de lagere snelheid moet gaan ingaan.
* Maak een logische actie "AND/OR" en kies "Poort: AND. En in het tabblad AND/OR kies je beide voorgaande logische acties als input voor "waar".

Tot slot kies je de laatste logische actie bij "aanvulling blokgegevens, tabblad Divers" en je vult de gewenste snelheid in.

Zo zou het moeten lukken.

Gr, Ben.


Reageer op auteur: Marcobello
Gereageerd: 17 dec 2018 18:25:07
Bericht:

Bedankt, Ben. Dat ga ik proberen. Bedankt ook alle anderen voor jullie hulp.

Bestaat er overigens een gadetailleerde handleiding om te leren werken en omgaan met logische acties?


Reageer op auteur: Bonaza
Gereageerd: 17 dec 2018 21:18:01
Bericht:

Marc,

Als je echt rustig de tijd neemt om de uitgebreide handleiding van koploper op de site van Paul te lezen dan kom je heel ver. Ze staat daar toch wel uitgebreid vanaf blz 213. Maar je moet het echt wel in alle rust lezen en begrijpen.

Grts

Marcel


Reageer op auteur: Marcobello
Gereageerd: 18 dec 2018 16:07:57
Bericht:

Beste Marcel,

Het makkelijkst leer ik via de inductieve weg. Dat betekent van iemand een conrete oplossing krijgen en dan nagaan welke principes gebruikt werden. Ik blijf het nog een goede idee vinden om oplossingen te verzamelen voor problemen die met logische acties (of een samenstelling ervan) kunnen opgelost worden en die ergens op een site te plaatsen.

Ik zal mij nog eens op de handleiding gooien!

Bedankt allemaal voor het meedenken.

Marc


Reageer op auteur: Wim Ros
Gereageerd: 18 dec 2018 18:15:59
Bericht:

Dan zou ik zeggen, plaats dan even je database, en geef aan wat je wil.

Dan zal ik er even 5 minuten aan besteden.

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Wim Ros
Gereageerd: 19 dec 2018 14:08:23
Bericht:

Marcobello,

Hier een voorbeeld voor de NS1213 als die van b18 naar b10 gaat, met een beperkte snelheid van 40KM/U
Werkt alleen met geijkte snelheden!!

Mvg
Wim.


Download Attachment: TestJuni.zip
6,31 KB

Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Marcobello
Gereageerd: 19 dec 2018 17:20:47
Bericht:

Wim, bedankt voor het toepassen van wat Ben uitdokterde. Dit is inderdaad een prachtige oplossing voor wat ik zocht.


Reageer op auteur: Wim Ros
Gereageerd: 19 dec 2018 17:58:44
Bericht:

Het allerbelangrijkste is dat het ook nog eens begrijpt. Want anders heb je er nog niets aan.

Mvg
Wim.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Reageer op auteur: Bonaza
Gereageerd: 19 dec 2018 19:16:26
Bericht:

Wim,

Een vraagje. Je hebt ook nog een logische actie "Melder 203 bezet" aan gemaakt. Maar verder gebruik je die niet. Of zie ik ergens over ?

Groeten

Marcel


Reageer op auteur: Wim Ros
Gereageerd: 19 dec 2018 21:49:48
Bericht:

Die is voor een eventuele OR samen met M304, en of M304 bezet blijft voordat ook M203 bezet gemaakt wordt, valt die eerder als dan is de logische actie niet meer geldig. Maar dat is aan jouw hoe en of je de wil gebruiken. Het is aan je eigen logische inzicht hoe je die wil of gaat gebruiken. En of het voorbeeld aan je wensen voldoet, en of het nog moet worden fijn geslepen.
In koploper is bijna alles mogelijk zolang de gebruiker maar snapt en weet hoe.

Mvg
WIm.


Alleen de waarheid ligt in het midden

s88SD16-n s88XPressNetLI LocoNet-Interface s88LN xTreme Keerlus


Koploperforum Digitale Treinbesturing : http://www.koploperforum.nl/

© EKweb 2006

Sluit venster