DCC Servo Dekoder: Unterschied zwischen den Versionen

Aus Digital Modellbahn
K
 
(26 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 9: Zeile 9:
 
[[Datei:TinyServoDekoder.jpg|thumb|220px|Universalplatine Digital oder Servo Dekoder]]
 
[[Datei:TinyServoDekoder.jpg|thumb|220px|Universalplatine Digital oder Servo Dekoder]]
 
[[Datei:Arduino_4x_Servo_Dekoder.png|thumb|220px|Arduino DCC 4x Servo Dekoder schematic ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/Tiny4fachServo.sch Eagle])]]  
 
[[Datei:Arduino_4x_Servo_Dekoder.png|thumb|220px|Arduino DCC 4x Servo Dekoder schematic ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/Tiny4fachServo.sch Eagle])]]  
Sehr kleiner Servodekoder basierend auf dem Attiny85 Prozessor, welcher auch über die Arduino IDE programmiert werden kann ([http://pgahtow.de/wiki/index.php?title=Arduino#ATtiny_f.C3.BCr_Arduino_IDE Arduino Programmierung]). Vor der ersten Programmierung muss der Bootloader des Tiny Uber die Arduino IDE geschrieben en  werden. Die Frequenz wird dazu auf 16 MHz PLL mit eingestellt. Das Konfigurieren der Endlagen erfolgt ausschließlich über CV Programmierung.
+
Sehr kleiner Servodekoder basierend auf dem Attiny85 Prozessor, welcher auch über die Arduino IDE programmiert werden kann ([http://pgahtow.de/wiki/index.php?title=Arduino#ATtiny_f.C3.BCr_Arduino_IDE Arduino Programmierung]). Vor der ersten Programmierung müssen die FUSE des Tiny über die Arduino IDE geschrieben werden. Dazu wird die Frequenz wird dazu auf 16 MHz PLL mit eingestellt und anschließend über "Bootloader brennen" die FUSE geschrieben. Das Konfigurieren der Endlagen erfolgt ausschließlich über CV Programmierung.
  
 
:* [https://youtu.be/LnBhzS723UA%20 YouTube Video zur Demonstration der Funktion.]
 
:* [https://youtu.be/LnBhzS723UA%20 YouTube Video zur Demonstration der Funktion.]
Zeile 33: Zeile 33:
 
:* CV# x2 - Position 1 (0..180)
 
:* CV# x2 - Position 1 (0..180)
 
:* CV# x3 - Position 2 (0..180)
 
:* CV# x3 - Position 2 (0..180)
:* CV# x4 - Aktive Zeit für Servo; Wenn Parameter null, dann immer aktiv! (0..255)
+
:* CV# x4 - Aktive Zeit für Servo; Wenn Parameter null, dann Power immer aktiv! (0..255)
 
:* CV# x5 - Geschwindigkeit zu Position 1 (0..255)
 
:* CV# x5 - Geschwindigkeit zu Position 1 (0..255)
 
:* CV# x6 - Geschwindigkeit zu Position 2 (0..255)
 
:* CV# x6 - Geschwindigkeit zu Position 2 (0..255)
:* CV# x7 - Invertiert die Position 1 und 2 des Servos
+
:* CV# x7 - Bit 0 invertiert die Position 1 und 2 des Servos; Abhängigkeit mittels Bit 4 - 7 für Servo 1 - 4
 +
:* CV# x8 - Anzahl der Wiederholungen bei automatischer Bewegung (Bit 0-3); Pausenzeit nach jeder Bewegung (Bit 4-7); (default: 0)
 +
:* CV# x9 - Pause nach Wiederholungen bis Bewegung neu startet (default: 0)
 +
:* CV# 1x9 - letzte Position des Servos - "nur lesen"
  
 
<!--T:9-->
 
<!--T:9-->
Zeile 52: Zeile 55:
  
 
<!--T:12-->
 
<!--T:12-->
* [http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCCTinyServo8Bit_v40.ino Sketch v4.0 (17.09.21)] - Arduino Attiny85 DCC 4x Servodekoder
+
* [http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCCTinyServo8Bit_v42.ino Sketch v42 (29.05.22)] - Arduino Attiny85 DCC 4x Servodekoder
:* v4.0: Abhängigkeiten zwischen den Servos können über CV# x7 aktiviert werden. Fehler wurden behoben.
+
:* v42: Verbesserung der DCC Erkennung, korrektes Auslesen der letzten Position
* [http://sourceforge.net/projects/pgahtow/files/Arduino%20%28v1.0%29%20libaries/TinyServo8Bit.zip Arduino Tiny Servo 8Bit Library]
+
:* v41: Abschaltung erst nach Abschluss der Bewegung
 +
:* v40: Abhängigkeiten zwischen den Servos können über CV# x7 aktiviert werden. Fehler wurden behoben.  
 +
* [https://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/ ältere Versionen]
 +
 
 +
* [https://github.com/Digital-MoBa/Servo8Bit/archive/refs/tags/v1.0.0.zip Arduino Tiny Servo 8Bit Library v1.0]
 
* [http://sourceforge.net/projects/pgahtow/files/Bootloader/attiny.zip Boardbibliothek "attiny by David A. Mellis"] - mit angepassten Fuse Einstellungen
 
* [http://sourceforge.net/projects/pgahtow/files/Bootloader/attiny.zip Boardbibliothek "attiny by David A. Mellis"] - mit angepassten Fuse Einstellungen
  
Zeile 60: Zeile 67:
 
[[Datei:TinyDekoderProgrammer.jpg|thumb|180px|Programmer für Attiny85 Dekoders]]
 
[[Datei:TinyDekoderProgrammer.jpg|thumb|180px|Programmer für Attiny85 Dekoders]]
 
[[Datei:TinyDekoderProgrammer_sch.png|thumb|220px|Schaltplan des Programmers ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/Tiny4fachServo.sch Eagle])]]
 
[[Datei:TinyDekoderProgrammer_sch.png|thumb|220px|Schaltplan des Programmers ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/Tiny4fachServo.sch Eagle])]]
Um ein einfache Handhabung bei der Programmierung der DCC Tiny Dekoder (4x mini oder Servo) bereitzustellen habe ich einen Arduino UNO in der breadboard Variante, ein I2C Display und 4x Taster als Konfigurierlösung ethabliert. Über die im Dekoder vorhandende Software-ID kann der Programmer feststellen um welchen Dekoder es sich handelt.
+
Um ein einfache Handhabung bei der Programmierung der DCC Tiny Dekoder (4x mini oder 4x Servo) bereitzustellen habe ich einen Arduino UNO in der breadboard Variante, ein I2C Display und 4x Taster als Konfigurierlösung ethabliert. Über die im Dekoder vorhandende Software-ID kann der Programmer feststellen um welchen Dekoder es sich handelt.
  
 
<!--T:24-->
 
<!--T:24-->
Zeile 72: Zeile 79:
  
 
===<u>Download</u>=== <!--T:27-->
 
===<u>Download</u>=== <!--T:27-->
* [http://sourceforge.net/projects/pgahtow/files/DCC/TinyDekoderProgrammer/DCCTinyDekoder_Conf_v13.ino Sketch v13 (12.06.20)] - DCC TinyDekoderProgrammer (Multifunktion)
+
* [http://sourceforge.net/projects/pgahtow/files/DCC/TinyDekoderProgrammer/DCCTinyServo8Bit_Conf_v16.ino/ Sketch v16 (29.05.22)] - DCC TinyDekoderProgrammer (Multifunktion)
 +
:* v16: Fix Index Bit Berechnung und aktualisierung der Position bei gleicher Adresse
 +
:* v15: Erweiterungen für Index Bit bei der Anwahl für CVs.
 +
* [https://sourceforge.net/projects/pgahtow/files/DCC/TinyDekoderProgrammer/ ältere Versionen]
 +
 
 
* [http://sourceforge.net/projects/pgahtow/files/Arduino%20%28v1.0%29%20libaries/Adafruit_SSD1306.zip Arduino OLED SSD1306 I2C Display Library]
 
* [http://sourceforge.net/projects/pgahtow/files/Arduino%20%28v1.0%29%20libaries/Adafruit_SSD1306.zip Arduino OLED SSD1306 I2C Display Library]
  
== Weichendekoder 6x Servo == <!--T:13-->
+
== 6x Servo Weichendekoder == <!--T:13-->
 
 
<!--T:14-->
 
 
[[Datei:Arduino_6x_Servo_Dekoder.png|thumb|220px|Arduino DCC 6x Servo Dekoder schematic ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCC_ServoDec.sch Eagle])]]  
 
[[Datei:Arduino_6x_Servo_Dekoder.png|thumb|220px|Arduino DCC 6x Servo Dekoder schematic ([http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCC_ServoDec.sch Eagle])]]  
 
Als MCU arbeitet ein Arduino UNO welcher sechs Servos ansteuert. Programmiert werden die Endlagen und Stellgeschwindigkeiten mittels drei Knöpfen auf der Schaltung.
 
Als MCU arbeitet ein Arduino UNO welcher sechs Servos ansteuert. Programmiert werden die Endlagen und Stellgeschwindigkeiten mittels drei Knöpfen auf der Schaltung.
 
  
 
===<u>Programmierung</u>=== <!--T:15-->
 
===<u>Programmierung</u>=== <!--T:15-->
 
<!--T:16-->
 
 
Ablauf für die Programmierung in vier Schritten. Für die Programmierung stehen drei Tasten (PROG, LINKS, RECHTS) zur Verfügung. Es können dabei je Servo zwei Endlagen und die Geschwindigkeit der Bewegung eingestellt werden.
 
Ablauf für die Programmierung in vier Schritten. Für die Programmierung stehen drei Tasten (PROG, LINKS, RECHTS) zur Verfügung. Es können dabei je Servo zwei Endlagen und die Geschwindigkeit der Bewegung eingestellt werden.
 
# Zum Starten die PROG-Taste drücken. Dann beginnt die LED, zuerst für Servo 1 an zu blinken.
 
# Zum Starten die PROG-Taste drücken. Dann beginnt die LED, zuerst für Servo 1 an zu blinken.
Zeile 93: Zeile 99:
  
 
===<u>Download</u>=== <!--T:17-->
 
===<u>Download</u>=== <!--T:17-->
 +
* [http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCC_ServoDec_v1.ino Sketch v1.0] - DCC 6x Servodekoder für Weichen
 +
 +
== 16x LocoNet Servo Dekoder == <!--T:13-->
 +
[[Datei:16x_LocoNet_SV_Dekoder.png|thumb|220px|16x LocoNet SV-Dekoder]]
 +
Servo Dekoder für LocoNet online-programmierbar über LocoNet SV mittels Rocrail. Genutzt als MCU wird ein Arduino UNO, welcher 20 I/O Ports besitzt. 16x I/O Ports werden für die Ansteuerung von Servos oder als Ausgang genutzt. 2x I/O wird für den LocoNet-Bus benötigt. Die freien 2x I/O können als Serial-Upload, Debug, oder als LED Statusanzeige genutzt werden.
 +
Wenn der Dekoder Ausgänge schalten soll wurde eine Option zur Umschaltung der VCC am Ausgang mittels Lötbrücke vorgesehen. Dabei sollen immer 8x Ausgänge einheitlich als Server oder als Ausgang geschaltet sein.
 +
 +
Die Umschaltung von Servo zu Ausgängen ist in der Software in der aktuellen Version noch nicht umgesetzt!
  
<!--T:18-->
+
===<u>Download</u>===
* [http://sourceforge.net/projects/pgahtow/files/DCC/Servo_Dekoder/DCC_ServoDec_v1.ino Sketch v1.0] - DCC 6x Servodekoder für Weichen
 
  
 +
* [https://sourceforge.net/projects/pgahtow/files/Loconet/Arduino_SV_Dekoder/SVLocoServo_v113.ino/download Sketch v1.13 (29.05.22)] - Arduino LocoNet SV Dekoder
 +
* [https://sourceforge.net/projects/pgahtow/files/Loconet/Arduino_SV_Dekoder/SVLocoServo.sch/download Eagle Schaltplan]
 +
* [https://sourceforge.net/projects/pgahtow/files/Loconet/Arduino_SV_Dekoder/SVLocoServo.brd/download Eagle Board]
  
 
== Weichenantrieb mit Servo == <!--T:19-->
 
== Weichenantrieb mit Servo == <!--T:19-->
  
 
<!--T:20-->
 
<!--T:20-->
[[Datei:Servoweichenantrieb.jpg|thumb|220px|Servoantrieb für Weiche mit Herzstückumschaltung]]
+
[[Datei:Servoweichenantrieb.jpg|thumb|220px|Servoantrieb für Weiche mit Herzstückumschaltung, je in den beiden Endlangen und Mittelstellung]]
Hier dargestellt ist ein Servo Weichenantrieb mit Herzstückumschaltung. Der Servo dreht sich für ein Umschalten der Weiche um 180 Grad. Als Stelldraht wurde 1,3mm Messing verwendet.
+
Hier dargestellt ist ein Servo Weichenantrieb mit mechanischer Herzstückumschaltung ohne zusätzlichen Mikrotaster. Auf dem Bild ist der Aufbau mit 8mm Holz realisiert. Es wurden zur Darstellung drei Positionen, links, mitte und rechts fotografiert. Der Servo dreht sich für ein Umschalten der Weiche dabei um 180 Grad. <br>
Das mittlere Bild zeigt die Mittelstellung. Mit dieser lässt sich der Servoantrieb sehr leicht unter der Weiche (in Mittelposition) justiert befestigen.
+
Durch diesen langen Stellweg wird die Weichenstellung zusätzlich mechanisch verriegelt und kann nicht verstehentlich in die andere Lage gedrückt werden. Es kann deshalb auch die Servo Spannung abgeschaltet werden und das Servohorn kann nicht durch eine darüberfahrende Lok verschoben werden. Als Stelldraht wurde 1,3mm Messing-Draht verwendet.
 +
<br><br>
 +
Das mittlere Bild zeigt die Mittelstellung. Mit dieser lässt sich der Servoantrieb sehr leicht unter der Weiche (in Mittelposition stehend) justiert befestigen. <br>
 +
Für die Herzstückumschaltung wurden zwei Schrauben genutzt. Der Stelldraht selbst besitzt die Polarität des Herzstück. Mittels eines Draht wird ein Kontakt mit einer der Schauben hergestellt. Zusätzlich hat dieser Aufbau einen genialen Nebeneffekt, wenn sich die Weiche bewegt ist das Herzstück ohne polarisatzion und kann keinen Kurzschluss verursachen.
 
</translate>
 
</translate>

Aktuelle Version vom 17. März 2024, 13:07 Uhr

Eigenbau | Allgemein | Railcom | DCC-Dekoder | Servo-Dekoder | Spezialdekoder

Sprachen:
Deutsch • ‎English

4x mini Servo Dekoder

Attiny85 Servo Dekoder
Universalplatine Digital oder Servo Dekoder
Arduino DCC 4x Servo Dekoder schematic (Eagle)

Sehr kleiner Servodekoder basierend auf dem Attiny85 Prozessor, welcher auch über die Arduino IDE programmiert werden kann (Arduino Programmierung). Vor der ersten Programmierung müssen die FUSE des Tiny über die Arduino IDE geschrieben werden. Dazu wird die Frequenz wird dazu auf 16 MHz PLL mit eingestellt und anschließend über "Bootloader brennen" die FUSE geschrieben. Das Konfigurieren der Endlagen erfolgt ausschließlich über CV Programmierung.

Hinweis: Dekoder muss auf folgende Fuse programmiert werden: 
* HFuse:D5 LFuse:F1 EFuse:FF (ohne RST: HFuse:55 LFuse:F1 EFuse:FF)

DCC CV-Programmierung

Servo Konfiguration:

  • CV# 5 - "1" als Wert führt zum Shift der Adresse um "4" für IntelliBox (default 255)
  • CV# 6 - Millisekunden Servo PWM minimal (default 54 = 540ms)
  • CV# 7 - Millisekunden Servo PWM maximal (default 240 = 2400ms)
  • CV# 8 - Softwareversion (Firmware) Dekoder - "nur lesen"
  • CV# 9 - Softwareidentifikation (ID) Dekoder - "nur lesen"

Für jeden Servo x=[1..4] können folgende Parameter eingestellt werden:

  • CV# x0 - Zubehöradresse (high)
  • CV# x1 - Zubehöradresse (low)
  • CV# x2 - Position 1 (0..180)
  • CV# x3 - Position 2 (0..180)
  • CV# x4 - Aktive Zeit für Servo; Wenn Parameter null, dann Power immer aktiv! (0..255)
  • CV# x5 - Geschwindigkeit zu Position 1 (0..255)
  • CV# x6 - Geschwindigkeit zu Position 2 (0..255)
  • CV# x7 - Bit 0 invertiert die Position 1 und 2 des Servos; Abhängigkeit mittels Bit 4 - 7 für Servo 1 - 4
  • CV# x8 - Anzahl der Wiederholungen bei automatischer Bewegung (Bit 0-3); Pausenzeit nach jeder Bewegung (Bit 4-7); (default: 0)
  • CV# x9 - Pause nach Wiederholungen bis Bewegung neu startet (default: 0)
  • CV# 1x9 - letzte Position des Servos - "nur lesen"

Eine Programmierung des DCC Tiny Servo Dekoders kann über DCC direct am Programmiergleis erfolgen. Damit ein unabsichtliches Ändern der Werte durch die Programmierung eines anderen Dekoders verhindert wird, kann diese Funktion in der Software nach dem Programmieren deaktiviert werden.

Ein Auslesen der programmierten CV# Werte, 
ist nur mit dem DCC-Tiny-Programmer (Lesebaustein) und 
einer vorherigen Hochspannungsprogrammierung (High-Voltage-Programming) 
möglich!

Der Dekoder verfügt über einen 5-poligen Programmierstecker (PROG) für den DCC-Tiny-Programmer (Lesebaustein). Für den normalen Betrieb ist bei diesem Stecker der PIN 4 und PIN 5 (DCC-Signal) mit einem Jumper zu brücken. Wenn der Tiny Programmer (4-polig nur PIN 1 bis 4) aufgesteckt wird, muss der Jumper vorher entfernt werden, da dann das DCC-Signal durch den Programmer und nicht durch die Digitalzentrale erzeugt wird!

Download

  • v42: Verbesserung der DCC Erkennung, korrektes Auslesen der letzten Position
  • v41: Abschaltung erst nach Abschluss der Bewegung
  • v40: Abhängigkeiten zwischen den Servos können über CV# x7 aktiviert werden. Fehler wurden behoben.

Tiny Dekoder Programmer

Programmer für Attiny85 Dekoders
Schaltplan des Programmers (Eagle)

Um ein einfache Handhabung bei der Programmierung der DCC Tiny Dekoder (4x mini oder 4x Servo) bereitzustellen habe ich einen Arduino UNO in der breadboard Variante, ein I2C Display und 4x Taster als Konfigurierlösung ethabliert. Über die im Dekoder vorhandende Software-ID kann der Programmer feststellen um welchen Dekoder es sich handelt.

Als Display wird ein 0,96" OLED SSD1306, welches eine Auflösung von 128x64 hat und per I2C gesteuert wird, genutzt. Mittels der 4x Taster für hoch (UP), runter (DOWN), Okay und Umschalten (SWITCH) können alle CV#s des Dekoders geändert werden. Der Programmer erkennt dabei den Typ des Dekoder und stellt die Konfigurationsvariablen je Ausgang übersichtlich dar. Über ein separates Menü kann aber auch jede einzelne CV# individuell gelesen und geschrieben werden. Mittels der Tasten hoch(+) und runter(-) können die Variablen in schritten oder durch langes Drücken "schnell" geändert werden.

Als Prozessor wird ein Arduino UNO in der "breadboard" Variante eingesetzt. Hierbei arbeitet der ATmega328p, nicht wie üblich beim Arduino, mit dem internen Quarz von 8Mhz, was einen platzsparenden Aufbau ermöglicht. Der ATmega328p muss dazu vorher mit einem speziellen Bootloader beschrieben werden. Das kann mittels eines Arduino UNO und dem Sketch "Arduino as ISP" durchgeführt werden.

Schnittstelle

Der Tiny Dekoder Programmer nutzt zur Kommunikation mit dem Dekoder das DCC Protokoll. Zur Verbindung mit dem Dekoder verfügt der Programmer über eine 4-polig Schnittstelle. Bei dem Dekoder (5-polig) wird zuvor der Jumper zwischen PIN 4 und PIN 5 für den "normalen Betrieb" entfernt. Jetzt kann der Tiny Programmer (PIN 1 bis PIN 4) mit einem Kabel an den Dekoder angeschlossen werden. Die gesamte Kommunikation arbeitet mit DCC Befehlen und die Rückmeldung erfolgt mittels Bestätigen (Acknowledge) durch den Dekoder. Beim Lesen ist es dabei notwendig jedes einzelne Bit abzufragen. Weil der ATTiny45/85 nur über 6 I/O Ports verfügt (4x Ausgang, 1x DCC, 1x Ack[Reset]) und einer davon standardmäßig als Reset genutzt wird, ist es notwendig den Dekoder mittels Hochspannungsprogrammierung (High-Voltage-Programming) zu programmieren. Nur so kann der Reset-Pin als Ausgabe (I/O) für die Bestätigung (Ack) genutzt werden!

Download

  • v16: Fix Index Bit Berechnung und aktualisierung der Position bei gleicher Adresse
  • v15: Erweiterungen für Index Bit bei der Anwahl für CVs.

6x Servo Weichendekoder

Arduino DCC 6x Servo Dekoder schematic (Eagle)

Als MCU arbeitet ein Arduino UNO welcher sechs Servos ansteuert. Programmiert werden die Endlagen und Stellgeschwindigkeiten mittels drei Knöpfen auf der Schaltung.

Programmierung

Ablauf für die Programmierung in vier Schritten. Für die Programmierung stehen drei Tasten (PROG, LINKS, RECHTS) zur Verfügung. Es können dabei je Servo zwei Endlagen und die Geschwindigkeit der Bewegung eingestellt werden.

  1. Zum Starten die PROG-Taste drücken. Dann beginnt die LED, zuerst für Servo 1 an zu blinken.
  2. Durch mehrfaches Drücken der PROG-Taste kann der gewünschten Servo (LED blinkt) ausgewählt werden. Um den ausgewählten Servo zu programmieren muss jetzt die zugehörige Zubehöradresse über DCC gesendet werden. Wenn schon eine Adresse für diesen Servo programmiert ist, kann dieser Vorgang durch ein drücken der LINKS-Taste oder RECHTS-Taste übersprungen werden.
  3. Im folgenden wird mit der LINKS-Taste oder RECHTS-Taste die gewünschte Position für die Endlage justiert. Zum Umschalten auf die andere Endlagenposition den Servo mittels seiner DCC Adresse umschalten. Beendet wird die Positionseinstellung durch ein Drücken der PROG-Taste.
  4. Nun kann die Geschwindigkeit mit der LINKS-Taste oder RECHTS-Taste, für die Bewegung, erhöht oder gesenkt werden. Dabei pendelt der Servo in der jeweiligen Geschwindigkeit, bis zum Beenden der Programmierung, zwischen seinen zwei Endlagen. Zum Abschluss muss die PROG-Taste erneut gedrückt werden. Alle vorgenommenen Einstellungen werden für den Servo jetzt gespeichert.


Download

16x LocoNet Servo Dekoder

16x LocoNet SV-Dekoder

Servo Dekoder für LocoNet online-programmierbar über LocoNet SV mittels Rocrail. Genutzt als MCU wird ein Arduino UNO, welcher 20 I/O Ports besitzt. 16x I/O Ports werden für die Ansteuerung von Servos oder als Ausgang genutzt. 2x I/O wird für den LocoNet-Bus benötigt. Die freien 2x I/O können als Serial-Upload, Debug, oder als LED Statusanzeige genutzt werden. Wenn der Dekoder Ausgänge schalten soll wurde eine Option zur Umschaltung der VCC am Ausgang mittels Lötbrücke vorgesehen. Dabei sollen immer 8x Ausgänge einheitlich als Server oder als Ausgang geschaltet sein.

Die Umschaltung von Servo zu Ausgängen ist in der Software in der aktuellen Version noch nicht umgesetzt!

Download

Weichenantrieb mit Servo

Servoantrieb für Weiche mit Herzstückumschaltung, je in den beiden Endlangen und Mittelstellung

Hier dargestellt ist ein Servo Weichenantrieb mit mechanischer Herzstückumschaltung ohne zusätzlichen Mikrotaster. Auf dem Bild ist der Aufbau mit 8mm Holz realisiert. Es wurden zur Darstellung drei Positionen, links, mitte und rechts fotografiert. Der Servo dreht sich für ein Umschalten der Weiche dabei um 180 Grad.
Durch diesen langen Stellweg wird die Weichenstellung zusätzlich mechanisch verriegelt und kann nicht verstehentlich in die andere Lage gedrückt werden. Es kann deshalb auch die Servo Spannung abgeschaltet werden und das Servohorn kann nicht durch eine darüberfahrende Lok verschoben werden. Als Stelldraht wurde 1,3mm Messing-Draht verwendet.

Das mittlere Bild zeigt die Mittelstellung. Mit dieser lässt sich der Servoantrieb sehr leicht unter der Weiche (in Mittelposition stehend) justiert befestigen.
Für die Herzstückumschaltung wurden zwei Schrauben genutzt. Der Stelldraht selbst besitzt die Polarität des Herzstück. Mittels eines Draht wird ein Kontakt mit einer der Schauben hergestellt. Zusätzlich hat dieser Aufbau einen genialen Nebeneffekt, wenn sich die Weiche bewegt ist das Herzstück ohne polarisatzion und kann keinen Kurzschluss verursachen.