flexible Programmierung???
flexible Programmierung???
Hallo,
ich studiere Systemtechnik und Technische Kybernetik und werde demnächst ein Projekt am Max-Planck_Institut für komplexe dynamische Systeme übernehmen. Es geht darum, eine mathematische Theorie, die sich mit der Optimierung von zyklischen Prozessen beschäftigt (z.B. ein Zugfahrplan), in einem kleinen konkreten Projekt zu verwirlkichen. Das soll eine kleine Modellbahn sein, auf der ein solcher zyklischer Prozess abläuft.
Ich suche nun ein Programm, mit dem ich die Züge ansteuern kann, bei dem ich die Reaktionen auf bestimmte Ereignisse selbst programmieren kann, d.h. es müssen viele Sensoren mit eingebaut werden können, alles in allem also muss ich das Programm sehr flexibel gestalten können. Meine Frage nun also: ist es möglich, eine Modellbahn z.B. mit einem Programm, welches in C geschrieben wurde zu steuern, und wenn, gibt es dafür schon vorgefertigte Schnitttstellen????
Wie steuern Sie z.B. diese Riesige Anlage in Hamburg???
Ich wäre für eine Antwort sehr dankbar.
Vielen Dank
mirdad
ich studiere Systemtechnik und Technische Kybernetik und werde demnächst ein Projekt am Max-Planck_Institut für komplexe dynamische Systeme übernehmen. Es geht darum, eine mathematische Theorie, die sich mit der Optimierung von zyklischen Prozessen beschäftigt (z.B. ein Zugfahrplan), in einem kleinen konkreten Projekt zu verwirlkichen. Das soll eine kleine Modellbahn sein, auf der ein solcher zyklischer Prozess abläuft.
Ich suche nun ein Programm, mit dem ich die Züge ansteuern kann, bei dem ich die Reaktionen auf bestimmte Ereignisse selbst programmieren kann, d.h. es müssen viele Sensoren mit eingebaut werden können, alles in allem also muss ich das Programm sehr flexibel gestalten können. Meine Frage nun also: ist es möglich, eine Modellbahn z.B. mit einem Programm, welches in C geschrieben wurde zu steuern, und wenn, gibt es dafür schon vorgefertigte Schnitttstellen????
Wie steuern Sie z.B. diese Riesige Anlage in Hamburg???
Ich wäre für eine Antwort sehr dankbar.
Vielen Dank
mirdad
Hallo,
es ist möglich eine Modellbahn mit einem Programm zu steuern, dass in C/C++, VB oder anderen programmiert ist.
Ich selbst habe ein Programm in VB geschrieben, mit dem ich unsere Modellbahn steuere (die Steuerung funktioniert, in kürze erfolgt die Entwicklung der Fahrplansteuerung).
Die Schnittstellen sind nicht direkt vorgefertigt, wenn Sie Ihr Programm selbst entwickeln wollen, sind nur die Schnittstellen zur seriellen Schnittstelle fertig und die Definitionen was Ihr Modellbahninterface an Daten benötigt um bestimmte Dinge zu tun. Der Rest ist Ihr Werk !!!
Es gibts allerdings viele fertige Programme zur Steuerung von Modellbahnen, die auch entsprechend Ihrer Beschreibung Bahnen steuern.
Sie sollten sich z.B. mal das in MiWuLa verwendete Produkt anschauen. Hier gibt es einige Möglichkeiten zur ereignisgesteuerten Behandlung.
Viel Erfolg bei Ihrem Projekt
Michael
es ist möglich eine Modellbahn mit einem Programm zu steuern, dass in C/C++, VB oder anderen programmiert ist.
Ich selbst habe ein Programm in VB geschrieben, mit dem ich unsere Modellbahn steuere (die Steuerung funktioniert, in kürze erfolgt die Entwicklung der Fahrplansteuerung).
Die Schnittstellen sind nicht direkt vorgefertigt, wenn Sie Ihr Programm selbst entwickeln wollen, sind nur die Schnittstellen zur seriellen Schnittstelle fertig und die Definitionen was Ihr Modellbahninterface an Daten benötigt um bestimmte Dinge zu tun. Der Rest ist Ihr Werk !!!
Es gibts allerdings viele fertige Programme zur Steuerung von Modellbahnen, die auch entsprechend Ihrer Beschreibung Bahnen steuern.
Sie sollten sich z.B. mal das in MiWuLa verwendete Produkt anschauen. Hier gibt es einige Möglichkeiten zur ereignisgesteuerten Behandlung.
Viel Erfolg bei Ihrem Projekt
Michael
Hallo Michael,
vielen Dank erst einmal für deine Antwort. Ich hätte da mal einige Fragen dazu. Du sagst, es ist möglich, in c oder VB oder einem ähnlichen Programm den Quelltext zu schriebn, mit dem die Bahnen gesteuert werden können. Wie funktioniert das genau? Gibt es in VB z.B schon vorgefertigte BEfehle, die dann genau die richtige Bit-Folge an die serielle Schnittstelle senden? Oder muss man sich die irgendwie selber erst definieren??? ICh habe bisher noch nie etwas programmiert, wo ich direkt eine Hardware-Schnittstelle ansteuern musste, bin da deswegen gerade ein bisschen hilflos. Ich würde das Programm am liebsten in Matlab schreiben, weiß aber einfach grundsätzlich nicht, wie man solche vorgefertigten Befehle erstellt, die dann das richtige an die serielle Schnittstelle senden. Wie funktioniert das in VB? Kannst du da einfach eingeben z.B. Lock4v5 was heißen könnte, die Lock nummer vier fährt jetzt mit der GEschwindigkeit fünf???
Für eine Antwort wäre ich dankbar. Und ich hoffe es ist ok, dass ich dich jetzt gedutzt habe:-)
Gruß Johannes
vielen Dank erst einmal für deine Antwort. Ich hätte da mal einige Fragen dazu. Du sagst, es ist möglich, in c oder VB oder einem ähnlichen Programm den Quelltext zu schriebn, mit dem die Bahnen gesteuert werden können. Wie funktioniert das genau? Gibt es in VB z.B schon vorgefertigte BEfehle, die dann genau die richtige Bit-Folge an die serielle Schnittstelle senden? Oder muss man sich die irgendwie selber erst definieren??? ICh habe bisher noch nie etwas programmiert, wo ich direkt eine Hardware-Schnittstelle ansteuern musste, bin da deswegen gerade ein bisschen hilflos. Ich würde das Programm am liebsten in Matlab schreiben, weiß aber einfach grundsätzlich nicht, wie man solche vorgefertigten Befehle erstellt, die dann das richtige an die serielle Schnittstelle senden. Wie funktioniert das in VB? Kannst du da einfach eingeben z.B. Lock4v5 was heißen könnte, die Lock nummer vier fährt jetzt mit der GEschwindigkeit fünf???
Für eine Antwort wäre ich dankbar. Und ich hoffe es ist ok, dass ich dich jetzt gedutzt habe:-)
Gruß Johannes
Hallo Johannes,
dann mach ich das doch einfach auch !!!
Also es gibt von Märklin (Motorola-Format) einen Satz fertiger Befehle für die Steuerung von Modellbahnen. Dieser Befehlsatz wird einfach als Character-Zeichen an die Schnittstelle übertragen. Die Initialisierung gibts auch als Vorschlag von Märklin für Basic, was sich relativ leicht in VB umwandeln lässt.
Die ganze Sache klingt komplizierter als sie ist und lässt sich sehr einfach entwickeln.
VORSCHLAG:
Du meldest Dich bei mir per Mail und ich schicke Dir mal auszüge aus meiner Software. Vielleicht hilft Dir das ein bißchen !!!
Michael@MichiK.de
Gruß
Michael
dann mach ich das doch einfach auch !!!
Also es gibt von Märklin (Motorola-Format) einen Satz fertiger Befehle für die Steuerung von Modellbahnen. Dieser Befehlsatz wird einfach als Character-Zeichen an die Schnittstelle übertragen. Die Initialisierung gibts auch als Vorschlag von Märklin für Basic, was sich relativ leicht in VB umwandeln lässt.
Die ganze Sache klingt komplizierter als sie ist und lässt sich sehr einfach entwickeln.
VORSCHLAG:
Du meldest Dich bei mir per Mail und ich schicke Dir mal auszüge aus meiner Software. Vielleicht hilft Dir das ein bißchen !!!
Michael@MichiK.de
Gruß
Michael
- Felix (der erste)
- Forumane
- Beiträge: 1408
- Registriert: Mittwoch 25. Dezember 2002, 19:27
- Wohnort: Lüdenscheid
- Kontaktdaten:
Nochmal zu den Befehlen zurück.
Um eine Lok zu steuern, sind immer grundsätzlich zwei Befehle von nöten; die Lokadresse und die Aktion die bei dieser Adresse durchgeführt werden soll. Das sind ganz normale Zahlenwerte die bei Basic als chars an den com anschluss gesendet und dann vom Interface zur Bahn geleitet werden.
Ähnlich sieht es mit den Rückmeldern aus. Die werden auch über bestimmte Zahlenwerte ausgelesen.
Eigentlich eine ganz einfache Sache.
Ich wollte mal etwas in Python programieren, nur das scheiterte schon daran, das x-emacs das Python Modul nicht laden konnte
.
Naja aber da wird sich schon noch was finden, wenn auf dem Rechner erst mal noch Linux drauf ist .
Um eine Lok zu steuern, sind immer grundsätzlich zwei Befehle von nöten; die Lokadresse und die Aktion die bei dieser Adresse durchgeführt werden soll. Das sind ganz normale Zahlenwerte die bei Basic als chars an den com anschluss gesendet und dann vom Interface zur Bahn geleitet werden.
Ähnlich sieht es mit den Rückmeldern aus. Die werden auch über bestimmte Zahlenwerte ausgelesen.
Eigentlich eine ganz einfache Sache.
Ich wollte mal etwas in Python programieren, nur das scheiterte schon daran, das x-emacs das Python Modul nicht laden konnte
.
Naja aber da wird sich schon noch was finden, wenn auf dem Rechner erst mal noch Linux drauf ist .
hallo,
auf der Märklin-Seite sind die Befehle auch zu finden: http://www.marklin.com/tech/digital1/co ... mands.html
mich würde ja interessieren, wie eigentlich die Funktionen F1 bis F4 angesprochen werden. Das steht da nämlich nicht...
Ciao
Martin
auf der Märklin-Seite sind die Befehle auch zu finden: http://www.marklin.com/tech/digital1/co ... mands.html
mich würde ja interessieren, wie eigentlich die Funktionen F1 bis F4 angesprochen werden. Das steht da nämlich nicht...
Ciao
Martin
- Felix (der erste)
- Forumane
- Beiträge: 1408
- Registriert: Mittwoch 25. Dezember 2002, 19:27
- Wohnort: Lüdenscheid
- Kontaktdaten:
hallo
sie haben am 13.12.03 geschrieben.
Schau mal auf der von Hunter verlinkten Märklin Seite...
Da stehen die alle für Basic als Beispiele drin.
Damit müsste es möglich sein, das alles in andere Sprachen umzuschreiben.
Auch die Daten für den COM-port sind dort angegeben.
wo ist diese seite?????.
gruß thomas
sie haben am 13.12.03 geschrieben.
Schau mal auf der von Hunter verlinkten Märklin Seite...
Da stehen die alle für Basic als Beispiele drin.
Damit müsste es möglich sein, das alles in andere Sprachen umzuschreiben.
Auch die Daten für den COM-port sind dort angegeben.
wo ist diese seite?????.
gruß thomas