Hallo Martin,
hier auch ein schönes Model:
Auf der Brasstrains-Seite kannst du dich mal umschauen, was für tolle Messing-Modelle allgemein für Spur0 - 2Rail verfügbar sind, aber Vorsicht: Suchtgefahr
LG Ralf
Hallo Martin,
hier auch ein schönes Model:
Auf der Brasstrains-Seite kannst du dich mal umschauen, was für tolle Messing-Modelle allgemein für Spur0 - 2Rail verfügbar sind, aber Vorsicht: Suchtgefahr
LG Ralf
Hallo Moldau,
in den Staten ist alles etwas größer. Nicht nur die Loks, sondern auch das entsprechende Equipment dazu...
https://i.pinimg.com/originals/9e/57/50/9e5750a35267bc9366e2e5ecbdf450bc.png
LG Ralf
Hallo,
ich darf euch mitteilen, dass Zwängle einen neuen Besitzer gefunden hat.
Es freut mich sehr, dass die beiden Bahnhofssegmente in wohlwollende Hände kommen und weiterleben werden.
Vor allem soll das rechte Segment wieder in die Ursprungsversion zurückgebaut werden.
Eine sehr gute Entscheidung wie ich finde. Sah damals ohne die 90°-Kurve um Welten besser aus.
Vielleicht sehen wir hier den weiteren Werdegang...
@Johann:
Ich hoffe es - war ein langer Entscheidungsprozess...
Gruß Ralf
Hallo liebe Forumskollegen,
ich gebe die Spur 0 auf. Hier seht ihr den letzten Stand der Anlage. Sie wurde rechts noch erweitert zu einem L und sollte weiter zu einem FiddleYard führen. Also im geplanten Endausbau ein U im 4 x 4 Meter Zimmer.
Da ich die Anlage nicht mehr weiter baue und ich den Platz für was neues brauche steht die Anlage an einen Selbstabholer zum Verkauf.
Gruß Ralf
Hallo Martin und Norbert,
die Schneeräumer sehen sehr gut aus.
Ich bin auf jeden Fall mit einem Paar dabei.
Gruß Ralf
Hallo Thomas,
ich habe noch eine Frage: Wo sind die schmalen Zahnriehmen und Zahnscheiben zu bekommen?
Gruß Ralf
Hallo Betriebsleitung,
sehr schönes Ergebnis bis jetzt. Deine 17 wird bestimmt ein tolles Modell!
Ich finde die Nieten im 1mm-Blech gut gelungen. Kannste mal kurz dein Prägewerkzeug bzw. Vorgehensweise hier erläutern?
Danke und LG Ralf
Hallo Roland,
Ich finde Variante 3 am stimmigsten und mit der größten Tiefenwirkung.
Gruß Ralf
Hallo Norbert,
der Druck macht es. Ich hab eine günstige Badger zuerst mit 3-4 Bar betrieben - da ging fast nix weiter.
Danach mit größeren Kompressor bei 7-8 Bar betrieben und siehe da, da geht richtig was. Könnte aber noch viel besser sein.
Ob Sandstrahlen bei deiner widerspenstigen Farbe überhaupt hilft ist fraglich - nicht dass sich bei zu langen oder starken Strahlen das Gehäuse verzieht...
Gruß Ralf
Hallo,
die 6 Schrauben entfernen, dann bekommst Du das Gehäuse runter (Fahrwerk und Umlauf bleiben dabei erst mal zusammen).
Gruß Ralf
Hallo,
noch mehr Kabinentender-50er im DSO: http://www.drehscheibe-online.de/foren/read.php?017,8141438
(Ab Beitrag 7 ff)
Gruß Ralf
Hallo Christoph,
Optokoppler ist ausgangsseitig ja ein Transistor. Somit muss ich in an einer Spannung betreiben und damit ist die Geschichte ja nicht mehr potentialfrei... (an den ESU- Eingängen)
Ich kenne jetzt nicht die Eingangsbeschaltung der SwitchPilots, aber wenn es funktioniert um so besser.
Hiermit bekunde ich äußerstes Interesse an eurer Schaltung (zwischen OK und ESU). Ich habe noch ähnliche Anwendungsfälle vor umzusetzen und da ziehe ich die OK-Lösung natürlich vor.
Gruß Ralf
Hallo,
Bodo:
Optokoppler wären eine feine einfache Sache gewesen.
Leider weist ESU daraufhin, dass die Eingänge potentialfrei angesteuert werden müssen, also über Schalter (die jeweiligen Pins überbrücken). Somit fällt der Optokoppler leider flach.
Materialschlacht? Vielleicht - aber dafür bin ich flexibel mit Änderungen. Einfach PC anstöpseln und umprogrammieren...
Außerdem habe ich noch 22 Pins frei, um noch Weiteres einzubauen.
Bernd:
Zu deiner Frage - ich benutze die Relais als "Taster". Die bekommen nur solange Strom, wie die Bedientaster gedrückt sind. Ich will nicht unnötig die Relais unter Dauerstrom halten. Darum brauche ich 2 pro Servo.
Ist vielleicht Overkill, aber ich habe hier 30 dieser Relais seit Jahren rumliegen. Jetzt sind sie teilweise endlich im Einsatz.
Gruß Ralf
Hallo,
meine Fahrstrassen-Weichensteuerung ist fertig.
Eine ausführlichere technische Beschreibung der Steuerung habe ich im Digitalbereich des Forums eingestellt: Guggst du hier
Hier nur eine Kurzübersicht:
Hier das Bedienpanel (erster Wurf). Dieses wird aber später mal ersetzt durch eines mit Hintergrundbeleuchtung - hatte jetzt aber keinen Nerv mehr dazu (will endlich spielen):
Hier der Arduino mit der Relais-Platine im Gehäuse...
... und im vollem Einsatz:
Sodele - jetzt kann es mit dem Bau weiterer Segmente der Anlage weitergehen... Mal schaun, zu was ich jetzt Lust habe (meine V60 sollte ich auch mal weiter bauen)...
Gruß Ralf
Und weiter geht's:
Für den nachfolgenden Programmcode und die Weichenmatrix hier die Übersicht der Nummerierungen:
Die Weichenmatrix - bei welcher Taster-Kombination welche Relais geschalten werden müssen:
Und hier der Programmcode:
// Globale Variablen mit EingangsPins deklarierenint Input1 = 52;int Input2 = 50;int Input3 = 48;int Input4 = 46;int Input5 = 44;int Input6 = 42;int Input7 = 40;int Input8 = 38;int Input9 = 36;int Input10 = 34;int Input11 = 32; // Globale Variablen mit AusgangsPins deklarierenint Servo_1_Rel_1 = 53;int Servo_1_Rel_2 = 51;int Servo_2_Rel_1 = 49;int Servo_2_Rel_2 = 47;int Servo_3_Rel_1 = 45;int Servo_3_Rel_2 = 43;int Servo_4_Rel_1 = 41;int Servo_4_Rel_2 = 39;int Servo_5_Rel_1 = 37;int Servo_5_Rel_2 = 35;int Servo_6_Rel_1 = 33;int Servo_6_Rel_2 = 31;int Servo_7_Rel_1 = 29;int Servo_7_Rel_2 = 27;int Servo_8_Rel_1 = 25;int Servo_8_Rel_2 = 23;// Einmaliger Setup-Aufruf beim Programmstartvoid setup() { // EingangsPins als Eingang definieren: // INPUT_PULLUP = Eingang wird intern auf +5V gelegt, // dadurch Aktivierung durch "mit GND verbinden". pinMode(Input1, INPUT_PULLUP); pinMode(Input2, INPUT_PULLUP); pinMode(Input3, INPUT_PULLUP); pinMode(Input4, INPUT_PULLUP); pinMode(Input5, INPUT_PULLUP); pinMode(Input6, INPUT_PULLUP); pinMode(Input7, INPUT_PULLUP); pinMode(Input8, INPUT_PULLUP); pinMode(Input9, INPUT_PULLUP); pinMode(Input10, INPUT_PULLUP); pinMode(Input11, INPUT_PULLUP); // AusgangsPins als Ausgang definieren: pinMode(Servo_1_Rel_1, OUTPUT); pinMode(Servo_1_Rel_2, OUTPUT); pinMode(Servo_2_Rel_1, OUTPUT); pinMode(Servo_2_Rel_2, OUTPUT); pinMode(Servo_3_Rel_1, OUTPUT); pinMode(Servo_3_Rel_2, OUTPUT); pinMode(Servo_4_Rel_1, OUTPUT); pinMode(Servo_4_Rel_2, OUTPUT); pinMode(Servo_5_Rel_1, OUTPUT); pinMode(Servo_5_Rel_2, OUTPUT); pinMode(Servo_6_Rel_1, OUTPUT); pinMode(Servo_6_Rel_2, OUTPUT); pinMode(Servo_7_Rel_1, OUTPUT); pinMode(Servo_7_Rel_2, OUTPUT); pinMode(Servo_8_Rel_1, OUTPUT); pinMode(Servo_8_Rel_2, OUTPUT);}// loop() wird nach setup() fortwährend ausgeführt:void loop() { // Abfrage der Eingänge auf die gültigen Kombinationen // (digitalRead(EingangsPin, LOW), da LOW-aktiv) und // entsprechendes Schalten der Ausgänge (digitalWrite(AusgangsPin, HIGH)). if (digitalRead(Input1)==LOW) { if (digitalRead(Input2)==LOW) { digitalWrite(Servo_1_Rel_1, HIGH); waitForSwitchOff(Input2); } else if (digitalRead(Input5)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_2, HIGH); digitalWrite(Servo_3_Rel_1, HIGH); waitForSwitchOff(Input5); } else if (digitalRead(Input6)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_1, HIGH); digitalWrite(Servo_4_Rel_2, HIGH); waitForSwitchOff(Input6); } else if (digitalRead(Input7)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_1, HIGH); digitalWrite(Servo_4_Rel_1, HIGH); waitForSwitchOff(Input7); } else if (digitalRead(Input8)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_2, HIGH); digitalWrite(Servo_3_Rel_1, HIGH); digitalWrite(Servo_5_Rel_1, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); waitForSwitchOff(Input8); } else if (digitalRead(Input9)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_1, HIGH); digitalWrite(Servo_4_Rel_2, HIGH); digitalWrite(Servo_7_Rel_1, HIGH); waitForSwitchOff(Input9); } else if (digitalRead(Input10)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_1, HIGH); digitalWrite(Servo_4_Rel_2, HIGH); digitalWrite(Servo_7_Rel_1, HIGH); digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_1_Rel_2, HIGH); digitalWrite(Servo_2_Rel_1, HIGH); digitalWrite(Servo_4_Rel_2, HIGH); digitalWrite(Servo_7_Rel_1, HIGH); digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } else if (digitalRead(Input3)==LOW) { if (digitalRead(Input5)==LOW) { digitalWrite(Servo_3_Rel_2, HIGH); waitForSwitchOff(Input5); } else if (digitalRead(Input8)==LOW) { digitalWrite(Servo_3_Rel_2, HIGH); digitalWrite(Servo_5_Rel_1, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); waitForSwitchOff(Input8); } else if (digitalRead(Input9)==LOW) { digitalWrite(Servo_3_Rel_2, HIGH); digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); waitForSwitchOff(Input9); } else if (digitalRead(Input10)==LOW) { digitalWrite(Servo_3_Rel_2, HIGH); digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_3_Rel_2, HIGH); digitalWrite(Servo_5_Rel_1, HIGH); digitalWrite(Servo_6_Rel_1, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } else if (digitalRead(Input4)==LOW) { if (digitalRead(Input8)==LOW) { digitalWrite(Servo_5_Rel_1, HIGH); digitalWrite(Servo_6_Rel_1, HIGH); waitForSwitchOff(Input8); } else if (digitalRead(Input9)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_1, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); waitForSwitchOff(Input9); } else if (digitalRead(Input10)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_1, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_1, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } else if (digitalRead(Input5)==LOW) { if (digitalRead(Input8)==LOW) { digitalWrite(Servo_5_Rel_1, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); waitForSwitchOff(Input8); } else if (digitalRead(Input9)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); waitForSwitchOff(Input9); } else if (digitalRead(Input10)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_5_Rel_2, HIGH); digitalWrite(Servo_6_Rel_2, HIGH); digitalWrite(Servo_7_Rel_2, HIGH); digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } else if (digitalRead(Input6)==LOW) { if (digitalRead(Input9)==LOW) { digitalWrite(Servo_7_Rel_1, HIGH); waitForSwitchOff(Input9); } else if (digitalRead(Input10)==LOW) { digitalWrite(Servo_7_Rel_1, HIGH); digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_7_Rel_1, HIGH); digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } else if (digitalRead(Input9)==LOW) { if (digitalRead(Input10)==LOW) { digitalWrite(Servo_8_Rel_1, HIGH); waitForSwitchOff(Input10); } else if (digitalRead(Input11)==LOW) { digitalWrite(Servo_8_Rel_2, HIGH); waitForSwitchOff(Input11); } } // Alle Ausgänge wieder ausschalten turnOffOutputs();}// Funktion wartet, bis angegebene Taste losgelassen wird.void waitForSwitchOff(int InputPin) { do { delay(200); } while (digitalRead(InputPin)==LOW);}// Funktion zum Ausschalten aller benutzten Ausgänge.void turnOffOutputs() { digitalWrite(Servo_1_Rel_1, LOW); digitalWrite(Servo_1_Rel_2, LOW); digitalWrite(Servo_2_Rel_1, LOW); digitalWrite(Servo_2_Rel_2, LOW); digitalWrite(Servo_3_Rel_1, LOW); digitalWrite(Servo_3_Rel_2, LOW); digitalWrite(Servo_4_Rel_1, LOW); digitalWrite(Servo_4_Rel_2, LOW); digitalWrite(Servo_5_Rel_1, LOW); digitalWrite(Servo_5_Rel_2, LOW); digitalWrite(Servo_6_Rel_1, LOW); digitalWrite(Servo_6_Rel_2, LOW); digitalWrite(Servo_7_Rel_1, LOW); digitalWrite(Servo_7_Rel_2, LOW); digitalWrite(Servo_8_Rel_1, LOW); digitalWrite(Servo_8_Rel_2, LOW);}
So - ich hoffe für dem einen oder anderen eine Anregung gegeben zu haben.
Bei Fragen stehe ich gerne zur Verfügung.
Gruß Ralf
Hallo Freunde der Bits, Bytes und Lötkolben,
für die Digitalos unter euch möchte ich mal die Welt der Arduinos vorstellen.
In diesem Beispiel geht um meine Weichensteuerung für Zwängle.
Meine Vorgabe war die Steuerung von Weichenstraßen mit Start- / Zieltastern. Ausschlaggebend war dabei meine verhasste DKW, bei der ich immer erst 'ne halbe Stunde überlegen muss, wie die Zungen gestellt werden müssen, um von A nach B zu kommen.
Statt eines aufwendigen analogen Aufbaus, bei dem nachträgliche Änderungen ein Horror wäre, habe ich mich also für die digitale Variante entschieden.
Hierfür sind die Mikrocontroller Arduino oder Raspberry Pi bestens geeignet. Damit können alle Arten von LED-, Servo-, (Stepper-)Motoren-, Relais-Steuerungen und noch vieles weiteres mehr umgesetzt werden. Für den Modellbahnbereich ergeben sich unendlich viele Anwendungsgebiete.
Es ist alles so einfach gehalten, dass auch Hobby-Programmierer und -Elektroniker ohne großes Fachwissen hier schnell zu Erfolgen kommen.
Meine Wahl fiel auf den Arduino Mega 2560 R3 (SunFounder) wegen seiner 50 frei programmierbaren Ein- und Ausgänge, des wahrlich günstigen Preises von etwa 18,- EUR (originale Arduino Mega kosten etwa das Doppelte als die China-Nachbauten) und der riesigen Arduino-OnlineCommunity.
Für den schnellen Einstig in die Arduino-Welt eignet sich die Seite www.arduino-tutorial.de/.
Was wird minimal benötigt?
Zum Aufbau selbst:
Nach ein paar Stunden war das Progrämmchen (programmiert wird in den Sprachen C oder C++) und die Schaltung entwickelt (ok - bin etwas elektronisch und programmiertechnisch beruflich vorbelastet).
(Ins Bild klicken zum Vergrößern)
Die 50 I/O-Pins sind frei als Ein- oder Ausgänge definierbar:
Die Schaltung selbst ist recht simpel, hat mich aber im Aufbau doch einiges an Zeit gekostet:
Hier das Bedienpanel mit den 11 Tastern (einer fehlt noch - hatte doch glatt einen zu wenig gekauft):
Alles in ein Gehäuse eingebaut:
Und von der anderen Seite:
Hier die Verbindung zum Bedienpanel:
Und in der Gesamtansicht:
Gleich geht's weiter...
Gruß Ralf
Hallo,
die folgende Aufgabe war es, die Weichenantriebe für alle Weichen einzubauen und die Elektrik der beiden bestehenden Segmente auf Vordermann zu bringen.
Zu den Weichenantrieben:
Diese müssen die Weiche selbst (Stellschwelle) antreiben, sowie extra die Weichenlaterne.
Die Mechanik der Weichenantriebe besteht aus Lüsterklemmen für 4 mm²-Kabel und Schweißdraht als Führungsschienen.
Zwei 2er-Klemmen dienen als Führung für die Schweißdrähte und erhalten an der Unterseite Polystyrol-Plättchen als Abstandshalter zur Anlagenplatte, damit sich der Schlitten frei bewegen kann.
Die 4er-Klemme bildet den beweglichen Schlitten und bekommt noch einen 1 mm-Messingdraht. Dieser greift in die Stellschwelle der Weiche.
Der dünne 0,5 mm Federstahldraht wird mit der Mechanik der Weichenlaterne verbunden.
Angetrieben wird die ganze Mimik (z.Z. leider noch) über günstige Conrad-Servos mit 0,7 mm Federstahldraht:
In nächster Zeit werde ich aber mit Sicherheit die Servos nach und nach gegen Höherwertige austauschen, denn leider sind diese so laut, dass ich unter der Anlage eine Kreissäge vermute
Ach ja - nur zur Info:
Die ESU SwitchPiloten lassen sich NICHT mit der Roco Multimaus programmieren! Auch im www gibt es es keine Lösung dazu. Zum Glück hatte ich den ESU LokProgrammer...
Die Stellschwellen der Weichen müssen noch mit einer Riffelblechabdeckung aus Paketband verkleidet werden.
So - die letzte Arbeit bis jetzt war die Neuverkabelung der Segmente.
Linkes Segment:
Und das rechte Segment.
Die drei hängenden Flachbandkabel werden an die Weichensteuerung angeschlossen, welche nun als nächstes gebaut wird.
Nicht schrecken: Die Segmente nicht so schön gebaut wie bei einigen von euch.
Diese waren zuerst H0-Module und wurden immer weiter nach vorn erweitert. Hier wird nix weg geschmissen...
Jetzt muss ich mich um meinen Arduino kümmern. Daraus wird eine Weichenstrassensteuerung (Start- / Stop-Tasten).
Ich berichte...
Gruß Ralf
Hallo,
habe lange nix mehr von mir hören lassen. War einfach zu faul zum Schreiben, also hole ich mal einiges nach.
Im Dezember/Januar wurde das Beleuchtungskonstrukt fertig gestellt.
Die rechte Ecke ist eine Spezialkonstruktion, da hier der sichtbare Anlagenbereich endet. Der Anlagenhintergrund mündet hier schräg in den Raum. Das Gleis wird hier im schrägen Bereich den Hintergrund durchstoßen, mittels Klappbrücke an der Tür vorbeigehen und dann im FiddleYard enden:
Der Hintergrund war bis zu dieser Ecke nahtlos ausgeführt. Leider gibt es hier keine passende Weiterführung mehr. Dieses Eck wird geplanter Weise eine sehr stark bewaldete Anhöhe darstellen und ich hoffe den unschönen Übergang somit gut kaschieren zu können:
Nachdem ich den Beleuchtungsoberbau mit den beiden Leuchtenreihen fertig hatte - ich ahnte es vorher schon - stellte ich fest, dass die Beleuchtung suboptimal ist. Es kommt im Bahnhofsbereich zu wenig (eigentlich kein) Licht von vorn auf die vorderen Gleise. Fahrzeuge die am Bahnsteig stehen werden nur von oben beleuchtet - mit entsprechend dunklen Seitenflächen.
Also entschloss ich mich zum Anbau einer dritten Leuchtenreihe am vorderen Rand. Diese liegt 10 cm vor dem Anlagenrand und 10 cm tiefer als die anderen Leuchten.
Hier mal der Querschnitt des Aufbaus. Rot eingezeichnet der Anbau:
So sieht's in echt aus:
Und hier der Vergleich vorher (links) und nachher (rechts mit 3. Leuchtenreihe). Der Unterschied ist schon gewaltig durch die zusätzliche Leuchtstärke und dem besseren Lichteinfallswinkel. Im Fahrwerksbereich könnte es aber schon noch besser sein. Ich bin jedenfalls soweit zufrieden mit der Ausleuchtung:
So sieht es in den Ecken aus:
Und hier mal der Gesamtüberblick:
Jetzt geht es wieder mit der Anlage selbst weiter.
Gruß Ralf
Hallo Heiner,
ganz klar einfarbig wie die anderen Gebäude.
Gruß Ralf