asper
14.02.2016, 22:08

+15Automatische Zugsteuerung mit SBrick und Raspberry PI

Guten Abend,

Das ist noch nicht fertig, aber vielleicht kann ja das dem einen oder anderen als Anregung dienen.

Den ersten SBrick habe ich nun schon recht lange. Im November gab's den zweiten. Gedacht waren die von mir von Anfang an für Züge. Das hat auch einigermaßen funktioniert, auch wenn Züge vom Profil-Designer und der App nicht gut unterstütz werden.

Auslöser für die Kaufentscheidung war aber vor allem die Ankündigung, das Protokoll offen zu legen. Das ist auch geschehen und es gibt ein paar interessante Beispiele im Netz, wie man über Bluetooth mit dem SBrick reden kann. Den Code von GitHub Nutzer "JorgePe" habe ich schon vor einiger Zeit entdeckt und seit Freitag habe ich mit dem Raspberry PI 2 auch eine Plattform für die "Steuerzentrale". Mit dem modifizierten python Code und zwei Reed Schaltern kann ich nun auf einer eingleisigen Strecke abwechselnd zwei Züge fahren lassen:


(Man sieht den Raspberry PI 2 als Platine ohne Gehäuse auf der Tischplatte, der weiße Klotz ist eine USB-Stromversorgung. Die einzige Verkabelung ist die Verbindung der Reed-Kontakte zum Raspberry. Die Züge sind minimale Power Functions Züge, bei denen der LEGO IR-Empfänger durch einen SBrick ersetzt wurde.)

Da die Züge die Weichen "aufschneiden" brauche ich (noch) keinen Weichenantrieb.

Noch ein Detailbild mit Reed-Kontakt:

[image]



Für einen unbeaufsichtigten Ausstellungsbetrieb reicht das schon mal - die Zugfolge muss ja nicht so starr bleiben.

viele Grüße
Steffen


flickr


sorn , , Hopihalido , Thomas52xxx , michael42 , Firefighter112 , stonetown , UncleTom , Valkon , TECHNO , MARPSCH , Legoben4559 , BricksCorner , bp10030 , JuL gefällt das (15 Mitglieder)


9 vorhergehende Beiträge sind ausgeblendet

Alle anzeigen Immer alle anzeigen Beitragsbaum

Lok24
16.02.2016, 10:11

Als Antwort auf den Beitrag von LuDaCriSoNe

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

LuDaCriSoNe hat geschrieben:

Wofür extra nen S-Brick und Raspberry benutzen, wenn das auch easy mit Lego Mindstorms funktioniert?!?


Weil der S-Brick via Funk geht und die Steuerung mit Mindstorms via Infrarot, und auch das nur mit einem Zusatzbaustein NXT IRLink für viel Geld und die Anzahl der Kanäle immer noch beschränkt ist.

Mit der Infrarotsteuerung und den Standardprotokollen ist ein sicherer automatischer Zugbetrieb nicht möglich.



LuDaCriSoNe
16.02.2016, 10:34

Als Antwort auf den Beitrag von Lok24

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Lok24 hat geschrieben:

LuDaCriSoNe hat geschrieben:
Wofür extra nen S-Brick und Raspberry benutzen, wenn das auch easy mit Lego Mindstorms funktioniert?!?


Weil der S-Brick via Funk geht und die Steuerung mit Mindstorms via Infrarot, und auch das nur mit einem Zusatzbaustein NXT IRLink für viel Geld und die Anzahl der Kanäle immer noch beschränkt ist.

Mit der Infrarotsteuerung und den Standardprotokollen ist ein sicherer automatischer Zugbetrieb nicht möglich.


Es gibt da auch eine andere Lösung.
Man nehme ein Mindstorms 1.5 Set mit Lichtsensor und 2 Motoren. Die Motoren werden an die PF FB gebaut, einer dreht die Geschwindigkeit und der andere drückt auf Stop. Der Lichtsensor wird da platziert wo der Zug halten soll zB im Bahnhof. Das richtige Programm dafür, ist schnell am PC mit der Lego Software gebastelt. Mit einem 3ten Motor lässt sich noch eine Weiche Steuern und mit weiteren Lichtsensoren, kann der Zug auch öfters halten (von einem Bahnhof zum anderen).

Ist sicher nicht die beste Lösung, aber es funktioniert und ist komplett Lego. Wer aber zig Züge steuern möchte, für den wäre eine digitale Anlage wohl am besten. Also in jeden 9V Motor, einen festen Decoder.


Instagram -> the_collector_of_lego
https://brickset.com/sets/ownedby-LuDaCriSoNe


asper
16.02.2016, 12:03

Als Antwort auf den Beitrag von LuDaCriSoNe

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Digital und 9V ist bestimmt auch interessant, aber da habe ich leider gar nichts und müsste von vorne beginnen. Ich bin mit PF ins LEGO-Hobby eingestiegen. Schon den RC-ICE musste ich gebraucht kaufen.

Also ist bei mir PF erst mal die Grundlage. Aber da - Werner hat's ja schon geschrieben - gibt es große Probleme mit der Fernsteuerung mit IR. Begonnen habe ich auch mit einem Arduino und einer IR-LED. Das hat auch wunderbar funktioniert, so lange die LED den Zug "gesehen" hat. In Wohnräumen mit reflektierenden Wänden geht das vielleicht noch, aber auf Ausstellungen funktioniert das nicht. Zum einen ist die Wahrscheinlichkeit bei nur 8 verfügbaren Kanälen relativ hoch, dass mein Zug und der Kran vom Nachbar denselben Kanal nutzen, zum anderen hat das IR Signal ab zwei/drei Meter Entfernung keine Chance mehr gegen die Deckenbeleuchtung/Sonnenlicht/... .

(Und dann siehst Du das Hindernis auf den Gleisen, drückst verzweifelt auf den Stop Knopf und musst doch zuschauen, wie Dein Zug von der Platte stürzt...)


flickr


TECHNO
16.02.2016, 13:53

Als Antwort auf den Beitrag von asper

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Die Idee gefällt mir richtig gut!
Ich habe mir vor kurzer Zeit auch einen Sbrick für meine Legoeisenahn gekauft und muss sagen, es bringt schon einen Mehrwert gegenüber dem originalen Legosystem.
Ich wünschte ich wäre auch in der Lage mit dem RPI so etwas zu programmieren, bin ich aber leider nicht.

Für Ausstellungen wäre so eine Steuerung natürlich optimal um die Anlage mal unbeaufsichtigt zu lassen.
Da wäre natürlich ein Interface/Programm toll, bei dem man entweder "manuell" die Züge auswählen kann die Fahren, oder eine festgelegte "automatische" Reihenfolge, sodass alle Züge nacheinander fahren.

Toll realisierbar wäre damit auch ein realistischer Betrieb mit Streckenblöcken, sodass mehrere Züge hintereinander auf freier Strecke fahren können ohne zusammenzustoßen.
Wie beim Vorbild eben :-)

Theoretisch könnte man das Ganze noch realistischer machen, indem man an der Strecke Signale mit PF LED's aufstellt, die durch das RPI parallel zum Zugbetrieb gesteuert werden.
Dann müsste an jedem Signal ein Reedkontakt liegen, der der PZB im echten Zugbetrieb nahe käme. So könnte man zum Beispiel Vorsignale und Hauptsignale bauen, am Vorsignal wird der Zug dann langsamer, sodass er vor dem dementsprechenden Hauptsignal zum stehen kommt. Wenn der nächste Blockabschnitt frei ist, kann der Zug dann weiter fahren.
Auf der freien Strecke wäre hier ein System mit KS-Signalen einfacher zu realisieren, da man in dem Sinne keine Vorsignale bräuchte.

Ich hätte da noch so viele Ideen, wie man das mit dem RPI automatisieren könnte, aber das Sprengt hier jetzt glaub ich den Rahmen. :-)

Ich kann nur sagen: bleib auf jeden Fall dran!

Gruß Dennis


Noppenbahner.de


LuDaCriSoNe
16.02.2016, 14:25

Als Antwort auf den Beitrag von asper

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

asper hat geschrieben:

Digital und 9V ist bestimmt auch interessant, aber da habe ich leider gar nichts und müsste von vorne beginnen. Ich bin mit PF ins LEGO-Hobby eingestiegen. Schon den RC-ICE musste ich gebraucht kaufen.

Also ist bei mir PF erst mal die Grundlage. Aber da - Werner hat's ja schon geschrieben - gibt es große Probleme mit der Fernsteuerung mit IR. Begonnen habe ich auch mit einem Arduino und einer IR-LED. Das hat auch wunderbar funktioniert, so lange die LED den Zug "gesehen" hat. In Wohnräumen mit reflektierenden Wänden geht das vielleicht noch, aber auf Ausstellungen funktioniert das nicht. Zum einen ist die Wahrscheinlichkeit bei nur 8 verfügbaren Kanälen relativ hoch, dass mein Zug und der Kran vom Nachbar denselben Kanal nutzen, zum anderen hat das IR Signal ab zwei/drei Meter Entfernung keine Chance mehr gegen die Deckenbeleuchtung/Sonnenlicht/... .

(Und dann siehst Du das Hindernis auf den Gleisen, drückst verzweifelt auf den Stop Knopf und musst doch zuschauen, wie Dein Zug von der Platte stürzt...)


Ich wollte ja nur sagen, dass es auch andere Möglichkeiten gibt, die eben auch billiger sind. Ich bin ja noch in der Planung, aber meine Anlage wird definitiv Digital laufen. Ich hab über 20 Züge, da wäre der SBrick in der Anschaffung viel zu teuer. Einer kostet glaube ich um die 50€... ein kleiner Lokdecoder nur 10-20€.

Für einzelne Projekte kann man den gut gebrauchen, genauso wie Mindstorms. Aber für eine große Anlage, wäre mir die SBrick Methode zu teuer. Wobei ich auch bezweifle, dass der SBrick überhaupt soviel wert ist.


Instagram -> the_collector_of_lego
https://brickset.com/sets/ownedby-LuDaCriSoNe


Steinemann
16.02.2016, 16:08

Als Antwort auf den Beitrag von LuDaCriSoNe

Re: Muahahahahahahah

LuDaCriSoNe hat geschrieben:

Steinemann hat geschrieben:
...easy mit Lego Mindstorms funktioniert...


Es sei denn, man ist dumm... dann sieht das natürlich anders aus.


Wenn du es sagst, dann bau nur schön.



UncleTom
16.02.2016, 17:10

Als Antwort auf den Beitrag von asper

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Hallo Steffen,

asper hat geschrieben:


ich habe fest vor, hier weiterzumachen und mehr Details zur Verfügung zu stellen. Aber "fertig" ist schwierig zu definieren


Kommt mir bekannt vor :-) Ein "gefühltes Beta-Stadium" wäre mir schon genug ;)

asper hat geschrieben:

Und so ein Zeitfenster wie am Wochenende wird sich auch nicht mehr so schnell auftun. Wenn undokumentierter Code ausreicht, kann ich den gerne vorab per PN zur Verfügung stellen - viel ist's ja noch nicht.


"If it was hard to write, it should be hard to read" - damit komme ich klar. Auch mit dem Raspberry Pi an sich bin ich vertraut. Allerdings habe ich mich mit der GPIO-Schnittstelle noch nicht beschäftigt.

Derzeit befinde ich mich aber eh in Umzugsvorbereitung dank Arbeitgeberwechsel, von daher habe ich auch Geduld bis zu Deinen nächsten Fortschritten

asper hat geschrieben:

viele Grüße aus Karlsruhe

Viele Grüße (noch) aus Stutensee
Thomas



BricksCorner
16.02.2016, 22:18

Als Antwort auf den Beitrag von LuDaCriSoNe

+1Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Ich hab über 20 Züge, da wäre der SBrick in der Anschaffung viel zu teuer. Einer kostet glaube ich um die 50€... ein kleiner Lokdecoder nur 10-20€.


Ja, nur kommen dazu noch die Kosten für die Mindstorms-Ausrüstung und die ca. 20 bis 40 9V-Motoren... Beim Vergleichen sollten immer alle Positionen auf dem gleichen Level mit eingerechnet werden.

Viele Grüße
Christian


[image]


Betreiber einer fiktiven Privatbahn in 1:43 sowie Entwickler und Erbauer von Eisenbahnmodellen in 9W = Maßstab 1:43/passend zur Minifig.

Wir sehen uns am


gefällt das


BricksCorner
16.02.2016, 22:21

Als Antwort auf den Beitrag von asper

Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Hi Steffen,

geniale Idee. Ich sehe schon "unsere" Gemeinschaftsanlage in Köln mit Zugwechselbetrieb und vorbildnaher Zugfolge

Viele Grüße
Christian


[image]


Betreiber einer fiktiven Privatbahn in 1:43 sowie Entwickler und Erbauer von Eisenbahnmodellen in 9W = Maßstab 1:43/passend zur Minifig.

Wir sehen uns am


Lok24
17.02.2016, 09:28

Als Antwort auf den Beitrag von LuDaCriSoNe

Editiert von
Lok24
17.02.2016, 09:58

+2Re: Automatische Zugsteuerung mit SBrick und Raspberry PI

Hallo,

LuDaCriSoNe hat geschrieben:

Man nehme ein Mindstorms 1.5 Set mit Lichtsensor und 2 Motoren. Die Motoren werden an die PF FB gebaut, einer dreht die Geschwindigkeit und der andere drückt auf Stop. Der Lichtsensor wird da platziert wo der Zug halten soll zB im Bahnhof.


Dazu benötigt man kein Mindstorms. Das geht auch mit einfachen Kontakten und PF-Motoren. Automatisierung geht sehr einfach mit Technic allgemein, Schaltwerke etc sowieso.

LuDaCriSoNe hat geschrieben:
Ist sicher nicht die beste Lösung, aber es funktioniert und ist komplett Lego.


Du hast das schon mal gebaut?
Ich schon, und ich darf Dir verraten: Es funktioniert nicht.
Und zwar deswegen weil der Zug sich bewegt und damit schneller aus dem IR-Sendebereich draußen ist als gewünscht.

Es gibt eben keinen Zusammenhang zwischen Winkelstellung der Regler und tatsächlicher Zuggeschwindigkeit. Damit ist eine Steuerung des Zuges immer zufällig.

Grüße

Werner



, bp10030 gefällt das


Gesamter Thread: