Weichen einer Modellbahn mit Servos und Arduino steuern

Hallo zusammen,

ich bin recht neu. Sowohl bei Euch im Forum als auch in der Arduino-Materie ansich. Ich habe zwei tolle Hobbies, die ich zusammenbringen möchte. Zum einem meine Modellbahn und zum Anderen das Entwickeln von .net-Anwendungen (C#).

Nun meine Fragen:
Ich weiß, dass der Arduino auch Servos steuern kann (sechs Stück?). Die Weichen der Anlage sollen küfstig über Servos geschaltet werden. Aber ich habe ein bissl mehr Weichen, insgesamt werden es wohl 25 Stück sein. Kann ich Arduinos miteinander koppeln oder gibt es ein Modul für den Arduino, mit dem ich so viele Servos unterbringen kann? Es darf aber weiterhin nur einen USB-Port verwenden.

Enwickeln würde ich die Steuerung in C#, und soweit ich weiß geht das auch irgendwie. Aber wie genau? Habt Ihr Beispiele?

Oder verhaue ich mich mit dem Arduino komplett? Ich frage, weil die Modellbahntechnik recht teuer ist und sobald ein Markenname drauf steht vervielfacht sich der Wert. Da scheint mir der Arduino eine gute und günstige Alternative.

Vielen Dank schon mal.

Viele Grüße

Stephan

Hallo Stephan,

wieso willst Du Deine Weichen unbedingt mit Servos ansteuern?

Soweit ich weiß, gibt es bei CONRAD Stellantriebe für Weichen und Signale, welche sich mit digitalen Ausgängen ansteuern lassen.

Hier hättest Du dann über Portexpander (z.B. PCF8574) eine Menge Ausgänge für solche Zwecke zur Verfügung.

Gruß

Martin

Hallo Martin,

die Stellantriebe setze ich momentan ein. Die machen sich aber auf Dauer nicht schön auf der Anlage - recht laut und die Schaltgeschwindigkeit ist realitätsfremd laut. Da machen sich Servos meiner Meinung nach deutlich besser.

Wie schließt man denn einen Portexpander an? Ich muss gestehen, dass ich in der Materie null Ahnung habe.

Viele Grüße

Stephan

Den Portexpander kann man selber bauen mit einigen Bauteilen (74HC595/TLC5916). Würde dir aber davon abraten, da du wie gesagt, wenig Ahnung von der Materie hast.

Sowas wäre eine fertige Lösung als Shield (gabs hier im Forum auch mal eine SB dazu)

http://macetech.com/store/index.php?main_page=product_info&products_id=23

Mit der servo.h Bibiothek kann ein Arduino UNO 12 Servos und ein Arduino MEGA 48 Servos ansteuern.

Ansonsten hat POLOLU Platinen um 6,12,18 oder 24 Servos anzusteuern:
Pololu - Pages Matching "maestro" In Deutschland hat sie unter anderen Watterott.

Grüße Uwe

Guten Morgen Uwe,

vielen Dank für die Hilfe. Der Mega kann also bis zu 48 Servos steuern. Das ist schon mal sehr gut und ich habe jede Menge Reserve. Wenn ich es richtig gelesen habe, muss ich eine externe Stromversorgung mit 5V aubauen. Das ist kein Problem. Das Signal bekommen die Servos dann vom Arduino. Die Frage, die sich mir stellt, ist aber: wo werden die Servos angeschlossen. Das erschließt sich mir noch nicht so ganz - so viele Anschlüsse hat das Board ja nicht... :frowning:

Das wäre eine Variante für 16 Kanäle. Diese würde auf dem Uno noch passen. Angeschlossen wir mit einem 3pol. Stecker idR.

Ein Shield direkt für den Mega
http://www.ebay.de/itm/SainSmart-MEGA-Sensor-Shield-V2-4-Arduino-MEGA-2560-R3-1280-ATmega8U2-ATMEGA-AVR-/320895026152?pt=Wissenschaftliche_Geräte&hash=item4ab6d583e8
Kann laut Beschreibung 32 Servos ansteuern.

Warte aber, bis wer hier sich noch meldet, der diese auch im Einsatz hat. Ich hab nämlich lediglich ein Motor Shield im Einsatz, mit dem ich Servos betreiben kann.

SteBruBra:
Guten Morgen Uwe,

vielen Dank für die Hilfe. Der Mega kann also bis zu 48 Servos steuern. Das ist schon mal sehr gut und ich habe jede Menge Reserve. Wenn ich es richtig gelesen habe, muss ich eine externe Stromversorgung mit 5V aubauen. Das ist kein Problem. Das Signal bekommen die Servos dann vom Arduino. Die Frage, die sich mir stellt, ist aber: wo werden die Servos angeschlossen. Das erschließt sich mir noch nicht so ganz - so viele Anschlüsse hat das Board ja nicht... :frowning:

Der Arduino Mega hat 54 Digitale Pins und 16 analoge die als digitale Pins verwendet werden können. Du kannst jeden Pin (außer die erste serielle Schnittstelle und andere von Dir verwendete Schnittstellen) als Pins für die Servos verwenden. Die Spannungsversorgung für die Servos mußt Du stark genug auslegen und den Minuspol mit der Masse des Arduino MEGA verbinden. Es ist sinnvoll den Arduino mit einem getrennten Netzteil zu versorgen.

Viele Grüße Uwe