{"id":333,"date":"2014-10-07T21:20:03","date_gmt":"2014-10-07T19:20:03","guid":{"rendered":"http:\/\/moba.noethlich.info\/?page_id=333"},"modified":"2014-10-07T21:39:59","modified_gmt":"2014-10-07T19:39:59","slug":"arduino-als-stellwerker","status":"publish","type":"page","link":"http:\/\/moba.noethlich.info\/?page_id=333","title":{"rendered":"Arduino als Stellwerk(er)"},"content":{"rendered":"<h3>Situationsbeschreibung<\/h3>\n<p>Schon vor einiger Zeit habe ich f\u00fcr meinen Nebenbahn-Bahnhof Viessmann Formsignale als Bausatz montiert und mit einem Servo-Antrieb versehen. Die beiden Gleise werden jeweils mit einer Kombination aus Haupt- und Sperrsignal ausgestattet, die als Einbau-Modul konzipiert ist. Der Fahrstromschalter wird vom\u00a0Servo-Antrieb des Sperrsignals bedient.<\/p>\n<div id=\"attachment_335\" style=\"width: 810px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2930-Formsignal.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-335\" class=\"size-full wp-image-335\" alt=\"Modellbau-Servos als Antrieb f\u00fcr Formsignale\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2930-Formsignal.jpg\" width=\"800\" height=\"527\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2930-Formsignal.jpg 800w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2930-Formsignal-300x197.jpg 300w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2930-Formsignal-624x411.jpg 624w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><p id=\"caption-attachment-335\" class=\"wp-caption-text\">Modellbau-Servos als Antrieb f\u00fcr Formsignale<\/p><\/div>\n<p>Sie wurden zun\u00e4chst \u00fcber einen ESU Switch-Pilot Servo angetrieben, der sich \u00fcber den LokProgrammer sehr gut einstellen l\u00e4\u00dft. Allerdings zeigten sich in der Praxis einige Nachteile wie z.B. unmotiviertes Verstellen beim Einschalten, welches dann nur durch konkrete Schaltbefehle korrigiert werden kann. Bei einer manuell bedienten Anlage etwas \u00e4rgerlich. Au\u00dferdem lassen sich maximal Endlagen und Stellgeschwindigkeit konfigurieren.<\/p>\n<p>Der Arduino mit seiner Servo-Bibliothek bietet da nun wesentlich mehr M\u00f6glichkeiten &#8211; insbesondere die freie Programmierung der Fl\u00fcgelbewegungen, die\u00a0bei einem mechanischen Stellwerk im Vorbild deutlich von einer linearen Bewegung abweicht. So muss der Stellwerker am Hebel umgreifen und ein fallender Signalfl\u00fcgel federt in der Endlage etwas nach.<\/p>\n<p>Diese Bewegungsabl\u00e4ufe stellen die eigentliche Herausforderung bei diesem Projekt dar.<\/p>\n<h3>Das Bahnhofs-Shield<\/h3>\n<p>Neben den Signalen m\u00fcssen in der Bahnhofs-Ein- bzw. Ausfahrt auch die Weichen passend gestellt werden &#8211; diese sind mit herk\u00f6mmlichen Doppelspulen-Antrieben versehen, die am einfachsten \u00fcber Relais angesteuert werden.<\/p>\n<p>Die gesamte Hardware wurde auf ein passendes &#8222;Shield&#8220; montiert:<\/p>\n<div id=\"attachment_337\" style=\"width: 810px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2927-BF-Shield.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-337\" class=\"size-full wp-image-337\" alt=\"Das montierte Bahnhofs-Shield auf einem Arduino Leonardo\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2927-BF-Shield.jpg\" width=\"800\" height=\"582\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2927-BF-Shield.jpg 800w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2927-BF-Shield-300x218.jpg 300w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-09-28-2927-BF-Shield-624x453.jpg 624w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><p id=\"caption-attachment-337\" class=\"wp-caption-text\">Das montierte Bahnhofs-Shield auf einem Arduino Leonardo<\/p><\/div>\n<p>Neben der Ansteuerung der Servos und Weichen ist das Ein- und Ausschalten der Servo-Spannungsversorgung ein wichtiger Bestandteil, um unerw\u00fcnschte St\u00f6rungen (Einschalt-Zucken, Servo-Brummen) zu vermeiden. Die Relais werden \u00fcber ein Transistor-Array ULN2803A angesteuert, da der Spulenstrom den maximalen Ausgangsstrom der Mikroprozessor-Ports \u00fcberschreiten kann.<\/p>\n<h3>Schalten der Servo-Spannungsversorgung<\/h3>\n<p>Ein Relais schaltet zentral f\u00fcr alle Servos die Spannungsversorgung ein bzw. aus:<\/p>\n<p><a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/relais-servos.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-340\" alt=\"relais-servos\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/relais-servos.png\" width=\"651\" height=\"766\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/relais-servos.png 651w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/relais-servos-254x300.png 254w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/relais-servos-624x734.png 624w\" sizes=\"auto, (max-width: 651px) 100vw, 651px\" \/><\/a><\/p>\n<p>So werden z.B. beim Programmstart zun\u00e4chst die Servos softwaretechnisch initialisiert und mit den zur Grundstellung\u00a0passenden Impulsen angesteuert, bevor die Servos Betriebsspannung erhalten. Unkontrollierte Bewegungen finden so nicht statt.<\/p>\n<h3>Gleisbild-Stellpult zur Befehlseingabe<\/h3>\n<p>Die Wahl der Fahrstra\u00dfen erfolgt \u00fcber ein kleines Gleisbildstellpult, dessen Taster als Widerstandsleiter verdrahtet sind. So reichen drei Leitungen und ein analoger Eingang zur Auswertung:<\/p>\n<div id=\"attachment_341\" style=\"width: 543px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/widerstandsleiter.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-341\" class=\"size-full wp-image-341\" alt=\"Widerstandsleiter f\u00fcr mehrere Taster an einem analogen Eingang\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/widerstandsleiter.png\" width=\"533\" height=\"373\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/widerstandsleiter.png 533w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/widerstandsleiter-300x209.png 300w\" sizes=\"auto, (max-width: 533px) 100vw, 533px\" \/><\/a><p id=\"caption-attachment-341\" class=\"wp-caption-text\">Widerstandsleiter f\u00fcr mehrere Taster an einem analogen Eingang<\/p><\/div>\n<p>Allerdings darf\u00a0immer nur ein Taster gedr\u00fcckt werden. Diese Einschr\u00e4nkung halte ich bei einem privaten Projekt aber f\u00fcr vertretbar &#8211; ein Serienprodukt m\u00fcsste solche Fehler nat\u00fcrlich abfangen k\u00f6nnen. Die Platine mit den Tastern und Widerst\u00e4nden wurde in ein kleines Kunststoff-Geh\u00e4use eingebaut:<\/p>\n<h3><a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6120-Stellpult.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-344\" alt=\"2014-10-06-6120-Stellpult\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6120-Stellpult.jpg\" width=\"800\" height=\"509\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6120-Stellpult.jpg 800w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6120-Stellpult-300x190.jpg 300w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6120-Stellpult-624x397.jpg 624w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><br \/>\n<a href=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6122-Stellpult.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-345\" alt=\"2014-10-06-6122-Stellpult\" src=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6122-Stellpult.jpg\" width=\"800\" height=\"540\" srcset=\"http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6122-Stellpult.jpg 800w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6122-Stellpult-300x202.jpg 300w, http:\/\/moba.noethlich.info\/wp-content\/uploads\/2014\/10\/2014-10-06-6122-Stellpult-624x421.jpg 624w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><br \/>\nVorbildgerechte Fl\u00fcgelbewegung<\/h3>\n<p>Hier beginnt nun der f\u00fcr mich besonders spannende Teil &#8230;<\/p>\n<p><iframe loading=\"lazy\" src=\"\/\/www.youtube.com\/embed\/RTK6tYJLDVE\" height=\"315\" width=\"560\" allowfullscreen=\"\" frameborder=\"0\"><\/iframe><br \/>\nErkennbar sind das &#8222;Umgreifen&#8220; beim Stellen von HP0 auf HP2 und das &#8222;Nachfedern&#8220; beim Stellen von HP2 auf HP0.<\/p>\n<p>Den Code gibt\u00b4s als Download, wenn die erste voll funktionsf\u00e4hige Version fertig ist.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Situationsbeschreibung Schon vor einiger Zeit habe ich f\u00fcr meinen Nebenbahn-Bahnhof Viessmann Formsignale als Bausatz montiert und mit einem Servo-Antrieb versehen. Die beiden Gleise werden jeweils mit einer Kombination aus Haupt- und Sperrsignal ausgestattet, die als Einbau-Modul konzipiert ist. Der Fahrstromschalter wird vom\u00a0Servo-Antrieb des Sperrsignals bedient. Sie wurden zun\u00e4chst \u00fcber einen ESU Switch-Pilot Servo angetrieben, der [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":17,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-333","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/pages\/333","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=333"}],"version-history":[{"count":17,"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/pages\/333\/revisions"}],"predecessor-version":[{"id":360,"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/pages\/333\/revisions\/360"}],"up":[{"embeddable":true,"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=\/wp\/v2\/pages\/17"}],"wp:attachment":[{"href":"http:\/\/moba.noethlich.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=333"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}