Computergestuurd Analoog rijden

Zelfbouw, wie doet het en hoe.
Gebruikersavatar

shoven
Berichten: 6093
Lid geworden op: 14 dec 2008 21:06
Locatie: Walcheren

Re: Computergestuurd Analoog rijden

Bericht door shoven »

piksov schreef: 24 mar 2020 16:49 Mijn sourcecode staat nog gewoon op de webserver, ik had alleen de link weggehaald:

http://www.piksov.com/digital/html/index.html

Meeste definities staan in track.h

Guus
Even gekeken. Leuk weer even in wat code te duiken. (Ha, eindelijk weer eens iemand die z'n accolades fatsoenlijk neerzet. :geek: 8-) )
Wel wat inspiratie uit Duitsland zo te zien?


Steven

Hier is mijn baan op het forum
Hier is mijn vorige baan op het forum
Hier is mijn voor-vorige baan op het forum
>>> Filmpjes van de baan

Onderwerp starter
TonN
Berichten: 411
Lid geworden op: 26 feb 2016 11:11

Re: Computergestuurd Analoog rijden

Bericht door TonN »

Wauw. Als ik alles moet lezen, kom ik niet meer aan programmeren toe. Maar er zijn wel leuke dingen uit te halen.

En ik heb nog een hoop te doen.

Later zal ik nog wat toelichting geven op mijn datamodel.



piksov
Berichten: 1418
Lid geworden op: 02 nov 2010 09:31
Locatie: Hilversum

Re: Computergestuurd Analoog rijden

Bericht door piksov »

@steven Jawohl!

Guus



Onderwerp starter
TonN
Berichten: 411
Lid geworden op: 26 feb 2016 11:11

Re: Computergestuurd Analoog rijden

Bericht door TonN »

shoven schreef: 24 mar 2020 11:45 Ik heb even zitten kijken naar het datamodel.
Wat helpt is om uit te schrijven wat er gebeurt (in essentie de werking van Koploper/iTrain e.d.). Dan krijg je vanzelf een verhaal waarin je de objecten en klassen kunt identificeren en verwerken in je objectmodel. En dan heb je vrij snel ook je datamodel.
Ton, heb je wat meer uitleg bij je datamodel?
Het belangrijkste, ingewikkeldste proces dat ik onderken is het instellen van een Rijweg. Een trein staat langs een perron, ik druk op de knop van dat spoor, ik druk op een knop van het spoor richting Amsterdam, en er moet een Rijweg (Entiteiten begin ik met hoofdletter) gezocht worden. Daarbij moet gecheckt worden of een stuk spoor al bij een andere Rijweg hoort. Het kan zijn dat er dan een andere route is die wel werkt. Wordt er een Rijweg gevonden moeten Wissels gezet worden, een Railsecties gereserveerd worden.
Bij dit letterlijke spoorzoeken moet er gekeken worden dat er niet onnodig bochten gemaakt worden. Als je van 8b naar Amersfoort rijdt, moet je via 8a, als die vrij is, niet via 9a. Bij het opslaan van de layout moet dus genoteerd worden, welke aansluitingen rechtuit en welke via afbuigend spoor genomen worden.

Mijn datamodel is nog niet volledig. Eerste opzet.

Trein: Bevat trein gegevens. Ijking, lengte, goederen/passagier/post

Railsectie: Een stuk spoor zo klein dat het niet voor hoeft te komen dat 2 treinen er tegelijk op hoeven te rijden. Bevat aansluitgegevens, lengte,

MapElement: Bevat data om het scherm op te bouwen.

Wissel:Spreekt voor zich.

Wisselstand: Bevat de mogelijke standen van een wissel, bocht informatie, aansluitdata.

Connectie: Bevat de informatie hoe de Railsecties aan elkaar geknoopt zijn.

Rijweg: Bevat de informatie over de route die een trein moet rijden.

Wat relaties:
Trein-Railsectie: Bevat de informatie waar de trein zich bevindt.

Trein-Rijweg: Bevat de opdracht waar de trein naar toe moet.

RailSectie-Mapelement: Zorgt voor de update van het scherm als spoor gereserveerd of bezet is.

Railsectie-Connectie (2x): De verbinding informatie tussen Railsecties

Rijweg-Railsectie of Rijweg-Connectie: De informatie om een route op te slaan.

En dan zie je dat het proces wat ik beschreef nog wat mogelijkheden openlaat. Trein-Railsectie heeft een overlap met Trein-Rijweg, Maar heeft een stilstaande trein een rijweg? Dat zou weer een andere afhandeling van rijwegen vragen. Er is wel uit te komen, maar het is niet triviaal.

Maar dit helpt me wel mijn gedachten te ordenen. Door erover te schrijven zie ik waar de opties zijn, en de valkuilen. Ik heb wel eens een systeem gezien waarvan het datamodel verkeerd opgezet was en waarvan de ontwikkeling een grote ramp werd.



Onderwerp starter
TonN
Berichten: 411
Lid geworden op: 26 feb 2016 11:11

Re: Computergestuurd Analoog rijden

Bericht door TonN »

Ik ben even wat stiller, maar dat wil nog niet zeggen dat er helemaal geen voortgang is. Heb even wat te melden.

Bij de meeste webpagina ligt het initiatief tot communicatie altijd bij de pagina, bv als ik zo op de knop verstuur druk en niet bij de browser. Vroeger kon dat ook niet anders, maar tegenwoordig kan ook de server initiatief nemen. Een bekende pagina waar dat gebeurt is de whatsapp web pagina. Zonder wat te doen krijg je een signaal dat er een bericht binnen is. Nu heb ik al vele pagina's gemaakt, maar dit nog nooit bij de hand gehad. Het was even puzzelen, maar best grappig. De technologie heet een websocket.
Ik heb dit nodig op het moment dat er iets op de modelbaan gebeurt, bv een trein rijdt een blok in. De bezetmelder stuurt een signaal naar de server en de server een signaal naar de webpagina. De test waarbij ik het uitgeprobeerd heb was eenvoudiger van opzet, maar dat maakt niet uit.

Weer verder naar de volgende stap
To Be Continued.


Plaats reactie