<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>http://www.der-moba.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Michael+Oppenauer</id>
		<title>DerMoba - Benutzerbeiträge [de]</title>
		<link rel="self" type="application/atom+xml" href="http://www.der-moba.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Michael+Oppenauer"/>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php/Spezial:Beitr%C3%A4ge/Michael_Oppenauer"/>
		<updated>2026-04-29T12:44:10Z</updated>
		<subtitle>Benutzerbeiträge</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_aktuelle_Systeme&amp;diff=12633</id>
		<title>Digitalzentralen - aktuelle Systeme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_aktuelle_Systeme&amp;diff=12633"/>
				<updated>2009-04-02T19:09:32Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Vollsysteme */ ECos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
'''Übersicht der aktuell verfügbaren Digitalzentralen.''' &lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel ist nach einfachen, mittleren und vollen Systemen unterteilt. &lt;br /&gt;
Diese Gliederung dient dazu, die Dinge einigermaßen übersichtlich zu halten. &lt;br /&gt;
Innerhalb der einzelnen Abschnitte sind die Systeme alphabetisch nach dem Namen des Herstellers sortiert.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einsteiger-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Einfache Zentralen, mit reduziertem Funktionsumfang.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''LokBoss'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (max.&amp;amp;nbsp;4)&lt;br /&gt;
| 4 LEDs, Adr.&amp;amp;nbsp;1–4&lt;br /&gt;
| 1,8A, 20,3V (-)     || -&lt;br /&gt;
| [[LocoNet]]  /  -&lt;br /&gt;
| Adr. 1-4     /  nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / [[LocoNet]]&lt;br /&gt;
| nein&lt;br /&gt;
| Einfachst-Regler&amp;amp;nbsp;am LocoNet&amp;amp;nbsp;(Adr.&amp;amp;nbsp;1–4). Zusatzregler&amp;amp;nbsp;= LokBoss&amp;amp;nbsp;oder&amp;amp;nbsp;FMZ–Regler (seit&amp;amp;nbsp;2003/4)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Piko&amp;lt;br /&amp;gt; '''Digi-1'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (max.&amp;amp;nbsp;4)&lt;br /&gt;
| nein&lt;br /&gt;
| 1,8A, 20,3V (-)        || Gleissignal&lt;br /&gt;
| Iris (Infrarot)     /  nein&lt;br /&gt;
| Adr. 1-127, 28&amp;amp;nbsp;Fahrst. / nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / -&lt;br /&gt;
| nein&lt;br /&gt;
| Digi-Fern = Uhlenbrock Iris, max.&amp;amp;nbsp;12&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv (seit&amp;amp;nbsp;2004/5)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Zentralen mit Einschränkungen ==&lt;br /&gt;
&lt;br /&gt;
Zentralen, die einen Großteil des Funktionsumfanges der jeweiligen Protokolle unterstützen, aber aufgrund bestimmter Einschränkungen nicht für den Betrieb großer Anlagen geeignet sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{| {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Bachmann&amp;lt;br /&amp;gt; '''EZ&amp;amp;nbsp;Command Dynamis'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (IR)&lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| 2.5A, 15.5V (+)  || ja (über Pro-Box)&lt;br /&gt;
| {{r}}, IR        /  {{r}}&lt;br /&gt;
| POM              /  {{r}}&lt;br /&gt;
| 40 á 5 Loks&lt;br /&gt;
| - / ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| JoyStick&amp;amp;nbsp;BiDi&amp;amp;nbsp;vorbereitet, Erweiterung&amp;amp;nbsp;über&amp;amp;nbsp;Pro–Box (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Digitrax&amp;lt;br /&amp;gt; '''Zephyr'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 1 / 0 {{A1}}&lt;br /&gt;
| 4–stellig&lt;br /&gt;
| 2.5A, 12.8V (+)    || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]        /  [[LocoNet]]&lt;br /&gt;
| POM+Prog, bis 255  /  Prog-Gleis&lt;br /&gt;
| Zentrale, Decoder&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| max.&amp;amp;nbsp;10&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv, Fahrregler / Booster am [[LocoNet]]. (seit&amp;amp;nbsp;2002/3)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''Profi-Boss'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 &lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| 1.8A, 18V (+) || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]   /  [[LocoNet]]&lt;br /&gt;
| POM+Prog      /  Prog-Gleis &lt;br /&gt;
| nein&lt;br /&gt;
| nein / ja&lt;br /&gt;
| Twin Center&lt;br /&gt;
| max. 16 Loks aktiv, Handregler am [[LocoNet]]. (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Hornby&amp;lt;br /&amp;gt; '''Select'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| 2&amp;amp;nbsp;Ziffern&lt;br /&gt;
| 1/3A, 15V ({{r}})  || ja (RJ12)&lt;br /&gt;
| X–Bus              /  -&lt;br /&gt;
| ja                 /  {{r}}&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| - / ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| bis 10 Loks aktiv, Adr. 1-59 (Loks), 60-99 (Weichen) (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Hornby&amp;lt;br /&amp;gt; '''Elite'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD Display&lt;br /&gt;
| 3A, 15V ({{r}})  || 5-polig, Gleis-Signal, (RJ12)&lt;br /&gt;
| X–Bus            /  -&lt;br /&gt;
| POM+Prog         /  Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC&lt;br /&gt;
| BiDi&amp;amp;nbsp;(RailCom)&amp;amp;nbsp;vorbereitet, 254 Lok + 255 Weichen Adressen (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| LGB&amp;lt;br /&amp;gt; '''MZS&amp;amp;nbsp;II'''&lt;br /&gt;
| DCC (Basic)&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LEDs&lt;br /&gt;
| 5A, {{r}}V ({{r}})  || ja, max. 4&lt;br /&gt;
| LGB-Bus      /  LGB-Bus {{A2}}&lt;br /&gt;
| nur Adresse  /  -&lt;br /&gt;
| nur mit Universal Handy&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| Großbahn, 23 Adr. 14 Fahrst., max. 8 Loks aktiv ''(Nachfolge:&amp;amp;nbsp;MZS&amp;amp;nbsp;III)'' (seit&amp;amp;nbsp;200?)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Littfinski Datentechnik&amp;lt;br /&amp;gt; '''DiCoStation'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| 2 LED&lt;br /&gt;
| -      || 5-polig&lt;br /&gt;
| -      /  3x [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| {{r}}  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| USB / -&lt;br /&gt;
| PC&lt;br /&gt;
| '''kein BiDi''', Prog-Gleis nur über Erweiterung, braucht PC–Steuerung (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| MärklinSystems&amp;lt;br /&amp;gt; '''MobileStation'''&lt;br /&gt;
| mfx, MM&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Screen&lt;br /&gt;
| 1.2A/1.9A, {{r}}V ({{r}})  || nein&lt;br /&gt;
| {{r}}      /  {{r}}&lt;br /&gt;
| ja         /  ja&lt;br /&gt;
| kein&lt;br /&gt;
| - / -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| max.&amp;amp;nbsp;10&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv, MM: nur 80 Adr., 14 Fahrst. (seit&amp;amp;nbsp;2004)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Roco&amp;lt;br /&amp;gt; '''MultiMaus''' ((+Verstärker))&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| ((3/3.2A, {{r}}V ({{r}})))  || ja&lt;br /&gt;
| X–Bus              /  {{r}}&lt;br /&gt;
| POM+Prog, bis 255  /  nein*&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja&lt;br /&gt;
| Rocomotion + PC&lt;br /&gt;
| Handregler am X–Bus, *Verstärker ungeeignet. (seit&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Trix&amp;amp;nbsp;Systems&amp;lt;br /&amp;gt; '''MobileStation'''&lt;br /&gt;
| DCC, SX&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Screen&lt;br /&gt;
| 1.9A, {{r}}V ({{r}})  || nein&lt;br /&gt;
| {{r}}        /  kein&lt;br /&gt;
| bis 999      /  bis 999&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / -&lt;br /&gt;
| Central Station+PC / zweite MS&lt;br /&gt;
| max. 16 Loks aktiv (seit&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Am JumpPort des Digitrax Zephyr können 1 oder 2 Analog-Fahrregler angeschlossen werden, die je eine zugewiesen Digital-Lok steuern.&lt;br /&gt;
# Der LGB-Bus basiert wahrscheinlich auf einer älteren X–Bus Version.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Vollsysteme ==&lt;br /&gt;
&lt;br /&gt;
Zentralen, die den vollen Funktionsumfang der jeweiligen Protokolle unterstützen und zur Steuerung großer bis sehr großer Anlagen geeignet sind. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| CT-Elektronik&amp;lt;br /&amp;gt; '''ZF5 + HR3'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LED&amp;amp;nbsp;(ZF5), LCD 128x64 (HR3)&lt;br /&gt;
| 1-5A, 10-21V (+)  || 3-polig&lt;br /&gt;
| X–Bus   / {{r}}&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| ja, 100x6 Loks&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| PC&lt;br /&gt;
| HR3&amp;amp;nbsp;steuert&amp;amp;nbsp;2 Loks, BiDi und Selectrix geplant. (seit&amp;amp;nbsp;2006/7)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Digitrax&amp;amp;nbsp;&amp;lt;br /&amp;gt; '''SuperChief''' &amp;lt;br /&amp;gt; (DCS100/200 + DT400)&lt;br /&gt;
| DCC, (MM1) &lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LED&amp;amp;nbsp;(DCS...), LCD 2&amp;amp;nbsp;Zeilen (DT400)&lt;br /&gt;
| 5/8A, 12/15/20V (+)  || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]        /  [[LocoNet]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Dekoder, Zentrale&lt;br /&gt;
| - / ja&lt;br /&gt;
| Prozessor tauschen&lt;br /&gt;
| Für&amp;amp;nbsp;extreme&amp;amp;nbsp;Anforderungen: 120&amp;amp;nbsp;aktive&amp;amp;nbsp;Loks/Fahrregler, DT400=2&amp;amp;nbsp;Loks, DCS200=8A (seit&amp;amp;nbsp;1995/6)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| ESU&amp;lt;br /&amp;gt; '''ECoS''' &lt;br /&gt;
| DCC, BiDi, MM,&amp;amp;nbsp;SX, mfx&amp;amp;nbsp;(M4)&lt;br /&gt;
| 2 / 0&amp;amp;nbsp;{{A1}}&lt;br /&gt;
| Touch Screen, 320x240&lt;br /&gt;
| 2-4A, {{r}}V ({{r}})      || 3/5-polig, ECoSLink {{A2}}&lt;br /&gt;
| ECoSLink, ECoSniffer  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ POM+Prog&lt;br /&gt;
| Zentrale, 32x16 Loks&lt;br /&gt;
| Ethernet / -&lt;br /&gt;
| PC&lt;br /&gt;
| '''BiDi''' (seit&amp;amp;nbsp;11/2007). '''Version&amp;amp;nbsp;3''' +mfx, +Gleisbild (seit&amp;amp;nbsp;04/2009). (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''Twin&amp;amp;nbsp;Center'''&lt;br /&gt;
| DCC, FMZ, SX&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3+5-polig, FMZ&lt;br /&gt;
| [[LocoNet]],&amp;amp;nbsp;I2C, Lokmaus1  /  [[LocoNet]],&amp;amp;nbsp;[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Zentrale, 8x4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| auch&amp;amp;nbsp;für&amp;amp;nbsp;FMZ&amp;amp;nbsp;Decoder, Hardware&amp;amp;nbsp;basiert&amp;amp;nbsp;auf Intellibox&amp;amp;nbsp;von&amp;amp;nbsp;Uhlenbrock (seit&amp;amp;nbsp;Ende&amp;amp;nbsp;2000)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Lenz&amp;lt;br /&amp;gt; '''LZV100'''&lt;br /&gt;
| DCC, BiDi&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LED (Status)&lt;br /&gt;
| 5A, 11-22V ({{r}})  || 3-polig&lt;br /&gt;
| X–Bus   /  RS–Bus&lt;br /&gt;
| POM+Prog/  POM+Prog&lt;br /&gt;
| Decoder&lt;br /&gt;
| - / ja&lt;br /&gt;
| EPROM Austausch&lt;br /&gt;
| '''BiDi'''&amp;amp;nbsp;(RailCom) ab Version 3.5 (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2003)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Massoth&amp;lt;br /&amp;gt; '''DiMAX&amp;amp;nbsp;800Z'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD, 4&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 2/4/8A, 16-24V (+)  || ja&lt;br /&gt;
| Control–Bus/  Control–Bus {{A3}}&lt;br /&gt;
| Prog-Gleis/ Prog-Gleis&lt;br /&gt;
| Zentrale, 16x4&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| für Großbahnen und kleinere Baugrößen (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Massoth&amp;lt;br /&amp;gt; '''DiMAX&amp;amp;nbsp;1200Z'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD, 4&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 4/7/12A, 22-24V (+)  || Massoth, LGB, 3-polig&lt;br /&gt;
| Control–Bus/  Control–Bus {{A3}}&lt;br /&gt;
| Prog-Gleis/ Prog-Gleis&lt;br /&gt;
| Zentrale, 16x4&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| nur für Grossbahn, Trafo eingebaut (seit&amp;amp;nbsp;2003/4)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin&amp;lt;br /&amp;gt; '''Central Station&amp;amp;nbsp;2'''&lt;br /&gt;
| mfx, MM, ''DCC''&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, Farbe, 800x480&lt;br /&gt;
| 3A, {{r}}V ({{r}})   || 5-polig, Märklin-Bus&lt;br /&gt;
| Märklin-Bus {{A4}}   /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja          /  mfx Decoder&lt;br /&gt;
| Zentrale&lt;br /&gt;
| Ethernet&lt;br /&gt;
| PC, USB-Stick, Internet &lt;br /&gt;
| Gleisbild, Lokkarten, mehrere&amp;amp;nbsp;CS2&amp;amp;nbsp;koppelbar, USB-Maus/-Tastatur, ''DCC ab Version 1.0.7 (11/2008)'' (seit&amp;amp;nbsp;10/2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Müt&amp;amp;nbsp;Digirail&amp;lt;br /&amp;gt; '''multi control 2004'''&lt;br /&gt;
| SX&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD Matrix&lt;br /&gt;
| 2.7A, {{r}}V ({{r}})  || ja&lt;br /&gt;
| SX–Bus (2x)    /  SX–Bus&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| Zentrale, 20x5&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2000/1)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Piko&amp;lt;br /&amp;gt; '''Digi Power Box'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3-polig&lt;br /&gt;
| [[LocoNet]], Iris   /  [[LocoNet]]&lt;br /&gt;
| ja           /  ja&lt;br /&gt;
| bis zu 4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| Hardware basiert auf Intellibox IR von Uhlenbrock (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Rautenhaus Digital&amp;lt;br /&amp;gt; '''SLX850'''&lt;br /&gt;
| SX, DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| -&lt;br /&gt;
| 1.5A, {{r}}V ({{r}})  || ja&lt;br /&gt;
| SX–Bus   /  SX–Bus&lt;br /&gt;
| ja       /  ja&lt;br /&gt;
| ja&lt;br /&gt;
| -/ja&lt;br /&gt;
| Processor Update möglich&lt;br /&gt;
| DCC: nur 8 Adr., 28 Fahrst., 4 Funkt. ''Nachfolger: SLX850AD'' (seit&amp;amp;nbsp;{{r}})&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Tams&amp;lt;br /&amp;gt; '''EasyControl'''&lt;br /&gt;
| DCC, BiDi, MM&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| -       || 3+5-polig&lt;br /&gt;
| EasyNet /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB und RS232 / -&lt;br /&gt;
| PC&lt;br /&gt;
| MM&amp;amp;nbsp;14/27&amp;amp;nbsp;Fahrst.&amp;amp;nbsp;255&amp;amp;nbsp;Adr., 2ter Booster Ausgang, '''BiDi'''&amp;amp;nbsp;(RailCom)&amp;amp;nbsp;ab&amp;amp;nbsp;V1.45 (seit&amp;amp;nbsp;2005/6)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Intellibox&amp;amp;nbsp;IR''' {{A5}}&lt;br /&gt;
| DCC, MM, SX&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3/5-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]],&amp;amp;nbsp;I2C, LM1,&amp;amp;nbsp;IRIS  /  [[LocoNet]],&amp;amp;nbsp;[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/  Prog-Gleis&lt;br /&gt;
| Zentrale, 8x4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| MM&amp;amp;nbsp;bis&amp;amp;nbsp;255&amp;amp;nbsp;Adressen, LM1:&amp;amp;nbsp;Lokmaus1 (seit&amp;amp;nbsp;1998,&amp;amp;nbsp;IB-IR&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Intellibox Basic''' {{A5}}&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]            /  [[LocoNet]]&lt;br /&gt;
| POM+Prog/  Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC&lt;br /&gt;
| Max.&amp;amp;nbsp;32&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv, DCC 9999 Funkt., MM&amp;amp;nbsp;255&amp;amp;nbsp;Adr. / 14&amp;amp;nbsp;Fahrst. ''Ohne IR, I2C, [[S88-Rückmeldebus|S88]], Selectrix, Fahrstraßen, Multitraktion''. (seit&amp;amp;nbsp;12/2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Viessmann&amp;lt;br /&amp;gt; '''Commander'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, Farbe, 800x480&lt;br /&gt;
| 3A, {{r}}V ({{r}})    || 3+5-polig&lt;br /&gt;
| HSB+LSB {{A6}}    /  [[S88-Rückmeldebus|S88]], LSB&lt;br /&gt;
| ja  /  ja&lt;br /&gt;
| ja&lt;br /&gt;
| USB&lt;br /&gt;
| PC&lt;br /&gt;
| Automatik, Gleisbild, Stellpult, mehrere Com. koppelbar, BIDi&amp;amp;nbsp;ab&amp;amp;nbsp;2009 (seit&amp;amp;nbsp;12/2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Zimo&amp;lt;br /&amp;gt; '''MX31ZL'''&lt;br /&gt;
| DCC, BiDi&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD Display&lt;br /&gt;
| 1-3A {{A7}}, 12-19V (+)  || ja&lt;br /&gt;
| CAN&amp;amp;nbsp;Bus  /  CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| POM+Prog/  POM+Prog&lt;br /&gt;
| ja&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC oder USB-Stick&lt;br /&gt;
| USB–Interface&amp;amp;nbsp;für&amp;amp;nbsp;MX1*, Decoder Updates, '''BiDi''' eingebaut (seit&amp;amp;nbsp;10/2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Zimo&amp;lt;br /&amp;gt; '''MX1, MX1EC, MX1HS'''&amp;lt;br /&amp;gt; (Modell&amp;amp;nbsp;2000)&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD 2&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 8A, 12-24V (+)  || 3-polig, CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| CAN&amp;amp;nbsp;Bus    /  CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| ja&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| HS:&amp;amp;nbsp;Hochstrom&amp;amp;nbsp;(2x8A), EC:&amp;amp;nbsp;Economy&amp;amp;nbsp;(ohne&amp;amp;nbsp;LCD), BiDi&amp;amp;nbsp;ab&amp;amp;nbsp;2009 (seit&amp;amp;nbsp;2000/1)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Die Märklin MobilStation kann als Handregler an die ECoS-Zentrale von ESU angeschlossen werden. Die Trix MobileStation ist weder zur Märklin CentralStation1 noch zu ECoS kompatibel.&lt;br /&gt;
# Nur mit ECoS Boostern können das SX-Protokoll verstärkt und Rückmeldungen (BiDi/mfx) an die Zentrale (ECoS oder CentralStation1) weiter gereicht werden.&lt;br /&gt;
# Der Massoth Control-Bus basiert wahrscheinlich auf einer X–Bus Version. Massoth-Protokoll (=DCC) ab 2005, davor LGB-kompatibel (MZS&amp;amp;nbsp;II).&lt;br /&gt;
# Der Märklin-Bus der CentralStation2 (CS2) verwendet (wie ESU, Zimo, ...) CAN als Hardware-/Protokoll-Basís. Der Bus der CentralStation1 (CS1) hatte Gemeinsamkeiten mit ESUs ECoSLink (z.B. Booster-Anschluss). Ob und wie weit das auch für den Märklin-Bus der CS2 gilt, ist zur Zeit unklar. &lt;br /&gt;
# Intellibox Basic und Intellibox II können als Fahrregler + Keyboard + Booster am LocoNet verwendet werden. Mit dem Software Upgrade 2.0 erhält auch die bewährte Intellibox (IB/IB–IR) diese Funktionalität (+9999 Funktionen, +Fahrstraßensteuerung). &lt;br /&gt;
# Der Viessmann LowSpeedBus (LSB) unterstützt X–Bus Geräte wie Roco Rückmelder/Lokmaus2/MultiMaus oder Lenz Handregler.&lt;br /&gt;
# Mit dem stabilisierten, einstellbaren 120W Netzteil kann das MX31ZL bis zu 4A liefern.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12623</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12623"/>
				<updated>2009-02-24T13:06:38Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Erweiterung des bisherigen Befehlsvorrats */  Attribute für rekursive Aufrufe hinzugefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
 GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122].&lt;br /&gt;
:Wie sieht es mit einer ID für Broadcasts aus? Es würde sich 00000000-0000-0000-00000000000 anbieten, aber vielleicht gibt es da bessere Alternativen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; muss nicht verwendet werden. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode und des Attributes. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - UUID - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Lok in der der Decoder verbaut ist (LOCO) - UUID - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Decoder zu dem diese Protokolldefinition gehört (DECODER) - UUID - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Protokollkonfiguration zu der diese Funktion gehört (PROTOCOL) - UUID - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
::Bild (IMAGE_ON) - UUID - statisch&lt;br /&gt;
::Bild (IMAGE_OFF) - UUID - statisch&lt;br /&gt;
:::Bild das auf der Funktionstaste angezeigt werden soll.&lt;br /&gt;
&lt;br /&gt;
; Bild (IMAGE)&lt;br /&gt;
: Bild, das in mehreren Dateiformaten vorliegen kann, mit Zeitstempel, um festzustellen, wann es zuletzt verändert wurde.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Formate (FORMAT) - numerisch - statisch&lt;br /&gt;
:::Formate in denen das Bild vorhanden ist: 1=SVG, 2=PNG, 4=JPG Rückgabewert ist die Summe aller verfügbaren Formate.&lt;br /&gt;
::Zeitstempel (TIMESTAMP) - numerisch - statisch&lt;br /&gt;
::eigentliches Bild (DATA) - Byte-Strom - statisch&lt;br /&gt;
::: Über GET DATA &amp;lt;format&amp;gt;,&amp;lt;width&amp;gt;,&amp;lt;height&amp;gt; kann das Bild in der gewünschten Größe und Format abgerufen werden.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12622</id>
		<title>Gattungszeichen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12622"/>
				<updated>2009-02-21T17:21:20Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Erweiterung auf Güterwagen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Güterwagen=&lt;br /&gt;
&lt;br /&gt;
Eine umfassende Liste der verschiedenen Gattungszeichen findet man unter: http://home.wtal.de/gueterwagen/gzde.htm&lt;br /&gt;
&lt;br /&gt;
=Reisezugwagen=&lt;br /&gt;
&lt;br /&gt;
Eine umfassende Liste der verschiedenen Gattungszeichen findet man unter: http://www.leo.org/information/freizeit/bahn/gattungszeichen.html&lt;br /&gt;
&lt;br /&gt;
A = 1. Kl.&lt;br /&gt;
&lt;br /&gt;
Ap = Wagen der Bauart &amp;quot;Rheingold&amp;quot; mit Pullmannbestuhlung und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
Av = Wagen Bauart &amp;quot;Rheingold&amp;quot; mit Abteilen, größere Abteillänge und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
B = 2. Kl.&lt;br /&gt;
&lt;br /&gt;
Bc = Liegewagen 2. Kl.&lt;br /&gt;
&lt;br /&gt;
C = 3. Kl.&lt;br /&gt;
&lt;br /&gt;
Cl = Liegewagen 3. Klasse&lt;br /&gt;
&lt;br /&gt;
Diese mit 2. Zeichen &amp;quot;R&amp;quot; = Halbspeisewagen oder Barwagen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pw (bis 1961) = Gepäckwagen&lt;br /&gt;
&lt;br /&gt;
D = ab 1961 Gepäckwagen, mit A oder B oder C Gepäckabteil&lt;br /&gt;
&lt;br /&gt;
DD = Doppelstock-Autotransportwagen für &amp;quot;Auto im Reisezug&amp;quot;&lt;br /&gt;
&lt;br /&gt;
WR = Vollspeisewagen&lt;br /&gt;
&lt;br /&gt;
WL = Schlafwagen&lt;br /&gt;
&lt;br /&gt;
WG = Gesellschaftswagen für Sonderverkehr&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kein Nebengattungszeichen = Abteilwagen ohne Übergangsmöglichkeit&lt;br /&gt;
&lt;br /&gt;
i = Wagen mit offenem Übergang und Seiten- oder Mittelgang&lt;br /&gt;
&lt;br /&gt;
ü = Wagen mit Faltenbalg und Seitengang&lt;br /&gt;
&lt;br /&gt;
üm = Wagen mit Faltenbalg und Seitengang mit Länge ab 26m (nicht 26,4!), das g entfiel ab 1965 bei allen m-Wagen&lt;br /&gt;
&lt;br /&gt;
g = Wagen mit geschlossenem Übergang als Gummiwulst (ergänzt jeweils ü, üp, üm und y, entfiel bei m ab 1965)&lt;br /&gt;
&lt;br /&gt;
y = (um 1951 noch üp) Wagen mit Mittelgang und geschlossenem Übergang&lt;br /&gt;
&lt;br /&gt;
t = Spezialeinrichtung für Reisebüroverkehr (nur bei Bc und WR)&lt;br /&gt;
&lt;br /&gt;
e = elektrische Heizung&lt;br /&gt;
&lt;br /&gt;
h = Klimatisierung&lt;br /&gt;
&lt;br /&gt;
w = in Verbindung mit ü Polstersitze in der 3. Klasse&lt;br /&gt;
&lt;br /&gt;
s = nur bei WL &amp;quot;Spezial-1-Bett-Abteil)&lt;br /&gt;
&lt;br /&gt;
f = Befehlsstand für geschobene Züge&lt;br /&gt;
&lt;br /&gt;
b = Befehlssteuerleitung (bei 3yge, 4ymg, 4n, i und v)&lt;br /&gt;
&lt;br /&gt;
v = als Nebengattunsgzeichen Beiwagen zu Verbrennungstriebwagen (nicht zu verwechseln mit dem Hauptgattungszeichen Av)&lt;br /&gt;
&lt;br /&gt;
el = Beiwagen zu Elektrotriebwagen (selten, auslaufend, bei den B4yge nicht mehr benutzt)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorbild]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gattungszeichen_Reisezugwagen&amp;diff=12621</id>
		<title>Gattungszeichen Reisezugwagen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gattungszeichen_Reisezugwagen&amp;diff=12621"/>
				<updated>2009-02-21T17:19:47Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Gattungszeichen Reisezugwagen wurde nach Gattungszeichen verschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#redirect [[Gattungszeichen]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12620</id>
		<title>Gattungszeichen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12620"/>
				<updated>2009-02-21T17:19:45Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Gattungszeichen Reisezugwagen wurde nach Gattungszeichen verschoben&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Eine umfassende Liste der verschiedenen Gattungszeichen findet man auch unter: http://www.leo.org/information/freizeit/bahn/gattungszeichen.html&lt;br /&gt;
&lt;br /&gt;
A = 1. Kl.&lt;br /&gt;
&lt;br /&gt;
Ap = Wagen der Bauart &amp;quot;Rheingold&amp;quot; mit Pullmannbestuhlung und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
Av = Wagen Bauart &amp;quot;Rheingold&amp;quot; mit Abteilen, größere Abteillänge und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
B = 2. Kl.&lt;br /&gt;
&lt;br /&gt;
Bc = Liegewagen 2. Kl.&lt;br /&gt;
&lt;br /&gt;
C = 3. Kl.&lt;br /&gt;
&lt;br /&gt;
Cl = Liegewagen 3. Klasse&lt;br /&gt;
&lt;br /&gt;
Diese mit 2. Zeichen &amp;quot;R&amp;quot; = Halbspeisewagen oder Barwagen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pw (bis 1961) = Gepäckwagen&lt;br /&gt;
&lt;br /&gt;
D = ab 1961 Gepäckwagen, mit A oder B oder C Gepäckabteil&lt;br /&gt;
&lt;br /&gt;
DD = Doppelstock-Autotransportwagen für &amp;quot;Auto im Reisezug&amp;quot;&lt;br /&gt;
&lt;br /&gt;
WR = Vollspeisewagen&lt;br /&gt;
&lt;br /&gt;
WL = Schlafwagen&lt;br /&gt;
&lt;br /&gt;
WG = Gesellschaftswagen für Sonderverkehr&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kein Nebengattungszeichen = Abteilwagen ohne Übergangsmöglichkeit&lt;br /&gt;
&lt;br /&gt;
i = Wagen mit offenem Übergang und Seiten- oder Mittelgang&lt;br /&gt;
&lt;br /&gt;
ü = Wagen mit Faltenbalg und Seitengang&lt;br /&gt;
&lt;br /&gt;
üm = Wagen mit Faltenbalg und Seitengang mit Länge ab 26m (nicht 26,4!), das g entfiel ab 1965 bei allen m-Wagen&lt;br /&gt;
&lt;br /&gt;
g = Wagen mit geschlossenem Übergang als Gummiwulst (ergänzt jeweils ü, üp, üm und y, entfiel bei m ab 1965)&lt;br /&gt;
&lt;br /&gt;
y = (um 1951 noch üp) Wagen mit Mittelgang und geschlossenem Übergang&lt;br /&gt;
&lt;br /&gt;
t = Spezialeinrichtung für Reisebüroverkehr (nur bei Bc und WR)&lt;br /&gt;
&lt;br /&gt;
e = elektrische Heizung&lt;br /&gt;
&lt;br /&gt;
h = Klimatisierung&lt;br /&gt;
&lt;br /&gt;
w = in Verbindung mit ü Polstersitze in der 3. Klasse&lt;br /&gt;
&lt;br /&gt;
s = nur bei WL &amp;quot;Spezial-1-Bett-Abteil)&lt;br /&gt;
&lt;br /&gt;
f = Befehlsstand für geschobene Züge&lt;br /&gt;
&lt;br /&gt;
b = Befehlssteuerleitung (bei 3yge, 4ymg, 4n, i und v)&lt;br /&gt;
&lt;br /&gt;
v = als Nebengattunsgzeichen Beiwagen zu Verbrennungstriebwagen (nicht zu verwechseln mit dem Hauptgattungszeichen Av)&lt;br /&gt;
&lt;br /&gt;
el = Beiwagen zu Elektrotriebwagen (selten, auslaufend, bei den B4yge nicht mehr benutzt)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorbild]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalprojekt&amp;diff=12617</id>
		<title>Digitalprojekt</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalprojekt&amp;diff=12617"/>
				<updated>2009-02-12T13:19:55Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* SRCP-Clients */ Downloadlink zu nmra-programmer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Einleitung =&lt;br /&gt;
&lt;br /&gt;
Am '''DER_MOBA''' Digitalprojekt arbeiten derzeit viele Entwickler, die sich &amp;amp;uuml;ber die Newsgroup '''de.rec.modelle.bahn''' koordinieren. Ziel ist die Schaffung eines modularen und skalierbaren - d.h. an die jeweiligen Anforderungen anpassbaren - Digitalsystems zur [[Modellbahnsteuerung]]. Einzelne Komponenten dieses nach dem Client-Server-Prinzip aufgebauten Systems können&lt;br /&gt;
ausgetauscht bzw. je nach Anforderung bausteinartig zusammengestellt werden. &lt;br /&gt;
Der Informationsaustausch der einzelnen Programme untereinander erfolgt über ein speziell für&lt;br /&gt;
diesen Zweck erfundenes Protokoll (SRCP = [[SRCP-Grundlagen | Simple Railroad Command Protocol]]). Mit den Details&lt;br /&gt;
dieser Sprachdefinition muß sich ein Anwender allerdings genausowenig auseinander setzen,&lt;br /&gt;
wie ein E-Mail-Verfasser mit SMTP (Simple Mail Transfer Protocol). Wichtig ist lediglich,&lt;br /&gt;
dass die eingesetzten Programme die gleiche Sprache sprechen.&lt;br /&gt;
&lt;br /&gt;
Ein Vorteil des hier eingesetzten Client-Server-Prinzips ist, dass die SRCP-Programme&lt;br /&gt;
grundsätzlich netzwerkfähig sind. Der Anwender ist damit nicht an einen einzelnen&lt;br /&gt;
Steuerungsrechner gebunden, wie das bei herkömmlichen Modellbahnsteuerungsprogrammen&lt;br /&gt;
in der Regel der Fall ist.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Srcp-clients.png|framed|Nachrichtenfluß zwischen der Modellbahn, einem SRCP-Server und verschiedenen SRCP-Clients]]&lt;br /&gt;
Ein funktionsf&amp;amp;auml;higes SRCP-Digitalsystem besteht von der Software-Seite her aus mindestens zwei Programmen:&lt;br /&gt;
&lt;br /&gt;
* Einem SRCP-Server und&lt;br /&gt;
* einem SRCP-Client&lt;br /&gt;
&lt;br /&gt;
Der ''Server'' stellt die eigentliche Schnittstelle zur Hardware der Modellbahnanlage dar und kommuniziert entweder mit einer per [[Interface]] angeschlossenen [[Digitalzentrale]] oder - im Falle eines DigitalDirekt-Systems - direkt mit den [[Booster|Boostern]]. Er nimmt Steuerbefehle von SRCP-Clients entgegen und leitet diese an die Modellbahn weiter. Zusätzlich hält er die Clients über Statusänderungen der Modellbahn informiert.&lt;br /&gt;
&lt;br /&gt;
Der ''Client'' kommuniziert mit Hilfe von SRCP-Kommandos nur mit dem Server und stellt in der Regel ein Steuerungs- oder Bedienprogramm dar. Das Konzept schließt ausdrücklich die gleichzeitige Verwendung mehrerer SRCP-Clients ein, die z.B. auf verschiedene Funktionalitäten (Lokomotivsteuerung, Stellwerk, Ablaufsteuerung etc.) spezialisiert sein können (siehe nebenstehende Abbildung).&lt;br /&gt;
&lt;br /&gt;
Obwohl sehr viele, der derzeit verf&amp;amp;uuml;gbaren SRCP-Programme, f&amp;amp;uuml;r das Betriebssystem Linux entwickelt wurden, ist das '''DER_MOBA''' Digitalprojekt grunds&amp;amp;auml;tzlich unabh&amp;amp;auml;ngig von einem bestimmten Betriebssystem und der dafür notwendigen Hardware. Einige Programme laufen bereits jetzt auch unter anderen Betriebssystemen, andere k&amp;amp;ouml;nnen mit wenig Aufwand portiert werden.&lt;br /&gt;
&lt;br /&gt;
Das '''DER_MOBA''' Digitalprojekt wird dezentral durchgef&amp;amp;uuml;hrt. Informationen zu den einzelnen Programmen werden &amp;amp;uuml;blicherweise vom jeweiligen Autor &amp;amp;uuml;ber dessen WWW-Seite angeboten. Diese Seite ist deshalb im wesentlichen eine Link-Liste, die einen &amp;amp;Uuml;berblick &amp;amp;uuml;ber die verf&amp;amp;uuml;gbare Soft- und Hardware bietet. Weitere Detailinformationen zum Protokoll z.B. für Programmentwickler befinden sich im Artikel [[SRCP-Grundlagen]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= SRCP-Server =&lt;br /&gt;
== Projekte für den praktischen Einsatz ==&lt;br /&gt;
&lt;br /&gt;
* '''DDW Server''' - DigitalDirekt-SRCP-Server (0.7.x und 0.8.x) f&amp;amp;uuml;r Windows.&amp;lt;br /&amp;gt;Dieser Server macht den Computer zur Softwarezentrale und ermöglicht einen Digitalbetrieb ohne separate [[Digitalzentrale | Zentraleinheit]] und [[Interface | Computerinterface]].&amp;lt;br /&amp;gt; Kontakt: [mailto:mgrafe@snafu.de Michael Gr&amp;amp;auml;fe]&amp;lt;br /&amp;gt; Weitere Informationen zu diesem Programm gibt es auf den [http://home.snafu.de/mgrafe/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''erddcd''' - DigitalDirekt-SRCP-Server (0.7.x) f&amp;amp;uuml;r Linux (DDL)&amp;lt;br /&amp;gt;Dieser Server macht den Computer zur Softwarezentrale und ermöglicht einen Digitalbetrieb ohne separate [[Digitalzentrale | Zentraleinheit]] und [[Interface | Computerinterface]] (für Linux Kernel 2.4 und 2.6).&amp;lt;br /&amp;gt; Kontakt: [http://vogt-it.com/MailForm/index.php Torsten Vogt]&amp;lt;br /&amp;gt;Weitere Informationen zu diesem Programm gibt es auf den Seiten des [http://www.vogt-it.com/OpenSource/DDL/ DDL-Projektes]. &lt;br /&gt;
&lt;br /&gt;
* '''TrackONE SRCP-Server''' - SRCP-Server (0.7.x) f&amp;amp;uuml;r Windows und die Intellibox.&amp;lt;br /&amp;gt;Server zur Ansteuerung einer per serieller Schnittstelle angeschlossenen Intellibox.&amp;lt;br /&amp;gt; Kontakt: [mailto:Michael@Reukauff.de Michael Reukauff]&amp;lt;br /&amp;gt; Weitere Informationen zu diesem Programm gibt es auf den [http://www.reukauff.de/TrackONE/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''DCC-Signaler''' - SRCP-Server (0.7.x) f&amp;amp;uuml;r Windows und Linux.&amp;lt;br /&amp;gt;Dieser Server arbeitet in Verbindung mit einem externen, über die serielle Schnittstelle angeschlossenen DCC-Signalgenerator.&amp;lt;br /&amp;gt; Kontakt: [mailto:markus@gietzen.de Markus Gietzen]&amp;lt;br /&amp;gt; Weitere Informationen zu diesem Programm gibt es auf den WWW-Seiten des [http://dccsignaler.sourceforge.net/ Projektes].&lt;br /&gt;
&lt;br /&gt;
* '''srcpd''' - SRCP-Server (0.8.x) f&amp;amp;uuml;r Linux/FreeBSD/Windows (Cygwin)/Mac&amp;amp;nbsp;OS&amp;amp;nbsp;X&amp;lt;br /&amp;gt;&amp;amp;raquo;srcpd&amp;amp;laquo; kann zur Steuerung von Anlagen sowohl über verschiedene [[Digitalzentralen]], wie z.B. Intellibox, M&amp;amp;auml;rklin Interface 6051, Lenz LI100, Selectrix, Zimo MX1, OpenDCC, als auch über direkt an der seriellen Schnittstelle (RS232) angeschlossene [[Booster]] (DDL-Betrieb) genutzt werden. Möglichkeiten zum Anschluß von Rückmeldungen, wie Littfinski HSI-S88 oder S88-Module am Parallelport, sowie weitere Module für seltener vorkommende Schnittstellen (CAN-Bus, I2C) sind ebenfalls vorhanden. Es können auch mehrere Geräte gleichzeitig (z.B. zwei Intelliboxen) eingesetzt werden.&amp;lt;br /&amp;gt; Kontakt: [mailto:srcpd-devel@lists.sourceforge.net srcpd-devel@lists.sourceforge.net]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm gibt es auf den [http://srcpd.sourceforge.net/ Projekt-Seiten] bei SourceForge.&lt;br /&gt;
&lt;br /&gt;
* '''ejsrcpd''' - Extended Java SRCP-Daemon (0.8.x)&amp;lt;br /&amp;gt;In Java implementierter SRCP-Server mit Plugin-Konzept zur Unterstützung unterschiedlicher Hardware-Schnittstellen.&amp;lt;br /&amp;gt; Kontakt: [mailto:kurtharders@users.sourceforge.net Kurt Harders]&amp;lt;br /&amp;gt; Weitere Informationen zu diesem Programm gibt es auf den [http://sourceforge.net/projects/ejsrcpd WWW-Seiten] des Projektes.&lt;br /&gt;
&lt;br /&gt;
== Technologiestudien ==&lt;br /&gt;
&lt;br /&gt;
Diese SRCP-Server sind entstanden, um Funktionen nicht nur am gr&amp;amp;uuml;nen Tisch testen zu k&amp;amp;ouml;nnen. Sie&lt;br /&gt;
k&amp;amp;ouml;nnen auch als Anregung f&amp;amp;uuml;r Weiterentwicklungen dienen. &lt;br /&gt;
&lt;br /&gt;
* '''jsrcpd''' - Referenzimplementierung von SRCP 0.8.x. Dieses Programm ist eine erste Implementierung von SRCP 0.8.x ohne weitere Funktionalit&amp;amp;auml;t. Derzeit ist es nicht f&amp;amp;uuml;r den Einsatz in der Modellbahnpraxis geeignet. Es dient in erster Linie den Entwicklern, die noch vorhandenen Fehler und Schw&amp;amp;auml;chen von SRCP 0.8.x zu erkennen und zu beheben. Es ist auch als Hilfe f&amp;amp;uuml;r die Entwicklung von SRCP 0.8.x Clients gedacht. Wer einen einsatzf&amp;amp;auml;higen SRCP-Server sucht, sollte sich die weiter oben angeführten Produkte ansehen.&amp;lt;br /&amp;gt; Kontakt: [mailto:olaf.schlachter@web.de Olaf Schlachter]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den Seiten des [http://srcpd.sourceforge.net/jsrcpd/ Autors].&lt;br /&gt;
&lt;br /&gt;
== Kommerzielle Produkte ==&lt;br /&gt;
&lt;br /&gt;
* '''Mini SRCP Server''' - Auf SRCP 0.8.2 basierende Firmware für Atmel Mikrocontroller; ist nur in Form eines fertig programmierten ATMega32 erhältlich.&amp;lt;br /&amp;gt; Kontakt: [mailto:r.barnstorf@online.de Reimar Barnstorf]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den Seiten des [http://www.7soft.de/de/mini_srcp_server/index.html Autors].&lt;br /&gt;
&lt;br /&gt;
= SRCP-Clients =&lt;br /&gt;
&lt;br /&gt;
* '''J-Man''' - Java-Programm zur manuellen Steuerung von Lokomotiven und Magnetartikeln unter einer grafischen Benutzeroberfl&amp;amp;auml;che. Die Weiterentwicklung dieses Programms findet unter einer eigenen [http://sourceforge.net/projects/j-man/ Projektseite] statt.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''loco-panel''' - Monitor zur &amp;amp;Uuml;berwachung aller aktiven Loks.&amp;lt;br /&amp;gt; &amp;lt;!-- &amp;lt;LI&amp;gt;&amp;lt;B&amp;gt;ddsh&amp;lt;/B&amp;gt; - Programmiersprache zur Steuerung von einfachen automatischen BetriebsablÃ€ufen.&amp;lt;BR&amp;gt; --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''uhl-programmer''' - Programmieren von Uhlenbrock-Decodern&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''nmra-programmer''' - Programmieren von NMRA-DCC-Decodern. Die Möglichkeit die Software zu beziehen, gibt es im Downloadbereich von [http://sourceforge.net/project/showfiles.php?group_id=29376 srcpd].&lt;br /&gt;
&lt;br /&gt;
* '''phpTrainCtrl f&amp;amp;uuml;r SRCP 0.8 (alpha)''' - u.a. phpTamsProgrammer&amp;lt;br /&amp;gt;Kontakt: [http://vogt-it.com/MailForm/index.php Torsten Vogt]&amp;lt;br /&amp;gt; Weitere Infos zu diesen Programmen und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den Seiten des [http://www.vogt-it.com/OpenSource/DDL/ DDL-Projektes].&lt;br /&gt;
&lt;br /&gt;
* '''phpDDLTerminal''' - PHP basiertes Web-Interface zur Steuerung und Decoder-Programmierung&amp;lt;br /&amp;gt;Kontakt: [mailto:tt@borrmanns.de Thomas Borrmann]&amp;lt;br /&amp;gt; Weitere Informationen zu diesem Programm gibt es auf den Seiten des [http://tt.borrmanns.de/index.php?nav=0;0&amp;amp;cont=software Projektes].&lt;br /&gt;
&lt;br /&gt;
* '''dtcltiny''' - manuelle Steuerung von Lokomotiven mit besonders kompakter und &amp;amp;uuml;bersichtlicher Bedienoberfl&amp;amp;auml;che.&amp;lt;br /&amp;gt; Kontakt: [mailto:dtcltiny@markus-pfeiffer.de Markus Pfeiffer]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den veralteten [http://www.markus-pfeiffer.de/ WWW-Seiten] des Autors, sowie der aktuellen [http://dtcltiny.sourceforge.net/ Projektseite] des Programms.&lt;br /&gt;
&lt;br /&gt;
* '''spdrs60''' - grafisches Gleisbildstellpult nach Bundesbahnvorlage mit vorbildgerechter Fahrstraßensicherungslogik.&amp;lt;br /&amp;gt; Kontakt: [mailto:guido.scholz@bayernline.de Guido Scholz]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit, die Software zu beziehen, gibt es auf den veralteten [http://www.linux-modellbahn.de/ WWW-Seiten] von Stefan Preis sowie der aktuellen [http://spdrs60.sourceforge.net/ Projektseite] des Programms.&lt;br /&gt;
&lt;br /&gt;
* '''M6051emu''' - Emulation des M&amp;amp;auml;rklin Interfaces 6051 f&amp;amp;uuml;r '''erddcd'''.&amp;lt;br /&amp;gt;Wird ben&amp;amp;ouml;tigt, wenn Nicht-SRCP-Clients (z.B. Railroad&amp;amp;amp;Co) mit '''erddcd''' betrieben werden sollen.&amp;lt;br /&amp;gt; Kontakt: [mailto:dschaef@neon.rif.fuedo.de Dieter Schaefer]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den Seiten des [http://www.vogt-it.com/OpenSource/DDL/ DDL-Projektes].&lt;br /&gt;
&lt;br /&gt;
* '''rcsh''' und '''rcman''' - Programmiersprache (Railroad Command Shell) und textuelle Bedienoberfl&amp;amp;auml;che (rcman)&amp;lt;br /&amp;gt; Kontakt: [mailto:peer.griebel@gmx.de Dr. Peer Griebel]&amp;lt;br /&amp;gt; Weitere Infos zu diesen Programmen und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.griebel-net.de/peer/rcsh/rcsh.html WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* Programmbibliothken für '''TCL/Tk''' und '''Python''' - Sammlung n&amp;amp;uuml;tzlicher Routinen und Prozesse f&amp;amp;uuml;r den Selbstprogrammierer: [http://srcpd.sourceforge.net/clients/ Client-Seiten des srcpd]&lt;br /&gt;
&lt;br /&gt;
* '''SRCP Recorder''' - Zeichnet SRCP-Befehle einer laufenden Session auf und spielt sie sp&amp;amp;auml;ter wieder ab.&amp;lt;br /&amp;gt; Kontakt: [mailto:mtrute@web.de Matthias Trute]&amp;lt;br /&amp;gt; Weitere Infos zu diesen Programmen und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://srcpd.sourceforge.net/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''SRCP Tester''' - SRCP-Befehle mit einem Web-Server und PHP generieren.&amp;lt;br /&amp;gt; Kontakt: [mailto:martin@familiewolf.de Martin Wolf]&amp;lt;br /&amp;gt; Weitere Infos zu diesen Programmen und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den &amp;lt;nowiki&amp;gt;[http://www.stud.mw.tu-muenchen.de/~mw7/familie/martin/hobby/modellbahn/srcptest.html WWW-Seiten (link defekt)]&amp;lt;/nowiki&amp;gt; des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''Gplan''' - Gleispl&amp;amp;auml;ne erstellen und Magnetartikel steuern (f&amp;amp;uuml;r Windows und Linux).&amp;lt;br /&amp;gt; Kontakt: [mailto:mgrafe@snafu.de Michael Gr&amp;amp;auml;fe]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://home.snafu.de/mgrafe/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''TrackONE SRCP-Keyboard, Gleisplan-Editor und Steuersoftware''' (f&amp;amp;uuml;r Windows) &amp;lt;br /&amp;gt; Kontakt: [mailto:Michael@Reukauff.de Michael Reukauff]&amp;lt;br /&amp;gt; Weitere Infos zu diesen Programmen und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.reukauff.de/TrackONE/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''JTrain''' - In Java geschriebener grafischer SRCP-Client zur Steuerung von Lokomotiven und Schaltdecodern mit grafischem Stellpult (f&amp;amp;uuml;r Windows und Linux). Die ursprünglich von Werner Kunkel betreute Original-Internetseite (www.jtrain.de) dieses Programms existiert nicht mehr. Es bestehen noch eine von [http://www.lug-burghausen.org/dienste/rpm.html Guido Scholz] weiterentwickelte Version dieses Programms sowie eine darauf aufbauende, von [mailto:ibruell@users.berlios.de Ingo Bruell] betreute [http://developer.berlios.de/projects/jtrain/ Projektseite].&lt;br /&gt;
&lt;br /&gt;
* '''Java DCC Network Client (ab Version 2.1)''' - SRCP-Client zur Steuerung einer Gartenbahn mit einem Sharp Zaurus PDA mit einem WLAN&amp;lt;br /&amp;gt; Kontakt: [mailto:H.Karoska@t-online.de Helge Karoska]&amp;lt;br /&amp;gt; Java-SRCP-Client f&amp;amp;uuml;r den PDA Zaurus unter Linux. Das Programms wurde entwickelt zur Steuerung von Loks, Weichen und Zubeh&amp;amp;ouml;r einer Gartenbahn mit einem WLAN. Es kann aber auch universell eingesetzt werden. &amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.karkoska.de/DCC/DCCSET.htm WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''LD-X-Programmer''' - Programm zur Programmierung von Decodern der Firma Tams Elektronik (f&amp;amp;uuml;r Windows)&amp;lt;br /&amp;gt; Kontakt: [mailto:geramb@aon.de Michael Geramb]&amp;lt;br /&amp;gt; SRCP-Client (SRCP 0.7.3) f&amp;amp;uuml;r Windows zur Programmierung von Tams-Decodern. &amp;lt;br /&amp;gt; Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://members.aon.at/geramb/ld-x-programmer.htm WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''TRAINer''' - SRCP-Client mit Fahrstrassensteuerung, Lokomotiv-Bibliothek, Automatik-Betrieb (f&amp;amp;uuml;r Windows)&amp;lt;br /&amp;gt; Kontakt: [mailto:tainer@keintzel.at Peter Keintzel]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.keintzel.at/html/at/hobby/TRAINer/trainer.htm WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''SRCP-Pakete f&amp;amp;uuml;r verschiedene Linux-Distributionen''' - Guido Scholz hat einige der hier gelisteten Linux-Programme weiterentwickelt und diese in einfach zu installierende Pakete (SuSE, Fedora, Debian) verpackt.&amp;lt;br /&amp;gt; Kontakt: [mailto:guido.scholz@bayernline.de Guido Scholz]&amp;lt;br /&amp;gt; Weitere Infos zu diesem Angebot und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.lug-burghausen.org/dienste/rpm.html WWW-Seiten] des Autors (hier Linux User Group Burghausen).&lt;br /&gt;
&lt;br /&gt;
* '''Traindrive''' - SRCP-Client zum Steuern von Lokomotiven (Linux- und Windows-Version)&amp;lt;br /&amp;gt; Kontakt: [mailto:ganter@ganter.at Fritz Ganter]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://traindrive.gpsdrive.cc/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''RocRail''' - Programm zum Steuern von Lokomotiven und Gleisbildstellpult (Linux- und Windows-Version vorhanden)&amp;lt;br /&amp;gt; Kontakt: [mailto:support@rocrail.net Rob Versluis]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://www.rocrail.net/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''MOBA-Package''' - Hilfsprogramme für die Entwicklung von SRCP-Clients und -Servern (Windows-Version)&amp;lt;br /&amp;gt; Kontakt: [mailto:selandro@users.sourceforge.net Roman Lauer]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit die Software zu beziehen, gibt es auf den [http://mobapackage.sourceforge.net/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''EnjoyTheTime''' - SRCP-Client zum Steuern von Lokomotiven (Windows-Version)&amp;lt;br /&amp;gt; Kontakt: [mailto:mgeramb@users.sourceforge.net  Michael Geramb]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit, die Software zu beziehen, gibt es auf den [http://members.aon.at/geramb/enjoythetime.htm WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''Railroad Express''' - SRCP-Client zum Steuern von Modellbahnanlagen (Windows-Version)&amp;lt;br /&amp;gt; Kontakt: [mailto:support@miniware.nl  Fred Stevens]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit, die Software zu beziehen, gibt es auf den [http://www.moba-digitaal.nl/de/main/index.html WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''dras/Kdigirail''' - SRCP-Client zum Steuern von Modellbahnanlagen (Linux-Version)&amp;lt;br /&amp;gt; Kontakt: [mailto:schmischi@users.sourceforge.net  Frank Schmischke]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit, die Software zu beziehen, gibt es auf den [http://srcpd.sourceforge.net/clients/dras/ WWW-Seiten] des Autors.&lt;br /&gt;
&lt;br /&gt;
* '''AdHoc-Railway''' - Java-SRCP-Client zum Steuern von Modellbahnanlagen&amp;lt;br /&amp;gt; Kontakt: [mailto:fork_ch@users.sourceforge.net Benjamin Mueller]&amp;lt;br /&amp;gt;Weitere Infos zu diesem Programm und die M&amp;amp;ouml;glichkeit, die Software zu beziehen, gibt es auf der [http://sourceforge.net/projects/adhocrailway/ Projektseite] des Programms.&lt;br /&gt;
&lt;br /&gt;
* '''jsrcpc''' - Java-SRCP-Bibliothek zur Entwicklung von SRCP-Clients&amp;lt;br /&amp;gt; Kontakt: [mailto:fork_ch@users.sourceforge.net Benjamin Mueller]&amp;lt;br /&amp;gt;Weitere Infos zu dieser Software und die M&amp;amp;ouml;glichkeit, diese zu beziehen, gibt es auf der [http://sourceforge.net/projects/jsrcpc/ Projektseite] der Bibliothek.&lt;br /&gt;
&lt;br /&gt;
* '''nsrcp''' - .NET basierte SRCP-Bibliothek zur Entwicklung von SRCP-Clients&amp;lt;br /&amp;gt; Kontakt: [mailto:mgeramb@users.sourceforge.net Michael Geramb]&amp;lt;br /&amp;gt;Weitere Infos zu dieser Software und die M&amp;amp;ouml;glichkeit, diese zu beziehen, gibt es auf der [http://sourceforge.net/projects/nsrcp/ Projektseite] der Bibliothek.&lt;br /&gt;
&lt;br /&gt;
* '''JMRI''' - Java basierte Programmsammlung zur Steuerung von Modellbahnen&amp;lt;br /&amp;gt; Kontakt: [mailto:jmri-developers@users.sourceforge.net Entwickler Mailingliste]&amp;lt;br /&amp;gt;Weitere Infos zu dieser Software und die M&amp;amp;ouml;glichkeit, diese zu beziehen, gibt es auf der [http://jmri.sourceforge.net/ Projektseite] der Programmsammlung.&lt;br /&gt;
&lt;br /&gt;
* '''PPC SRCP Client''' - .Net basierter PocketPC-Client zur Steuerung von Lokomotiven&amp;lt;br /&amp;gt; Kontakt: [mailto:r.barnstorf@online.de Reimar Barnstorf]&amp;lt;br /&amp;gt;Weitere Infos zu dieser Software und die M&amp;amp;ouml;glichkeit, diese zu beziehen, gibt es auf den [http://http://www.7soft.de/de/ppc_srcp_client/index.html WWW-Seiten] des Programms.&lt;br /&gt;
&lt;br /&gt;
= Hardware =&lt;br /&gt;
[[Bild:Srcp-moba-interface.png|framed|Mögliche Hardware-Schnittstellen zwischen SRCP-Server und Modellbahn]]&lt;br /&gt;
Ein SRCP-Server kann unterschiedliche Hardwareschnittstellen eines Computers ansprechen und über diese mit der Modellbahn kommunizieren. Die größte Verbreitung für diesen Zweck hat die serielle Schnittstelle ([http://de.wikipedia.org/wiki/EIA-232 RS232/EIA-232]), die in neueren Rechnern zunehmend durch die [http://de.wikipedia.org/wiki/USB USB-Schnittstelle] ersetzt wird. Weitere Verwendung findet die parallele Schnittstelle ([http://de.wikipedia.org/wiki/IEEE_1284 IEEE 1284]) oder auch weniger geläufige, wie der [http://de.wikipedia.org/wiki/I2C I2C-Bus] oder diverse IO-Karten. Welche Art Hardware-Anbindung von den einzelnen SRCP-Servern unterstützt wird, ist der jeweiligen Programmdokumentation zu entnehmen. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DDL-Betrieb ==&lt;br /&gt;
Im Rahmens des [http://www.vogt-it.com/OpenSource/DDL/ DDL-Projektes] wurde eine Technik entwickelt, mit der ein PC einfach und kostengünstig an die Hardware der Modellbahnanlage angeschlossen werden kann. Der Computer kann nach diesem System als [[Digitalzentrale]] genutzt werden.  Prinzipiell benötigt man hierfür zwei Informationskanäle, die jedoch auch einzeln betrieben werden können:&lt;br /&gt;
* Ein Kanal zum Senden von Steuerbefehlen an die Anlage&lt;br /&gt;
* Ein Kanal zum Empfang von Rückmeldungen von der Anlage&lt;br /&gt;
&lt;br /&gt;
Das ''Senden'' von Befehlen läuft über die serielle Schnittstelle ([http://de.wikipedia.org/wiki/EIA-232 RS232/EIA-232]), die im einfachsten Fall über zwei Kabel elektrisch mit einem [[Booster]] verbunden ist. Programmtechnisch wird die serielle Schnittstelle hierbei als Signalgenerator für das gewählte [[Digitalprotokoll]] genutzt. Beim praktischen Einsatz ist zu beachten, dass Notebooks in der Regel ein anderes Spannungsniveau an der RS232 liefern (ca. 5-8&amp;amp;nbsp;V), als Desktop-Rechner (ca. 12&amp;amp;nbsp;V). Manche Hardware-Kombinationen funktionieren daher an dem einen oder anderen Notebook nicht.&lt;br /&gt;
&lt;br /&gt;
Zum ''Empfang'' von Rückmeldungen der Anlage benötigt man ein [[S88-R%C3%BCckmeldebus | S88-Bus-System]], das über Kabelverbindungen und eine 5&amp;amp;nbsp;V-Spannungsversorgung an die parallele Schnittstelle ([http://de.wikipedia.org/wiki/IEEE_1284 IEEE 1284]) angeschlossen wird.&lt;br /&gt;
&lt;br /&gt;
Ein übersichtliche Zusammenstellung der für diese Anbindungen notwendigen elektischen Verbindungen gibt es von Holger Seider: http://home.snafu.de/mgrafe/Anleitung_Server.htm&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12616</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12616"/>
				<updated>2009-02-09T17:22:02Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Abfrage der CRCF-Daten via Generic Messages */  actor_id&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
 GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122].&lt;br /&gt;
:Wie sieht es mit einer ID für Broadcasts aus? Es würde sich 00000000-0000-0000-00000000000 anbieten, aber vielleicht gibt es da bessere Alternativen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; muss nicht verwendet werden. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode und des Attributes. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - UUID - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
::Bild (IMAGE_ON) - UUID - statisch&lt;br /&gt;
::Bild (IMAGE_OFF) - UUID - statisch&lt;br /&gt;
:::Bild das auf der Funktionstaste angezeigt werden soll.&lt;br /&gt;
&lt;br /&gt;
; Bild (IMAGE)&lt;br /&gt;
: Bild, das in mehreren Dateiformaten vorliegen kann, mit Zeitstempel, um festzustellen, wann es zuletzt verändert wurde.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Formate (FORMAT) - numerisch - statisch&lt;br /&gt;
:::Formate in denen das Bild vorhanden ist: 1=SVG, 2=PNG, 4=JPG Rückgabewert ist die Summe aller verfügbaren Formate.&lt;br /&gt;
::Zeitstempel (TIMESTAMP) - numerisch - statisch&lt;br /&gt;
::eigentliches Bild (DATA) - Byte-Strom - statisch&lt;br /&gt;
::: Über GET DATA &amp;lt;format&amp;gt;,&amp;lt;width&amp;gt;,&amp;lt;height&amp;gt; kann das Bild in der gewünschten Größe und Format abgerufen werden.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12615</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12615"/>
				<updated>2009-02-07T16:20:04Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Abfrage der CRCF-Daten via Generic Messages */  GET&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
 GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; muss nicht verwendet werden. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode und des Attributes. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - UUID - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
::Bild (IMAGE_ON) - UUID - statisch&lt;br /&gt;
::Bild (IMAGE_OFF) - UUID - statisch&lt;br /&gt;
:::Bild das auf der Funktionstaste angezeigt werden soll.&lt;br /&gt;
&lt;br /&gt;
; Bild (IMAGE)&lt;br /&gt;
: Bild, das in mehreren Dateiformaten vorliegen kann, mit Zeitstempel, um festzustellen, wann es zuletzt verändert wurde.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Formate (FORMAT) - numerisch - statisch&lt;br /&gt;
:::Formate in denen das Bild vorhanden ist: 1=SVG, 2=PNG, 4=JPG Rückgabewert ist die Summe aller verfügbaren Formate.&lt;br /&gt;
::Zeitstempel (TIMESTAMP) - numerisch - statisch&lt;br /&gt;
::eigentliches Bild (DATA) - Byte-Strom - statisch&lt;br /&gt;
::: Über GET DATA &amp;lt;format&amp;gt;,&amp;lt;width&amp;gt;,&amp;lt;height&amp;gt; kann das Bild in der gewünschten Größe und Format abgerufen werden.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12614</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12614"/>
				<updated>2009-02-07T16:12:37Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Erweiterung des bisherigen Befehlsvorrats */  IMAGE&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
 GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - UUID - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
::Bild (IMAGE_ON) - UUID - statisch&lt;br /&gt;
::Bild (IMAGE_OFF) - UUID - statisch&lt;br /&gt;
:::Bild das auf der Funktionstaste angezeigt werden soll.&lt;br /&gt;
&lt;br /&gt;
; Bild (IMAGE)&lt;br /&gt;
: Bild, das in mehreren Dateiformaten vorliegen kann, mit Zeitstempel, um festzustellen, wann es zuletzt verändert wurde.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Formate (FORMAT) - numerisch - statisch&lt;br /&gt;
:::Formate in denen das Bild vorhanden ist: 1=SVG, 2=PNG, 4=JPG Rückgabewert ist die Summe aller verfügbaren Formate.&lt;br /&gt;
::Zeitstempel (TIMESTAMP) - numerisch - statisch&lt;br /&gt;
::eigentliches Bild (DATA) - Byte-Strom - statisch&lt;br /&gt;
::: Über GET DATA &amp;lt;format&amp;gt;,&amp;lt;width&amp;gt;,&amp;lt;height&amp;gt; kann das Bild in der gewünschten Größe und Format abgerufen werden.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12613</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12613"/>
				<updated>2009-02-07T14:43:49Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Abfrage der CRCF-Daten via Generic Messages */  Formatierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
 GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - Byte Strom - statisch&lt;br /&gt;
::Bildformate (IMAGEFORMAT) - Liste - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12612</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12612"/>
				<updated>2009-02-07T14:37:14Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Abfrage der CRCF-Daten via Generic Messages */ Formatierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
:Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - Byte Strom - statisch&lt;br /&gt;
::Bildformate (IMAGEFORMAT) - Liste - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12611</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12611"/>
				<updated>2009-02-07T14:35:52Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Erweiterung des bisherigen Befehlsvorrats */  Aktoren und Attribute für Lokverwerwaltung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
; Lokdatenbank (LOCODB)&lt;br /&gt;
: Instanz, die eine Übersicht über vorhandene Lokomotiven und deren Konfiguration bietet.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Liste verwalteter Loks (LOCO) - Liste - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Lok (LOCO)&lt;br /&gt;
: Konfiguration einer Lok&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Bild (IMAGE) - Byte Strom - statisch&lt;br /&gt;
::Bildformate (IMAGEFORMAT) - Liste - statisch&lt;br /&gt;
::Höchstgeschwindigkeit im km/h (V_MAX) - numerisch - statisch&lt;br /&gt;
::verbaute Decoder (DECODER) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Decoder (DECODER)&lt;br /&gt;
: Konfiguration eines Decoder&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::unterstützte Protokolle (PROTOCOL) - LISTE - statisch&lt;br /&gt;
&lt;br /&gt;
; Protokollkonfiguration eines Decoders (PROTOCOL)&lt;br /&gt;
: Beschreibung der Konfiguration eines Decoders für das jeweilige Protokoll&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Format des Protokolls (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Adresse (ADRESS) - numerisch - dynamisch&lt;br /&gt;
::Bus (BUS) - numerisch - dynamisch&lt;br /&gt;
::Fahrstufen (SPEEDSTEPS) - numerisch - statisch&lt;br /&gt;
::abs./rel. Fahrtrichtung (DIRECTION) - numerisch - statisch&lt;br /&gt;
::Programmiermodi (PROGMODE) - alphanumerisch - statisch&lt;br /&gt;
::Funktionen (FUNCTION) - Liste - statisch&lt;br /&gt;
&lt;br /&gt;
; Funktion (FUNCTION)&lt;br /&gt;
: Beschreibung einer Funktionbelegung eines Decoders&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Beschreibung (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Nummer der Funktion (NUMBER) - numerisch - statisch&lt;br /&gt;
::Auslöseart (MODE) - numerisch - statisch&lt;br /&gt;
:::Wie die Funktion betätigt wird, ob schaltend oder tastend. Dabei ist 0=schaltend und 1=tastend.&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12610</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12610"/>
				<updated>2009-02-07T14:09:43Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Erweiterung des bisherigen Befehlsvorrats */  Formatierung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
&lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12609</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12609"/>
				<updated>2009-02-07T14:04:48Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Erweiterung des bisherigen Befehlsvorrats */  Aktoren und Attribute aus spdrs60&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Bei der Implementierung von CRCF via GM agieren diese Objekte als Aktoren, mit den jeweiligen Attributen. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
:: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
:::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
:::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
:::Modus (MODE) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
:: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
:::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
:::Name	(NAME) -alphanumerisch - statisch&lt;br /&gt;
:::Zeilen (ROWS) - numerisch - statisch&lt;br /&gt;
:::Spalten (COLUMNS) -numerisch - statisch&lt;br /&gt;
:::Stelltischausleuchtung (TABLELIGHT) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
:: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
:: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
:: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
:::Identifikationsnummer (ID) - UUID - statisch&lt;br /&gt;
:::Name (NAME) - alphanumerisch - statisch&lt;br /&gt;
:::Typ (TYPE) - numerisch - statisch&lt;br /&gt;
:::Status (STATE) - numerisch - dynamisch&lt;br /&gt;
:::Zug (TRAIN) - numerisch - dynamisch&lt;br /&gt;
&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
:: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
:: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
:: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
:: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
:: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12608</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12608"/>
				<updated>2009-02-07T13:48:18Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Implementierungsvorschläge */  Abfrage der CRCF-Daten via Generic Messages&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
====Abfrage der CRCF-Daten via Generic Messages====&lt;br /&gt;
Nachdem Generic Messages als neue Device Group in SRCP aufgenommen wurden, können CRCF-Daten darüber versendet werden.&lt;br /&gt;
&lt;br /&gt;
Eine CRCF Message hat folgendes Datenformat:&lt;br /&gt;
&lt;br /&gt;
GM &amp;lt;send_to&amp;gt;  &amp;lt;reply_to&amp;gt; CRCF &amp;lt;actor&amp;gt; &amp;lt;actor_id&amp;gt; &amp;lt;method&amp;gt; &amp;lt;attribute&amp;gt; [&amp;lt;attribute_value&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;send_to&amp;gt; &lt;br /&gt;
:Sessionid of an INFO session the message MUST BE delivered to or 0 (null) if delivery is done to all INFO sessions.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;reply_to&amp;gt;&lt;br /&gt;
:Sessionid of an INFO session to which message replies SHOULD be directed (if any). Alternatively the 0 (Null) MUST be used to direct the reply to all INFO sessions. &lt;br /&gt;
&lt;br /&gt;
;CRCF&lt;br /&gt;
:Message type für CRCF Messages.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor&amp;gt;&lt;br /&gt;
:Benennung für den Akteur, dessen Daten geändert werden sollen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;actor_id&amp;gt;&lt;br /&gt;
:Identifikationsnummer, die zur eindeutigen Adressierung des Akteurs dient. Es handelt sich dabei um eine [http://en.wikipedia.org/wiki/UUID UUID] gemäß [http://tools.ietf.org/rfc/rfc4122.txt RFC4122]. Die Frage ist, ob diese URL-kodiert werden soll oder nicht. Aus Gründen der Einheitlichkeit wäre dieses zu bevorzugen.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;method&amp;gt;&lt;br /&gt;
:Methode, die auf den folgenden Attributwert angewendet werden soll. Folgende Methoden sind implementiert:&lt;br /&gt;
::'''INFO'''&lt;br /&gt;
:::Response Message, &amp;lt;attribute_value&amp;gt; kann verwendet werden.&lt;br /&gt;
&lt;br /&gt;
::'''SET'''&lt;br /&gt;
:::Setting values. Wird mit einer INFO oder ERROR Messages beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''GET'''&lt;br /&gt;
:::Request of values. &amp;lt;attribute_value&amp;gt; wird nicht verwendet. Wird mit einer INFO oder ERROR Message beantwortet.&lt;br /&gt;
&lt;br /&gt;
::'''LIST'''&lt;br /&gt;
:::Abfrage einer Liste, wenn das Attribute mehrere Werte haben kann. Als Antwort wird als erstes die Anzahl der vorhandenen Datensätze übermittelt. Dazu wird an das Attribute die Zeichenkette COUNT gehängt und als Attribute Value die Anzahl der Datensätze. Danach wird jeweils in einer Zeile die abgefragten Attributen mit dem jeweils dazugehörigen Wert als &amp;lt;attribute_value&amp;gt;. Wenn die Abfrage nicht möglich ist, wird mit einer ERROR Message geantwortet.&lt;br /&gt;
&lt;br /&gt;
:::Beispiel:&lt;br /&gt;
&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; LIST LOCO&lt;br /&gt;
:::-&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCOCOUNT 2&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id1&amp;gt;&lt;br /&gt;
:::CRCF LOCODB &amp;lt;actor_id&amp;gt; INFO LOCO &amp;lt;loco_id2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
::'''ERROR'''&lt;br /&gt;
::: Wenn eine Abfrage nicht ausgeführt werden kann, wird sie mit einer entsprechenden Fehlermeldung beantwortet. Als &amp;lt;attribute&amp;gt; wird der Fehlercode übermittelt und als &amp;lt;attribute_value&amp;gt; der dazugehörige Fehlertext. Die Fehlercodes entsprechen den in SRCP definierten.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attribute&amp;gt;&lt;br /&gt;
:Attribut des Akteurs, das von der Nachricht betroffen ist. Die Attribut-Kennungen sind je nach Akteur unterschiedlich.&lt;br /&gt;
&lt;br /&gt;
;&amp;lt;attritbute_value&amp;gt;&lt;br /&gt;
Der Wert des Attributs, das von der Nachricht betroffen ist. Die Angabe dieses Wertes ist abhängig von der verwendeten Methode. Bei der Methoden GET und LIST findet er keine Verwendung. Je nach Attribut kann es sich hierbei um einen positiven Ganzzahlwert &amp;gt;= 0 (z.B. Nummer eines Zuges), eine UUID oder eine alphanumerische Kennung (z.B. Name einer Fahrstraße) handeln. Handelt es sich um einen alphanumerischen Wert, wird dieser URL-kodiert ([http://www.ietf.org/rfc/rfc2396.txt RFC 2396]) über den SRCP-Server versendet und empfangen.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Für das Schreiben von Daten in den CRCF-Datenbestand existiert bisher ebenfalls noch kein Befehl. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Daten schreiben (CONFSET)&lt;br /&gt;
:: Befehl zum Schreiben von CRCF-Daten in eine CRCF-Datenbank (Warum reicht hier nicht SET und GET analog zum SRCP-Namensraum? Antwort: Der Befehl CONFGET ist bisher Bestandteil des SRCP-Namensraumes).&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
:: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
:: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
:: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
:: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
:: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
:: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
:: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
:: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
:: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
:: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12607</id>
		<title>SRCP-Erweiterungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=SRCP-Erweiterungen&amp;diff=12607"/>
				<updated>2009-02-07T12:48:06Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* CRCF-Erweiterungen */  Namensgebung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Das initiale Posting==&lt;br /&gt;
&lt;br /&gt;
Dieses Dokument soll eine Zusammenfassung der Diskussion „SRCP-Erweiterungen“ (erster Eintrag war am 27.12.2006) darlegen.&lt;br /&gt;
&lt;br /&gt;
Hier der initiale Eintrag:&lt;br /&gt;
&lt;br /&gt;
Hallo SRCP-Fans!&lt;br /&gt;
&lt;br /&gt;
ich entwickle bereits seit einiger Zeit Software für [[Digitalprojekt|SRCP]], habe mich&lt;br /&gt;
aber nie aktiv hier an Diskussionen beteiligt (ehrlich gesagt ist das&lt;br /&gt;
mein erster Eintrag in der Gruppe ;).&lt;br /&gt;
Während der Entwicklung kamen einige Ideen, die ich nun hier zur&lt;br /&gt;
Diskussion stellen möchte:&lt;br /&gt;
&lt;br /&gt;
# Ich hätte gern einen Dienst für Clients, mit dem sie den Server (bzw. dessen IP-Adresse) finden können. Da gibt es sicher mehrere Möglichkeiten, ich dachte an Broadcast oder an eine DHCP-Option.&lt;br /&gt;
# Stichwort CRCF: Was ist mit der Entwicklung? Ich hätte gern dieses Feature für SRCP und würde mich ggf. an der Mitentwicklung beteiligen.&lt;br /&gt;
&lt;br /&gt;
Treffen sich die SRCP-Entwickler eigentlich regelmäßig zu einer Art&lt;br /&gt;
Stammtisch?&lt;br /&gt;
&lt;br /&gt;
Gruß, Sven.&lt;br /&gt;
&lt;br /&gt;
Es gab eine rege Beteiligung an der Diskussion, beide Ideen wurden darin ausführlich diskutiert.&lt;br /&gt;
&lt;br /&gt;
==SRCP-Stammtisch==&lt;br /&gt;
Um die aktuellen Vorhaben besser diskutieren zu können, schlage ich ein Treffen in Form eines Stammtisches vor. Vielleicht kann man sich hier zunächst über einen Ort des Treffens verständigen, der von den meisten gut erreichbar ist.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;50%&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
!  SRCP-Interessierter&lt;br /&gt;
!  Wohnort&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Sven Schlender&lt;br /&gt;
|  Karlsruhe&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Stefan Bormann&lt;br /&gt;
|  Bremen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  Guido Scholz&lt;br /&gt;
|  Burgkirchen&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|  ...&lt;br /&gt;
|  ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==SRCP-Server-Suchdienst==&lt;br /&gt;
Sehr schnell kam der Vorschlag, für diesen Bedarf einen [http://www.zeroconf.org/ Zeroconf]-Systemdienst (DNS-SD/mDNS) einzusetzen. Dieser ermöglicht die Suche bzw. das Veröffentlichen beliebiger Systemdiente durch das Versenden eines ServiceDiscovery-Multicasts. Es existieren hierfür derzeit zwei zueinander kompatible Implementierungen, die beide als OpenSource freigegeben sind:&lt;br /&gt;
&lt;br /&gt;
* [http://www.apple.com/macosx/features/bonjour/ Bonjour], von Apple für Mac, UNIXoide-Systeme und Windows.&lt;br /&gt;
* [http://avahi.org/ Avahi], als praktisch schon etablierter Standard für Linux.&lt;br /&gt;
&lt;br /&gt;
Unter anderem ist es hiermit möglich, Angaben über die Portnummer zu veröffentlichen, auf der der Server seinen Dienst anbietet. Obgleich es für SRCP mittlerweile eine offiziell über [http://www.iana.org/ IANA/IETF] reservierte Portnummer (4303) und Protokollbezeichner (srcp) gibt, hat ein SRCP-Administrator prinzipiell die Freiheit, einen von dieser Vorgabe abweichenden Wert für die Portnummer zu wählen. Auch die Anzahl der in einem Netz betriebenen SRCP-Server ist damit nicht eingeschränkt.&lt;br /&gt;
&lt;br /&gt;
Dem Administrator eines SRCP-Servers bleibt es überlassen, auf dem gleichen Rechner auch einen „Zeroconf“-Systemdienst einzurichten. Er muß, wenn er auf seiner Modellbahn entsprechende SRCP-Clients benutzen möchte, das Programm installieren und so konfigurieren, dass der SRCP-Dienst veröffentlicht wird. Alternativ kann ein SRCP-Server sich auch automatisiert beim Zeroconf-Dienst anmelden. Die eigentliche Arbeit für die Nutzung des SD-Dienstes liegt beim Entwickler des „Einsteck-und-Spiel“-SRCP-Clients, denn dieser SRCP-Client muß nicht nur SRCP sprechen, sondern auch noch ein DNS-SD/mDNS-Client sein.&lt;br /&gt;
&lt;br /&gt;
Beispiel für eine avahi Konfigurationsdatei. Abgelegt unter /etc/avahi/services/scrpd.service&lt;br /&gt;
(Kubuntu Linux). Die Einträge sind natürlich nur beispielhaft.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;service-group&amp;gt;&lt;br /&gt;
    &amp;lt;name replace-wildcards=&amp;quot;yes&amp;quot;&amp;gt;srcpd on %h&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;service protocol=&amp;quot;any&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;_srcp._tcp&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;host-name&amp;gt;srcp.example.com&amp;lt;/host-name&amp;gt;&lt;br /&gt;
        &amp;lt;port&amp;gt;4303&amp;lt;/port&amp;gt;&lt;br /&gt;
        &amp;lt;txt-record&amp;gt;SRCP auf Mobaserver&amp;lt;/txt-record&amp;gt;&lt;br /&gt;
    &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/service-group&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==CRCF-Erweiterungen==&lt;br /&gt;
&lt;br /&gt;
Obwohl [[CRCF_-_Common_Railroad_Configuration_Files_0.2.0|CRCF]] (Common Railroad Configuration Files) schon vor einigen Jahren zur Implementierung vorgeschlagen wurde, fand es keine Verbreitung bzw. Anwendung. Möglicherweise war damals das Interesse zu gering. Umso mehr Interessenten fanden sich nun in dieser Diskussion, bei der über die bisherigen Ideen von CRCF hinaus einige weitergehende Themen aufkamen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Stand der Technik===&lt;br /&gt;
[[Bild:Crcf-old.png|framed|Nachrichtenfluß gemäß der CRCF-Spezifikation Version 0.2.0. CS: COMAND-Sitzung]]&lt;br /&gt;
Der bisherige CRCF-Spezifikationsentwurf mit der Versionsnummer 0.2.0 basiert auf SRCP und beschreibt die Fähigkeiten eines SRCP-Servers. Die dort abgelegten Informationen beziehen sich je Datei auf genau _einen_ SRCP-Server. Physikalisch liegen die CRCF-Daten beim zugehörigen SRCP-Server; Detailinformationen daraus können von SRCP-Clients über den SRCP-Befehl CONFGET abgefragt werden. Dieser Befehl erlaubt nur Lesezugriffe und damit auch nur den Umgang mit statischen Daten. Ein analoger Befehl CONFSET zum Schreiben von Daten ist erwähnt, es ist aber keine nähere Anwendung dafür definiert. Das Ablageformat wird als textbasierte Datei beschrieben, wobei die Daten in Sinne von SRCP mit entsprechend benannten Datenfeldern vorliegen. Der vorliegende Entwurf ist zur Zeit der SRCP-Spezifikation 0.7.1 entstanden und bildet die mit Version 0.8 eingeführten Erweiterungen, wie z.B. Busse, noch nicht ab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Anforderungen an CRCF===&lt;br /&gt;
&lt;br /&gt;
* Die umständliche Eingabe von Informationen über Loks (z.B. Belegung der Funktionen) und Zubehör soll zur einfacheren Konfiguration von SRCP-Clients entfallen.&lt;br /&gt;
* Anlagenweite Anzeige von Klartextnamen anstatt von Adressen (konkretes Beispiel?)&lt;br /&gt;
* Als Alternative zum Zeroconf-Systemdienst könnte CRCF die Hostnamen bzw. IP-Adressen der SRCP-Server einer Anlage verwalten.&lt;br /&gt;
* Verwaltung statischer Informationen&lt;br /&gt;
* Verwaltung dynamischer Informationen&lt;br /&gt;
* CRCF soll für Benutzer in ausdruckbarer Form zugänglich sein.&lt;br /&gt;
* Die Daten sollen in CRCF strukturiert/gegliedert abgelegt sein.&lt;br /&gt;
* SRCP-Server sollten Zugriff auf die CRCF erhalten (Warum?).&lt;br /&gt;
* Der CRCF-Befehlsvorrat könnte zur Kommunikation zwischen Clients genutzt werden.&lt;br /&gt;
* Der bisherige Geltungsbereich einer CRCF-Datei sollte sich nicht nur auf _einen_ SRCP-Server, sondern vielmehr auf _eine_ Modellbahnanlage beziehen. Damit wäre ein geeigneter Rahmen vorhanden, den charakterisierenden Bestand an z.B. Zügen, Fahrstraßen, SRCP-Servern, dem Streckennetz etc. einer Anlage zusammenfassend abzulegen.&lt;br /&gt;
&lt;br /&gt;
===Fragestellungen===&lt;br /&gt;
&lt;br /&gt;
* Wo soll die CRCF liegen?&lt;br /&gt;
* Wie soll eine Datenabfrage aussehen?&lt;br /&gt;
* Wie sollen dynamische Informationen von CRCF verwaltet werden?&lt;br /&gt;
* Soll die Kommunikation zwischen SRCP-Clients mit CRCF abgebildet werden und wenn ja, wie?&lt;br /&gt;
&lt;br /&gt;
===Namensgebung===&lt;br /&gt;
&lt;br /&gt;
CRCF steht im Moment ja für Common Railroad Configuration Files, inzwischen hat es sich ja aber zu einem Protokoll zur Abfrage von Konfigurationsdaten entwickelt. Von daher passt der bisherige Name nicht mehr. Um keinen unnötigen Änderungsaufwand zu provozieren sollte die Abkürzung beibehalten werden können. Common Railroad Configuration Language - CRCL ist daher also nicht optimal. weitere Vorschläge:&lt;br /&gt;
&lt;br /&gt;
* Common Railroad Configuration Format&lt;br /&gt;
&lt;br /&gt;
===Implementierungsvorschläge===&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem spezialisierten SRCP-Client====&lt;br /&gt;
[[Bild:srcp-crcf-client.png|framed|Nachrichtenfluß bei einem Betrieb mit einem als CRCF-Server arbeitenden SRCP-Client. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Über die Diskussion ergab sich der Vorschlag, den CRCF-Datenbestand über einen speziellen SRCP-Client netzwerkweit zugänglich zu machen, statt diesen nur als zentral verwaltete Datei abzulegen. Dieser SRCP-Client hätte damit eine Art Datenbankserverfunktion und könnte gezielt Detailinformationen ausliefern. Interessierte Clients müßten dann nicht jeweils selbst die komplette Datei nach den für sie notwendigen Informationen durchsuchen. Auch ein SRCP-Server könnte auf diese Daten zugreifen.&lt;br /&gt;
&lt;br /&gt;
Der Zugriff auf diesen als CRCF-Server arbeitenden SRCP-Client erfolgt über den SRCP-Server, der sowohl die eingehenden CRCF-Anfragen als auch die zurückgehenden Antworten weiterleitet. Das bisherige SRCP muß erweitert werden, um diese neue Abfragetechnik zu ermöglichen. Bei diesem Modell wird SRCP als Tunnel genutzt, da CRCF-Anfragen vom SRCP-Server nicht interpretiert sondern nur durchgereicht werden. Dabei entsteht gleichzeitig eine Möglichkeit zur Kommunikation zwischen SRCP-Clients.&lt;br /&gt;
&lt;br /&gt;
Bei Installationen mit mehreren SRCP-Servern muß sich der SRCP-Client bei allen verfügbaren SRCP-Servern anmelden, damit Daten anlagenweit verteilt werden können. Die Programmierung solcher Clients wird wegen der erforderlichen Netzwerkverbindungen aufwändig. Alternativ müßten SRCP-Server so gekoppelt werden, das die Anmeldung bei einem Server reicht.&lt;br /&gt;
&lt;br /&gt;
Der SRCP-Client mit dem CRCF-Datenbestand kann konsistent statische und dynamische Daten verwalten, wenn er diese konsequent einsammelt bzw. zugestellt bekommt. Zusätzlich wird die Verwaltung von Daten, die über die SRCP-Welt hinausgehen, wie die von Fahrstrassen und kompletten Layouts, ermöglicht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Zentrale Datenablage bei einem separaten CRCF-Server====&lt;br /&gt;
[[Bild:srcp-crcf-server.png|framed|Nachrichtenfluß bei einem Betrieb mit getrennten SRCP- und CRCF-Servern. CS: COMAND-Sitzung, IS: INFO-Sitzung, ...: nicht geklärt]]&lt;br /&gt;
Als weitere Idee wurde der Vorschlag diskutiert, die Verwaltung der CRCF-Daten einem neu zuschaffenden CRCF-Server zu überlassen. Dieser würde als eigener Systemdienst laufen und müßte über ein neu zudefinierendes Protokoll angesprochen werden. Die SRCP-Spezifikation muß in diesem Fall nicht geändert werden, da das CRCF-Protokoll parallel und von SRCP weitgehend unabhängig existiert.&lt;br /&gt;
&lt;br /&gt;
Der CRCF-Server bedient zunächst nur rein statische Daten, die von den CRCF-Clients abgefragt werden können. Damit sowohl SRCP-Clients als auch SRCP-Server diesen Dienst nutzen können, müssen diese zusätzlich das CRCF-Protokoll implementieren.&lt;br /&gt;
&lt;br /&gt;
Um auch dynamische Daten zu verwalten, muß ein Meldedienst implementiert werden, der auch Schreibzugriffe in den Datenbestand ermöglicht. Eine Kommunikation zwischen CRCF-Clients könnte mittels einer Mailboxfunktion realisiert werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Verteilte Datenablage bei verschiedenen SRCP-Clients====&lt;br /&gt;
[[Bild:Crcf-client-server.png|framed|Nachrichtenfluß bei einem Betrieb mit als CRCF-Servern und -Clients arbeitenden SRCP-Clients. CS: COMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Jeder SRCP-Client, der Daten verwaltet, die im laufenden Anlagenbetrieb einer mehr oder weniger kontinuierlichen Änderung unterliegen und über das herkömmliche SRCP nicht erfaßt werden, könnte diese zur Abfrage für interessierte Clients zur Verfügung stellen. Er würden dann sozusagen auch als CRCF-Server arbeiten, allerdings beschränkt auf die von ihm verwalteten, dynamischen Daten. Alternativ ließe sich dieses Konzept auch auf die statischen Daten ausdehnen.&lt;br /&gt;
&lt;br /&gt;
CRCF-Clients, die eine Anfrage starten möchten, wüßten zu Beginn nicht, wo diese Daten abgelegt sind. Eine zentrale Verwaltungsinstanz wäre in diesem Fall ja nicht vorhanden. Der anfragende Client könnte also eine Rundrufnachricht senden und würde die Antwort von dem zuständigen SRCP-Client bekommen. Hier besteht prinzipiell die Gefahr, dass diese Daten nicht konsistent vorliegen, wenn die Zuständigkeit der abgefragten Daten nicht eindeutig z.B. auf genau _einen_ bestimmten Client festgelegt ist. Insbesondere kann das leicht bei mobilen SRCP-Clients passieren, wenn diese auf mehreren Anlagen genutzt werden und der Benutzer nicht sorgsam mit den lokal gespeicherten Daten umgeht.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bereitstellung der CRCF-Daten via Zeroconf-Dienst====&lt;br /&gt;
Diese Idee wurde als eine prinzipielle Möglichkeit erwähnt, aber nicht weiter ausgeführt.&lt;br /&gt;
&lt;br /&gt;
===Erweiterung des bisherigen Befehlsvorrats===&lt;br /&gt;
Der bisherige Namensraum von CRCF umfaßt keine Befehle, die Objekte einer höheren Abstraktionsebene beschreiben. Für die Attribute dieser makroskopischen Objekte gibt es ebenfalls noch keine Festlegung. Zum Teil sind die Werte dieser Attribute statisch zum Teil ändern sich sich während des Betriebs. Für das Schreiben von Daten in den CRCF-Datenbestand existiert bisher ebenfalls noch kein Befehl. Der Bedarf für folgende Begriffe ist vorhanden:&lt;br /&gt;
&lt;br /&gt;
; Daten schreiben (CONFSET)&lt;br /&gt;
:: Befehl zum Schreiben von CRCF-Daten in eine CRCF-Datenbank (Warum reicht hier nicht SET und GET analog zum SRCP-Namensraum? Antwort: Der Befehl CONFGET ist bisher Bestandteil des SRCP-Namensraumes).&lt;br /&gt;
; Stellwerk (RWCC, Railway Control Center)&lt;br /&gt;
:: Steuerungsinstanz, die Fahrstraßen verwaltet, für ein oder mehrere Bahnhöfe zuständig ist, Zugmeldungen abwickelt, ihr zuständiges Streckennetz kennt, einzuhaltende Geschwindigkeiten überwacht und bei Überschreitungen eingreift etc.&lt;br /&gt;
; Gleisbild (LAYOUT)&lt;br /&gt;
:: Streckennetzbeschreibung eines Stellwerkbezirks, enthält Angaben zur Dimension, Position einzelner Gleisbildelemente, automatischer Streckenblöcke, Fahrstraßen, etc.&lt;br /&gt;
; Freimeldeabschnitt (?)&lt;br /&gt;
:: Streckenabschnitt, der mit einer Gleisfreimeldeanlage (Rückmeldung/Belegtmeldung) überwacht wird.&lt;br /&gt;
; Automatischer Streckenblock (BLOCK)&lt;br /&gt;
:: Automatisch per Freimeldeabschnitte überwachter Streckenabschnitt zur Steuerung von Zugfahrten. Ein automatischer Streckenblock führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
; Fahrstraße (ROUTE)&lt;br /&gt;
:: Sicherheitstechnisch überwachter Streckenabschnitt innerhalb eines Stellwerks, der über Informationen zur Start- und Zielsignal, Soll-Weichenstellungen, Freimeldeabschnitte, Typinformation (für anzuwendenden Regelsatz), den aktuellen Zustand (eingestellt, aufgelöst, reserviert, teilaufgelöst) etc. verfügt. Eine Fahrstraße führt von einem Startgleisabschnitt in einen Zielgleisabschnitt.&lt;br /&gt;
; Weichenstraße (SLIST, Switch List)&lt;br /&gt;
:: Sammlung schaltbarer Magnetartikel und ihrer Sollstellungen ohne sicherheitstechnische Überwachung; ist nicht mit &amp;amp;raquo;Fahrstraße&amp;amp;laquo; zu verwechseln.&lt;br /&gt;
; Zugsteuerung (TNCC, Train Control Center)&lt;br /&gt;
:: Instanz, die die Logistik eines gegebenen Vorrats an Zügen übernimmt z.B. fahrplangesteuerte Fahrten von Zügen zwischen Bahnhöfen&lt;br /&gt;
; Zug (TRAIN)&lt;br /&gt;
:: Instanz, die über ihre Zugnummer identifizierbar ist, eine oder mehrere Lokomotiven ansteuert, Informationen zu Typ und Länge verfügt etc.&lt;br /&gt;
; Bahnhof (STATION)&lt;br /&gt;
:: Start- und Zielpunkt von Zugfahrten. &lt;br /&gt;
; Gleisabschnitt (SECTION)&lt;br /&gt;
:: Ein Gleisabschnitt charakterisiert den Aufenthaltsort eines Zuges, z.B. für Zugmeldungen. Streckenblöcke und Fahrstraßen überführen einen Zug von einem Gleisabschnitt (Start) in den nächsten Gleisabschnitt (Ziel).&lt;br /&gt;
(TODO: weitere ergänzen)&lt;br /&gt;
&lt;br /&gt;
==SRCP-Erweiterungen==&lt;br /&gt;
Der bisherige Umfang der SRCP-Spezifikation definiert keine Möglichkeit, mit der SRCP-Clients untereinander direkt Informationen austauschen können. Ein Bedarf dafür ist jedoch durchaus gegeben, wie folgende Auflistung zeigt:&lt;br /&gt;
&lt;br /&gt;
* Zugmeldungen zwischen Stellwerken&lt;br /&gt;
* Zuglenkung über Zuglaufverfolgung (ZLV) und Zugnummernmeldeanlage (ZNA)&lt;br /&gt;
* Zugbeeinflussung mit geschwindigkeitsüberwachender Instanz (Stellwerk) und  Zugsteuerung&lt;br /&gt;
* Scripting-Schnittstelle für Stellwerk- und Zugsteuersoftware&lt;br /&gt;
* Austausch von statischen und dynamischen CRCF-Daten mit einer CRCF-Datenverwaltungsinstanz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Weiterhin ist es mit SRCP prinzipiell möglich, eine Modellbahnanlage über mehrere SRCP-Server zu bedienen, es gibt aber bisher kein Konzept, das einen Informationsübergang zwischen den Server-Bereichen erlaubt. Dazu gab es folgenden Lösungsvorschlag:&lt;br /&gt;
* Koppelung mehrerer SRCP-Server zu einer Master/Slave-Konstellation, bei der die Busse der Slave-Server auf Busse beim Master-Server abgebildet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zur Realisierung dieser neu zu implementierenden Informationswege wurden die im folgenden näher erläuterten Konzepte vorgeschlagen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Befehl im Kommandomodus===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
Die aktuell SRCP-Spezifikation umfaßt für den Kommandomodus einen definierten Satz an Befehlen, die in der folgenden allgemeinen Syntax an den Server gesendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;kommandoparameter&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Da die Befehle auf definierte Gerätegruppen wirken, die wieder bestimmten Bussen zugeordnet sind, resultiert zur weiteren Spezifizierung folgende allgemeine Befehlssyntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;kommando&amp;gt; &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Bus mit Nummer 0 ist dem Server selbst vorbehalten und dient zur Adressierung von Servereinstellungen. Die Anzahl der übergebenen Parameter ist variabel.&lt;br /&gt;
&lt;br /&gt;
Vom Server abgearbeitete Befehle werden gemäß der SRCP-Spezifikation an alle im INFO-Modus verbundene SRCP-Clients als eine Art „SRCP-Broadcast“ (SRCP-Rundruf) mit der folgenden allgemeinen Syntax weitergeleitet:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;codenr&amp;gt; INFO &amp;lt;bus&amp;gt; &amp;lt;gerätegruppe&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die angeschlossenen SRCP-Clients selbst sind anhand ihrer Session-Id identifizier- und eindeutig unterscheidbar.&lt;br /&gt;
&lt;br /&gt;
Von dieser Situation ausgehend, kann ein neues Kommando ergänzt werden, dass von SRCP-Server selbst nur zum Weiterleiten einer Nachricht an die angeschlossenen SRCP-Clients genutzt wird. Den Inhalt der Nachricht muß der SRCP-Server nicht interpretieren. Die Form der Nachricht kann/soll/muß den gängigen SRCP-Konventionen bezüglich Zeichensatz, Länge etc. genügen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 1=====&lt;br /&gt;
Ein erster (anarchischer) Ansatz könte in SRCP 0.8-Terminologie so aussehen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 ECHO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 ECHO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 2=====&lt;br /&gt;
Ein zweiter, mehr geordneter Ansatz, schreibt die Verwendung definierter Befehle (SRCP-Makros) vor, analog also beispielsweise so:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
 MACRO 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 MACRO &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;message&amp;gt; diesmal eine Folge von definierten (genormten) Befehlen inklusive deren Wert-Parametern sein muß. Diese Makros müssen natürlich den Kommunikationsbedarf der Clients (Frage/Antwort-Spiele) abdecken.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Implementierungsvariante 3=====&lt;br /&gt;
Der dritte Ansatz wäre, statt der neu zu erfindenden Makros, CRCF zu benutzen:&lt;br /&gt;
&lt;br /&gt;
Im Kommando-Modus verbundender Client:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Darauf der SRCP-Server an alle verbundenen Clients:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;timestamp&amp;gt; &amp;lt;codenr&amp;gt; INFO 0 CRCF &amp;lt;message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Inhalt von &amp;lt;message&amp;gt; wäre dann eine CRCF-Befehlsfolge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiele=====&lt;br /&gt;
Angenommen eine Ablaufsteuerung (als eigener SRCP-Client) möchte eine Fahrstraße einstellen, dann sendet diese an das zuständige Stellwerk folgende (CRCF-)Befehlsfolge:&lt;br /&gt;
  &lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; SET STATE 1&lt;br /&gt;
&lt;br /&gt;
Den Erfolg bekommt er dann vom Stellwerk zurückgemeldet...&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; INFO STATE 1&lt;br /&gt;
&lt;br /&gt;
... oder kann ihn auch abfragen z.B. gemäß:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; GET STATE&lt;br /&gt;
&lt;br /&gt;
Sinngemäß ließe sich so auch die Belegung einer bestimmten Fahrstraße mit einem Zug (TRAIN) setzen, abfragen oder melden. Der übermittelte Zahlenwert würde dann der Zugnummer entsprechen. Der Bedarf, dass ein SRCP-Client einem Stellwerk Daten zur Konfiguration von Fahrstraßen sendet, wäre prinzipiell auch abdeckbar:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; ADD GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt; &amp;lt;port&amp;gt; &amp;lt;state&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oder entfernen:&lt;br /&gt;
&lt;br /&gt;
 ROUTE &amp;lt;routeid&amp;gt; REMOVE GA &amp;lt;busid&amp;gt; &amp;lt;address&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um eine Client-Client-Verbindung zu unterhalten, müßte der Sender eines CRCF-Befehls seine&lt;br /&gt;
SRCP-Session-ID immer mitsenden, dann könnte die Antwort zielgerichtet erfolgen:&lt;br /&gt;
&lt;br /&gt;
 CRCF 0 &amp;lt;sender-sessionid&amp;gt; &amp;lt;empfänger-sessionid&amp;gt; &amp;lt;CRCF-message&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mit dem Inhalt von &amp;lt;sessionid&amp;gt; ließe sich ein CRCF-Broadcast einfach von einer Punkt-zu-Punkt-Verbindung unterscheiden:&lt;br /&gt;
&lt;br /&gt;
# Der Wert ist 0: Rundruf (Broadcast)&lt;br /&gt;
# Der Wert ist &amp;gt;0: Punkt-zu-Punkt-Verbindung&lt;br /&gt;
&lt;br /&gt;
Auch das Thema &amp;amp;raquo;Zugbeeinflussung&amp;amp;laquo; läßt sich hiermit darstellen. Ein Zug muß während seiner Fahrt Geschwindigkeitsregeln einhalten, die das Stellwerk überwacht. Bei Überschreitungen sendet das Stellwerk einen Abbremsbefehl:&lt;br /&gt;
&lt;br /&gt;
  CRCF 0 &amp;lt;sender-session-id&amp;gt; 0 TRAIN &amp;lt;train-id&amp;gt; SET SPEED 0&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
&lt;br /&gt;
Die Implementierung wird nicht weiterverfolgt, da der Vorschlag zur neuen Gerätegruppe besser ins bisherige SRCP paßt. Die hier andiskutierten CRCF-Nachrichten können mit dem anderen Vorschlag ebenfalls transportiert werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neuer Sitzungstyp===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Die Implementationen von CRCF bzw. Generic Messages und den bisher definierten SRCP-Sitzungen werden komplett getrennt.&lt;br /&gt;
&lt;br /&gt;
Motivation:&lt;br /&gt;
* Ermöglicht Kapselung von unterschiedlichen Client-Funktionalitäten: die bestehenden Sitzungen und Generic Messages sind für komplett unterschiedliche Zwecke gedacht. Die bisherigen Steuerungs-Sitzungen dienen der Kommunikation mit der Modellbahn-Hardware, Generic Messages dienen der Kommunikation der Clients untereinander.&lt;br /&gt;
* Dies senkt die Anforderungen an einen reinen Steuerungs-Server, er muss Generic Messages nicht unterstützen. ''Anmerkung von svesch: Der Server muss die GMs nur weiterleiten. CRCF macht nur Sinn, wenn es die SRCP-Server auch wirklich unterstützen. Sozusagen mandatory ab Version X.''&lt;br /&gt;
* Es erspart mobilen Eingabegeräten z.B. einem Handregler den extremen Traffic, den intelligentere stationäre Clients untereinander haben. ''Anmerkung von svesch: Das ist ein wichtiger Punkt, den habe ich im Punkt &amp;quot;Vorschläge zur Trafficminimierung&amp;quot; versucht Rechnung zu tragen.''&lt;br /&gt;
&lt;br /&gt;
Bei der Einschätzung des Programmieraufwands gehen die Meinungen auseinander. Die einen sehen Zusatzaufwand in der dritten TCP-Verbindung, andererseits erhöht die Kapselung der Funktionalitäten die Wartbarkeit des Systems.&lt;br /&gt;
&lt;br /&gt;
Eigene Sitzungen trennen sowohl den Namensraum für Steuerung und Generic Messages als auch den durch beide Kommunikationsformen entstehenden Netzwerkverkehr:&lt;br /&gt;
&lt;br /&gt;
 SET PROTOCOL GM 0.3&lt;br /&gt;
 SET CONNECTIONMODE GM INFO|COMMAND&lt;br /&gt;
&lt;br /&gt;
Programmiertechnisch wird sowohl für den SRCP-Server als auch den SRCP-Client die Unterhaltung einer bzw. zweier weiterer Netzwerkverbindungen notwendig. Alternativ ist ein Systemdienst möglich, der nur GM-Sitzungen, aber keine Steuerungs-Sitzungen unterstütz.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Die Diskussion dauert noch an, daher ist keine abschliessende Bewertung möglich&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Neue Gerätegruppe===&lt;br /&gt;
====Vorschlag====&lt;br /&gt;
&lt;br /&gt;
Für den generalisierten Nachrichtenaustausch wird eine neue Gerätegruppe (device group) &amp;amp;raquo;Generic Message&amp;amp;laquo; (GM) auf Bus 0 eingerichtet. Die einzige (sinnvoll) anzuwendende Methode ist SET.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im Kommandomodus:&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
EmpfängerID ist diejenige INFO-Session-ID, die die Nachricht erhalten soll. Ist diese 0, so wird die Nachricht als Rundruf an alle INFO-Sessions gesendet. Die AntwortID ist die INFO-Session-ID (oder 0), an die eine eventuelle Antwortnachricht gesendet werden soll. Anmerkung: Die Antwort-ID ist niemals die Session-ID, die den SET Befehl ausführt.&lt;br /&gt;
&lt;br /&gt;
Beispielhafte Anwendung im INFO-Modus:&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM &amp;lt;AntwortID&amp;gt; &amp;lt;EmpfängerID&amp;gt; &amp;lt;messagetype&amp;gt; &amp;lt;messagetext&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;messagetype&amp;gt; ist ein entweder zentral (Wo und von wem?) oder dezentral (anwendungsspezifisch) definierter Identifier, der als eindeutige Kennung für die Interpretation von &amp;lt;messagetext&amp;gt; dient.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;messagetext&amp;gt; gelten die im SRCP üblichen Einschränkungen/Formatanforderungen, z.B. dass der Zeichensatz aus 7&amp;amp;nbsp;Bit ASCII besteht. Die Länge der gesamten Kommandozeile ist auf 1000 Zeichen begrenzt.&lt;br /&gt;
&lt;br /&gt;
=====Anwendungsbeispiel=====&lt;br /&gt;
Ein Client fragt nach den Einzelheiten des Gerätes GA 1 auf Bus 8. Antwort an Session-ID 13 erbeten (Schritt 1).&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wie die INFO-Nachricht aussieht, dürfte offensichtlich sein. Er geht an alle INFO-Sessions (Schritt 2).&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 13 0 CRCF CONFGET 8 GA 1&lt;br /&gt;
&lt;br /&gt;
Wenn ein CRCF-Service diese Nachricht erhalten hat, sendet er eine passende Antwort an den SRCP-Server (Schritt 3):&lt;br /&gt;
&lt;br /&gt;
 SET 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
Die Info-Session des CRCF-Services ist im Beispiel 19; die Antwort wird vom&lt;br /&gt;
SRCP-Server direkt an die SESSION 13 weitergeleitet (Schritt 4):&lt;br /&gt;
&lt;br /&gt;
 INFO 0 GM 19 13 CRCF CONFINFO 8 GA 1 ....&lt;br /&gt;
&lt;br /&gt;
[[Bild:SRCP_GM.png|framed|Nachrichtenfluß über Generic Messages. CS: COMMAND-Sitzung, IS: INFO-Sitzung]]&lt;br /&gt;
Der Nachrichtenfluß über die Schritte 1 bis 4 ist in der nebenstehenden Grafik dargestellt. Die teilnehmenden SRCP-Clients müssen sowohl eine COMMAND- als auch eine INFO-Sitzung unterhalten. Für die Adressierung der Nachrichten spielen die Identifikationsnummern der COMMAND-Sitzungen (im Beispiel 12 und 18) keine Rolle.&lt;br /&gt;
&lt;br /&gt;
Weitere Anfragen kann der Client direkt an Session 19 stellen. Er erhält&lt;br /&gt;
die INFO-Nachricht sofort. Wenn Session 19 terminieren sollte, kann er wieder&lt;br /&gt;
auf Empfänger 0 (= alle) umstellen.&lt;br /&gt;
&lt;br /&gt;
====Bewertung====&lt;br /&gt;
Es entsteht eine allgemein nutzbare Kommunikationsstrecke mit vielfältigem Anwendungspotential. Es entsteht ein permanenter Pflegedienst für Vergabe der Nachrichtentypen (kann automatisiert werden).&lt;br /&gt;
Der Vorschlag wurde in die SRCP-Spezifikation 0.8.4 übernommen.&lt;br /&gt;
&lt;br /&gt;
====Anmerkungen====&lt;br /&gt;
Zu den Konsequenzen der Implementierung gab es einige spezielle Fragestellungen.&lt;br /&gt;
&lt;br /&gt;
;Müssen wir uns über Timeouts Gedanken machen?&lt;br /&gt;
: Das ist Sache der Clients und sollte natürlich benutzerfreundlich gestaltet sein.&lt;br /&gt;
&lt;br /&gt;
;Wie lange soll ein anfragender Client auf Antworten warten?&lt;br /&gt;
:Da der Client für das Timeoutverhalten verantwortlich ist, entscheidet auch er darüber. Wiederum gilt, so benutzerfreundlich, wie möglich.&lt;br /&gt;
&lt;br /&gt;
;Generiert der Server gegebenenfalls eine Timeout-Nachricht?&lt;br /&gt;
:Nein, denn er hat keine Ahnung vom Inhalt der ausgetauschten Nachrichten. Er transportiert nur eine Botschaft; dass zwei (oder auch mehr) Teilnehmer zu einem Dialog gehören, ist dem Server unbekannt.&lt;br /&gt;
&lt;br /&gt;
;Wenn der Server schon beim Empfang einer &amp;quot;SET 0 GM&amp;quot;-Anfrage sieht, dass er damit keinen Empfänger erreichen kann, sollte er eine entsprechende Meldung an den Anfrager generieren (beispielsweise wenn der Anfragende der einzige angemeldete Client ist)?&lt;br /&gt;
:Vorschlag: Der Server sendet in einem solchen Fall &amp;quot;416 ERROR no data&amp;quot;. Dies Meldung erfolgt nur dann, wenn keine INFO Session aktiv ist. Könnte damit auch entfallen, da der Timeout zuschlagen wird.&lt;br /&gt;
&lt;br /&gt;
;Warum muss der Client bei &amp;quot;SET 0 GM&amp;quot;-Anfragen seine Antwort-ID mitsenden? Der Server könnte diese ID in die INFO-Nachricht eintragen, denn er kennt sie ja.&lt;br /&gt;
:Der Server hat überhaupt keine Ahnung davon, welche beliebigen zwei Sessions zusammengehören.&lt;br /&gt;
&lt;br /&gt;
;Die Session-IDs übernehmen eine zentrale Rolle beim Gebrauch von GMs. In der aktuellen SRCP-Spezifikation fehlt eine Beschränkung der Session-ID auf einen definierten Wertebereich.&lt;br /&gt;
:Der im normalen Betrieb notwendige Wertebereich ist sehr gering; ein generischer (von der Hardwareplatform abhängiger) vorzeichenloser Ganzzahlwert sollte für alle Anwendungsfälle ausreichen.&lt;br /&gt;
&lt;br /&gt;
==== Vorschläge zur Minimierung des Netzwerkdatenverkehrs====&lt;br /&gt;
Die Diskussion zeigte, dass größeres Unverständnis darüber herrschte, welches zusätzliche  Datenaufkommen über den Nachrichtenaustausch der SRCP-Clients untereinander entstehen würde. Es bestand teilweise die Befürchtung, dass nicht an dieser Kommunikation interessierte SRCP-Clients unnötig und überfordernd belastet würden. Hier wurde insbesondere deutlich, dass das jetzt schon über den INFO-Kanal eingehende Nachrichtenvolumen SRCP-Anfängern unter Umständen nicht bewust ist und leicht unterschätzt wird.&lt;br /&gt;
&lt;br /&gt;
Bei sachgemäßem Umgang mit dem neuen Nachrichtenkanal ergibt sich gegenüber dem bisherigen INFO-Kanalvolumen jedoch nur ein geringes Mehr an Daten. Insbesondere die Möglichkeit zur direkten Kommunikation zweier Teilnehmer wirkt im Bedarfsfall stark volumenbeschränkend. Ein inflationärer Gebrauch von Rundrufnachrichten sollte naturgemäß vermieden werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;Wenn an einen SRCP-Server eine CRCF-Broadcastanfrage gestellt wird, muss er dann eine INFO-Nachricht generieren? Es kann ja sein, dass er selber auf die Anfrage antworten kann. Gerade bei dynamischen Daten kann der Server möglicherweise am besten Auskunft geben.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Es gibt bereits genügend SRCP-Kommandos, um Informationen direkt beim Server zu erfragen. Dieser Punkt ist daher irrelevant.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;del&amp;gt;CRCF-Broadcastanfragen werden vom Server per INFO-Meldung an alle angemeldeten Clients weitergeleitet. An den Anfrager selber sollte die INFO-Meldung jedoch nicht weitergeleitet werden.&amp;lt;/del&amp;gt;&lt;br /&gt;
Anmerkung: Durch das generelle Weiterleiten der INFO-Meldung weiß der Client, das (und wann) seine Botschaft rausgegangen ist. Deshalb wird auch dieser Punkt gestrichen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Ein Client sollte selber darüber entscheiden, ob er CRCF-Broadcasts empfängt. Per Voreinstellung ist diese Option nicht aktiv. Wie das Ein- oder Ausschalten funktioniert, wäre zu diskutieren.&lt;br /&gt;
&lt;br /&gt;
== Glossar ==&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Broadcast'''&lt;br /&gt;
::Eine von einem SRCP-Client in Form von &amp;quot;SET 0 GM &amp;lt;AntwortID&amp;gt; 0 CRCF CONFGET &amp;lt;messagetext&amp;gt;&amp;quot; initiierte Rundrufnachricht, die der SRCP-Server über den INFO-Kanal an alle angeschlossenen SRCP-Clients weiterleitet.&lt;br /&gt;
&lt;br /&gt;
;'''CRCF-Client'''&lt;br /&gt;
::Ein Client mit lokalen CRCF-Daten bzw. lokaler CRCF-Datenbank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:SRCP]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12606</id>
		<title>Gattungszeichen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gattungszeichen&amp;diff=12606"/>
				<updated>2009-02-05T19:09:56Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Link auf LEO hinzugefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Eine umfassende Liste der verschiedenen Gattungszeichen findet man auch unter: http://www.leo.org/information/freizeit/bahn/gattungszeichen.html&lt;br /&gt;
&lt;br /&gt;
A = 1. Kl.&lt;br /&gt;
&lt;br /&gt;
Ap = Wagen der Bauart &amp;quot;Rheingold&amp;quot; mit Pullmannbestuhlung und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
Av = Wagen Bauart &amp;quot;Rheingold&amp;quot; mit Abteilen, größere Abteillänge und Klimaanlage&lt;br /&gt;
&lt;br /&gt;
B = 2. Kl.&lt;br /&gt;
&lt;br /&gt;
Bc = Liegewagen 2. Kl.&lt;br /&gt;
&lt;br /&gt;
C = 3. Kl.&lt;br /&gt;
&lt;br /&gt;
Cl = Liegewagen 3. Klasse&lt;br /&gt;
&lt;br /&gt;
Diese mit 2. Zeichen &amp;quot;R&amp;quot; = Halbspeisewagen oder Barwagen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pw (bis 1961) = Gepäckwagen&lt;br /&gt;
&lt;br /&gt;
D = ab 1961 Gepäckwagen, mit A oder B oder C Gepäckabteil&lt;br /&gt;
&lt;br /&gt;
DD = Doppelstock-Autotransportwagen für &amp;quot;Auto im Reisezug&amp;quot;&lt;br /&gt;
&lt;br /&gt;
WR = Vollspeisewagen&lt;br /&gt;
&lt;br /&gt;
WL = Schlafwagen&lt;br /&gt;
&lt;br /&gt;
WG = Gesellschaftswagen für Sonderverkehr&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kein Nebengattungszeichen = Abteilwagen ohne Übergangsmöglichkeit&lt;br /&gt;
&lt;br /&gt;
i = Wagen mit offenem Übergang und Seiten- oder Mittelgang&lt;br /&gt;
&lt;br /&gt;
ü = Wagen mit Faltenbalg und Seitengang&lt;br /&gt;
&lt;br /&gt;
üm = Wagen mit Faltenbalg und Seitengang mit Länge ab 26m (nicht 26,4!), das g entfiel ab 1965 bei allen m-Wagen&lt;br /&gt;
&lt;br /&gt;
g = Wagen mit geschlossenem Übergang als Gummiwulst (ergänzt jeweils ü, üp, üm und y, entfiel bei m ab 1965)&lt;br /&gt;
&lt;br /&gt;
y = (um 1951 noch üp) Wagen mit Mittelgang und geschlossenem Übergang&lt;br /&gt;
&lt;br /&gt;
t = Spezialeinrichtung für Reisebüroverkehr (nur bei Bc und WR)&lt;br /&gt;
&lt;br /&gt;
e = elektrische Heizung&lt;br /&gt;
&lt;br /&gt;
h = Klimatisierung&lt;br /&gt;
&lt;br /&gt;
w = in Verbindung mit ü Polstersitze in der 3. Klasse&lt;br /&gt;
&lt;br /&gt;
s = nur bei WL &amp;quot;Spezial-1-Bett-Abteil)&lt;br /&gt;
&lt;br /&gt;
f = Befehlsstand für geschobene Züge&lt;br /&gt;
&lt;br /&gt;
b = Befehlssteuerleitung (bei 3yge, 4ymg, 4n, i und v)&lt;br /&gt;
&lt;br /&gt;
v = als Nebengattunsgzeichen Beiwagen zu Verbrennungstriebwagen (nicht zu verwechseln mit dem Hauptgattungszeichen Av)&lt;br /&gt;
&lt;br /&gt;
el = Beiwagen zu Elektrotriebwagen (selten, auslaufend, bei den B4yge nicht mehr benutzt)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Vorbild]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Decoder&amp;diff=12591</id>
		<title>Decoder</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Decoder&amp;diff=12591"/>
				<updated>2009-01-10T12:47:30Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Lokdecoder */ Link zur Seite von Reinhard Müller eingefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Digitalsysteme übertragen neben der elektrischen Antriebsenergie für Fahrzeuge und Magnetartikel noch digital kodierte Informationen über die Spannungsversorgung, die von einem Elektronikbaustein, dem Decoder, entschlüsselt und in Steuervorgänge umgesetzt werden. Man unterscheidet zwei verschiedene Varianten, den Lokdecoder und den Schaltdecoder.&lt;br /&gt;
&lt;br /&gt;
Lokdecoder setzen die für sie über eine digitale Adresse gekennzeichneten Informationen für Fahrtrichtungs- und Geschwindigkeitsänderungen um und ermöglichen so einen Mehrzugbetrieb. In jedem Triebfahrzeug verarbeitet ein Lokdecoder die ihn betreffenden Informationen und steuert den Lokmotor sowie weitere Funktionsausgänge entsprechend an. Der Decoder ist quasi der mitfahrende &amp;quot;Lokführer&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Schaltdecoder schalten einzelne Ausgänge über binäre Signale ein oder aus. Sie dienen im allgemeinen zum Ansteuern von Magnetartikeln, wie Weichen, Signalen etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Funktionsweise =&lt;br /&gt;
&lt;br /&gt;
Mit einem Digitalsystem können mehrere Züge unabhängig voneinander auf demselben Gleis betrieben werden. Dazu werden die Fahrbefehle für die verschiedenen Züge und die Schaltbefehle in einer digitalen Form von der [[Digitalzentrale]] erzeugt. Dieses Digitalsignal entspricht einem definierten [[Digitalprotokoll]] und wird vom [[Booster]] dem Fahrstrom aufgeprägt. &lt;br /&gt;
&lt;br /&gt;
Jede Lok muß im Digitalbetrieb mit einem &amp;amp;raquo;Lokdecoder&amp;amp;laquo; ausgerüstet sein. Diese Elektronik dekodiert die im Fahrstrom enthaltenen Informationen, die aus einer Adresse und einem Befehl bestehen. Wenn die empfangene Adresse mit der eigenen Decoderadresse übereinstimmt, wertet der Decoder den Befehl aus:&lt;br /&gt;
&lt;br /&gt;
* Fahrstufe und Fahrtrichtung ändern&lt;br /&gt;
* Funktionsausgang schalten&lt;br /&gt;
&lt;br /&gt;
Die Motoransteuerung geschieht im allgemeinen über [[PWM|Pulsweitenmodulation]], da dies die im Decoder entstehende Verlustleistung minimiert.&lt;br /&gt;
&lt;br /&gt;
In ähnlicher Weise reagieren ''Schaltdecoder'' auf entsprechende Schaltbefehle, um Weichen, Signale oder anderes Funktionszubehör anzusteuern.&lt;br /&gt;
&lt;br /&gt;
= Lokdecoder =&lt;br /&gt;
&lt;br /&gt;
Eine gute Übersicht über DCC Decoder und deren Eigenschaften bietet die Seite von [http://www.dcc-mueller.de/decoder/dectab_d.htm Reinhard Müller].&lt;br /&gt;
&lt;br /&gt;
== Auswahlkriterien==&lt;br /&gt;
&lt;br /&gt;
Bei der Auswahl eines Lokdecoders spielen neben dem verwendeten Digitalsystem vor allem die gewünschten Zusatzfunktionen eine Rolle:&lt;br /&gt;
&lt;br /&gt;
* Digitalsystem&lt;br /&gt;
: Der Decoder muß das auf der Anlage verwendete [[Digitalprotokoll]] verstehen und insoweit zu der eingesetzten [[Digitalzentrale]] passen.&lt;br /&gt;
* Baugröße&lt;br /&gt;
: Der Decoder muß klein genug sein, damit er in das vorgesehene Lokomotivmodell hineinpaßt.&lt;br /&gt;
* Belastbarkeit&lt;br /&gt;
: Der Decoder muß den vom Motor und von den Sonderfunktionen benötigten Strombedarf schalten können. Bei Überlastung besteht die Gefahr, den Decoder und möglicherweise auch das Lokmodell (wegen zu großer Wärmeentwicklung) zu beschädigen.&lt;br /&gt;
* Normschnittstelle&lt;br /&gt;
: Zum einfacheren Nachrüsten und Austauschen sind viele Lokomotiven und Lokdecoder mit einer einheitlichen [[NEM]]-Schnittstelle (einem Vielfachsteckverbinder) ausgestattet.&lt;br /&gt;
* Fahrstufenanzahl&lt;br /&gt;
: Je mehr Fahrstufen ein Lokdecoder unterstützt, desto feinfühliger läßt sich das Fahrzeug steuern.&lt;br /&gt;
* Funktionsausgänge&lt;br /&gt;
: In vielen Digitalsystemen sind neben dem Lokmotor verschiedene Zusatzfunktionen (z. B. Licht, Rauch, Sound, ferngesteuerte Kupplungen) schaltbar. Z. T. sind diese Ausgänge auch dimmbar.&lt;br /&gt;
* SUSI-Schnittstelle&lt;br /&gt;
: Über die SUSI-Schnittstelle gibt ein Lokdecoder Informationen über den Betriebszustand (Geschwindigkeit, Fahrtrichtung, Anfahren, Abbremsen etc.) über ein serielles Format an andere Elektronikbausteine weiter. Dadurch können z. B. dort angeschlossene Soundbausteine die korrekten Klänge erzeugen. &lt;br /&gt;
* [[Lastregelung]]&lt;br /&gt;
: Moderne Lokdecoder sind häufig mit einer Lastregelung ausgestattet, die die Zuggeschwindigkeit unabhängig von Steigung oder Gefälle konstant hält. &lt;br /&gt;
* Spezielle Features&lt;br /&gt;
: In einigen Lokdecodern sind spezielle Features wie eine Anfahr- und Bremssteuerung (z. B. Lenz ABC, Zimo HLU) enthalten, die ein vorbildgerechtes Fahrverhalten in einer Blocksteuerung ermöglichen.&lt;br /&gt;
* &amp;amp;raquo;Normaler&amp;amp;laquo; Motor oder Glockenankermotor&lt;br /&gt;
: Aufgrund der besonderen Eigenschaften von [[Glockenankermotor]]en muß die Pulsweitenmodulation angepaßt werden (höhere Frequenzen: 10-30 kHz).&lt;br /&gt;
&lt;br /&gt;
== Einstellparameter ==&lt;br /&gt;
&lt;br /&gt;
In Lokdecodern sind zahlreiche Parameter einstellbar, wie z.B.:&lt;br /&gt;
&lt;br /&gt;
* Mindest- und Höchstgeschwindigkeit&lt;br /&gt;
* Anfahr- und Bremsbeschleunigung&lt;br /&gt;
* Geschwindigkeitskennlinie&lt;br /&gt;
* P- und I-Faktoren für Lastregelung ([[Wie_arbeitet_die_Lastregelung%3F#Einstellung_der_P-_und_I-Faktoren|Einstellhinweise]])&lt;br /&gt;
&lt;br /&gt;
Diese Parameter sind über die Digitalzentrale oder spezielle Computersoftware programmierbar. Einzelheiten sind den Handbüchern zu den Decodern und Digitalzentralen zu entnehmen. &lt;br /&gt;
&lt;br /&gt;
Im [[DCC]]-System werden diese Parameter ''Konfigurationsvariablen'' (Configuration Variables, CVs) genannt.&lt;br /&gt;
&lt;br /&gt;
== Funktionsdecoder ==&lt;br /&gt;
&lt;br /&gt;
Funktionsdecoder reagieren auf Lokbefehle, enthalten selbst jedoch keinen Motorausgang. &lt;br /&gt;
Sie dienen dazu zusätzliche Funktionen in ein Lokmodell zu bringen oder Funktionen in einem &lt;br /&gt;
nicht angetriebenen Modell zur Verfügung zu stellen (Licht, Spitzenbeleuchtung, ...) &lt;br /&gt;
&lt;br /&gt;
== Sounddecoder ==&lt;br /&gt;
&lt;br /&gt;
Sounddecoder bringen Betriebsgeräusche des Vorbilds auf die Modellbahn. &lt;br /&gt;
Sie werden wie Lokdecoder angesprochen und über die Funktionen geschaltet.&amp;lt;br /&amp;gt;&lt;br /&gt;
Es gibt mehrere Bauformen: &lt;br /&gt;
&lt;br /&gt;
* Einfacher Sounddecoder &lt;br /&gt;
: Dieser liefert nur den Sound und hat keine eigene Motorsteuerung. Dafür kann er aber z.B. auch in einen Geisterwagen eingebaut werden. Oft die einzige Lösung bei schwierigen Platzverhältnissen. &lt;br /&gt;
* Als Zusatzmodul zu einem Lokdecoder &lt;br /&gt;
: Dies dient a) zur Nachrüstung und b) zum einfacheren Einbau durch zwei kleinere Teile. Durch die Anbindung an einen Lokdecoder können teils die Geräusche lastabhängig verändert werden. Für diese Bauform wird oft die SUSI-Schnittstelle verwendet. &lt;br /&gt;
* Integrierter Lok- und Sounddecoder &lt;br /&gt;
: Hier ist die akustische Integration in das Fahrverhalten am einfachsten möglich. Integrierte Decoder sind in der Regel größer als vergleichbare Lokdecoder jedoch meist in Summe kleiner als ein Lokdecoder + Sound-Zusatzmodul. &lt;br /&gt;
&lt;br /&gt;
Sounddecoder brauchen zusätzlichen Platz und Strom sowie eine Einbaumöglichkeit für den notwendigen Lautsprecher. Loks / Baugrößen mit viel Platz sind hier klar im Vorteil.&lt;br /&gt;
&lt;br /&gt;
Die Qualität der Sounds hängt von den Fähigkeiten des Sounddecoders, der Qualität der Sounddateien und der Qualität des Lautsprechers ab. Allerdings sind auch bei besten Lautsprechern besonders bei kleinen Modellen Einbußen in der Tonqualität unvermeidbar. Dies ist bedingt durch die akustischen Wellengesetze (Wellenlänge bezogen auf Größe des Erregers).&lt;br /&gt;
&lt;br /&gt;
= Schaltdecoder =&lt;br /&gt;
&lt;br /&gt;
Schaltdecoder arbeiten prinzipiell ähnlich wie ein Lokdecoder ohne Motorausgang. Je nach Einsatzzweck unterscheidet man &lt;br /&gt;
&lt;br /&gt;
* Schaltdecoder mit geschalteten Kurzzeitausgängen&lt;br /&gt;
* Schaltdecoder dauerhaft geschalteten (Relais-)Ausgängen&lt;br /&gt;
* Lichtsignaldecoder, die für eine vorbildgetreue Ansteuerung der Signalbilder (z. B. mit langsamen Bildwechsel) sorgen&lt;br /&gt;
* Weichendecoder zur Ansteuerung von motorisch angetriebenen Weichen&lt;br /&gt;
* Servodecoder, die die Ansteuerung von Modellbauservos z. B. als Weichenantrieb ermöglichen&lt;br /&gt;
* Sonderdecoder für z. B. Kranmodelle, Drehscheiben, Lichtsteuerung etc.&lt;br /&gt;
&lt;br /&gt;
Die Baugröße von Schaltdecoder ist häufig nicht so kritisch wie bei Lokdecodern, da sie häufig unterhalb der Anlage montiert werden. Aus diesem Grund gibt es auch einige Bausätze und Selbstbaudecoder.&lt;br /&gt;
&lt;br /&gt;
Schaltdekoder müssen die Energie für die auszuführende Aktion nicht zwingend dem Digitalsignal entnehmen, sondern sind oft mit einer zusätzlichen Einspeisemöglichkeit ausgerüstet. Dies erleichtert&lt;br /&gt;
bei größeren Anlagen die Energieverteilung.&lt;br /&gt;
&lt;br /&gt;
Eine Ausnahme bilden spezielle Weichendecoder, die bei Gleisen mit integrierter Bettung innerhalb des Bettungskörpers installiert werden.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Schattenbahnhof&amp;diff=12576</id>
		<title>Schattenbahnhof</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Schattenbahnhof&amp;diff=12576"/>
				<updated>2008-11-26T18:57:39Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Fiddle Yard */  Link hinzugefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Ein Schattenbahnhof ist ein (nicht sichtbarer) Abstellbahnhof. Er dient dazu, komplette Züge abzustellen und dadurch die sichtbare Zugfolge auf der Modellbahn abwechslungsreicher zu gestalten. Schattenbahnhöfe können manuell oder automatisch gesteuert werden. &lt;br /&gt;
&lt;br /&gt;
Weil Schattenbahnhöfe im allgemeinen verdeckt angeordnet sind, ist ein handwerklich sauberer Aufbau für einen sicheren Betrieb unabdingbar. Außerdem sollten alle Gleise mit [[Besetztmelder|Besetztmeldern]] ausgestattet sein, damit der Bediener weiß, in welchen Gleisen Züge stehen. &lt;br /&gt;
&lt;br /&gt;
Eine besondere Form des Schattenbahnhofs ist der sogenannte &amp;quot;Fiddle Yard&amp;quot;, der zum manuellen Bilden und Umstellen von Zügen genutzt werden kann. Er ist daher gut zugänglich außerhalb der landschaftlich gestalteten Anlage angeordnet.&lt;br /&gt;
&lt;br /&gt;
== Wozu braucht eine Modellbahnanlage so was eigentlich? ==&lt;br /&gt;
&lt;br /&gt;
Oft werden auf einer Modellbahn mehr Züge eingesetzt, als im sichtbaren&lt;br /&gt;
Teil der Anlage untergebracht werden können. Im Schattenbahnhof können&lt;br /&gt;
diese abgestellt werden.&lt;br /&gt;
&lt;br /&gt;
== Wie groß muss ein Schattenbahnhof sein? ==&lt;br /&gt;
&lt;br /&gt;
Je mehr Gleise ein Schattenbahnhof hat, um so mehr Züge können dort&lt;br /&gt;
abgestellt werden. Auch wenn der Schattenbahnhof beim Bau der Anlage &amp;quot;zu&lt;br /&gt;
groß&amp;quot; ist, so füllt sich der übliche Schattenbahnhof meist schnell und&lt;br /&gt;
erscheint später &amp;quot;zu klein&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Wie lang müssen die Gleise im Schattenbahnhof sein? ==&lt;br /&gt;
&lt;br /&gt;
Das längste Abstellgleis im Schattenbahnhof definiert die maximale&lt;br /&gt;
Zuglänge. Längere Züge müssen entweder bei der Einfahrt geteilt werden&lt;br /&gt;
oder &amp;quot;draußen bleiben&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Kann ein Schattenbahnhof komplett umbaut werden? ==&lt;br /&gt;
&lt;br /&gt;
In jedem Schattenbahnhof wird irgendwann einmal ein Zug entgleisen oder&lt;br /&gt;
eine Weiche beschädigt. Ist der Schattenbahnhof nicht zugänglich, so&lt;br /&gt;
kann das sehr frustrierend werden. Deshalb sollte jeder Punkt des&lt;br /&gt;
Schattenbahnhofs &amp;quot;erreichbar&amp;quot; sein. Im Idealfall kann der&lt;br /&gt;
Schattenbahnhof (oder ein Teil davon) für Wartungsarbeiten demontiert&lt;br /&gt;
werden.&lt;br /&gt;
&lt;br /&gt;
== Wie kommen die Züge in den Schattenbahnhof? ==&lt;br /&gt;
&lt;br /&gt;
Die Phantasie des Erbauers ist gefragt - den sichtbaren Teil der Anlage&lt;br /&gt;
verlässt ein Zug z.B. durch einen [[Tunnel]] oder &amp;quot;hinter&amp;quot; einer Brücke bzw.&lt;br /&gt;
einem Gebäude. Je nach Anordnung des Schattenbahnhofs reicht eine&lt;br /&gt;
Durchfahrt, eine einfache Rampe oder es bedarf der Konstruktion einer&lt;br /&gt;
[[Gleiswendel]].&lt;br /&gt;
&lt;br /&gt;
Weitere interessante Möglichkeiten für die Zufahrt zum Schattenbahnhof&lt;br /&gt;
wären:&lt;br /&gt;
- eine Eisenbahnfähre&lt;br /&gt;
- ein &amp;quot;Eisenbahn-Lift&amp;quot;&lt;br /&gt;
- ...&lt;br /&gt;
&lt;br /&gt;
== Welche Elemente braucht ein Schattenbahnhof? ==&lt;br /&gt;
&lt;br /&gt;
Je nach vorhandenem Platz und gewünschtem Betrieb der Anlage werden&lt;br /&gt;
folgende Elemente benötigt:&lt;br /&gt;
- Wendeschleife&lt;br /&gt;
- Abstellgleise&lt;br /&gt;
- Rangiergleise&lt;br /&gt;
- Schiebebühne&lt;br /&gt;
- Gleis zum Einsetzen der Wagen&lt;br /&gt;
- Anschluss für ein Zug-Aufbewahrungs-System&lt;br /&gt;
&lt;br /&gt;
== Welche Gestaltungsmöglichkeiten gibt es? ==&lt;br /&gt;
&lt;br /&gt;
=== Fiddle Yard ===&lt;br /&gt;
Ein Fiddle Yard ist häufig nur ein gerades Stück Gleis, auf dem die&lt;br /&gt;
Waggons und Loks nach Bedarf aufgegleist werden. Er kann aus mehreren&lt;br /&gt;
Gleisen bestehen und durch eine Schiebebühne oder eine Drehscheibe&lt;br /&gt;
ergänzt werden.&lt;br /&gt;
&lt;br /&gt;
Verschieden Möglichkeiten, wie man ein Fiddle Yard gestalten kann findet man auf der englischsprachigem [http://rail.felgall.com/fyd.htm Seite von Stephen Chapman].&lt;br /&gt;
&lt;br /&gt;
=== Stumpfgleise ===&lt;br /&gt;
Das Zufahrts-Gleis mündet über Weichen in mehrere&lt;br /&gt;
Abstellgleise. Der Schattenbahnhof verfügt meist nur über eine Zufahrt.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
      ___________________&lt;br /&gt;
     /___________________&lt;br /&gt;
____/____________________&lt;br /&gt;
   \_____________________&lt;br /&gt;
    \____________________&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Hintereinander-Parker === &lt;br /&gt;
Ein sehr langes Gleis wird in Abschnitte&lt;br /&gt;
eingeteilt, in denen mehrere Züge hintereinander parken. Häufig werden&lt;br /&gt;
Gleiswendeln zu diesem Zweck verwendet, wobei zu beachten ist, dass nur&lt;br /&gt;
Züge auf die Anlage können, die direkt am Ausfahrgleis stehen. Will man&lt;br /&gt;
einen Zug ausfahren lassen, der &amp;quot;in der Mitte&amp;quot; steht, so müssen mehrere Züge umgeparkt&lt;br /&gt;
werden.&lt;br /&gt;
&lt;br /&gt;
=== [[Kehrschleife]] ===&lt;br /&gt;
Meist ein Bestandteil von Schattenbahnhöfen, ein&lt;br /&gt;
Gleis dass von den Zügen durchfahren werden kann, um &amp;quot;umzudrehen&amp;quot;. Eine&lt;br /&gt;
solche [[Kehrschleife]] ist oft im Betriebs-Konzept einer Anlage vorgesehen&lt;br /&gt;
und kann als solche nicht zum Abstellen von Zügen verwendet werden&lt;br /&gt;
(dafür müssen extra Abstellgleise vorgesehen werden).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
        ______&lt;br /&gt;
       /      \&lt;br /&gt;
      /        \&lt;br /&gt;
_____/         |&lt;br /&gt;
   \           |&lt;br /&gt;
    \          /&lt;br /&gt;
     \________/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gleisharfe ===&lt;br /&gt;
Eine Reihe von Abstellgleisen, die an beiden Enden&lt;br /&gt;
angebunden sind (im Gegensatz zu Stumpfgleisen). Bei einer Gleisharfe&lt;br /&gt;
ist im Allgemeinen darauf zu achten, dass ein Gleis als Durchfahrtsgleis&lt;br /&gt;
reserviert wird und nicht zum Abstellen von Zügen verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Um möglichst gleichmäßige Gleislängen zu erhalten ist bei der Anordnung der Weichen die Variante A der Variante B vorzuziehen.&lt;br /&gt;
&lt;br /&gt;
'''Variante A:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
       ___________________________&lt;br /&gt;
      /______________________/&lt;br /&gt;
     /______________________/&lt;br /&gt;
____/______________________/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Variante B:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
       __________________&lt;br /&gt;
      /__________________\&lt;br /&gt;
     /____________________\&lt;br /&gt;
____/______________________\______&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gleis zum Einsetzen von Wagen ===&lt;br /&gt;
Auch dem vorsichtigsten Modellbahner&lt;br /&gt;
wird hin und wieder ein Wagen (oder ein Zug) entgleisen. Dann ist es&lt;br /&gt;
hilfreich, wenn an einer gut zugänglichen Stelle des Schattenbahnhofs&lt;br /&gt;
ein gerades Gleis zur Verfügung steht, um die Wagen gleich wieder&lt;br /&gt;
einzusetzen. An Stelle eines Prellbocks kann hier gleich das&lt;br /&gt;
Eingleiswerkzeug befestigt werden (dann ist es immer zur Hand). Dieses&lt;br /&gt;
Gleis kann auch bei Bedarf zum Rangieren von Zügen (wenn die Wagen mal&lt;br /&gt;
vertauscht werden sollen) oder als &amp;quot;Fiddle Yard&amp;quot; dienen.&lt;br /&gt;
&lt;br /&gt;
=== Anschluss für ein Aufbewahrungs-System ===&lt;br /&gt;
Gerade bei kleinen Anlagen&lt;br /&gt;
ist oft nicht genug Platz, um alle Züge im Schattenbahnhof&lt;br /&gt;
unterzubringen. Eine Möglichkeit ist die Aufbewahrung der Züge in&lt;br /&gt;
&amp;quot;Röhren&amp;quot; (Vitrinen). Bei Bedarf wird eine solche Vitrine an ein freies&lt;br /&gt;
Gleis angesetzt und der Zug kann gleich auf die Anlage auffahren.&lt;br /&gt;
&lt;br /&gt;
== Wie bekomme ich das alles auf meiner Anlage unter? ==&lt;br /&gt;
&lt;br /&gt;
Nicht alle erläuterten Teile müssen realisiert werden. Vielmehr sollte&lt;br /&gt;
man sich für eine sinnvolle Mischung entscheiden, die sowohl räumlich&lt;br /&gt;
als auch betrieblich sinnvoll ist.&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
&lt;br /&gt;
++ Raum für Beispiele ++&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:FAQ]]&lt;br /&gt;
[[Kategorie:Grundlagen]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_aktuelle_Systeme&amp;diff=12547</id>
		<title>Digitalzentralen - aktuelle Systeme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_aktuelle_Systeme&amp;diff=12547"/>
				<updated>2008-11-16T15:36:01Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
'''Übersicht der aktuell verfügbaren Digitalzentralen.''' &lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel ist nach einfachen, mittleren und vollen Systemen unterteilt. &lt;br /&gt;
Diese Gliederung dient dazu, die Dinge einigermaßen übersichtlich zu halten. &lt;br /&gt;
Innerhalb der einzelnen Abschnitte sind die Systeme alphabetisch nach dem Namen des Herstellers sortiert.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Einsteiger-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Einfache Zentralen, mit reduziertem Funktionsumfang.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''LokBoss'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (max.&amp;amp;nbsp;4)&lt;br /&gt;
| 4 LEDs, Adr.&amp;amp;nbsp;1–4&lt;br /&gt;
| 1,8A, {{r}}V (-)     || -&lt;br /&gt;
| [[LocoNet]]  /  -&lt;br /&gt;
| Adr. 1-4     /  nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / [[LocoNet]]&lt;br /&gt;
| nein&lt;br /&gt;
| Einfachst-Regler&amp;amp;nbsp;am LocoNet&amp;amp;nbsp;(Adr.&amp;amp;nbsp;1–4). Zusatzregler&amp;amp;nbsp;= LokBoss&amp;amp;nbsp;oder&amp;amp;nbsp;FMZ–Regler (seit&amp;amp;nbsp;2003/4)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Piko&amp;lt;br /&amp;gt; '''Digi-1'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (max.&amp;amp;nbsp;4)&lt;br /&gt;
| nein&lt;br /&gt;
| 1,8A, {{r}}V (-)        || Gleissignal&lt;br /&gt;
| Iris (Infrarot)     /  nein&lt;br /&gt;
| Adr. 1-127, 28&amp;amp;nbsp;Fahrst. / nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / -&lt;br /&gt;
| nein&lt;br /&gt;
| Digi-Fern = Uhlenbrock Iris, max.&amp;amp;nbsp;12&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv (seit&amp;amp;nbsp;2004/5)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Zentralen mit Einschränkungen ==&lt;br /&gt;
&lt;br /&gt;
Zentralen, die einen Großteil des Funktionsumfanges der jeweiligen Protokolle unterstützen, aber aufgrund bestimmter Einschränkungen nicht für den Betrieb großer Anlagen geeignet sind.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{| {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Bachmann&amp;lt;br /&amp;gt; '''EZ&amp;amp;nbsp;Command Dynamis'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 (IR)&lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| 2.5A, 15.5V (+)  || ja (über Pro-Box)&lt;br /&gt;
| {{r}}, IR        /  {{r}}&lt;br /&gt;
| POM              /  {{r}}&lt;br /&gt;
| 40 á 5 Loks&lt;br /&gt;
| - / ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| JoyStick&amp;amp;nbsp;BiDi&amp;amp;nbsp;vorbereitet, Erweiterung&amp;amp;nbsp;über&amp;amp;nbsp;Pro–Box (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Digitrax&amp;lt;br /&amp;gt; '''Zephyr'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 1 / 0 '''(1)'''&lt;br /&gt;
| 4–stellig&lt;br /&gt;
| 2.5A, 12.8V (+)    || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]        /  [[LocoNet]]&lt;br /&gt;
| POM+Prog, bis 255  /  Prog-Gleis&lt;br /&gt;
| Zentrale, Decoder&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| max.&amp;amp;nbsp;10&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv, Fahrregler / Booster am [[LocoNet]]. (seit&amp;amp;nbsp;2002/3)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''Profi-Boss'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 &lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| 1.8A, 18V (+) || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]   /  [[LocoNet]]&lt;br /&gt;
| POM+Prog      /  Prog-Gleis &lt;br /&gt;
| nein&lt;br /&gt;
| nein / ja&lt;br /&gt;
| Twin Center&lt;br /&gt;
| max. 16 Loks aktiv, Handregler am [[LocoNet]]. (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Hornby&amp;lt;br /&amp;gt; '''Select'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| 2&amp;amp;nbsp;Ziffern&lt;br /&gt;
| 1/3A, 15V ({{r}})  || ja (RJ12)&lt;br /&gt;
| X–Bus              /  -&lt;br /&gt;
| ja                 /  {{r}}&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| - / ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| bis 10 Loks aktiv, Adr. 1-59 (Loks), 60-99 (Weichen) (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Hornby&amp;lt;br /&amp;gt; '''Elite'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD Display&lt;br /&gt;
| 3A, 15V ({{r}})  || 5-polig, Gleis-Signal, (RJ12)&lt;br /&gt;
| X–Bus            /  -&lt;br /&gt;
| POM+Prog         /  Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC&lt;br /&gt;
| BiDi&amp;amp;nbsp;(RailCom)&amp;amp;nbsp;vorbereitet, 254 Lok + 255 Weichen Adressen (seit&amp;amp;nbsp;Dez.&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| LGB&amp;amp;nbsp;'''(2)'''&amp;lt;br /&amp;gt; '''MZS&amp;amp;nbsp;II'''&lt;br /&gt;
| DCC (Basic)&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LEDs&lt;br /&gt;
| 5A, {{r}}V ({{r}})  || ja, max. 4&lt;br /&gt;
| LGB-Bus         /  LGB-Bus&lt;br /&gt;
| nur Adresse     /  -&lt;br /&gt;
| nur mit Universal Handy&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| Großbahn, 23 Adr. 14 Fahrst., max. 8 Loks aktiv ''(Nachfolge:&amp;amp;nbsp;MZS&amp;amp;nbsp;III)'' (seit&amp;amp;nbsp;200?)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Littfinski Datentechnik&amp;lt;br /&amp;gt; '''DiCoStation'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| 2 LED&lt;br /&gt;
| -      || 5-polig&lt;br /&gt;
| -      /  3x [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| {{r}}  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| USB / -&lt;br /&gt;
| PC&lt;br /&gt;
| '''kein BiDi''', Prog-Gleis nur über Erweiterung, braucht PC–Steuerung (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| MärklinSystems&amp;lt;br /&amp;gt; '''MobileStation'''&lt;br /&gt;
| mfx, MM&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Screen&lt;br /&gt;
| 1.2A/1.9A, {{r}}V ({{r}})  || nein&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| ja       /  ja&lt;br /&gt;
| kein&lt;br /&gt;
| - / -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| max.&amp;amp;nbsp;10&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv, MM: nur 80 Adr., 14 Fahrst. (seit&amp;amp;nbsp;2004)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Roco&amp;lt;br /&amp;gt; '''MultiMaus''' ((+Verstärker))&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| ((3/3.2A, {{r}}V ({{r}})))  || ja&lt;br /&gt;
| X–Bus                /  {{r}}&lt;br /&gt;
| POM+Prog, bis 255    /  nein*&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja&lt;br /&gt;
| Rocomotion + PC&lt;br /&gt;
| Handregler am X–Bus, *Verstärker ungeeignet. (seit&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Trix&amp;amp;nbsp;Systems&amp;lt;br /&amp;gt; '''MobileStation'''&lt;br /&gt;
| DCC, SX&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Screen&lt;br /&gt;
| 1.9A, {{r}}V ({{r}})  || nein&lt;br /&gt;
| {{r}}          /  kein&lt;br /&gt;
| bis 999        /  bis 999&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / -&lt;br /&gt;
| Central Station+PC / zweite MS&lt;br /&gt;
| max. 16 Loks aktiv (seit&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Am JumpPort des Digitrax Zephyr können 1 oder 2 Analog-Fahrregler angeschlossen werden, die je eine zugewiesen Digital-Lok steuern.&lt;br /&gt;
# Der LGB-Bus basiert wahrscheinlich auf einer älteren X–Bus Version.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Vollsysteme ==&lt;br /&gt;
&lt;br /&gt;
Zentralen, die den vollen Funktionsumfang der jeweiligen Protokolle unterstützen und zur Steuerung großer bis sehr großer Anlagen geeignet sind. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| CT-Elektronik&amp;lt;br /&amp;gt; '''ZF5 + HR3'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LED&amp;amp;nbsp;(ZF5), LCD 128x64 (HR3)&lt;br /&gt;
| 1-5A, 10-21V (+)  || 3-polig&lt;br /&gt;
| X–Bus   / {{r}}&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| ja, 100x6 Loks&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| PC&lt;br /&gt;
| HR3&amp;amp;nbsp;steuert&amp;amp;nbsp;2 Loks, BiDi und Selectrix geplant. (seit&amp;amp;nbsp;2006/7)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Digitrax&amp;amp;nbsp;&amp;lt;br /&amp;gt; '''SuperChief''' &amp;lt;br /&amp;gt; (DCS100/200 + DT400)&lt;br /&gt;
| DCC, (MM1) &lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LED&amp;amp;nbsp;(DCS...), LCD 2&amp;amp;nbsp;Zeilen (DT400)&lt;br /&gt;
| 5/8A, 12/15/20V (+)  || [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]        /  [[LocoNet]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Dekoder, Zentrale&lt;br /&gt;
| - / ja&lt;br /&gt;
| Prozessor tauschen&lt;br /&gt;
| Für&amp;amp;nbsp;extreme&amp;amp;nbsp;Anforderungen: 120&amp;amp;nbsp;aktive&amp;amp;nbsp;Loks/Fahrregler, DT400=2&amp;amp;nbsp;Loks, DCS200=8A (seit&amp;amp;nbsp;1995/6)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| ESU&amp;lt;br /&amp;gt; '''ECoS''' &lt;br /&gt;
| DCC, BiDi, MM,&amp;amp;nbsp;SX, ''mfx''&lt;br /&gt;
| 2 / 0&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| Touch Screen, 320x240&lt;br /&gt;
| 2-4A, {{r}}V ({{r}})      || 3/5-polig, ECoSLink '''(2)'''&lt;br /&gt;
| ECoSLink, ECoSniffer  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ POM+Prog&lt;br /&gt;
| Zentrale, 32x16 Loks&lt;br /&gt;
| Ethernet / -&lt;br /&gt;
| PC&lt;br /&gt;
| '''BiDi''' seit 11/2007. ''Version&amp;amp;nbsp;3: +mfx, +Gleisbild (Frühjahr 2009)'' (seit&amp;amp;nbsp;Mitte&amp;amp;nbsp;2006)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''Twin&amp;amp;nbsp;Center'''&lt;br /&gt;
| DCC, FMZ, SX&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3+5-polig, FMZ&lt;br /&gt;
| [[LocoNet]],&amp;amp;nbsp;I2C, Lokmaus1  /  [[LocoNet]],&amp;amp;nbsp;[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Zentrale, 8x4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| auch&amp;amp;nbsp;für&amp;amp;nbsp;FMZ&amp;amp;nbsp;Decoder, Hardware&amp;amp;nbsp;basiert&amp;amp;nbsp;auf Intellibox&amp;amp;nbsp;von&amp;amp;nbsp;Uhlenbrock (seit&amp;amp;nbsp;Ende&amp;amp;nbsp;2000)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Lenz&amp;lt;br /&amp;gt; '''LZV100'''&lt;br /&gt;
| DCC, BiDi&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LED (Status)&lt;br /&gt;
| 5A, 11-22V ({{r}})  || 3-polig&lt;br /&gt;
| X–Bus   /  RS–Bus&lt;br /&gt;
| POM+Prog/  POM+Prog&lt;br /&gt;
| Decoder&lt;br /&gt;
| - / ja&lt;br /&gt;
| EPROM Austausch&lt;br /&gt;
| '''BiDi'''&amp;amp;nbsp;(RailCom) ab Version 3.5 (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2003)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Massoth&amp;lt;br /&amp;gt; '''DiMAX&amp;amp;nbsp;800Z'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD, 4&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 2/4/8A, 16-24V (+)  || ja&lt;br /&gt;
| Control–Bus/  Control–Bus '''(3)'''&lt;br /&gt;
| Prog-Gleis/ Prog-Gleis&lt;br /&gt;
| Zentrale, 16x4&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| für Großbahnen und kleinere Baugrößen (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Massoth&amp;lt;br /&amp;gt; '''DiMAX&amp;amp;nbsp;1200Z'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD, 4&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 4/7/12A, 22-24V (+)  || Massoth, LGB, 3-polig&lt;br /&gt;
| Control–Bus/  Control–Bus '''(3)'''&lt;br /&gt;
| Prog-Gleis/ Prog-Gleis&lt;br /&gt;
| Zentrale, 16x4&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| nur für Grossbahn, Trafo eingebaut (seit&amp;amp;nbsp;2003/4)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin&amp;lt;br /&amp;gt; '''Central Station&amp;amp;nbsp;2'''&lt;br /&gt;
| mfx, MM, ''DCC''&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, Farbe, 800x480&lt;br /&gt;
| 3A, {{r}}V ({{r}})         || 5-polig, Märklin-Bus&lt;br /&gt;
| Märklin-Bus '''(4)'''  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja          /  mfx Decoder&lt;br /&gt;
| Zentrale&lt;br /&gt;
| Ethernet&lt;br /&gt;
| PC, USB-Stick, Internet &lt;br /&gt;
| Gleisbild, Lokkarten, mehrere&amp;amp;nbsp;CS2&amp;amp;nbsp;koppelbar, USB-Maus/-Tastatur, ''DCC ab Version 1.0.7 (11/2008)'' (seit&amp;amp;nbsp;10/2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Müt&amp;amp;nbsp;Digirail&amp;lt;br /&amp;gt; '''multi control 2004'''&lt;br /&gt;
| SX&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD Matrix&lt;br /&gt;
| 2.7A, {{r}}V ({{r}})  || ja&lt;br /&gt;
| SX–Bus (2x)    /  SX–Bus&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| Zentrale, 20x5&amp;amp;nbsp;Loks&lt;br /&gt;
| RS232&lt;br /&gt;
| PC&lt;br /&gt;
| (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2000/1)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Piko&amp;lt;br /&amp;gt; '''Digi Power Box'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, {{r}}V (-)   || 3-polig&lt;br /&gt;
| [[LocoNet]], Iris  /  [[LocoNet]]&lt;br /&gt;
| ja           /  ja&lt;br /&gt;
| bis zu 4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| Hardware basiert auf Intellibox IR von Uhlenbrock (seit&amp;amp;nbsp;ca.&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Rautenhaus Digital&amp;lt;br /&amp;gt; '''SLX850'''&lt;br /&gt;
| SX, DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| -&lt;br /&gt;
| 1.5A, {{r}}V ({{r}})  || ja&lt;br /&gt;
| SX–Bus   /  SX–Bus&lt;br /&gt;
| ja       /  ja&lt;br /&gt;
| ja&lt;br /&gt;
| -/ja&lt;br /&gt;
| Processor Update möglich&lt;br /&gt;
| DCC: nur 8 Adr., 28 Fahrst., 4 Funkt. ''Nachfolger: SLX850AD'' (seit&amp;amp;nbsp;{{r}})&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Tams&amp;lt;br /&amp;gt; '''EasyControl'''&lt;br /&gt;
| DCC, BiDi, MM&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| -       || 3+5-polig&lt;br /&gt;
| EasyNet /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB und RS232 / -&lt;br /&gt;
| PC&lt;br /&gt;
| MM&amp;amp;nbsp;14/27&amp;amp;nbsp;Fahrst.&amp;amp;nbsp;255&amp;amp;nbsp;Adr., 2ter Booster Ausgang, '''BiDi'''&amp;amp;nbsp;(RailCom)&amp;amp;nbsp;ab&amp;amp;nbsp;V1.45 (seit&amp;amp;nbsp;2005/6)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Intellibox&amp;amp;nbsp;IR'''&lt;br /&gt;
| DCC, MM, SX&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 3+5-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]],&amp;amp;nbsp;I2C, LM1,&amp;amp;nbsp;IRIS  /  [[LocoNet]],&amp;amp;nbsp;[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| POM+Prog/  Prog-Gleis&lt;br /&gt;
| Zentrale, 8x4 Loks&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| MM&amp;amp;nbsp;bis&amp;amp;nbsp;255&amp;amp;nbsp;Adressen, LM1:&amp;amp;nbsp;Lokmaus1 (seit&amp;amp;nbsp;1998,&amp;amp;nbsp;IB-IR&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Viessmann&amp;lt;br /&amp;gt; '''Commander'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, Farbe, 800x480&lt;br /&gt;
| 3A, {{r}}V ({{r}})     || 3+5-polig&lt;br /&gt;
| HSB+LSB '''(5)'''  /  [[S88-Rückmeldebus|S88]], LSB&lt;br /&gt;
| ja  /  ja&lt;br /&gt;
| ja&lt;br /&gt;
| USB&lt;br /&gt;
| PC&lt;br /&gt;
| Automatik, Gleisbild, Stellpult, mehrere Com. koppelbar, BIDi&amp;amp;nbsp;ab&amp;amp;nbsp;2009 (seit&amp;amp;nbsp;12/2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Zimo&amp;lt;br /&amp;gt; '''MX31ZL'''&lt;br /&gt;
| DCC, BiDi&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD Display&lt;br /&gt;
| 1-3A '''(6)''', 12-19V (+)  || ja&lt;br /&gt;
| CAN&amp;amp;nbsp;Bus  /  CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| POM+Prog/  POM+Prog&lt;br /&gt;
| ja&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC oder USB-Stick&lt;br /&gt;
| USB–Interface&amp;amp;nbsp;für&amp;amp;nbsp;MX1*, Decoder Updates, '''BiDi''' eingebaut (seit&amp;amp;nbsp;10/2007)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Zimo&amp;lt;br /&amp;gt; '''MX1, MX1EC, MX1HS'''&amp;lt;br /&amp;gt; (Modell&amp;amp;nbsp;2000)&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| LCD 2&amp;amp;nbsp;Zeilen&lt;br /&gt;
| 8A, 12-24V (+)  || 3-polig, CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| CAN&amp;amp;nbsp;Bus    /  CAN&amp;amp;nbsp;Bus&lt;br /&gt;
| POM+Prog/ Prog-Gleis&lt;br /&gt;
| ja&lt;br /&gt;
| RS232 / ja&lt;br /&gt;
| PC&lt;br /&gt;
| HS:&amp;amp;nbsp;Hochstrom&amp;amp;nbsp;(2x8A), EC:&amp;amp;nbsp;Economy&amp;amp;nbsp;(ohne&amp;amp;nbsp;LCD), BiDi&amp;amp;nbsp;ab&amp;amp;nbsp;2009 (seit&amp;amp;nbsp;2000/1)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Die Märklin MobilStation kann als Handregler an die ECoS-Zentrale von ESU angeschlossen werden. Die Trix MobileStation ist weder zur Märklin CentralStation1 noch zu ECoS kompatibel.&lt;br /&gt;
# Nur mit ECoS Boostern können das SX-Protokoll verstärkt und Rückmeldungen (BiDi/mfx) an die Zentrale (ECoS oder CentralStation1) weiter gereicht werden.&lt;br /&gt;
# Der Massoth Control-Bus basiert wahrscheinlich auf einer X–Bus Version. Massoth-Protokoll (=DCC) ab 2005, davor LGB-kompatibel (MZS&amp;amp;nbsp;II).&lt;br /&gt;
# Der Märklin-Bus der CentralStation2 (CS2) verwendet (wie ESU, Zimo, ...) CAN als Hardware-/Protokoll-Basís. Der Bus der CentralStation1 (CS1) hatte Gemeinsamkeiten mit ESUs ECoSLink (z.B. Booster-Anschluss). Ob und wie weit das auch für den Märklin-Bus der CS2 gilt, ist zur Zeit unklar. &lt;br /&gt;
# Der Viessmann LowSpeedBus (LSB) unterstützt X–Bus Geräte wie Roco Rückmelder/Lokmaus2/MultiMaus oder Lenz Handregler.&lt;br /&gt;
# Mit dem stabilisierten, einstellbaren 120W Netzteil kann das MX31ZL bis zu 4A liefern.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Neuvorstellungen&amp;diff=12546</id>
		<title>Digitalzentralen - Neuvorstellungen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Neuvorstellungen&amp;diff=12546"/>
				<updated>2008-11-16T15:34:16Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel sind diejenigen Digitalzentralen aufgeführt, &lt;br /&gt;
die vom Hersteller angekündigt aber noch nicht lieferbar sind. &amp;lt;br /&amp;gt;&lt;br /&gt;
Vom Hersteller angegebene Liefertermine sind mit der gebotenen Toleranz zu betrachten. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{| {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Bachmann&amp;lt;br /&amp;gt; '''EZ&amp;amp;nbsp;Command Dynamis&amp;amp;nbsp;Pro'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1 &lt;br /&gt;
| LCD Display&lt;br /&gt;
| {{r}}A, {{r}}V ({{r}})  || ECoSlink&lt;br /&gt;
| ECoSlink, IR    /  ECoSlink?&lt;br /&gt;
| POM+Prog        /  Prog-Gleis&lt;br /&gt;
| 40 á 5 Loks&lt;br /&gt;
| ja / ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| JoyStick&amp;amp;nbsp;statt&amp;amp;nbsp;Drehknopf, BiDi vorbereitet, Pro-Box enthalten (Anfang&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin/ESU&amp;lt;br /&amp;gt; '''CentralStation'''&amp;lt;br /&amp;gt; '''Reloaded'''&lt;br /&gt;
| mfx, MM, '''DCC, SX'''&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, 320x240&lt;br /&gt;
| '''4A (+), 15-21V''' || 5-polig, '''ECosLink'''&lt;br /&gt;
| '''ECosLink''', Sniffer MM+'''DCC'''  /  '''ECosLink''', [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja                   /  mfx- und DCC-Decoder&lt;br /&gt;
| Zentrale&lt;br /&gt;
| Ethernet&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung&amp;amp;nbsp;durch&amp;amp;nbsp;ESU '''Update&amp;amp;nbsp;3.0.0'''&amp;amp;nbsp;(Frühjahr&amp;amp;nbsp;2009) &amp;lt;br /&amp;gt; MM: 255 Adr., +DCC, +SX (Loks), +Gleisbild, +Netzteil =&amp;gt;4A, +ECOSLink, +Funk/IR&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Roco&amp;amp;nbsp;&amp;amp;nbsp;'''(1)'''&amp;lt;br /&amp;gt; '''MultiZentralePRO''' mit&amp;amp;nbsp;MultiMausPRO&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| LCD Display Beleuchtet&lt;br /&gt;
| 3,2A, {{r}}V (+)  || ja&lt;br /&gt;
| X–Bus, Funk   /  Roco (X-Bus)&lt;br /&gt;
| POM+Prog      /  Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC&lt;br /&gt;
| Steuersoftware&amp;amp;nbsp;im&amp;amp;nbsp;Set enthalten. BiDi vorbereitet. (Ende&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Trix&amp;amp;nbsp;Systems&amp;lt;br /&amp;gt; '''Central Station'''&lt;br /&gt;
| DCC, SX&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, 320x240&lt;br /&gt;
| {{r}} ({{r}})  || ja&lt;br /&gt;
| {{r}}          /  {{r}}&lt;br /&gt;
| {{r}}          /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| Ethernet / {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| &amp;lt;u&amp;gt;noch&amp;amp;nbsp;kein&amp;amp;nbsp;Liefertermin&amp;lt;/u&amp;gt;  ''Vermutlich wird es keine Lösung auf Basis der ersten CentralStation (CS1) geben.''&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Intellibox Basic'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, N=18V, H0~21V (-)  || 5-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]            /  [[LocoNet]]&lt;br /&gt;
| POM+Prog               /  Prog-Gleis&lt;br /&gt;
| Doppel Traktion&lt;br /&gt;
| - / ja&lt;br /&gt;
| PC + LocoNet Interface&lt;br /&gt;
| Ohne I2C, [[S88-Rückmeldebus|S88]], Selectrix, Interface. MM bis 255 Adr. (Herbst&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Intellibox&amp;amp;nbsp;II'''&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| LCD Display&lt;br /&gt;
| {{r}}A, {{r}}V, ({{r}})  || 3+5-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]], IR  /  [[LocoNet]]&lt;br /&gt;
| POM+Prog         /  Prog-Gleis&lt;br /&gt;
| ja&lt;br /&gt;
| USB / ja&lt;br /&gt;
| PC&lt;br /&gt;
| Viele neue Funktionen geplant (Projekt 2009)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Die MultiZentralePRO und die MultiMausPRO verwenden IEEE&amp;amp;nbsp;802.15.4 als Funkstandard&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Produktion_ausgelaufen&amp;diff=12544</id>
		<title>Digitalzentralen - Produktion ausgelaufen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Produktion_ausgelaufen&amp;diff=12544"/>
				<updated>2008-11-16T15:31:09Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel sind die Digitalzentralen aufgeführt, deren Produktion herstellerseitig ausgelaufen ist. Der Artikel ist aufgeteilt in: &lt;br /&gt;
* '''Alte Systeme''' &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; &amp;amp;nbsp; Die Produktion ist innerhalb der letzten 5 Jahre ausgelaufen. &lt;br /&gt;
* '''Historische Systeme'''  &amp;amp;nbsp; Die Produktion ist vor mehr als 5 Jahren ausgelaufen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Alte Systeme ==&lt;br /&gt;
&lt;br /&gt;
Alte Zentralen, deren Produktion in den letzen ca. 5 Jahren ausgelaufen ist und &lt;br /&gt;
die einen gewisse Markbedeutung hatten und daher häufig/gelegentlich gebraucht &lt;br /&gt;
angeboten werden. &lt;br /&gt;
&lt;br /&gt;
Es sei darauf hingewiesen, dass diese Systeme in der Regel dem Stand der &lt;br /&gt;
Digital-Entwicklung zum Zeitpunkt ihres Erscheinens entsprechen. &lt;br /&gt;
Bei den erst in letzter Zeit ausgelaufenen Systemen ist aber manches dabei, &lt;br /&gt;
das für einen Neueinstieg in die digitale Steuerung geeignet ist. &lt;br /&gt;
Mit zunehmender Zeit kann eine Reparatur-Möglichkeit ggfs. schwer zu finden sein.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Lenz&amp;amp;nbsp;&amp;amp;nbsp;'''(1)'''&amp;lt;br /&amp;gt; '''Compact'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| 3–stellig&lt;br /&gt;
| 2,5A, {{r}}V (-)    || 3-polig&lt;br /&gt;
| X–Bus (max. 5)  /  -&lt;br /&gt;
| Prog, bis 255   /  Prog-Gleis&lt;br /&gt;
| Decoder&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| nur&amp;amp;nbsp;99&amp;amp;nbsp;Adr., keine Rückmelder, kein Programmieren über Interface. (ca.&amp;amp;nbsp;2000&amp;amp;nbsp;bis&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Lenz&amp;lt;br /&amp;gt; '''LZ100'''&lt;br /&gt;
| DCC, BiDi&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| 1 LED&lt;br /&gt;
| - (-)  || 3-polig&lt;br /&gt;
| X–Bus  /  RS–Bus&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| ja&lt;br /&gt;
| - / ja&lt;br /&gt;
| Platine / EPROM-Tausch&lt;br /&gt;
| Weiterhin Firmware Updates, '''BiDi''' (RailCom) ab&amp;amp;nbsp;V3.5 [mit&amp;amp;nbsp;LV102] (1992&amp;amp;nbsp;bis&amp;amp;nbsp;2004)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin&amp;lt;br /&amp;gt; '''Control&amp;amp;nbsp;Unit (6021)'''&lt;br /&gt;
| MM2&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| 2–stellig&lt;br /&gt;
| 2,5A, {{r}}V (-)  || 5-polig &lt;br /&gt;
| I2C        /  [[S88-Rückmeldebus|S88]]&amp;amp;nbsp;über Extragerät&lt;br /&gt;
| ja         /  nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja &lt;br /&gt;
| nein&lt;br /&gt;
| 14&amp;amp;nbsp;Fahrst.,&amp;amp;nbsp;80&amp;amp;nbsp;Adr. (1994&amp;amp;nbsp;bis&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| MärklinSystems&amp;lt;br /&amp;gt; '''CentralStation'''&amp;lt;br /&amp;gt; &lt;br /&gt;
| mfx, MM&lt;br /&gt;
| 2 / 0&lt;br /&gt;
| Touch Screen, 320x240&lt;br /&gt;
| 3A, {{r}}V ({{r}})        || ja, '''5-polig''', '''(3)'''&lt;br /&gt;
| {{r}}, '''Sniffer'''  /  {{r}}, '''[[S88-Rückmeldebus|S88]]'''&lt;br /&gt;
| ja                    /  mfx Decoder&lt;br /&gt;
| Zentrale&lt;br /&gt;
| Ethernet&lt;br /&gt;
| PC&lt;br /&gt;
| MM:&amp;amp;nbsp;nur&amp;amp;nbsp;80&amp;amp;nbsp;Adr./14&amp;amp;nbsp;Fahrst.,&amp;lt;br /&amp;gt; '''Upgrade&amp;amp;nbsp;06/2007&amp;amp;nbsp;(2)'''&amp;lt;br /&amp;gt; (2005&amp;amp;nbsp;bis&amp;amp;nbsp;2008)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Roco&amp;lt;br /&amp;gt; '''Lokmaus&amp;amp;nbsp;2/3'''&amp;lt;br /&amp;gt; ((+Verstärker))&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| 2–stellig&lt;br /&gt;
| ((3/3,2A, {{r}}V ({{r}}) ))  || ja&lt;br /&gt;
| X–Bus     /  {{r}}&lt;br /&gt;
| bis 99    /  nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja&lt;br /&gt;
| nein&lt;br /&gt;
| Werte nur bis 99, Handregler am X–Bus, (2000&amp;amp;nbsp;bis&amp;amp;nbsp;2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Trix&amp;lt;br /&amp;gt; '''Central Control 2000'''&lt;br /&gt;
| SX + DCC&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| ja {{r}}&lt;br /&gt;
| 2,5A, {{r}}V (-)  || PX–Bus&lt;br /&gt;
| SX–Bus        /  SX–Bus&lt;br /&gt;
| ja            /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja &lt;br /&gt;
| {{r}}&lt;br /&gt;
| (1995/6 bis 2005)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Uhlenbrock&amp;lt;br /&amp;gt; '''Daisy''' ((+Power2))&lt;br /&gt;
| DCC, MM&lt;br /&gt;
| 0 / 1&lt;br /&gt;
| 4–stellig&lt;br /&gt;
| ((2A, 15-20V ({{r}}) ))  || 5-polig, [[LocoNet]]&lt;br /&gt;
| [[LocoNet]]  /  [[LocoNet]]&lt;br /&gt;
| ja           /  nein&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| - / ja&lt;br /&gt;
| PC + Intellibox&lt;br /&gt;
| Walk-Around nicht beim ersten Daisy, da Zentrale (2003&amp;amp;nbsp;bis&amp;amp;nbsp;2008) &lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Das Lenz Compact gab es auch unter dem Namen Tillig und Atlas (USA).&lt;br /&gt;
# Das Upgrade der Märklin CentralStation1 enthält Hardware für den Anschluss von S88-Rückmeldern, alte Märklin-Booster (6017 + Kompatible) und alte Märklin Zentralen (6021 via Sniffer).&lt;br /&gt;
# An die Märklin CentralStation1 können Booster von ESU angeschlossen werden. Dabei werden mfx-Meldungen erkannt und an die Zentrale geleitet. &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Historische Systeme ==&lt;br /&gt;
&lt;br /&gt;
Alte Zentralen, deren Produktion vor mehr als 5 Jahren ausgelaufen ist. &amp;lt;br /&amp;gt;&lt;br /&gt;
Diese Zentralen unterstützen oft nicht mehr die aktuelle Version ihrer Digitalprotokolle &lt;br /&gt;
oder die aktuellen Versionen der Busprotokolle für Eingaben/Rückmeldungen. &lt;br /&gt;
Aus diesem Grund sind sie für einen Neueinstieg in die digitale Steuerung &lt;br /&gt;
trotz ihrer oft günstigen Gebrauchtpreise weniger geeignet.&lt;br /&gt;
Eine Reparatur-Möglichkeit dürfte es in vielen Fällen nicht mehr gegeben.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Arnold&amp;lt;br /&amp;gt; '''Central&amp;amp;nbsp;Unit (86028)'''&lt;br /&gt;
| DCC&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,5A, {{r}}V (-)  || ja &lt;br /&gt;
| I2C           /  [[S88-Rückmeldebus|S88]] über Extragerät&lt;br /&gt;
| Extragerät    /  Extragerät&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja &lt;br /&gt;
| nein&lt;br /&gt;
| 14&amp;amp;nbsp;Fahrst.,&amp;amp;nbsp;99&amp;amp;nbsp;Adr., Märklin&amp;amp;nbsp;Geräte&amp;amp;nbsp;nutzbar, (1988&amp;amp;nbsp;bis&amp;amp;nbsp;1996)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Arnold&amp;lt;br /&amp;gt; '''CentralControl (86200/202)'''&lt;br /&gt;
| DCC (86202 +MM)&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| LCD, 2x16 Zeichen&lt;br /&gt;
| 3A, {{r}}V (-)         || 3-polig &lt;br /&gt;
| I2C, X–Bus (V2.3)  /  -&lt;br /&gt;
| ja                 /  -&lt;br /&gt;
| Zentrale, 10x4&amp;amp;nbsp;Loks&lt;br /&gt;
| - / ja &lt;br /&gt;
| nein&lt;br /&gt;
| 14/28&amp;amp;nbsp;Fahrst.,&amp;amp;nbsp;119&amp;amp;nbsp;Adr., Märklin/X–Bus Geräte nutzbar, (1997&amp;amp;nbsp;bis&amp;amp;nbsp;~2000)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''DigitalControl (6803/-C)'''&lt;br /&gt;
| FMZ&lt;br /&gt;
| 1 / 0 &lt;br /&gt;
| 3–stellig&lt;br /&gt;
| 1,5A, {{r}}V (-)   || -&lt;br /&gt;
| 1 Hand-Regler  /  -&lt;br /&gt;
| –C:&amp;amp;nbsp;Adresse, Vmin/max, Kennlinie, Verzögerung / -&lt;br /&gt;
| 1x2 Loks&lt;br /&gt;
| - / - &lt;br /&gt;
| -&lt;br /&gt;
| bis 5 Loks, keine Weichen, (ab&amp;amp;nbsp;1995(?), –C&amp;amp;nbsp;2007 noch Restbestände)&lt;br /&gt;
|- &lt;br /&gt;
| Fleischmann&amp;lt;br /&amp;gt; '''FMZ&amp;amp;nbsp;Zentrale'''&lt;br /&gt;
| FMZ&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| 3+1 Stelle, LEDs&lt;br /&gt;
| 3A, {{r}}V (-)           || ja&lt;br /&gt;
| 8 Hand-Regler, RS232 /  RS232&lt;br /&gt;
| Extragerät           /  Extragerät&lt;br /&gt;
| -&lt;br /&gt;
| RS232 / - &lt;br /&gt;
| -&lt;br /&gt;
| bis 32 Loks, (ab&amp;amp;nbsp;1987, 2007&amp;amp;nbsp;noch&amp;amp;nbsp;Restbestände)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin&amp;lt;br /&amp;gt; '''Central&amp;amp;nbsp;Unit (6020)'''&lt;br /&gt;
| MM1&lt;br /&gt;
| 0 / 0&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, {{r}}V (-) || 5-polig &lt;br /&gt;
| I2C       /  [[S88-Rückmeldebus|S88]]&amp;amp;nbsp;über Extragerät&lt;br /&gt;
| ja        /  nein&lt;br /&gt;
| nein&lt;br /&gt;
| - / ja &lt;br /&gt;
| nein&lt;br /&gt;
| 14&amp;amp;nbsp;Fahrst.,&amp;amp;nbsp;80&amp;amp;nbsp;Adr. (vor&amp;amp;nbsp;1995)&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| Märklin&amp;lt;br /&amp;gt; '''Delta Control (6604)'''&lt;br /&gt;
| MM1&lt;br /&gt;
| 1 / 0&lt;br /&gt;
| -&lt;br /&gt;
| {{r}}A, {{r}}V (-)  || -&lt;br /&gt;
| 1 Hand-Regler   /  -&lt;br /&gt;
| -               /  -&lt;br /&gt;
| nein&lt;br /&gt;
| - / - &lt;br /&gt;
| nein&lt;br /&gt;
| 14&amp;amp;nbsp;Fahrst.,&amp;amp;nbsp;4+1&amp;amp;nbsp;Adr., keine Funktion, als&amp;amp;nbsp;Booster&amp;amp;nbsp;verwendbar. (1992(?)&amp;amp;nbsp;bis&amp;amp;nbsp;2002)&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12543</id>
		<title>Digitalzentralen - Selbstbausysteme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12543"/>
				<updated>2008-11-16T15:28:48Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel werden Selbstbau-Projekte beschrieben: &lt;br /&gt;
*  Verwendung eines PCs als Zentrale &lt;br /&gt;
*  Elektronik-Projekte zum selber löten&lt;br /&gt;
Gegebenenfalls wird dieser Artikel noch um den Bereich Selbstbau-Booster erweitert. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Selbstbauprojekte ==&lt;br /&gt;
&lt;br /&gt;
Hier geht es um den Selbstbau von Hardware und die Programmierung der darin enthaltenen Prozessoren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/dccgen_en.html DDC_Gen]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 1 / 1&lt;br /&gt;
| LCD&lt;br /&gt;
| -         || Gleissignal&lt;br /&gt;
| Infrarot  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja, mit ACK-Detector&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Nur&amp;amp;nbsp;Adressen&amp;amp;nbsp;bis&amp;amp;nbsp;99. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://merg.org.uk/resources/dcc.htm MERG BC1A]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / 8&lt;br /&gt;
| LED&lt;br /&gt;
| 5A, {{r}}V ({{r}})   || Gleissignal&lt;br /&gt;
| [[LocoNet]]{{r}}  /  -&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| Bausätze für Mitglieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.no.net/paolsen/mj/minibox/minibox_de.html MiniBOX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| 4-stellig&lt;br /&gt;
| 0,6A, {{r}}V ({{r}})  || Gleissignal&lt;br /&gt;
| [[LocoNet]]    /  [[LocoNet]]&lt;br /&gt;
| ja             /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| max. 8 Loks aktiv. Nur&amp;amp;nbsp;14&amp;amp;nbsp;bzw.&amp;amp;nbsp;28&amp;amp;nbsp;Fahrstufen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.minidcc.com/ MiniDCC]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| LCD&lt;br /&gt;
| - || Gleissignal&lt;br /&gt;
| - /  -&lt;br /&gt;
| - /  -&lt;br /&gt;
| -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| Verkauf von programmierten Controller und Platinen&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mobasbs.de/Eisenbahn/MoBaSbS/MoBaSbS.htm MoBaSbs]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| LCD&lt;br /&gt;
| -     || Gleissignal&lt;br /&gt;
| RS485 /  RS485&lt;br /&gt;
| -     /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html#nanox_orig NanoX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 1,2A, {{r}}V ({{r}}) || Gleissignal&lt;br /&gt;
| X-Bus          /  -&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html NanoX-S88]'''&lt;br /&gt;
| DCC / CutOut&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,9A, 13-22V ({{r}})   || Gleissignal&lt;br /&gt;
| X-Bus     /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - '''(2)''' / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.opendcc.de/elektronik/opendcc/opendcc.html OpenDCC]'''&lt;br /&gt;
| DCC / vorber.&lt;br /&gt;
| - / -&lt;br /&gt;
| 4 LEDs&lt;br /&gt;
| 1,2A , {{r}}V  ({{r}})    || Gleissignal&lt;br /&gt;
| X-Bus  /  3x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| nein&lt;br /&gt;
| USB, RS232 / -&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| max.&amp;amp;nbsp;64&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Intelligente &amp;quot;Interface Zentrale&amp;quot;. Echte Weichen Rückmeldung. Open Source. Benötigt PC mit Steuer Software.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.microsyl.com/dcccontrol/dcccontrol.html Train Modelling Digital Control]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| -   /  -&lt;br /&gt;
| ja  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / - &lt;br /&gt;
| ja&lt;br /&gt;
| max. 4 Loks und 30 Weichen aktiv&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# PIC muss in extra Schaltung programmiert werden.&lt;br /&gt;
# Es ist auch eine [http://www.tinet.org/~fmco/colab_en.html Platinenvariante] mit integriertem Interface (GenLi, RS232) verfügbar.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Software-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Software-Zentrale erzeugen mit einem PC das Gleissignal für ein oder mehrere &lt;br /&gt;
Digital-Protokolle, typischerweise DCC und/oder Märklin-Motorola (MM). &lt;br /&gt;
Dieses Gleissignal wird über eine Schnittstelle einem Booster zur Verstärkung &lt;br /&gt;
zugeleitet, der seinerseits die Modellbahn-Anlage mit Strom und den aufgeprägten &lt;br /&gt;
Steuerinformationen versorgt. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.vogt-it.com/OpenSource/DDL/ DDL]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| Vorläufer von srcpd.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.snafu.de/mgrafe/index.htm DDW]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mrdirect.nl/ MR direkt]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| ja  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| -   /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.rocrail.net/ Rocrail]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, {{r}}V ({{r}}) '''(1)'''  || ja&lt;br /&gt;
| -     /  4x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja    /  ja&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| OpenSource Steuer Software mit DDL/DDW Support. Auch für klassische Digital Zentralen verwendbar. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://srcpd.sourceforge.net/ srcpd]'''&lt;br /&gt;
| DCC, MM&amp;amp;nbsp;'''(2)''' / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -     || ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| ja    /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung von DDL. Auch für klassische Digital Zentralen verwendbar.&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Anschluss Platine mit Booster im gleichen Projekt verfügbar.&lt;br /&gt;
# Über zusätzliche Interfaces, lassen sich die Protokolle und Bussystem der daran angeschlossen Zentralen mitnutzen. Eine Übersicht findet sich unter: [http://bonus.dyndns.org/mediawiki/index.php/SRCPD-Devices]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12541</id>
		<title>Digitalzentralen - Selbstbausysteme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12541"/>
				<updated>2008-11-16T15:25:54Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Software-Zentralen */ Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel werden Selbstbau-Projekte beschrieben: &lt;br /&gt;
*  Verwendung eines PCs als Zentrale &lt;br /&gt;
*  Elektronik-Projekte zum selber löten&lt;br /&gt;
Gegebenenfalls wird dieser Artikel noch um den Bereich Selbstbau-Booster erweitert. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Selbstbauprojekte ==&lt;br /&gt;
&lt;br /&gt;
Hier geht es um den Selbstbau von Hardware und die Programmierung der darin enthaltenen Prozessoren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/dccgen_en.html DDC_Gen]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 1 / 1&lt;br /&gt;
| LCD&lt;br /&gt;
| -         || Gleissignal&lt;br /&gt;
| Infrarot  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja, mit ACK-Detector&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Nur&amp;amp;nbsp;Adressen&amp;amp;nbsp;bis&amp;amp;nbsp;99. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://merg.org.uk/resources/dcc.htm MERG BC1A]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / 8&lt;br /&gt;
| LED&lt;br /&gt;
| 5A, {{r}}V    || Gleissignal&lt;br /&gt;
| [[LocoNet]]{{r}}  /  -&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| Bausätze für Mitglieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.no.net/paolsen/mj/minibox/minibox_de.html MiniBOX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| 4-stellig&lt;br /&gt;
| 0,6A, {{r}}V  || Gleissignal&lt;br /&gt;
| [[LocoNet]]    /  [[LocoNet]]&lt;br /&gt;
| ja             /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| max. 8 Loks aktiv. Nur&amp;amp;nbsp;14&amp;amp;nbsp;bzw.&amp;amp;nbsp;28&amp;amp;nbsp;Fahrstufen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.minidcc.com/ MiniDCC]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| LCD&lt;br /&gt;
| - || Gleissignal&lt;br /&gt;
| - /  -&lt;br /&gt;
| - /  -&lt;br /&gt;
| -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| Verkauf von programmierten Controller und Platinen&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mobasbs.de/Eisenbahn/MoBaSbS/MoBaSbS.htm MoBaSbs]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| LCD&lt;br /&gt;
| -     || Gleissignal&lt;br /&gt;
| RS485 /  RS485&lt;br /&gt;
| -     /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html#nanox_orig NanoX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 1,2A, {{r}}V  || Gleissignal&lt;br /&gt;
| X-Bus          /  -&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html NanoX-S88]'''&lt;br /&gt;
| DCC / CutOut&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,9A, 13-22V ({{r}})   || Gleissignal&lt;br /&gt;
| X-Bus     /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - '''(2)''' / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.opendcc.de/elektronik/opendcc/opendcc.html OpenDCC]'''&lt;br /&gt;
| DCC / vorber.&lt;br /&gt;
| - / -&lt;br /&gt;
| 4 LEDs&lt;br /&gt;
| 1,2A , {{r}}V     || Gleissignal&lt;br /&gt;
| X-Bus  /  3x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| nein&lt;br /&gt;
| USB, RS232 / -&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| max.&amp;amp;nbsp;64&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Intelligente &amp;quot;Interface Zentrale&amp;quot;. Echte Weichen Rückmeldung. Open Source. Benötigt PC mit Steuer Software.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.microsyl.com/dcccontrol/dcccontrol.html Train Modelling Digital Control]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| -   /  -&lt;br /&gt;
| ja  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / - &lt;br /&gt;
| ja&lt;br /&gt;
| max. 4 Loks und 30 Weichen aktiv&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# PIC muss in extra Schaltung programmiert werden.&lt;br /&gt;
# Es ist auch eine [http://www.tinet.org/~fmco/colab_en.html Platinenvariante] mit integriertem Interface (GenLi, RS232) verfügbar.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Software-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Software-Zentrale erzeugen mit einem PC das Gleissignal für ein oder mehrere &lt;br /&gt;
Digital-Protokolle, typischerweise DCC und/oder Märklin-Motorola (MM). &lt;br /&gt;
Dieses Gleissignal wird über eine Schnittstelle einem Booster zur Verstärkung &lt;br /&gt;
zugeleitet, der seinerseits die Modellbahn-Anlage mit Strom und den aufgeprägten &lt;br /&gt;
Steuerinformationen versorgt. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.vogt-it.com/OpenSource/DDL/ DDL]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| Vorläufer von srcpd.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.snafu.de/mgrafe/index.htm DDW]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mrdirect.nl/ MR direkt]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| ja  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| -   /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.rocrail.net/ Rocrail]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, {{r}}V '''(1)'''  || ja&lt;br /&gt;
| -     /  4x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja    /  ja&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| OpenSource Steuer Software mit DDL/DDW Support. Auch für klassische Digital Zentralen verwendbar. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://srcpd.sourceforge.net/ srcpd]'''&lt;br /&gt;
| DCC, MM&amp;amp;nbsp;'''(2)''' / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -     || ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| ja    /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung von DDL. Auch für klassische Digital Zentralen verwendbar.&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Anschluss Platine mit Booster im gleichen Projekt verfügbar.&lt;br /&gt;
# Über zusätzliche Interfaces, lassen sich die Protokolle und Bussystem der daran angeschlossen Zentralen mitnutzen. Eine Übersicht findet sich unter: [http://bonus.dyndns.org/mediawiki/index.php/SRCPD-Devices]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12540</id>
		<title>Digitalzentralen - Selbstbausysteme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12540"/>
				<updated>2008-11-16T15:25:08Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Selbstbauprojekte */ Formatierung unbekannter Spannungen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel werden Selbstbau-Projekte beschrieben: &lt;br /&gt;
*  Verwendung eines PCs als Zentrale &lt;br /&gt;
*  Elektronik-Projekte zum selber löten&lt;br /&gt;
Gegebenenfalls wird dieser Artikel noch um den Bereich Selbstbau-Booster erweitert. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Selbstbauprojekte ==&lt;br /&gt;
&lt;br /&gt;
Hier geht es um den Selbstbau von Hardware und die Programmierung der darin enthaltenen Prozessoren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/dccgen_en.html DDC_Gen]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 1 / 1&lt;br /&gt;
| LCD&lt;br /&gt;
| -         || Gleissignal&lt;br /&gt;
| Infrarot  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja, mit ACK-Detector&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Nur&amp;amp;nbsp;Adressen&amp;amp;nbsp;bis&amp;amp;nbsp;99. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://merg.org.uk/resources/dcc.htm MERG BC1A]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / 8&lt;br /&gt;
| LED&lt;br /&gt;
| 5A, {{r}}V    || Gleissignal&lt;br /&gt;
| [[LocoNet]]{{r}}  /  -&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| Bausätze für Mitglieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.no.net/paolsen/mj/minibox/minibox_de.html MiniBOX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| 4-stellig&lt;br /&gt;
| 0,6A, {{r}}V  || Gleissignal&lt;br /&gt;
| [[LocoNet]]    /  [[LocoNet]]&lt;br /&gt;
| ja             /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| max. 8 Loks aktiv. Nur&amp;amp;nbsp;14&amp;amp;nbsp;bzw.&amp;amp;nbsp;28&amp;amp;nbsp;Fahrstufen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.minidcc.com/ MiniDCC]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| LCD&lt;br /&gt;
| - || Gleissignal&lt;br /&gt;
| - /  -&lt;br /&gt;
| - /  -&lt;br /&gt;
| -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| Verkauf von programmierten Controller und Platinen&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mobasbs.de/Eisenbahn/MoBaSbS/MoBaSbS.htm MoBaSbs]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| LCD&lt;br /&gt;
| -     || Gleissignal&lt;br /&gt;
| RS485 /  RS485&lt;br /&gt;
| -     /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html#nanox_orig NanoX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 1,2A, {{r}}V  || Gleissignal&lt;br /&gt;
| X-Bus          /  -&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html NanoX-S88]'''&lt;br /&gt;
| DCC / CutOut&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,9A, 13-22V ({{r}})   || Gleissignal&lt;br /&gt;
| X-Bus     /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - '''(2)''' / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.opendcc.de/elektronik/opendcc/opendcc.html OpenDCC]'''&lt;br /&gt;
| DCC / vorber.&lt;br /&gt;
| - / -&lt;br /&gt;
| 4 LEDs&lt;br /&gt;
| 1,2A , {{r}}V     || Gleissignal&lt;br /&gt;
| X-Bus  /  3x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| nein&lt;br /&gt;
| USB, RS232 / -&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| max.&amp;amp;nbsp;64&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Intelligente &amp;quot;Interface Zentrale&amp;quot;. Echte Weichen Rückmeldung. Open Source. Benötigt PC mit Steuer Software.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.microsyl.com/dcccontrol/dcccontrol.html Train Modelling Digital Control]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| -   /  -&lt;br /&gt;
| ja  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / - &lt;br /&gt;
| ja&lt;br /&gt;
| max. 4 Loks und 30 Weichen aktiv&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# PIC muss in extra Schaltung programmiert werden.&lt;br /&gt;
# Es ist auch eine [http://www.tinet.org/~fmco/colab_en.html Platinenvariante] mit integriertem Interface (GenLi, RS232) verfügbar.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Software-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Software-Zentrale erzeugen mit einem PC das Gleissignal für ein oder mehrere &lt;br /&gt;
Digital-Protokolle, typischerweise DCC und/oder Märklin-Motorola (MM). &lt;br /&gt;
Dieses Gleissignal wird über eine Schnittstelle einem Booster zur Verstärkung &lt;br /&gt;
zugeleitet, der seinerseits die Modellbahn-Anlage mit Strom und den aufgeprägten &lt;br /&gt;
Steuerinformationen versorgt. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.vogt-it.com/OpenSource/DDL/ DDL]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| Vorläufer von srcpd.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.snafu.de/mgrafe/index.htm DDW]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mrdirect.nl/ MR direkt]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| ja  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| -   /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.rocrail.net/ Rocrail]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, ?V ({{r}}) '''(1)'''  || ja&lt;br /&gt;
| -     /  4x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja    /  ja&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| OpenSource Steuer Software mit DDL/DDW Support. Auch für klassische Digital Zentralen verwendbar. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://srcpd.sourceforge.net/ srcpd]'''&lt;br /&gt;
| DCC, MM&amp;amp;nbsp;'''(2)''' / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -     || ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| ja    /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung von DDL. Auch für klassische Digital Zentralen verwendbar.&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Anschluss Platine mit Booster im gleichen Projekt verfügbar.&lt;br /&gt;
# Über zusätzliche Interfaces, lassen sich die Protokolle und Bussystem der daran angeschlossen Zentralen mitnutzen. Eine Übersicht findet sich unter: [http://bonus.dyndns.org/mediawiki/index.php/SRCPD-Devices]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Vorlage:R&amp;diff=12539</id>
		<title>Vorlage:R</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Vorlage:R&amp;diff=12539"/>
				<updated>2008-11-16T15:17:00Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Leerzeichen durch &amp;amp;nbsp; ersetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:red;font-weight:bold&amp;quot;&amp;gt;?&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12538</id>
		<title>Digitalzentralen - Selbstbausysteme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12538"/>
				<updated>2008-11-16T15:15:37Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Software-Zentralen */ Umbruch an Fußnote angepasst&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel werden Selbstbau-Projekte beschrieben: &lt;br /&gt;
*  Verwendung eines PCs als Zentrale &lt;br /&gt;
*  Elektronik-Projekte zum selber löten&lt;br /&gt;
Gegebenenfalls wird dieser Artikel noch um den Bereich Selbstbau-Booster erweitert. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Selbstbauprojekte ==&lt;br /&gt;
&lt;br /&gt;
Hier geht es um den Selbstbau von Hardware und die Programmierung der darin enthaltenen Prozessoren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/dccgen_en.html DDC_Gen]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 1 / 1&lt;br /&gt;
| LCD&lt;br /&gt;
| -         || Gleissignal&lt;br /&gt;
| Infrarot  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja, mit ACK-Detector&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Nur&amp;amp;nbsp;Adressen&amp;amp;nbsp;bis&amp;amp;nbsp;99. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://merg.org.uk/resources/dcc.htm MERG BC1A]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / 8&lt;br /&gt;
| LED&lt;br /&gt;
| 5A, ?V ({{r}})    || Gleissignal&lt;br /&gt;
| [[LocoNet]]{{r}}  /  -&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| Bausätze für Mitglieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.no.net/paolsen/mj/minibox/minibox_de.html MiniBOX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| 4-stellig&lt;br /&gt;
| 0,6A, ?V ({{r}})  || Gleissignal&lt;br /&gt;
| [[LocoNet]]    /  [[LocoNet]]&lt;br /&gt;
| ja             /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| max. 8 Loks aktiv. Nur&amp;amp;nbsp;14&amp;amp;nbsp;bzw.&amp;amp;nbsp;28&amp;amp;nbsp;Fahrstufen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.minidcc.com/ MiniDCC]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| LCD&lt;br /&gt;
| - || Gleissignal&lt;br /&gt;
| - /  -&lt;br /&gt;
| - /  -&lt;br /&gt;
| -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| Verkauf von programmierten Controller und Platinen&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mobasbs.de/Eisenbahn/MoBaSbS/MoBaSbS.htm MoBaSbs]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| LCD&lt;br /&gt;
| -     || Gleissignal&lt;br /&gt;
| RS485 /  RS485&lt;br /&gt;
| -     /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html#nanox_orig NanoX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 1,2A, ?V ({{r}})  || Gleissignal&lt;br /&gt;
| X-Bus          /  -&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html NanoX-S88]'''&lt;br /&gt;
| DCC / CutOut&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,9A, 13-22V ({{r}})   || Gleissignal&lt;br /&gt;
| X-Bus     /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - '''(2)''' / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.opendcc.de/elektronik/opendcc/opendcc.html OpenDCC]'''&lt;br /&gt;
| DCC / vorber.&lt;br /&gt;
| - / -&lt;br /&gt;
| 4 LEDs&lt;br /&gt;
| 1,2A , ?V ({{r}})     || Gleissignal&lt;br /&gt;
| X-Bus  /  3x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| nein&lt;br /&gt;
| USB, RS232 / -&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| max.&amp;amp;nbsp;64&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Intelligente &amp;quot;Interface Zentrale&amp;quot;. Echte Weichen Rückmeldung. Open Source. Benötigt PC mit Steuer Software.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.microsyl.com/dcccontrol/dcccontrol.html Train Modelling Digital Control]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| -   /  -&lt;br /&gt;
| ja  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / - &lt;br /&gt;
| ja&lt;br /&gt;
| max. 4 Loks und 30 Weichen aktiv&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# PIC muss in extra Schaltung programmiert werden.&lt;br /&gt;
# Es ist auch eine [http://www.tinet.org/~fmco/colab_en.html Platinenvariante] mit integriertem Interface (GenLi, RS232) verfügbar.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Software-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Software-Zentrale erzeugen mit einem PC das Gleissignal für ein oder mehrere &lt;br /&gt;
Digital-Protokolle, typischerweise DCC und/oder Märklin-Motorola (MM). &lt;br /&gt;
Dieses Gleissignal wird über eine Schnittstelle einem Booster zur Verstärkung &lt;br /&gt;
zugeleitet, der seinerseits die Modellbahn-Anlage mit Strom und den aufgeprägten &lt;br /&gt;
Steuerinformationen versorgt. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.vogt-it.com/OpenSource/DDL/ DDL]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| Vorläufer von srcpd.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.snafu.de/mgrafe/index.htm DDW]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mrdirect.nl/ MR direkt]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| ja  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| -   /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.rocrail.net/ Rocrail]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, ?V ({{r}}) '''(1)'''  || ja&lt;br /&gt;
| -     /  4x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja    /  ja&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| OpenSource Steuer Software mit DDL/DDW Support. Auch für klassische Digital Zentralen verwendbar. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://srcpd.sourceforge.net/ srcpd]'''&lt;br /&gt;
| DCC, MM&amp;amp;nbsp;'''(2)''' / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -     || ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| ja    /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung von DDL. Auch für klassische Digital Zentralen verwendbar.&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Anschluss Platine mit Booster im gleichen Projekt verfügbar.&lt;br /&gt;
# Über zusätzliche Interfaces, lassen sich die Protokolle und Bussystem der daran angeschlossen Zentralen mitnutzen. Eine Übersicht findet sich unter: [http://bonus.dyndns.org/mediawiki/index.php/SRCPD-Devices]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12536</id>
		<title>Digitalzentralen - Selbstbausysteme</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Digitalzentralen_-_Selbstbausysteme&amp;diff=12536"/>
				<updated>2008-11-16T13:51:02Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Software-Zentralen */  Redundante Informationen in Bemerkungen angpasst.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
&lt;br /&gt;
{{Zentralverweise}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
In diesem Artikel werden Selbstbau-Projekte beschrieben: &lt;br /&gt;
*  Verwendung eines PCs als Zentrale &lt;br /&gt;
*  Elektronik-Projekte zum selber löten&lt;br /&gt;
Gegebenenfalls wird dieser Artikel noch um den Bereich Selbstbau-Booster erweitert. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Selbstbauprojekte ==&lt;br /&gt;
&lt;br /&gt;
Hier geht es um den Selbstbau von Hardware und die Programmierung der darin enthaltenen Prozessoren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/dccgen_en.html DDC_Gen]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 1 / 1&lt;br /&gt;
| LCD&lt;br /&gt;
| -         || Gleissignal&lt;br /&gt;
| Infrarot  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja, mit ACK-Detector&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Nur&amp;amp;nbsp;Adressen&amp;amp;nbsp;bis&amp;amp;nbsp;99. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://merg.org.uk/resources/dcc.htm MERG BC1A]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / 8&lt;br /&gt;
| LED&lt;br /&gt;
| 5A, ?V ({{r}})    || Gleissignal&lt;br /&gt;
| [[LocoNet]]{{r}}  /  -&lt;br /&gt;
| {{r}}    /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232 / -&lt;br /&gt;
| -&lt;br /&gt;
| Bausätze für Mitglieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.no.net/paolsen/mj/minibox/minibox_de.html MiniBOX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| 4-stellig&lt;br /&gt;
| 0,6A, ?V ({{r}})  || Gleissignal&lt;br /&gt;
| [[LocoNet]]    /  [[LocoNet]]&lt;br /&gt;
| ja             /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| max. 8 Loks aktiv. Nur&amp;amp;nbsp;14&amp;amp;nbsp;bzw.&amp;amp;nbsp;28&amp;amp;nbsp;Fahrstufen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.minidcc.com/ MiniDCC]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| LCD&lt;br /&gt;
| - || Gleissignal&lt;br /&gt;
| - /  -&lt;br /&gt;
| - /  -&lt;br /&gt;
| -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| Verkauf von programmierten Controller und Platinen&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mobasbs.de/Eisenbahn/MoBaSbS/MoBaSbS.htm MoBaSbs]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| LCD&lt;br /&gt;
| -     || Gleissignal&lt;br /&gt;
| RS485 /  RS485&lt;br /&gt;
| -     /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html#nanox_orig NanoX]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 1,2A, ?V ({{r}})  || Gleissignal&lt;br /&gt;
| X-Bus          /  -&lt;br /&gt;
| ja             /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.tinet.org/~fmco/nanox_en.html NanoX-S88]'''&lt;br /&gt;
| DCC / CutOut&lt;br /&gt;
| - / -&lt;br /&gt;
| 1 LED&lt;br /&gt;
| 2,9A, 13-22V ({{r}})   || Gleissignal&lt;br /&gt;
| X-Bus     /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja        /  ja&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - '''(2)''' / ja&lt;br /&gt;
| PIC&amp;amp;nbsp;'''(1)'''&lt;br /&gt;
| max.&amp;amp;nbsp;16&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Mit ihr kann die MultiMaus Dekoder auslesen.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.opendcc.de/elektronik/opendcc/opendcc.html OpenDCC]'''&lt;br /&gt;
| DCC / vorber.&lt;br /&gt;
| - / -&lt;br /&gt;
| 4 LEDs&lt;br /&gt;
| 1,2A , ?V ({{r}})     || Gleissignal&lt;br /&gt;
| X-Bus  /  3x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja     /  ja&lt;br /&gt;
| nein&lt;br /&gt;
| USB, RS232 / -&lt;br /&gt;
| prog. Schnitt-stelle&lt;br /&gt;
| max.&amp;amp;nbsp;64&amp;amp;nbsp;Loks&amp;amp;nbsp;aktiv. Intelligente &amp;quot;Interface Zentrale&amp;quot;. Echte Weichen Rückmeldung. Open Source. Benötigt PC mit Steuer Software.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.microsyl.com/dcccontrol/dcccontrol.html Train Modelling Digital Control]'''&lt;br /&gt;
| DCC / -&lt;br /&gt;
| 4 / -&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| -   /  -&lt;br /&gt;
| ja  /  {{r}}&lt;br /&gt;
| {{r}}&lt;br /&gt;
| - / - &lt;br /&gt;
| ja&lt;br /&gt;
| max. 4 Loks und 30 Weichen aktiv&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# PIC muss in extra Schaltung programmiert werden.&lt;br /&gt;
# Es ist auch eine [http://www.tinet.org/~fmco/colab_en.html Platinenvariante] mit integriertem Interface (GenLi, RS232) verfügbar.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Software-Zentralen ==&lt;br /&gt;
&lt;br /&gt;
Software-Zentrale erzeugen mit einem PC das Gleissignal für ein oder mehrere &lt;br /&gt;
Digital-Protokolle, typischerweise DCC und/oder Märklin-Motorola (MM). &lt;br /&gt;
Dieses Gleissignal wird über eine Schnittstelle einem Booster zur Verstärkung &lt;br /&gt;
zugeleitet, der seinerseits die Modellbahn-Anlage mit Strom und den aufgeprägten &lt;br /&gt;
Steuerinformationen versorgt. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size:0.8em&amp;quot;&amp;gt;&lt;br /&gt;
{{Zentraltipps}}&lt;br /&gt;
&lt;br /&gt;
{|  {{Zentraltabelle}}&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.vogt-it.com/OpenSource/DDL/ DDL]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| Vorläufer von srcpd.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://home.snafu.de/mgrafe/index.htm DDW]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -      || ja&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&lt;br /&gt;
| ja     /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.mrdirect.nl/ MR direkt]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / ja&lt;br /&gt;
| -&lt;br /&gt;
| -   || Gleissignal&lt;br /&gt;
| ja  /  [[S88-Rückmeldebus|S88]]&lt;br /&gt;
| -   /  -&lt;br /&gt;
| {{r}}&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://www.rocrail.net/ Rocrail]'''&lt;br /&gt;
| DCC, MM / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| 2,5A, ?V ({{r}})'''(1)'''  || ja&lt;br /&gt;
| -     /  4x[[S88-Rückmeldebus|S88]]&lt;br /&gt;
| ja    /  ja&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / -&lt;br /&gt;
| PC&lt;br /&gt;
| OpenSource Steuer Software mit DDL/DDW Support. Auch für klassische Digital Zentralen verwendbar. &lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
| '''[http://srcpd.sourceforge.net/ srcpd]'''&lt;br /&gt;
| DCC, MM&amp;amp;nbsp;'''(2)''' / -&lt;br /&gt;
| - / -&lt;br /&gt;
| -&lt;br /&gt;
| -     || ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| [[SRCP-Grundlagen|SRCP]]   /  [[S88-Rückmeldebus|S88]], [[SRCP-Grundlagen|SRCP]]&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| ja    /  ja, mit ACK-Detector&lt;br /&gt;
| -&lt;br /&gt;
| RS232, Parallel / ja&amp;amp;nbsp;'''(2)'''&lt;br /&gt;
| PC&lt;br /&gt;
| Weiterentwicklung von DDL. Auch für klassische Digital Zentralen verwendbar.&lt;br /&gt;
&lt;br /&gt;
{{Zentralheader-2}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
'''Anmerkungen:'''&lt;br /&gt;
# Anschluss Platine mit Booster im gleichen Projekt verfügbar.&lt;br /&gt;
# Über zusätzliche Interfaces, lassen sich die Protokolle und Bussystem der daran angeschlossen Zentralen mitnutzen. Eine Übersicht findet sich unter: [http://bonus.dyndns.org/mediawiki/index.php/SRCPD-Devices]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Digitalzentrale&amp;diff=12523</id>
		<title>Benutzer:Michael Oppenauer/Test-Digitalzentrale</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Digitalzentrale&amp;diff=12523"/>
				<updated>2008-11-14T13:44:53Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Beschreibung &amp;quot;Aktuelle Zentralen&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Bild:Arrowright.gif]] &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
Gerät, das als zentrale Einheit die Signale der Steuergeräte empfängt und gemäß eines festgelegten [[Digitalprotokoll|Digitalprotokolls]] daraus die zum Gleis (bzw. dem jeweiligen [[Decoder]]) hin laufenden Digitalsignale erzeugt. Üblicherweise sind in den Digitalzentralen auch ein [[Booster]] und mehrere Eingabegeräte (z.B. Geschwindigkeitsregler, Funktionstasten) integriert, so dass für ein minimales System bis auf eine digitalisierte Lok keine weiteren Geräte benötigt werden.&lt;br /&gt;
&lt;br /&gt;
In den unten verlinkten Tabellen findet sich eine Übersicht über verschiedenen Digitalzentralen.&lt;br /&gt;
* [[Neuvorstellungen]]&lt;br /&gt;
: Zentralen, die vorgestellt aber noch nicht im Handel verfügbar sind.&lt;br /&gt;
* [[Benutzer:Edbert_van_Eimeren/Test-Vollsysteme | Aktuelle Zentralen]]&lt;br /&gt;
: Zentralen, die bei den Herstellern lieferbar sind.&lt;br /&gt;
* [[Historische Zentralen]]&lt;br /&gt;
: Zentralen, die von den Herstellern nicht mehr produziert werden.&lt;br /&gt;
* [[Selbsbauzentralen]]&lt;br /&gt;
: Anleitungen zum selber Löten einer Zentrale oder zur Nutzung eines PC zur Erzeugung der Digitalsignale.&lt;br /&gt;
&lt;br /&gt;
Zum besseren Verständnis gibt es noch eine separate Seite mit [[Benutzer:Michael_Oppenauer/Test-Erläuterungen_zu_Digitalzentralen-Tabellen | Erläuterungen]] zu den Tabellen.&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Digitalzentrale&amp;diff=12522</id>
		<title>Benutzer:Michael Oppenauer/Test-Digitalzentrale</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Digitalzentrale&amp;diff=12522"/>
				<updated>2008-11-14T09:51:50Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Bild:Arrowright.gif]] &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
Gerät, das als zentrale Einheit die Signale der Steuergeräte empfängt und gemäß eines festgelegten [[Digitalprotokoll|Digitalprotokolls]] daraus die zum Gleis (bzw. dem jeweiligen [[Decoder]]) hin laufenden Digitalsignale erzeugt. Üblicherweise sind in den Digitalzentralen auch ein [[Booster]] und mehrere Eingabegeräte (z.B. Geschwindigkeitsregler, Funktionstasten) integriert, so dass für ein minimales System bis auf eine digitalisierte Lok keine weiteren Geräte benötigt werden.&lt;br /&gt;
&lt;br /&gt;
In den unten verlinkten Tabellen findet sich eine Übersicht über verschiedenen Digitalzentralen.&lt;br /&gt;
* [[Neuvorstellungen]]&lt;br /&gt;
: Zentralen, die vorgestellt aber noch nicht im Handel verfügbar sind.&lt;br /&gt;
* [[Benutzer:Edbert_van_Eimeren/Test-Vollsysteme | Aktuelle Zentralen]]&lt;br /&gt;
: Zentralen, die im Handel zu kaufen sind.&lt;br /&gt;
* [[Historische Zentralen]]&lt;br /&gt;
: Zentralen, die von den Herstellern nicht mehr produziert werden.&lt;br /&gt;
* [[Selbsbauzentralen]]&lt;br /&gt;
: Anleitungen zum selber Löten einer Zentrale oder zur Nutzung eines PC zur Erzeugung der Digitalsignale.&lt;br /&gt;
&lt;br /&gt;
Zum besseren Verständnis gibt es noch eine separate Seite mit [[Benutzer:Michael_Oppenauer/Test-Erläuterungen_zu_Digitalzentralen-Tabellen | Erläuterungen]] zu den Tabellen.&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Erl%C3%A4uterungen_zu_Digitalzentralen-Tabellen&amp;diff=12521</id>
		<title>Benutzer:Michael Oppenauer/Test-Erläuterungen zu Digitalzentralen-Tabellen</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Benutzer:Michael_Oppenauer/Test-Erl%C3%A4uterungen_zu_Digitalzentralen-Tabellen&amp;diff=12521"/>
				<updated>2008-11-14T09:32:55Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Da die Tabellen mit den Digitalzentralen ziemlich umfangreich sind, muss darauf geachtet werden, die Informationen möglichst kompakt darzustellen.&lt;br /&gt;
Dazu wurden teilweise mehrere Informationen in einer Spalte zusammengefasst und mit zahlreichen Abkürzungen gearbeitet.&lt;br /&gt;
Hier wird erklärt, welche Informationen in den einzelnen Spalten zu finden sind und ggfs. wie sie zu interpretieren ist.&lt;br /&gt;
&lt;br /&gt;
Es ist zu berücksichtigen, dass in den Tabellen nur Eigenschaften von Digitalzentralen beschrieben werden.&lt;br /&gt;
Notwendige Voraussetzungen bei anderen Komponenten werden in der Regel nicht erwähnt.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Tabellen nach diesem Schema==&lt;br /&gt;
[[Benutzer:Edbert_van_Eimeren/Test-Vollsysteme]]&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
==Spaltenbeschreibung==&lt;br /&gt;
&lt;br /&gt;
===Hersteller Gerät===&lt;br /&gt;
:    Name des Herstellers in Kurzform. Nach diesem Namen sind die Tabellen zeilenweise sortiert.&lt;br /&gt;
:    Name des Gerätes unter dem es bekannt ist. Bestellnummer werden nur in Ausnahmenfällen (z.B. zur Eindeutigkeit) in Klammern hinzugefügt.&lt;br /&gt;
&lt;br /&gt;
===Protokoll===&lt;br /&gt;
:    Die Digital-Protokolle auf der Gleisseite, die von diesem Gerät unterstützt werden.&lt;br /&gt;
:    Im Abschnitt [[#Abkürzungen| Abkürzungen]] findet sich eine Liste der Protokolle.&lt;br /&gt;
&lt;br /&gt;
===Protokoll/BiDi===&lt;br /&gt;
:    (Nur bei Selbstbauzentralen) Zusätzlich zu den Digital-Protokollen wird aufgeführt, ob die Zentrale bidirektionale Kommunikation nach NMRA unterstützt, siehe auch [[#Abkürzungen| Abkürzungen]].&lt;br /&gt;
:    Wenn die Zentrale über einen globalen Detektor verfügt, so steht in der Spalte &amp;quot;ja&amp;quot;. Kann sie nur die notwendig Austastlücke erzeugen, so steht in der Spalte &amp;quot;CutOut&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
===Regler Fest / Hand===&lt;br /&gt;
:    Anzahl der eingebauten Fahrregler resp. Anzahl der im Lieferumfang enthaltenen Handregler&lt;br /&gt;
&lt;br /&gt;
===Display===&lt;br /&gt;
:    Von einer Status-LED über wenige Ziffern/Zeilen bis hin zum farbigen Vollgrafik-Display ist alles vertreten.&lt;br /&gt;
&lt;br /&gt;
===Booster intern===&lt;br /&gt;
:     Ist ein Booster eingebaut, gibt es hier die Angaben zu Strom und Spannung und ob diese stabilisiert sind. Wenn ein Hersteller nicht angibt, ob der interne Booster stabilisiert ist, kann man vermuten, dass er das nicht ist.&lt;br /&gt;
&lt;br /&gt;
===Anschluss Booster extern===&lt;br /&gt;
:     Es gibt mehrere Varianten einen externen Booster anzuschliessen:&lt;br /&gt;
:#       3-polig (Daten, Masse, Kurzschluss) (DCC Norm)&lt;br /&gt;
:#       5-polig (Daten, Masse, Booster ein, -, Kurzschluss) (Märklin Art)&lt;br /&gt;
:#       Über das eigene Bussystem wie bei LocoNet, ECosLink und dem Zimo CAN-Bus.&lt;br /&gt;
:#:           Dies erlaubt einen Informationsaustausch zwischen Boostern und Zentrale.&lt;br /&gt;
:#       Über einen spezifischen Stecker, dessen Belegung/Arbeitsweise nicht bekannt ist.&lt;br /&gt;
:#:           Dies ist bei LGB, Roco, Tams und etlichen anderen der Fall.&lt;br /&gt;
:#       Gleissignal (Zweidraht-Anbindung)&lt;br /&gt;
:#:           Das Gleissignal kann als Eingangssignal für einen Booster verwendet werden. Allerdings werden alle Störungen, die in das Gleissignal eingekoppelt werden, automatisch mit verstärkt. Weiter ist damit keine Kurzschluss-Meldung an die Zentrale möglich.&lt;br /&gt;
:     Ein Anschluss nach Punkt 1 und/oder 2 ist an vielen Systemen vorhanden (ggfs. zusätzlich zum eigenen System-Anschluss) um möglichst viele Booster verwenden zu können.&lt;br /&gt;
:     Ein Anschluss nach Punkt 3 wird mit dem Namen des Bussystems bezeichnet.&lt;br /&gt;
:     Eine Zentrale kann mehrere Anschluss-Arten parallel oder umschaltbar anbieten.&lt;br /&gt;
:     Ist die Anschluss-Art nicht eindeutig klar steht in der Spalte &amp;quot;ja&amp;quot; / &amp;quot;?&amp;quot; / &amp;quot;-&amp;quot; (was auch immer passt).&lt;br /&gt;
&lt;br /&gt;
===Eingabe/Rückmelde-Bus===&lt;br /&gt;
:    Zentralen können keinen, einen oder mehrere Busse für Eingabe (Fahrregler, Keyboards, Interface, ...) und/oder Rückmeldung anbieten. Nicht genannt werden Busse, die nur über Adapter zugänglich sind.&lt;br /&gt;
:    Siehe hierzu die Liste der Busse im Abschnitt [[#Abkürzungen| Abkürzungen]]&lt;br /&gt;
&lt;br /&gt;
===Decoder einstellen/auslesen===&lt;br /&gt;
:    Decoder können auf einem Programmiergleis (&amp;quot;Prog&amp;quot;) oder im laufenden Betrieb auf dem Hauptgleis (&amp;quot;POM&amp;quot;, Programming On Main) eingestellt werden.&lt;br /&gt;
:    Decoder konnten bis ca. 2005/2006 nur auf einem Programmiergleis ausgelesen werden.&lt;br /&gt;
:    Neue Entwicklung wie die '''BiDi'''rektionale Kommunikation bei DCC oder das '''mfx'''-Protokoll von Märklin erlauben den Decodern Informationen an die Zentrale zu senden (Quittung, Wert, Zustand, ...).&lt;br /&gt;
:   Zur Zeit stehen in dieser Spalte meist &amp;quot;ja&amp;quot;, &amp;quot;-&amp;quot; oder bekannte Einschränkungen. In Zukunft wird das etwas detaillierter angegeben werden.&lt;br /&gt;
&lt;br /&gt;
===Mehrfachtraktion===&lt;br /&gt;
:    Angaben ob Mehrfachtraktionen über die Zentrale (jede Lok einzeln angesteuert) und/oder durch die Verbund-Adresse im Decoder (alle Loks mit einem Befehl angesteuert, nur bei DCC) gebildet werden.&lt;br /&gt;
:    Ggfs. Anzahl der Mehrfachtraktionen und wieviele Loks enthalten sein können.&lt;br /&gt;
&lt;br /&gt;
===Interface eingebaut/anschließbar===&lt;br /&gt;
:    Bei einem eingebauten Interface wird die Art des Computeranschlusses (RS232 / USB / Ethernet, ...) angegeben.&lt;br /&gt;
:    Für externe Interface steht nur &amp;quot;ja&amp;quot; oder &amp;quot;-&amp;quot;, da die Entwicklung fliessend ist und oft auch '' 'systemfremde' '' Interfaces funktionieren.&lt;br /&gt;
&lt;br /&gt;
===Software Update via===&lt;br /&gt;
:    Digitalzentralen enthalten ein Programm, das festlegt, was diese Zentrale im Einzelnen macht.&lt;br /&gt;
:    Um das Verhalten einer Zentrale zu ändern/erweitern, muss das Programm ausgetauscht werden.&lt;br /&gt;
:    Dazu gibt es mehrere Möglichkeiten:&lt;br /&gt;
:*      Hardware (Platine) inkl. Prozessor und Programm austauschen.&lt;br /&gt;
:*      Programmspeicher (PROM, EPROM, EEPROM) auf der Platine wechseln.&lt;br /&gt;
:*      Inhalt des Programmspeicher über Interface + PC + Ladeprogramm aktualisieren.&lt;br /&gt;
:*      Inhalt des Programmspeicher über einen USB-Stick oder einen Direktanschluss an das Internet aktualisieren.&lt;br /&gt;
&lt;br /&gt;
===Bemerkungen===&lt;br /&gt;
:    - &amp;amp;nbsp; &amp;quot;Max. xxx Loks aktiv&amp;quot; bedeutet, das maximal xxx Loks gleichzeitig gesteuert werden können.&lt;br /&gt;
::        Die Zahl der Loks für die eine Zentrale Einstellungen speichern kann, ist davon unabhängig.&lt;br /&gt;
:    - &amp;amp;nbsp;  Alles was wichtig ist, aber in die anderen Spalten nicht reinpasst.&lt;br /&gt;
::        Einschränkungen, Besonderheiten, Querverbindungen, Planungen, Updates, Erweiterungen, ...&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
== Abkürzungen ==&lt;br /&gt;
&lt;br /&gt;
Übersicht über in den Tabellen verwendete Abkürzungen.&lt;br /&gt;
&lt;br /&gt;
===Protokolle===&lt;br /&gt;
====DCC====&lt;br /&gt;
'''D'''igital '''C'''ommand '''C'''ontrol  &amp;amp;nbsp;&amp;amp;nbsp;  von der '''NMRA''' genormtes Digital-Protokoll&lt;br /&gt;
*            Wird wegen der klaren Definition und der damit verbundenen Austauschbarkeit von vielen Herstellern eingesetzt. Es sind keine Lizenzabgaben notwendig. Aus historischen Gründen wird es meist bei Zweileiter-Systemen verwendet. &lt;br /&gt;
*            9999+ Lokadressen, 1024 Weichenadressen&lt;br /&gt;
====BiDi====&lt;br /&gt;
'''Bi'''-'''Di'''rectional Communication &lt;br /&gt;
*            von der '''NMRA''' empfohlenes Protokoll für die Zwei-Wege Kommunikation bei DCC.&lt;br /&gt;
*            Liefert Informationen zu Adresse, CV-Werten, Zustand, Verbrauch, ...&lt;br /&gt;
====FMZ====&lt;br /&gt;
'''F'''leischmann '''M'''ehr'''z'''ug Steuerung &lt;br /&gt;
*            119 Adressen für Lok- und Weichen-Decoder (je 4 Weichen/Signale)&lt;br /&gt;
====MM====&lt;br /&gt;
'''M'''ärklin '''M'''otorola  &amp;amp;nbsp;&amp;amp;nbsp;  altes Märklin Protokoll &lt;br /&gt;
*            Soweit notwendig wird nach MM1 (nur Licht, relative Richtung) und  MM2 (Licht, 4 Funktionen, absolute Richtung) unterschieden.&lt;br /&gt;
*            80 Lokadressen, 256 Weichenadressen. Fremd-Decoder ermöglichen teilweise auch 255 Adressen.&lt;br /&gt;
====mfx====&lt;br /&gt;
'''m'''ulti'''f'''unktion e'''x'''tra  &amp;amp;nbsp;&amp;amp;nbsp;  Protokoll von Märklin Systems &lt;br /&gt;
*            16000+ Adressen, Rückkanal Dekoder -&amp;gt; Zentrale&lt;br /&gt;
====SX====&lt;br /&gt;
'''S'''electri'''x'''  &amp;amp;nbsp;&amp;amp;nbsp;  Protokoll von Trix&lt;br /&gt;
*            112 Adressen für Lok- und Weichen-Decoder (je 8 Weichen/Signale)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Busse===&lt;br /&gt;
====CAN====&lt;br /&gt;
'''C'''ontroller '''A'''rea '''N'''etwork  &amp;amp;nbsp;&amp;amp;nbsp;  Bus nach einem Industriestandard&lt;br /&gt;
*               Wird von mehreren Herstellern unter verschiedenen Namen mit unterschiedlichen Protokollen / Geschwindigkeiten verwendet.&lt;br /&gt;
====I&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;C====&lt;br /&gt;
'''I'''nter '''I'''ntegrated '''C'''ircuit  &amp;amp;nbsp;&amp;amp;nbsp;  Eingabebus der Märklin Control Unit &lt;br /&gt;
*               Wird von Uhlenbrock/Fleischmann/Arnold zum Anschluss von Märklin Komponenten verwendet.&lt;br /&gt;
====S88====&lt;br /&gt;
[[S88-Rückmeldebus|Rückmeldebus]] von Märklin. &lt;br /&gt;
*               Wird wegen seiner Einfachheit / Verbreitung von mehreren Herstellern verwendet / unterstützt.&lt;br /&gt;
====X–Bus====&lt;br /&gt;
e'''X'''change / e'''X'''treme / e'''X'''press / ... {{r}} &amp;amp;nbsp;&amp;amp;nbsp;  Eingabebus von Lenz (heute XpressNet) &lt;br /&gt;
*                Varianten des X–Bus werden von verschiedenen Herstellern eingesetzt. &lt;br /&gt;
====RS-Bus====&lt;br /&gt;
[[RS-Rückmeldebus|Rückmeldebus]] von Lenz &lt;br /&gt;
====LocoNet====&lt;br /&gt;
'''Loco'''motion '''Net'''work {{r}}&lt;br /&gt;
*                Bussystem von Digitrax für Eingaben '''und''' Rückmeldungen. &lt;br /&gt;
*                Wird auch von Uhlenbrock / Fleischmann / Piko benutzt.&lt;br /&gt;
====Speedbus====&lt;br /&gt;
Viessmann-Bussysteme mit &lt;br /&gt;
*                V-Bus (HighSpeedBus HSB) für Fahrregler / Adapter und &lt;br /&gt;
*                Schaltbus (LowSpeedBus LSB) für Rückmelder / Decoder / Gleisbildstellpult.&lt;br /&gt;
*                Der LSB unterstützt X–Bus Geräte wie Rückmelder von Roco und Handregler von Lenz/Roco/...&lt;br /&gt;
====SRCP====&lt;br /&gt;
'''S'''imple'''R'''ailroad'''C'''ommand'''P'''rotokol  &amp;amp;nbsp;&amp;amp;nbsp;  &lt;br /&gt;
*                Protokoll zur Kommunikation von Modellbahn-Steuerungen und Software über TCP/IP (z.B. Ethernet)&lt;br /&gt;
*                Wurde im Rahmen des [[Digitalprojekt|Digitalprojektes auf DER_MOBA]] entwickelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Digitalbegriffe===&lt;br /&gt;
====POM====&lt;br /&gt;
'''P'''rogramming '''O'''n '''M'''ain (track)&lt;br /&gt;
*               DCC-Empfehlung (Programmieren auf dem Hauptgleis) &lt;br /&gt;
====BiDi====&lt;br /&gt;
'''Bi'''-'''Di'''rectional Communication &lt;br /&gt;
*               DCC-Empfehlung zur Zwei-Wege Kommunikation, auch unter dem Markennamen '''RailCom''' bekannt.&lt;br /&gt;
*               '''Decoder''' können '''über das Gleis''' Informationen '''senden'''. Geräte (lokaler Detektor, Zentrale, PC, ...) können die Informationen empfangen und auswerten. &lt;br /&gt;
====NMRA====&lt;br /&gt;
'''N'''ational '''M'''odel '''R'''ailroad '''A'''ssociation &lt;br /&gt;
*               Amerikanische Modellbahn Vereinigung. Legt über einen demokratischen Prozess die Normen und Empfehlungen in allen Bereichen der Modellbahn fest. &lt;br /&gt;
====NEM====&lt;br /&gt;
'''N'''ormen '''E'''ropäischer '''M'''odellbahner &lt;br /&gt;
*               Die NEM ist das europäische Gegenstück zu den &amp;quot;Standards and Recommandation&amp;quot; der NMRA. Aufgrund der Unterschiede bei den Vorbildern und dem Umfeld für Modellbahnen (Platz, ...) unterscheiden sie sich teils erheblich. Im Bereich der Digital-Protokolle übernimmt die NEM in der Regel die DCC-Empfehlungen der NMRA bzw. bei anderen Protokollen die Vorgaben der Hersteller. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Computer/Hardware===&lt;br /&gt;
====Ethernet====&lt;br /&gt;
Lokales Netzwerk mit Kabel (LAN, 10-1000 MBit) oder mit Funk (WLAN, 11-54 MBit)&lt;br /&gt;
====USB====&lt;br /&gt;
'''U'''niversal '''S'''erial '''B'''us, ''moderne'', schnelle serielle Schnittstelle&lt;br /&gt;
====RS232====&lt;br /&gt;
''alte'' serielle Schnittstelle (auch V.24 genannt)&lt;br /&gt;
====LED====&lt;br /&gt;
'''L'''ight '''E'''mitting '''D'''iode&lt;br /&gt;
====LCD====&lt;br /&gt;
'''L'''iquid '''C'''ristal '''D'''isplay&lt;br /&gt;
====OLED====&lt;br /&gt;
'''O'''rganic '''L'''ight '''E'''mitting '''D'''iode (wird bei Digitalzentralen zur Zeit noch nicht verwendet.)&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Modellbahnanlagenbau&amp;diff=12520</id>
		<title>Modellbahnanlagenbau</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Modellbahnanlagenbau&amp;diff=12520"/>
				<updated>2008-11-14T08:02:40Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Spezialgebiete */ Link angepasst&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Modellbahnanlagenbau =&lt;br /&gt;
&lt;br /&gt;
Hinweis: Diese Gliederung ist ein Vorschlag und soll zum einen die Anzahl der  Themen reduzieren, zum anderen eine komplette Übersicht über die beim Bau einer Modellbahnanlage wesentlichen Aspekte bieten. &lt;br /&gt;
&lt;br /&gt;
== Modellbahnraum ==&lt;br /&gt;
:[[Modellbahn-Raum]]&lt;br /&gt;
:[[Raumbeleuchtung]]&lt;br /&gt;
&lt;br /&gt;
== Unterbau ==&lt;br /&gt;
:[[Einmaleins des Anlagenbaus]]&lt;br /&gt;
:[[Module und Segmente]]&lt;br /&gt;
:[[Geräuschdämmung]]&lt;br /&gt;
&lt;br /&gt;
== Landschaftsbau ==&lt;br /&gt;
:[[Landschaftsbau]]&lt;br /&gt;
:[[Zubehör]]&lt;br /&gt;
&lt;br /&gt;
==Kunstbauten==&lt;br /&gt;
:[[Tunnel]]&lt;br /&gt;
:[[Brücken]]&lt;br /&gt;
&lt;br /&gt;
==Gebäudebau==&lt;br /&gt;
:[[Gebäude-Selbstbau]]&lt;br /&gt;
:[[Selbstbau Gebäude(FAQ)|FAQ Gebäude-Selbstbau]]&lt;br /&gt;
:[[Gebäudebau|Gebäudebau mit Industriebausätzen]]&lt;br /&gt;
&lt;br /&gt;
==Elektrik und Elektronik==&lt;br /&gt;
:[[Fahrstromverdrahtung]]&lt;br /&gt;
:[[Blockstreckensteuerung]]&lt;br /&gt;
:[[Kontaktstrecke]]&lt;br /&gt;
&lt;br /&gt;
== Spezialgebiete ==&lt;br /&gt;
:[[Bau einer Gleiswendel]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Baustelle}}&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Bau_einer_Gleiswendel&amp;diff=12518</id>
		<title>Bau einer Gleiswendel</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Bau_einer_Gleiswendel&amp;diff=12518"/>
				<updated>2008-11-13T17:41:40Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; */ Link gesetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; =&lt;br /&gt;
&lt;br /&gt;
Bei meiner ehemaligen Anlage &amp;quot;Bad Knüsselsdorf&amp;quot; mußte ein Höhenunterschied von 30cm zwischen Bahnhof und [[Schattenbahnhof]] überwunden werden. Dazu kam nur eine [[Gleiswendel]] in Frage, deren Konstruktion ich im folgenden beschreiben möchte.&lt;br /&gt;
&lt;br /&gt;
= Abmessungen =&lt;br /&gt;
&lt;br /&gt;
Der Platz für die Wendel war vorgegeben, mehr als ein Radius von 50cm war nicht unterzubringen. Obwohl ich sonst Flexgleise einsetze, wählte ich hier fertig vorgebogenes Gleis und entschied mich für den ROCO-LINE R4 (48,1cm). Die lichte Höhe zwischen zwei Gängen der Wendel sollte inklusive Gleis ca. 7cm betragen. Bei einer Trassendicke von 1,6cm ergab sich damit eine Höhendifferenz von gut 9cm pro Umlauf, insgesamt also eine Steigung von ungefähr 3%. Die Trassenbretter waren 10cm breit, damit rechts und links neben dem Gleis genügend Platz für die Gewindestangen blieb.&lt;br /&gt;
&lt;br /&gt;
Ein paar Hinweise für die Ermittlung der Abmessungen beim Nachbau:&lt;br /&gt;
&lt;br /&gt;
7cm lichte Höhe reichen bei der Verwendung von Kunststoffgleis sogar für Oberleitungsbetrieb. Natürlich können keine Masten gesetzt werden, aber ein Gleisprofil unter der Trassenunterseite sollte für den sicheren Betrieb genügen. Andererseits sollten 7cm tunlichst nicht unterschritten werden. Es lassen sich zwar beim Dampf- und Dieselbetrieb noch 10-15mm &amp;quot;herauskitzeln&amp;quot;, aber dann wird es sehr eng, falls man eines Tages entgleiste Fahrzeuge wieder auf die Schienen setzen möchte. Bei der Dicke der Trassenbretter sind vielleicht noch 5mm drin.&lt;br /&gt;
&lt;br /&gt;
Hier ein paar Beispiele für die resultierenden Steigungen bei unterschiedlichen Abmessungen, die Radien entsprechen dabei dem ROCO-LINE Programm.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Lichte Höhe&lt;br /&gt;
! Trassendicke&lt;br /&gt;
! R2=35,8cm&lt;br /&gt;
! R3=42,0cm&lt;br /&gt;
! R4=48,1cm&lt;br /&gt;
! R5=54,3cm&lt;br /&gt;
! R6=60,4cm&lt;br /&gt;
|-&lt;br /&gt;
|7cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,8%&lt;br /&gt;
| 3,3%&lt;br /&gt;
| 2,8%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,3%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,4%&lt;br /&gt;
| 2,9%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,2%&lt;br /&gt;
| 2,0%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,0cm&lt;br /&gt;
| 3,1%&lt;br /&gt;
| 2,7%&lt;br /&gt;
| 2,3%&lt;br /&gt;
| 2,1%&lt;br /&gt;
| 1,8%&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Man sollte stets versuchen, die Steigung so gering wie möglich zu halten, also einen möglichst großen Radius zu wählen. Die Steigung sollte 3 % nicht überschreiten, um einen sicheren Betrieb zu gewährleisten. Bei einer 2gleisigen Wendel sollte das nach oben führende Gleis nach Möglichkeit außen liegen (größerer Radius, geringere Steigung).&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
= Ein solides Fundament =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix4.gif|thumb|292px|Die Befestigung mit Gewindestangen geschieht alle 45°.]]&lt;br /&gt;
Eine große Platte aus 1,6cm Tischlerplatte diente als Grundplatte für die Gleiswendel. Ich zeichnete die Innen- und Außenkante der Trassenbretter mit einem Schnurzirkel an und legte probehalber einen Schienenkreis aus. Der Kreis wurde in 45 Grad-Segmente unterteilt (und weil ich dann Hunger auf Pizza bekam, machte ich erstmal eine Pause)&lt;br /&gt;
&lt;br /&gt;
Danach wurden die Kanten entlang der Markierungen mit einer Stichsäge ausgesägt. Eine Kante blieb gerade, dort wurde die Wendel später an der Zimmerwand befestigt .&lt;br /&gt;
&lt;br /&gt;
Entlang der 45-Grad Markierungen bohrte ich dann 6mm Paß-Löcher für die Gewindestangen, jeweils 1,5cm von der Außen- bzw. Innenkante entfernt. HINWEIS: An dieser Stelle sollte man die Gewindestangen nach dem ersten Paar Löcher probehalber einfügen und mit dem längsten verfügbaren Fahrzeug Testfahrten durchführen. Ich benutzte dazu einen 26,4m Personenwagen im Längenmaßstab 1/87.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Das Trassenbrett =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix2.jpg|framed|Die Preßspanbretter und Sperrholzbretter überlappen an den Stoßstellen, damit keine Knicke entstehen.]]&lt;br /&gt;
Das Trassenbrett entstand aus zwei 8mm dicken Holzstreifen. Auf der Unterseite nahm ich Preßspann, nach oben zum Gleis hingegen Sperrholz, da dort die Gleise festgeschraubt werden sollten. Mit Hilfe der fertig geschnittenen Grundplatte machte ich eine Pappschablone und sägte einige Stücke aus den Holzplatten aus. Schließlich baute ich daraus ¾-Kreise zusammen und achtete darauf, daß die Fugen immer versetzt blieben, ähnlich einem Ziegelmauerwerk. Damit vermeidete ich Knicke zwischen den Übergängen. Bei jedem der Teilkreise achtete ich darauf, daß am &amp;quot;unteren&amp;quot; Ende die obere Holzlage hervorschaute und am &amp;quot;oberen&amp;quot; Ende die untere Lage überstand. Beim späteren Zusammenbau (von unten nach oben) überlappt der neue Abschnitt den vorherigen. Schließlich wurden die Teile später immer von oben eingesetzt!. Wenn ein Teilkreis fertig war, befestigte ich das erste Stück des nächsten Abschnittes mit Schraubzwingen daran, um den richtigen Versatz zu bekommen. Genauigkeit ist nicht so wichtig (das ist wiederum wichtig für mich), kleine Lücken von 1-2mm zwischen benachbarten Abschnitten sind nicht problematisch. Nachdem alles fertig war, klemmte ich alles mit Schraubzwingen auf die Grundplatte und bohrte 6mm Löcher durch das ganze Paket, dabei benutzte ich die Löcher in der Grundplatte als Führung. Danach nahm ich wieder alles auseinander und bohrte die Löcher in den Trassenbretter (nicht die in der Grundplatte!) auf 8mm auf, um später genug Spiel für die Feinjustage zu haben. HINWEIS: Vor dem Bohren sollten die Teilstücke sorgfältig ausgerichtet werden!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Aufwärts bitte! =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix3.gif|thumb|365px|Die Trassenbretter werden mit Muttern in der Höhe exakt ausgerichtet und befestigt.]]&lt;br /&gt;
&lt;br /&gt;
Ich befestigte die M6-Gewindestangen mit Unterlegscheiben und M6-Muttern an der Grundplatte. Dann fügte ich das erste Teilstück hinzu (dabei sollte man nicht vergessen, zuvor die nötige Anzahl Muttern und Scheiben einzulegen!) und schraubte die Gleise auf die Trasse. Das nächste Trassenbrett nebst nötigen Kleineisen wurde eingesetzt und am vorherigen festgeklebt. SEHR WICHTIG: Das Gleis wurde sorgfältig verlegt und Gleisstöße genau an den Segmentenden vermieden, ggfs. unter Einsatz von ½ Gleisstücken. Nachdem alles montiert war, befestigte ich die Wendel am Anlagenunterbau. Dann war die Feinjustage an der Reihe. Mit Hilfe der Muttern war es einfach, die richtigen Höhen von unten nach oben einzustellen. Ich nutzte die Grundplatte als Referenz, notierte mir die richtigen Höhenmasse und stellte sie mit einem Lineal und Schraubenschlüssel ein. Neben dem sauber verlegtem Gleis ist auch eine gleichmäßige Steigung sehr wichtig für die Betriebssicherheit. Daher kontrollierte ich mehrmals, ob alle Abstände nun wirklich richtig waren..&lt;br /&gt;
&lt;br /&gt;
Vorsichtige Modellbahner können die Muttern jeweils noch mit einer Kontermutter versehen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Der Abschluß =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix1.jpg|framed|Die Gleiswendel wird mit einem abnehmbaren Landschaftsteil überbaut.]]&lt;br /&gt;
&lt;br /&gt;
Bei der Gleisverlegung muß (wie in allen verdeckten Abschnitten) mit besonderer Sorgfalt gearbeitet werden. Vor dem Weiterbau der Anlage müssen umfangreiche Testfahrten stattfinden. Nach dem Überbau mit Landschaft ist die Gleiswendel nur schwerer zu erreichen, um Fehler zu beheben. &lt;br /&gt;
&lt;br /&gt;
Natürlich blieb ein großes Loch in der Mitte der Wendel. Aus den Überresten der Grundplatte baute ich eine abnehmbare Abdeckplatte. Als Ummantelung plante ich Hartfaserplatten, welche sich genügend biegen lassen. Bevor ich jedoch dazu kam, wurde &amp;quot;Bad Knüsselsdorf&amp;quot; wegen Umzug abgebaut. Mittlerweile deutet es sich ab, daß auch &amp;quot;Bad Knüsselsdorf II&amp;quot; mit einer Wendel ausgestattet werden wird. Die alte Gleiswendel läßt sich in Grenzen anpassen: Zusätzliche &amp;quot;Umdrehungen&amp;quot; lassen sich durch Verlängerungen der Gewindestangen ansetzen. Geringe Abweichungen in den Höhenlagen können durch die Muttern eingestellt werden. Das alte Bauteil wird also wahrscheinlich weiter verwendet werden ... &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Der ursprüngliche Autor Frank Forsten pflegt seine Version auf seiner Homepage http://www.forsten-online.de&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Anlagenbau]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12517</id>
		<title>Gleiswendel</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12517"/>
				<updated>2008-11-13T16:18:27Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Bild eingefügt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Unter einer Gleiswendel versteht man eine schraubenförmige Gleisfigur. Mit ihr lässt sich kompakt an Höhe gewinnen, um z. B. von der sichtbaren Ebene in einen unter der Anlage angeordneten [[Schattenbahnhof]] zu kommen. Der Artikel [[Bau einer Gleiswendel]] beschreibt, wie man eine Gleiswendel aufbauen kann.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix2.jpg|left|framed|Beispiel für eine Gleiswendel.]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12511</id>
		<title>Gleiswendel</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12511"/>
				<updated>2008-11-12T15:11:45Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Rechtschreibung&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Unter einer Gleiswendel versteht man eine schraubenförmige Gleisfigur. Mit ihr lässt sich kompakt an Höhe gewinnen, um z. B. von der sichtbaren Ebene in einen unter der Anlage angeordneten [[Schattenbahnhof]] zu kommen. Dieser Artikel beschreibt, wie man eine Gleiswendel aufbauen kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; =&lt;br /&gt;
&lt;br /&gt;
Bei meiner ehemaligen Anlage &amp;quot;Bad Knüsselsdorf&amp;quot; mußte ein Höhenunterschied von 30cm zwischen Bahnhof und [[Schattenbahnhof]] überwunden werden. Dazu kam nur eine Wendel in Frage, deren Konstruktion ich im folgenden beschreiben möchte.&lt;br /&gt;
&lt;br /&gt;
= Abmessungen =&lt;br /&gt;
&lt;br /&gt;
Der Platz für die Wendel war vorgegeben, mehr als ein Radius von 50cm war nicht unterzubringen. Obwohl ich sonst Flexgleise einsetze, wählte ich hier fertig vorgebogenes Gleis und entschied mich für den ROCO-LINE R4 (48,1cm). Die lichte Höhe zwischen zwei Gängen der Wendel sollte inklusive Gleis ca. 7cm betragen. Bei einer Trassendicke von 1,6cm ergab sich damit eine Höhendifferenz von gut 9cm pro Umlauf, insgesamt also eine Steigung von ungefähr 3%. Die Trassenbretter waren 10cm breit, damit rechts und links neben dem Gleis genügend Platz für die Gewindestangen blieb.&lt;br /&gt;
&lt;br /&gt;
Ein paar Hinweise für die Ermittlung der Abmessungen beim Nachbau:&lt;br /&gt;
&lt;br /&gt;
7cm lichte Höhe reichen bei der Verwendung von Kunststoffgleis sogar für Oberleitungsbetrieb. Natürlich können keine Masten gesetzt werden, aber ein Gleisprofil unter der Trassenunterseite sollte für den sicheren Betrieb genügen. Andererseits sollten 7cm tunlichst nicht unterschritten werden. Es lassen sich zwar beim Dampf- und Dieselbetrieb noch 10-15mm &amp;quot;herauskitzeln&amp;quot;, aber dann wird es sehr eng, falls man eines Tages entgleiste Fahrzeuge wieder auf die Schienen setzen möchte. Bei der Dicke der Trassenbretter sind vielleicht noch 5mm drin.&lt;br /&gt;
&lt;br /&gt;
Hier ein paar Beispiele für die resultierenden Steigungen bei unterschiedlichen Abmessungen, die Radien entsprechen dabei dem ROCO-LINE Programm.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Lichte Höhe&lt;br /&gt;
! Trassendicke&lt;br /&gt;
! R2=35,8cm&lt;br /&gt;
! R3=42,0cm&lt;br /&gt;
! R4=48,1cm&lt;br /&gt;
! R5=54,3cm&lt;br /&gt;
! R6=60,4cm&lt;br /&gt;
|-&lt;br /&gt;
|7cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,8%&lt;br /&gt;
| 3,3%&lt;br /&gt;
| 2,8%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,3%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,4%&lt;br /&gt;
| 2,9%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,2%&lt;br /&gt;
| 2,0%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,0cm&lt;br /&gt;
| 3,1%&lt;br /&gt;
| 2,7%&lt;br /&gt;
| 2,3%&lt;br /&gt;
| 2,1%&lt;br /&gt;
| 1,8%&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Man sollte stets versuchen, die Steigung so gering wie möglich zu halten, also einen möglichst großen Radius zu wählen. Die Steigung sollte 3 % nicht überschreiten, um einen sicheren Betrieb zu gewährleisten. Bei einer 2gleisigen Wendel sollte das nach oben führende Gleis nach Möglichkeit außen liegen (größerer Radius, geringere Steigung).&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
= Ein solides Fundament =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix4.gif|thumb|292px|Die Befestigung mit Gewindestangen geschieht alle 45°.]]&lt;br /&gt;
Eine große Platte aus 1,6cm Tischlerplatte diente als Grundplatte für die Gleiswendel. Ich zeichnete die Innen- und Außenkante der Trassenbretter mit einem Schnurzirkel an und legte probehalber einen Schienenkreis aus. Der Kreis wurde in 45 Grad-Segmente unterteilt (und weil ich dann Hunger auf Pizza bekam, machte ich erstmal eine Pause)&lt;br /&gt;
&lt;br /&gt;
Danach wurden die Kanten entlang der Markierungen mit einer Stichsäge ausgesägt. Eine Kante blieb gerade, dort wurde die Wendel später an der Zimmerwand befestigt .&lt;br /&gt;
&lt;br /&gt;
Entlang der 45-Grad Markierungen bohrte ich dann 6mm Paß-Löcher für die Gewindestangen, jeweils 1,5cm von der Außen- bzw. Innenkante entfernt. HINWEIS: An dieser Stelle sollte man die Gewindestangen nach dem ersten Paar Löcher probehalber einfügen und mit dem längsten verfügbaren Fahrzeug Testfahrten durchführen. Ich benutzte dazu einen 26,4m Personenwagen im Längenmaßstab 1/87.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Das Trassenbrett =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix2.jpg|framed|Die Preßspanbretter und Sperrholzbretter überlappen an den Stoßstellen, damit keine Knicke entstehen.]]&lt;br /&gt;
Das Trassenbrett entstand aus zwei 8mm dicken Holzstreifen. Auf der Unterseite nahm ich Preßspann, nach oben zum Gleis hingegen Sperrholz, da dort die Gleise festgeschraubt werden sollten. Mit Hilfe der fertig geschnittenen Grundplatte machte ich eine Pappschablone und sägte einige Stücke aus den Holzplatten aus. Schließlich baute ich daraus ¾-Kreise zusammen und achtete darauf, daß die Fugen immer versetzt blieben, ähnlich einem Ziegelmauerwerk. Damit vermeidete ich Knicke zwischen den Übergängen. Bei jedem der Teilkreise achtete ich darauf, daß am &amp;quot;unteren&amp;quot; Ende die obere Holzlage hervorschaute und am &amp;quot;oberen&amp;quot; Ende die untere Lage überstand. Beim späteren Zusammenbau (von unten nach oben) überlappt der neue Abschnitt den vorherigen. Schließlich wurden die Teile später immer von oben eingesetzt!. Wenn ein Teilkreis fertig war, befestigte ich das erste Stück des nächsten Abschnittes mit Schraubzwingen daran, um den richtigen Versatz zu bekommen. Genauigkeit ist nicht so wichtig (das ist wiederum wichtig für mich), kleine Lücken von 1-2mm zwischen benachbarten Abschnitten sind nicht problematisch. Nachdem alles fertig war, klemmte ich alles mit Schraubzwingen auf die Grundplatte und bohrte 6mm Löcher durch das ganze Paket, dabei benutzte ich die Löcher in der Grundplatte als Führung. Danach nahm ich wieder alles auseinander und bohrte die Löcher in den Trassenbretter (nicht die in der Grundplatte!) auf 8mm auf, um später genug Spiel für die Feinjustage zu haben. HINWEIS: Vor dem Bohren sollten die Teilstücke sorgfältig ausgerichtet werden!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Aufwärts bitte! =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix3.gif|thumb|365px|Die Trassenbretter werden mit Muttern in der Höhe exakt ausgerichtet und befestigt.]]&lt;br /&gt;
&lt;br /&gt;
Ich befestigte die M6-Gewindestangen mit Unterlegscheiben und M6-Muttern an der Grundplatte. Dann fügte ich das erste Teilstück hinzu (dabei sollte man nicht vergessen, zuvor die nötige Anzahl Muttern und Scheiben einzulegen!) und schraubte die Gleise auf die Trasse. Das nächste Trassenbrett nebst nötigen Kleineisen wurde eingesetzt und am vorherigen festgeklebt. SEHR WICHTIG: Das Gleis wurde sorgfältig verlegt und Gleisstöße genau an den Segmentenden vermieden, ggfs. unter Einsatz von ½ Gleisstücken. Nachdem alles montiert war, befestigte ich die Wendel am Anlagenunterbau. Dann war die Feinjustage an der Reihe. Mit Hilfe der Muttern war es einfach, die richtigen Höhen von unten nach oben einzustellen. Ich nutzte die Grundplatte als Referenz, notierte mir die richtigen Höhenmasse und stellte sie mit einem Lineal und Schraubenschlüssel ein. Neben dem sauber verlegtem Gleis ist auch eine gleichmäßige Steigung sehr wichtig für die Betriebssicherheit. Daher kontrollierte ich mehrmals, ob alle Abstände nun wirklich richtig waren..&lt;br /&gt;
&lt;br /&gt;
Vorsichtige Modellbahner können die Muttern jeweils noch mit einer Kontermutter versehen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Der Abschluß =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix1.jpg|framed|Die Gleiswendel wird mit einem abnehmbaren Landschaftsteil überbaut.]]&lt;br /&gt;
&lt;br /&gt;
Bei der Gleisverlegung muß (wie in allen verdeckten Abschnitten) mit besonderer Sorgfalt gearbeitet werden. Vor dem Weiterbau der Anlage müssen umfangreiche Testfahrten stattfinden. Nach dem Überbau mit Landschaft ist die Gleiswendel nur schwerer zu erreichen, um Fehler zu beheben. &lt;br /&gt;
&lt;br /&gt;
Natürlich blieb ein großes Loch in der Mitte der Wendel. Aus den Überresten der Grundplatte baute ich eine abnehmbare Abdeckplatte. Als Ummantelung plante ich Hartfaserplatten, welche sich genügend biegen lassen. Bevor ich jedoch dazu kam, wurde &amp;quot;Bad Knüsselsdorf&amp;quot; wegen Umzug abgebaut. Mittlerweile deutet es sich ab, daß auch &amp;quot;Bad Knüsselsdorf II&amp;quot; mit einer Wendel ausgestattet werden wird. Die alte Gleiswendel läßt sich in Grenzen anpassen: Zusätzliche &amp;quot;Umdrehungen&amp;quot; lassen sich durch Verlängerungen der Gewindestangen ansetzen. Geringe Abweichungen in den Höhenlagen können durch die Muttern eingestellt werden. Das alte Bauteil wird also wahrscheinlich weiter verwendet werden ... &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Der ursprüngliche Autor Frank Forsten pflegt seine Version auf seiner Homepage http://www.forsten-online.de&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Anlagenbau]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=S88-R%C3%BCckmeldebus&amp;diff=12510</id>
		<title>S88-Rückmeldebus</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=S88-R%C3%BCckmeldebus&amp;diff=12510"/>
				<updated>2008-11-11T14:02:39Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Ein preiswerter Rückmeldebus für die Modellbahn.&lt;br /&gt;
&lt;br /&gt;
==Allgemeines==&lt;br /&gt;
&lt;br /&gt;
Der Bus beruht auf einem einfachen Prinzip: er S88-Bus ist ein serielles Schiebe-Register mit parallelem Load-Eingang.&lt;br /&gt;
&lt;br /&gt;
Weitere Teilnehmer dieses Busses werden durch einfaches Kaskadieren angeschlossen, so entsteht ein langes Schieberegister, in dem alle auszulesenden Bits in einer langen Kette liegen. Diesem Vorteil des einfachen Aufbaus stehen allerdings Nachteile gegenüber: Es ist keine Adressvorgabe der Rückmelder möglich und die Übertragung erfolgt vollkommen ungeschützt, d.h. es gibt weder Parity, Prüfsumme oder CRC. &lt;br /&gt;
&lt;br /&gt;
==Steckerbelegung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=tabtyp1 cellpadding=0 cellspacing=0 &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                width=100 |PIN&lt;br /&gt;
!                width=180 |Signal&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |1&lt;br /&gt;
|                |Data&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |2&lt;br /&gt;
|                |Ground&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |3&lt;br /&gt;
|                |Clock&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |4&lt;br /&gt;
|                |PS&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |5&lt;br /&gt;
|                |Reset&lt;br /&gt;
      &lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |6&lt;br /&gt;
|                |5V&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Datenübertragung==&lt;br /&gt;
&lt;br /&gt;
Diese Leitungen sind in dieser Reihenfolge auf Pins im Raster 2.54mm angeschlossen.&lt;br /&gt;
&lt;br /&gt;
Die LOAD-Leitung geht auf 1, darauf erfolgt ein Schiebtakt; alle Register in der Scheibekette übernehmen bei diesem Takt die Information an ihren Paralleleingängen. Als nächstes erfolgt ein RESET-Puls (auch aktiv high), dieser löscht die den Paralleleingang vorgeschalteten Latches, welche damit wieder bereit für die Übernahme neuer Information sind. Die Latches speichern auch kurze Signale bis zur nächsten Abfrage.&lt;br /&gt;
&lt;br /&gt;
Nun wird das Schieberegister (mit LOAD = 0) mittels eines CLK-Pulses geschoben. Dadurch dass jeweils der Datenausgang eines S88-Moduls mit dem Dateneingang des nächsten verbunden ist, kommen so die beim ersten Takt geladenen Zustände der Latches nach und nach zur Zentrale.&lt;br /&gt;
&lt;br /&gt;
==Probleme==&lt;br /&gt;
&lt;br /&gt;
Oft wird der S88 als langsam und unsicher bezeichnet. Der Ruf 'langsam' rührt von der ersten Implementierung der Fa. Märklin her, die den Bus sehr langsam betrieb und auch das Interface hierzu nur mit 2400 Baud einstellte. Mittlerweile gibt es schnellere Implementierungen, die mit dem Datenaufkommen einer Modellbahnanlage mühelos zurechtkommen.&lt;br /&gt;
&lt;br /&gt;
Die Unsicherheit hat drei wesentliche Ursachen:&lt;br /&gt;
* Einkopplungen (wegen ungeschirmten Leitungen)&lt;br /&gt;
* Masseströme aus der Anlage über den S88-Bus (besonders bei 3-Leiter Anlagen, da hier oft der Gleisrückstrom über den S88-Bus abfließt)&lt;br /&gt;
* keine Sicherung gegen Übertragungsfehler&lt;br /&gt;
&lt;br /&gt;
==S88 über Netzwerkkabel==&lt;br /&gt;
&lt;br /&gt;
Zur Reduzierung der Einkopplung können Netzwerkkabel (CAT5) verwendet werden, wobei folgende Normung (s88-N) verwendet werden soll:&lt;br /&gt;
{| border=1 align=&amp;quot;center&amp;quot;&lt;br /&gt;
|+s88-N Norm&lt;br /&gt;
!Signal&lt;br /&gt;
!Pin&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|12V/5V&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 1&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|DATA&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 2&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|GND&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 3&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|CLK&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 4&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|GND&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 5&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|PS (=LOAD)&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 6&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|RESET&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 7&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|RAILDATA&lt;br /&gt;
|align=&amp;quot;center&amp;quot; | 8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eine Zentrale soll wahlfrei 5V oder 12V einstellbar haben. die Schaltschwelle ist Versorgungsspannung * 0.5. Wenn alle angeschlossenen Module 12V vertragen, so kann die höhere Spannung gewählt werden. Gegenüber der ursprüglichen Belegung wurde GND verdoppelt und RAILDATA (das Gleissignal) hinzugefügt, um eine einfache Parametrisierung der Module zu erlauben.&lt;br /&gt;
&lt;br /&gt;
Da Netzwerkabel geschirmt sind, sinkt die Einkoppelung. Diese Belegung sorgt dafür, dass empfindliche Leitungen wie z.B. CLK oder RESET jeweils mit einer statischen Leitung (z.B. GND) verdrillt sind und minimiert daher die Einkopplung zusätzlich. Auf ebay werden oft s88 Module angeboten, deren Pinbelegung scheinbar willkürlich vergeben wurde, ohne auf die Leitungskopplung zu achten.&lt;br /&gt;
&lt;br /&gt;
[[Bild:S88-n_logo.svg|100px|right|Logo]]In einer Abstimmung der Anbieter von s88 Modulen wurde diese Norm akzeptiert - es wird sukzessive umgestellt, um eine freie Kombination der Module zu ermöglichen. Komponenten nach dieser Norm sollen mit dem nebenstehenden Logo gekennzeichnet werden.&lt;br /&gt;
[http://www.opendcc.de/s88/s88_n/s88-n.html Lizenzbedingungen]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
&lt;br /&gt;
[http://www.opendcc.de/s88/s88_n/s88-n.html www.opendcc.de] Erläuterungen, Oszillogramm, Adapterplatine&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=RS-Bus&amp;diff=12509</id>
		<title>RS-Bus</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=RS-Bus&amp;diff=12509"/>
				<updated>2008-11-11T13:59:08Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Verlinkung mit RS-Rückmeldebus&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Rückmeldebus der Firma Lenz&lt;br /&gt;
&lt;br /&gt;
Da dieser Bus offiziell nicht dokumentiert ist, sind die durch Experimentieren festgestellten technischen Grundlagen [[RS-Rückmeldebus | hier]] dokumentiert.&lt;br /&gt;
&lt;br /&gt;
==Steckerbelegung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=tabtyp1 cellpadding=0 cellspacing=0 &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                width=100 |PIN&lt;br /&gt;
!                width=180 |Signal Port A&lt;br /&gt;
!                width=180 |Signal Port B&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |1&lt;br /&gt;
|                |&amp;quot;C&amp;quot; Control Bus Connection &lt;br /&gt;
|                |No Connection&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |2&lt;br /&gt;
|                |Ground &amp;quot;M&amp;quot; &lt;br /&gt;
|                |Ground &amp;quot;M&amp;quot; &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |3&lt;br /&gt;
|                |- RS-485 &amp;quot;B&amp;quot;&lt;br /&gt;
|                |- RS-485 &amp;quot;B&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |4&lt;br /&gt;
|                |+ RS-485 &amp;quot;A&amp;quot;&lt;br /&gt;
|                |+ RS-485 &amp;quot;A&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |5&lt;br /&gt;
|                |+12 volts &amp;quot;L&amp;quot;&lt;br /&gt;
|                |+12 volts &amp;quot;L&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |6&lt;br /&gt;
|                |&amp;quot;D&amp;quot; Control Bus Connection &lt;br /&gt;
|                |No Connection&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=FREMO&amp;diff=12508</id>
		<title>FREMO</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=FREMO&amp;diff=12508"/>
				<updated>2008-11-11T13:48:35Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Bild:Fremo JT2003.jpg|thumb|350px|FREMO Jahrestagung 2003 in Calw - verschiedene Modulanlagen in einer Dreifeldturnhalle]]&lt;br /&gt;
{{Glossar}} Freundeskreis Eurpäischer Modellbahner e.V.&lt;br /&gt;
&lt;br /&gt;
Der '''Freundeskreis Europäischer Modellbahner e.V.''', abgekürzt '''FREMO''' ist ein Verein nach deutschem Vereinsrecht. Der Verein wurde 1981 gegründet und hat etwa 1000 Mitglieder in 15 europäischen Ländern. Der Vereins legt in seiner Satzung fest: ''&amp;quot;Zweck des Vereins ist es, das Modellbahnerhobby, insbesondere dessen kreativitäts- und aktivitätsbezogenen Aspekte sowie den persönlichen Kontakt unter den Modellbahnern auf überregionaler und internationaler Ebene zu fördern.&amp;quot;''&lt;br /&gt;
&lt;br /&gt;
Inhaltliche Schwerpunkte des Vereinslebens sind Bau und [[Normung]] von [[Modularer Modelleisenbahnbau|Modelleisenbahn-Modulen]] sowie die Veranstaltung von Treffen auf denen die einzelnen Module zu vorab geplanten Modularrangements [[Epoche |epochengerecht]] zusammengestellt werden. Das bedeutet, dass nur in der Realität zeitlich zueinander passende Fahrzeuge, dargestellte Bauten und technische Einrichtungen dargestellt und eingesetzt werden. Auf diesem Arrangement wird dann nach der Eisenbahnbetrieb nach [[Fahrplan]] durchgeführt. Jeder Zug hat einen [[Zugführer]], der zumeist auch die Aufgabe des [[Triebfahrzeugführer|Lokführers]] übernimmt und viele Betriebsstellen haben einen [[Fahrdienstleiter]]. Daher werden Modularrangements von mehreren Personen betrieben. Teilweise wird im [[Zugleitbetrieb]] gefahren, so dass ein [[Zugleiter]] notwendig wird.&lt;br /&gt;
&lt;br /&gt;
Weitere Schwerpunkte sind die Entwicklung einer unter dem Namen ''[http://fremodcc.sourceforge.net/dcc_d.html Fremo-DCC]'' bekannten [[Steuerung der Modelleisenbahn#Digitalsteuerung|digitalen Steuerung]], die Umsetzung möglichst maßstabsgetreuer Bauweisen sowie die Herausgabe der Zeitschrift ''[[Hp1 Modellbahn]]''.&lt;br /&gt;
&lt;br /&gt;
==Module (FreModule)==&lt;br /&gt;
Um auf den Fremotreffen die Module der einzelnen Mitglieder miteinander verbinden zu können, sind entsprechende Normen geschaffen worden. Die Modulsysteme werden nach ihrer [[Maßstäbe der Modelleisenbahn|Baugröße]] und bedarfsweise nach einem Thema bezeichnet. Die wichtigsten Systeme sind: 0, 0m, 0e, H0-Europa, H0-USA, H0PS, H0m, H0m-Rhätische Bahn, H0e, H0f, N. Innerhalb dieser Systeme gibt es wiederum Gruppen, die sich auf einzelne Themen festlegen. &lt;br /&gt;
&lt;br /&gt;
Hauptvoraussetzung ist ein definierter Übergang zwischen den einzelnen Modulen, um die jeweils durchgehenden [[Gleis]]e miteinander verbinden zu können.&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Gesichtspunkt (neben Epoche und Vorbildregion) stellt auch das verwendete Gleismaterial dar: Die Geometrie von Gleisen aus Großserienfertigung unterscheidet sich deutlich vom Vorbild; häufig ist auch die Höhe des Schienenprofils der Modellgleise größer als eine genaue [[Maßstab (Verhältnis)|Maßstab]]sumrechnung ergibt. Am Gleismaterial orientiert sich die Geometrie der Fahrzeugräder. Die Umsetzung eines möglichst vorbildnahen Rad-Schiene-Systems gehört zu den wichtigsten Themen des FREMO.&lt;br /&gt;
&lt;br /&gt;
Die Modulsysteme des FREMO legen neben dem genormten Modulübergang keine weiteren Abmaße der Module fest. Die Modulsysteme H0-Europa und N kennen ein- und zweigleisige Modulübergänge, alle anderen Systeme haben eine eingleisige Schnittstelle. &lt;br /&gt;
&lt;br /&gt;
FreModule unterscheiden Strecken- und Betriebsstellenmodule. Streckenmodule enthalten keine [[Eisenbahnweichen]] und können elektrisch einfach ausgeführt werden; sie werden von den Zügen zwischen den Betriebsstellen durchfahren. Unter den Betriebsstellenmodulen versteht man neben [[Eisenbahnsicherungs-_und_-signaltechnik#Bahnhof|Bahnhöfen]] auch die [[Bahnanlage der freien Strecke]], wie [[Eisenbahnsicherungs-_und_-signaltechnik#Anschlußstellen_(Anst)_und_Ausweichanschlußstellen_(Awanst)|Anschlussstellen]], [[Eisenbahnsicherungs-_und_-signaltechnik#Abzweigstellen|Abzweigstellen]], [[Eisenbahnsicherungs-_und_-signaltechnik#Blockstellen|Blockstellen]] und [[Eisenbahnsicherungs-_und_-signaltechnik#Haltepunkte|Haltepunkte]].&lt;br /&gt;
&lt;br /&gt;
==Weblinks==&lt;br /&gt;
[http://www.fremo.org Homepage des Vereins]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Verein]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=RS-Bus&amp;diff=12507</id>
		<title>RS-Bus</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=RS-Bus&amp;diff=12507"/>
				<updated>2008-11-11T13:42:29Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Rückmeldebus der Firma Lenz&lt;br /&gt;
&lt;br /&gt;
==Steckerbelegung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=tabtyp1 cellpadding=0 cellspacing=0 &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                width=100 |PIN&lt;br /&gt;
!                width=180 |Signal Port A&lt;br /&gt;
!                width=180 |Signal Port B&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |1&lt;br /&gt;
|                |&amp;quot;C&amp;quot; Control Bus Connection &lt;br /&gt;
|                |No Connection&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |2&lt;br /&gt;
|                |Ground &amp;quot;M&amp;quot; &lt;br /&gt;
|                |Ground &amp;quot;M&amp;quot; &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |3&lt;br /&gt;
|                |- RS-485 &amp;quot;B&amp;quot;&lt;br /&gt;
|                |- RS-485 &amp;quot;B&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |4&lt;br /&gt;
|                |+ RS-485 &amp;quot;A&amp;quot;&lt;br /&gt;
|                |+ RS-485 &amp;quot;A&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |5&lt;br /&gt;
|                |+12 volts &amp;quot;L&amp;quot;&lt;br /&gt;
|                |+12 volts &amp;quot;L&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |6&lt;br /&gt;
|                |&amp;quot;D&amp;quot; Control Bus Connection &lt;br /&gt;
|                |No Connection&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=LocoNet&amp;diff=12506</id>
		<title>LocoNet</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=LocoNet&amp;diff=12506"/>
				<updated>2008-11-11T13:38:36Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} LocoNet ist ein Peer-to-Peer Netzwerk, dass von der Firma [http://www.digitrax.com Digitrax] für Modellbahnanlagen konzipiert wurde. Das LocoNet dient sozusagen als Transportmedium innerhalb der Modellbahn, das einen gleichberechtigten Zugriff aller LocoNet-kompatiblen Komponenten in beiden Richtungen zulässt. Darüber kommunizieren die Zentrale, die Handregler; ebenso Schaltdecoder, Belegtmelder, Booster und angeschlossene Computer. Die Regler sind über LocoNet mit der Zentrale verbunden, diese wiederum steuert über dasselbe Netz die Booster, über die letztendlich die Decoder in der Lok ihre Steuersignale erhalten. Die in LocoNet enthaltenen Strukturen (Protokolle) sind ähnlich in der Datenkommunikation zu finden; LocoNet arbeitet nach dem [http://de.wikipedia.org/wiki/CSMA/CD CSMA/CD] bzw. [http://de.wikipedia.org/wiki/CSMA/CA CSMA/CA] Zugriffsverfahren. Die genaue technische Spezifikation von LocoNet gibt es bei Digitrax unter:&lt;br /&gt;
http://www.digitrax.com/ftp/loconetpersonaledition.pdf&lt;br /&gt;
&lt;br /&gt;
==Vorteile==&lt;br /&gt;
* Verbindung aller Komponenten über ein einfaches, preiswertes Steckersystem (RJ12-Würfelstecker)&lt;br /&gt;
* Die Kabel können ausreichende Längen haben und auf der Anlage in Stern- oder Busform verteilt sein.&lt;br /&gt;
* Flexibles Design: Jedes Gerät darf senden, was er will, solange es nicht mit bestehendem Traffik kollidiert - somit auch Inhalte und sogar Formate (ggf. mit variabler Nutzdatenlänge), die sich der Erfinder des LN nicht ausgedacht hat.&lt;br /&gt;
* Die Buslast hängt von der Anzahl der Änderungen ab, nicht von der Anzahl der Geräte, die ggf. nichts tun&lt;br /&gt;
* Keine niedrige harte Grenze in der Adressierung&lt;br /&gt;
&lt;br /&gt;
==Nachteile/Einschränkungen==&lt;br /&gt;
* Kein '''echtes''' Echtzeitsystem&lt;br /&gt;
* Begrenzung auf 119 verwaltete Lokadressen&lt;br /&gt;
&lt;br /&gt;
==Steckerbelegung==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=tabtyp1 cellpadding=0 cellspacing=0 &lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                width=100 |PIN&lt;br /&gt;
!                width=180 |Signal&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |1&lt;br /&gt;
|                |DCC für Booster&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |2&lt;br /&gt;
|                |Ground&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |3&lt;br /&gt;
|                |LocoNet Data&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |4&lt;br /&gt;
|                |LocoNet Data&lt;br /&gt;
&lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |5&lt;br /&gt;
|                |Ground&lt;br /&gt;
      &lt;br /&gt;
|-  valign=top   &amp;lt;!-- ======================================================== --&amp;gt;&lt;br /&gt;
!                |6&lt;br /&gt;
|                |DCC für Booster&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Kupplung&amp;diff=12505</id>
		<title>Kupplung</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Kupplung&amp;diff=12505"/>
				<updated>2008-11-11T13:37:52Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Kupplungen dienen zum Verbinden von Loks und Wagen untereinander. Neben der vor allem bei größeren Spurweiten Verwendung von Originalkupplungen gibt es verschiedene Kupplungssystem die auf die Kompromiss behaftete Verkleinerung bei der Modellbahn Rücksicht nehmen. Hierbei dominiert die Funktion vor dem vorbildgerechten Aussehen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Kupplungstypen =&lt;br /&gt;
&lt;br /&gt;
Grob gesagt gibt es zwei Sorten, nämlich Standardkupplungen sowie Kurzkupplungen. Kurzkupplungen zeichnen sich jedoch nur in 2. Linie dadurch aus, daß der Kuppelabstand den Raum zwischen den Puffern minimiert. Vielmehr bieten diese Kupplungen eine starre Verbindung untereinander, diese benötigen daher eine sogenannte Kurzkupplungskinematik am Wagenkasten oder zumindest eine beweglich ausgeführte Aufhängung. Diese Kinematik erweitert den Fahrzeugabstand im Bogen, um ein Verhaken/Verkeilen der Puffer zu verhindern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=1 | align=&amp;quot;center&amp;quot;&lt;br /&gt;
!Typ&lt;br /&gt;
!Bezeichnung&lt;br /&gt;
!vorentkuppelbar&lt;br /&gt;
!Pufferabstand&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Standardkupplungen (beweglich)&lt;br /&gt;
|[[Kupplung#Bügelkupplung|Bügelkupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| -&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|5-7mm&lt;br /&gt;
|-&lt;br /&gt;
|[[Kupplung#Kadee-Kupplung|Kadee-Kupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| x&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|5-7mm&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Echte Kurzkupplungen (starr)&lt;br /&gt;
|[[Kupplung#ROCO-Kurzkupplung alt/neu|ROCO-Kurzkupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| x&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1-2mm&lt;br /&gt;
|-&lt;br /&gt;
|[[Kupplung#Fleischmann-Profi-Kupplung|Fleischmann-Profi-Kupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| x&lt;br /&gt;
|align=&amp;quot;center&amp;quot;|1-3mm&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot;|Universalkupplungen (eingeschränkt beweglich)&lt;br /&gt;
|[[Kupplung#ROCO-Universalkupplung|ROCO-Universalkupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| x&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 3-5mm&lt;br /&gt;
|-&lt;br /&gt;
|[[Kupplung#Märklin-Kurzkupplung|Märklin-Kurzkupplung]]&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| x&lt;br /&gt;
|align=&amp;quot;center&amp;quot;| 3-5mm&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Angabe des Pufferabstands ist mit Vorsicht zu geniessen, sie hängt davon ab, mit welchen Toleranzen die Abstände Pufferebene-Vorderkante Normschacht ausgelegt sind. Bei den ersten Kurzkupplungsfahrzeugen von Roco ist dieser Abstand sehr knapp gehalten, was bei Verwendung von echten Kurzkupplungen zu Problemen beim Ankupplen führen konnte. Bei Loks, die in aller Regel nicht genügend Platz für eine ausreichend dimenionierte Kurzkupplungskinematik bieten, ist der Abstand Pufferebene-Vorderkante Normschacht höher, hier entsteht meist auch bei Verwendung von echten Kurzkupplungen ein Pufferabstand von 5mm oder höher.&lt;br /&gt;
&lt;br /&gt;
Eine ausführlichere Tabelle mit Fotos und auch Angaben zu älteren, nicht mehr so gebräuchlichen Kupplungen findet sich unter [http://www.modellbahnfrokler.de/grundlagen/kupplungen.html Modellbahnfrokler: Grundlagen: Die Kupplungsfrage] von Erik Meltzer. Ausserdem findet sich dort eine Fülle von Frokelanleitungen nicht nur für Kupplungsumbauten.&lt;br /&gt;
&lt;br /&gt;
= Normschacht/Kinematik =&lt;br /&gt;
&lt;br /&gt;
Um verschiedene Kupplungsfabrikate freizügig verwenden zu können, wurde in den Normen Europäischer Modellbahner (NEM) auf Blatt 362 (H0) sowie 355 (N) eine einheitliche Kupplungsaufnahme für Kupplungsköpfe vereinbart, welche für Modellbahnhersteller als verbindlich zu betrachten ist. Damit im Zusammenhang steht NEM 352, welche die Führungen für Kupplungsaufnahmen (die sogenannte Kurzkupplungs-Kinematik) vorschreibt. (Siehe [http://miba.de/morop/nem352-d.pdf NEM 352] (PDF 28 KB), [http://miba.de/morop/nem355-d.pdf NEM 355] (PDF 28 KB) sowie [http://miba.de/morop/nem362-d.pdf NEM 362] (PDF 60 KB).) Darin ist auch die Lage des Normschachtes bezüglich Schienenoberkante und der Pufferebene festgelegt. Leider ist bei manchen älteren Fahrzeugen der Abstand Pufferebene-Normschacht-Vorderkante zu gering, wodurch sich Verhakungen/Überpufferungen) bei ungünstiger Gleisführungen (S-Kurven ohne Ausgleichsgerade oder zu enge Radien) ergeben können.&lt;br /&gt;
&lt;br /&gt;
= Vorentkupplung =&lt;br /&gt;
&lt;br /&gt;
Ermöglicht die Entkupplung am Entkuppelgleis oder mit dem Handentkuppler und das Schieben und Abstellen von Fahrzeugen an beliebige Positionen. Nach dem Abziehen des Wagenverbands fallen die Kupplungen zurück und sind bereit für den nächsten Kuppelvorgang.&lt;br /&gt;
&lt;br /&gt;
= Bewegliche Kupplungsverbindungen =&lt;br /&gt;
&lt;br /&gt;
== Bügelkupplung ==&lt;br /&gt;
&lt;br /&gt;
Die Standardkupplung für den Modellbahner, nachteilig ist der große Pufferabstand und die schwergängige Entkupplung bei bestimmten Kupplungskombinationen. Es gibt von der Kopfform her sehr viele verschiedene Ausführungen, generell gilt: Je größer der Kupplungsbügel, desto schlechter die Kuppel-/Entkuppelbarkeit mit anderen Fabrikaten (z.B. ROCO-Standardkupplung). Pufferabstand: ca. 5-10 mm. Bewährt hat sich u. a. die Bügelkupplung von Klein Modellbahn (in Deutschland Vertrieb durch M+D), die sehr zierlich ist und sich leicht entkuppeln läßt, da die Zapfen an der Unterseite beispielsweise im Gegensatz zur Roco-Bügelkupplung nahe beieinander liegen sowie der Bügel nicht durch ein Federelement niedergedrückt wird und so das Entkuppeln auch mit einem schmalen Entkuppler leicht von der Hand geht.&lt;br /&gt;
&lt;br /&gt;
== Kadee-Kupplung ==&lt;br /&gt;
&lt;br /&gt;
Diese der US-amerikanischen Eisenbahn abgeschaute Kupplung ist sehr sanft kuppel- und magnetisch entkuppelbar, nachteilig ist, daß sie relativ teuer ist und die Kurzkupplungskinematik zur Vermeidung von Störungen festgelegt werden muß. Näheres zu Vor- und Nachteilen siehe unter [[Vergleich_Kadee-Kupplung_und_Roco-Kupplung]].&lt;br /&gt;
&lt;br /&gt;
= Starre Kupplungsverbindungen (Kurzkupplungen) =&lt;br /&gt;
&lt;br /&gt;
Hierbei gibt es zwei Unterklassen, nämlich echte Kurzkupplungen und kompatible Kurzkupplungen, die Kombination mit Bügelkupplungen erlauben sollen. Erstere ermöglichen echtes Puffer- an Puffer-Fahren (Pufferabstand 0-1 mm), während zweitere, um Kompatibilität mit Bügelkupplungen zu bewahren, einen Pufferabstand von 2-4 mm einstellen. Bei ausschließlicher Verwendung der kompatiblen Kupplungen ist aber der Wagenabstand auch optisch einwandfrei, sodaß im Zweifelsfalle am ehesten zu dieser Kupplungssorte zu raten ist. Allerdings benötigen die Fahrzeuge in diesem Fall eine Kurzkupplungskinematik oder eine bewegliche Kupplungsaufnahme. Starre Aufnahmen sind dazu nicht geeignet. Verläßliche Kuppelbarkeit erfordert Gleisbögen von 2m oder darüber, ansonsten muß händisch ein wenig nachgeholfen werden.&lt;br /&gt;
&lt;br /&gt;
== ROCO-Kurzkupplung alt/neu ==&lt;br /&gt;
&lt;br /&gt;
Der Klassiker unter den Kurzkupplungen. Die alte Variante (ohne Vorentkupplung, schwarz) wird nicht mehr produziert und wurde durch die neue Version mit Vorentkupplung (dunkelgrau) ersetzt. Vorteile: leicht kuppel- und entkuppelbar, allerdings nicht im Gleisbogen, was uebrigens fuer so gut wie alle Kurzkupplungen gilt. Fahrzeuge lassen sich leicht nach oben aus dem Zugverband herausnehmen. Reagiert sehr empfindlich durch Zugtrennung auf falsche Höhenlage der Kupplungen zueinander. Vorentkuppelbar.&lt;br /&gt;
&lt;br /&gt;
== Fleischmann-Profi-Kupplung ==&lt;br /&gt;
&lt;br /&gt;
Eher zierlicher Kopf, Nachteil: recht schwergängig beim Kuppeln/Entkuppeln. Vorentkuppelbar.&lt;br /&gt;
&lt;br /&gt;
= Universalkupplungen =&lt;br /&gt;
&lt;br /&gt;
== ROCO-Universalkupplung ==&lt;br /&gt;
&lt;br /&gt;
Neuentwicklung, um langfristig Bügelkupplungen abzulösen. Nachteil: Bei unpassender Höhenlage der Kupplungen zueinander schlechte Entkuppel-/Kuppelbarkeit. Gefahr der Zugtrennung im Bogen bei Kupplung mit Loks ohne Bügel am Kupplungshaken. Ansonsten IMHO die brauchbarste Kupplung am Markt. Vorentkuppelbar.&lt;br /&gt;
&lt;br /&gt;
Nach der Pleite von Roco und Übernahme durch die &amp;quot;Modelleisenbahn GmbH&amp;quot; wurde die Universalkupplung vermutlich aus patentrechtlichen Gründen eine zeitlang nicht mehr hergestellt. Seit Anfang 2007 ist sie, außer in Italien, wieder verfügbar.&lt;br /&gt;
&lt;br /&gt;
== Märklin-Kurzkupplung ==&lt;br /&gt;
&lt;br /&gt;
Im Mischbetrieb mit anderen Bügelkupplungen etwas schwerer kuppel-/enkuppelbar als ROCO-Universal. Bügel verhakt im Bogen gerne am Puffer. Vorentkuppelbar. (?)&lt;br /&gt;
&lt;br /&gt;
= Justierung der Kupplungsabstimmung =&lt;br /&gt;
&lt;br /&gt;
Vor allem bei Wagen aus der Anfangszeit des NEM-Schachtes sind nicht optimal auf die Dimensionen des Schaftes mit Schwalbenschwanz angepaßt, was oft dazu führt, daß die Kupplung schief/nicht stramm im Schacht sitzt, wodurch der Kuppelvorgang unzuverlässig wird.&lt;br /&gt;
&lt;br /&gt;
Abhilfe kann durch Anpassen mit kleinen aufgeklebten Polystyrol- oder Blechstückchen geschaffen werden, die mit Sekundenkleber o. ä. an der Kupplung befestigt werden. Oft reicht auch ein wenig Selbstklebeband oder das Einlegen eines Blech- oder Plastikstückchens.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Kuppeltuning.gif]]&lt;br /&gt;
&lt;br /&gt;
Auf dieselbe Art und Weise kann auch die Kinematik-Deichsel geringfügig verkürzt werden, falls einem der Pufferabstand nicht passen sollte.&lt;br /&gt;
&lt;br /&gt;
Wichtig ist es auch, die seitliche Beweglichkeit der Kurzkupplungsdeichsel zu gewährleisten, da sonst im Extremfall ein Wagen mit festsitzender Deichsel bei Bogenfahrten hinausgedrückt werden kann.&lt;br /&gt;
&lt;br /&gt;
= Fernbedienbare Kupplungen =&lt;br /&gt;
&lt;br /&gt;
== TELEX-Kupplung ==&lt;br /&gt;
&lt;br /&gt;
Fernbedienbare Entkupplung von Märklin. Infos dazu beispielsweise unter [http://home.arcor.de/dr.koenig/digital/digital.htm Dr. Königs Digitalseiten].&lt;br /&gt;
&lt;br /&gt;
== Roco-Digitalkupplung ==&lt;br /&gt;
&lt;br /&gt;
Seit 1999 am Markt, wird nur komplett mit Lok und dafür ausgelegten Dekoder verkauft (z.Z. DB BR 365 (V60), Ep V, DB BR 332 (Köf III), Ep. IV). Roco begründet diese Restriktion damit, dass die verwendete Magnetspule nicht für Dauerstrom ausgelegt sei und daher einen Dekoder mit &amp;quot;Impulsbetrieb&amp;quot; erfordere. Der Maximalstrom wird nur für die anfängliche Bewegung der Spule benötigt, anschliessend wird die Kupplung mit reduziertem Strom offen gehalten. Ein Einsatz in anderen Loks wird daher vorerst experimentierfreudigen Bastlern offenbleiben, die eines der o.g. Modelle samt Dekoder ausschlachten wollen. Noch ist nicht geklärt (?), ob ein M*-Motorola-Dekodertyp einen geeigneten Ansteuermodus besitzt. Für NMRA-DCC besitzt der ZIMO MX61 Model2000 eine Ansteuerung für die ROCO-Digitalkupplung.&lt;br /&gt;
&lt;br /&gt;
== Krois-Digitalkupplung ==&lt;br /&gt;
&lt;br /&gt;
Die Krois-Digitalkupplung ähnelt von der Funktion her der Roco-Kupplung, ist aber einzeln erhältlich. Auch sie darf nicht mit Dauerstrom betrieben werden, es muss also ein geeigneter Dekoder verwendet werden. Aktuelle Dekoder von Zimo, Tran und AMW bieten beispielsweise einen Modus, in dem die Lok sich selbst vom Zug abkuppelt. Auch die Decoder von Kühn steuern die Krois-Kupplung korrekt an. Damit wird Dauerbetrieb zuverlässig vermieden. Für andere Decoderfabrikate wird von Herrn Krois ein Zeitsteuerbaustein angeboten, der die Digitalkupplung nach etwa vier Sekunden wieder ausschaltet und damit das Durchbrennen der Spule verhindert.&lt;br /&gt;
&lt;br /&gt;
= Handentkuppler =&lt;br /&gt;
&lt;br /&gt;
== Entkuppler für Bügelkupplungen ==&lt;br /&gt;
&lt;br /&gt;
Als verblüffend effektiver Handentkuppler für Bügelkupplungen hat sich eine gewöhnliche Nadelfeile herauskristallisiert. Der Feinhieb der Feile bietet einen hervorragenden &amp;quot;Grip&amp;quot; an den Kupplungsbügeln, die problemlos und ohne seitlich zu verrutschen hochgehoben werden können. Der Schraubenziehergriff mit Stahldraht ist schon fast zu kompliziert, um die Nadelfeile verdrängen zu können. Die Platte von unten (siehe Entkuppler für Kurzkupplungen) ist nicht so effizient, da insbesondere die Haltefeder der ROCO-Bügelkupplungen Widerstand entgegensetzt; manchmal sind die Bügel ineinander verhakt. Die Feile schafft auch hier schnell Ordnung.&lt;br /&gt;
&lt;br /&gt;
== Entkuppler für Kurz- und Universalkupplungen ==&lt;br /&gt;
&lt;br /&gt;
Hier liegt die Sache anders, da diese Kupplungen sich am besten von unten entkuppeln lassen. Bei der ROCO-Universalkupplung ist dies sogar die einzige Möglichkeit. Einerseits kommt hier der ROCO-Handentkuppler in Frage, der jeder Grosspackung ROCO-Kupplungen beiliegt. Ich persönlich benutze ihn nicht, da die Platte an der Unterseite ziemlich klobig ist. Ausserdem reicht die Platte nicht weit genug in die Gleismitte hinein, was manchmal ein ziemliches Geduldsspiel beim Entkuppeln erfordert. Darum kommen selbstgebaute Entkupplerhaken zum Einsatz, mein persönlicher Favorit ist ein zurechtgebogener Kunsstoffstreifen. Dazu wird ein Streifen Astralon (schlagzäher Kunststoff aus dem Modellbau) von ca. 7-12 cm Länge und 7-8 mm Breite zugeschnitten, Dicke 1,5 mm. Ein Ende wird mit Heissluft erwärmt und ein ca. 2 cm langes Stück rechtwinkelig abgebogen. Dieser Entkuppler liegt gut in der Hand und lässt sich leicht in Position bringen. Eine andere Variante besteht aus einem 10 cm langen Rundholz (8 mm Durchmesser) und einem angeklebten, 2-3 cm langen Kunsstoffstreifen mit einer Breite von 8 mm.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Entkuppler-1.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Ein weiterer Handentkuppler von Peter Popp ==&lt;br /&gt;
&lt;br /&gt;
Roco- Universalkupplungen sind nicht umsonst sehr beliebt: sie kuppeln zwar nicht so kurz wie &amp;quot;richtige&amp;quot; Kurzkupplungen, sind aber gerade daher sehr zuverlässig. Schwierig wird es jedoch, wenn man versucht, gekuppelte UK's zu trennen: während es die traditionellen Bügelkupplungen nicht übelnehmen, wenn man einen Wagen mit der Hand aufhebt und etwas verdreht, um die Kupplung zu trennen, ist das bei der UK nicht möglich. Aus diesem Grunde liegt der Familienpackung der Roco-UK ein Handentkuppler bei, der allerdings nicht optimal zu handhaben ist.&lt;br /&gt;
&lt;br /&gt;
Nach einigen Versuchen habe ich nun einen Entkuppler gefunden, der recht gut funktioniert: Das Ende eines Stahldrahts wird mehrfach abgewinkelt und ein Stück eines Nylon-Kabelbinders aufgeklebt.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Entkuppler-2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Vor dem linken Wagen sehen Sie den Entkuppler: auf dem Abschnitt des Kabelbinders sind schwach die Rippen zu erkennen, die das Abrutschen der Nasen der Kupplung verhindern. Ein Trick dabei: der Stahldraht wurde so gebogen, dass er genau unter der Kupplung liegt, wenn der Draht zwischen den Puffern nach oben läuft. Eine einfache, aber wichtige &amp;quot;Zieleinrichtung&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Bild:Entkuppler-3.gif]]&lt;br /&gt;
&lt;br /&gt;
Auf obiger Skizze ist dargestellt, wie der Draht zu biegen ist. Einziges Problem ist die Verklebung von Drahtbügel und Nylon-Streifen (besonders Nylon ist schlecht zu verkleben). Ich habe Heißkleber verwendet, alternativ wäre es auch möglich, den Draht zu erhitzen und in den Nylonstreifen einzudrücken - Vorsicht, damit sich das Nylon nicht ganz auflöst!&lt;br /&gt;
&lt;br /&gt;
= Noch geplante Themen =&lt;br /&gt;
&lt;br /&gt;
*Einbau von Normschächten&lt;br /&gt;
&lt;br /&gt;
*Stomführende Kupplungen&lt;br /&gt;
&lt;br /&gt;
*Kupplungs-Knowhow&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Fahrzeuge]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12504</id>
		<title>Gleiswendel</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12504"/>
				<updated>2008-11-11T13:30:51Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Unter einer Gleiswendel versteht man eine schraubenförmige Gleisfigur. Mit ihnen lässt sich kompakt an Höhe gewinnen, um z. B. von der sichtbaren Ebene in einen unter der Anlage angeordneten [[Schattenbahnhof]] zu kommen. Dieser Artikel beschreibt, wie man eine Gleiswendel aufbauen kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; =&lt;br /&gt;
&lt;br /&gt;
Bei meiner ehemaligen Anlage &amp;quot;Bad Knüsselsdorf&amp;quot; mußte ein Höhenunterschied von 30cm zwischen Bahnhof und [[Schattenbahnhof]] überwunden werden. Dazu kam nur eine Wendel in Frage, deren Konstruktion ich im folgenden beschreiben möchte.&lt;br /&gt;
&lt;br /&gt;
= Abmessungen =&lt;br /&gt;
&lt;br /&gt;
Der Platz für die Wendel war vorgegeben, mehr als ein Radius von 50cm war nicht unterzubringen. Obwohl ich sonst Flexgleise einsetze, wählte ich hier fertig vorgebogenes Gleis und entschied mich für den ROCO-LINE R4 (48,1cm). Die lichte Höhe zwischen zwei Gängen der Wendel sollte inklusive Gleis ca. 7cm betragen. Bei einer Trassendicke von 1,6cm ergab sich damit eine Höhendifferenz von gut 9cm pro Umlauf, insgesamt also eine Steigung von ungefähr 3%. Die Trassenbretter waren 10cm breit, damit rechts und links neben dem Gleis genügend Platz für die Gewindestangen blieb.&lt;br /&gt;
&lt;br /&gt;
Ein paar Hinweise für die Ermittlung der Abmessungen beim Nachbau:&lt;br /&gt;
&lt;br /&gt;
7cm lichte Höhe reichen bei der Verwendung von Kunststoffgleis sogar für Oberleitungsbetrieb. Natürlich können keine Masten gesetzt werden, aber ein Gleisprofil unter der Trassenunterseite sollte für den sicheren Betrieb genügen. Andererseits sollten 7cm tunlichst nicht unterschritten werden. Es lassen sich zwar beim Dampf- und Dieselbetrieb noch 10-15mm &amp;quot;herauskitzeln&amp;quot;, aber dann wird es sehr eng, falls man eines Tages entgleiste Fahrzeuge wieder auf die Schienen setzen möchte. Bei der Dicke der Trassenbretter sind vielleicht noch 5mm drin.&lt;br /&gt;
&lt;br /&gt;
Hier ein paar Beispiele für die resultierenden Steigungen bei unterschiedlichen Abmessungen, die Radien entsprechen dabei dem ROCO-LINE Programm.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Lichte Höhe&lt;br /&gt;
! Trassendicke&lt;br /&gt;
! R2=35,8cm&lt;br /&gt;
! R3=42,0cm&lt;br /&gt;
! R4=48,1cm&lt;br /&gt;
! R5=54,3cm&lt;br /&gt;
! R6=60,4cm&lt;br /&gt;
|-&lt;br /&gt;
|7cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,8%&lt;br /&gt;
| 3,3%&lt;br /&gt;
| 2,8%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,3%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,4%&lt;br /&gt;
| 2,9%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,2%&lt;br /&gt;
| 2,0%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,0cm&lt;br /&gt;
| 3,1%&lt;br /&gt;
| 2,7%&lt;br /&gt;
| 2,3%&lt;br /&gt;
| 2,1%&lt;br /&gt;
| 1,8%&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Man sollte stets versuchen, die Steigung so gering wie möglich zu halten, also einen möglichst großen Radius zu wählen. Die Steigung sollte 3 % nicht überschreiten, um einen sicheren Betrieb zu gewährleisten. Bei einer 2gleisigen Wendel sollte das nach oben führende Gleis nach Möglichkeit außen liegen (größerer Radius, geringere Steigung).&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
= Ein solides Fundament =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix4.gif|thumb|292px|Die Befestigung mit Gewindestangen geschieht alle 45°.]]&lt;br /&gt;
Eine große Platte aus 1,6cm Tischlerplatte diente als Grundplatte für die Gleiswendel. Ich zeichnete die Innen- und Außenkante der Trassenbretter mit einem Schnurzirkel an und legte probehalber einen Schienenkreis aus. Der Kreis wurde in 45 Grad-Segmente unterteilt (und weil ich dann Hunger auf Pizza bekam, machte ich erstmal eine Pause)&lt;br /&gt;
&lt;br /&gt;
Danach wurden die Kanten entlang der Markierungen mit einer Stichsäge ausgesägt. Eine Kante blieb gerade, dort wurde die Wendel später an der Zimmerwand befestigt .&lt;br /&gt;
&lt;br /&gt;
Entlang der 45-Grad Markierungen bohrte ich dann 6mm Paß-Löcher für die Gewindestangen, jeweils 1,5cm von der Außen- bzw. Innenkante entfernt. HINWEIS: An dieser Stelle sollte man die Gewindestangen nach dem ersten Paar Löcher probehalber einfügen und mit dem längsten verfügbaren Fahrzeug Testfahrten durchführen. Ich benutzte dazu einen 26,4m Personenwagen im Längenmaßstab 1/87.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Das Trassenbrett =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix2.jpg|framed|Die Preßspanbretter und Sperrholzbretter überlappen an den Stoßstellen, damit keine Knicke entstehen.]]&lt;br /&gt;
Das Trassenbrett entstand aus zwei 8mm dicken Holzstreifen. Auf der Unterseite nahm ich Preßspann, nach oben zum Gleis hingegen Sperrholz, da dort die Gleise festgeschraubt werden sollten. Mit Hilfe der fertig geschnittenen Grundplatte machte ich eine Pappschablone und sägte einige Stücke aus den Holzplatten aus. Schließlich baute ich daraus ¾-Kreise zusammen und achtete darauf, daß die Fugen immer versetzt blieben, ähnlich einem Ziegelmauerwerk. Damit vermeidete ich Knicke zwischen den Übergängen. Bei jedem der Teilkreise achtete ich darauf, daß am &amp;quot;unteren&amp;quot; Ende die obere Holzlage hervorschaute und am &amp;quot;oberen&amp;quot; Ende die untere Lage überstand. Beim späteren Zusammenbau (von unten nach oben) überlappt der neue Abschnitt den vorherigen. Schließlich wurden die Teile später immer von oben eingesetzt!. Wenn ein Teilkreis fertig war, befestigte ich das erste Stück des nächsten Abschnittes mit Schraubzwingen daran, um den richtigen Versatz zu bekommen. Genauigkeit ist nicht so wichtig (das ist wiederum wichtig für mich), kleine Lücken von 1-2mm zwischen benachbarten Abschnitten sind nicht problematisch. Nachdem alles fertig war, klemmte ich alles mit Schraubzwingen auf die Grundplatte und bohrte 6mm Löcher durch das ganze Paket, dabei benutzte ich die Löcher in der Grundplatte als Führung. Danach nahm ich wieder alles auseinander und bohrte die Löcher in den Trassenbretter (nicht die in der Grundplatte!) auf 8mm auf, um später genug Spiel für die Feinjustage zu haben. HINWEIS: Vor dem Bohren sollten die Teilstücke sorgfältig ausgerichtet werden!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Aufwärts bitte! =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix3.gif|thumb|365px|Die Trassenbretter werden mit Muttern in der Höhe exakt ausgerichtet und befestigt.]]&lt;br /&gt;
&lt;br /&gt;
Ich befestigte die M6-Gewindestangen mit Unterlegscheiben und M6-Muttern an der Grundplatte. Dann fügte ich das erste Teilstück hinzu (dabei sollte man nicht vergessen, zuvor die nötige Anzahl Muttern und Scheiben einzulegen!) und schraubte die Gleise auf die Trasse. Das nächste Trassenbrett nebst nötigen Kleineisen wurde eingesetzt und am vorherigen festgeklebt. SEHR WICHTIG: Das Gleis wurde sorgfältig verlegt und Gleisstöße genau an den Segmentenden vermieden, ggfs. unter Einsatz von ½ Gleisstücken. Nachdem alles montiert war, befestigte ich die Wendel am Anlagenunterbau. Dann war die Feinjustage an der Reihe. Mit Hilfe der Muttern war es einfach, die richtigen Höhen von unten nach oben einzustellen. Ich nutzte die Grundplatte als Referenz, notierte mir die richtigen Höhenmasse und stellte sie mit einem Lineal und Schraubenschlüssel ein. Neben dem sauber verlegtem Gleis ist auch eine gleichmäßige Steigung sehr wichtig für die Betriebssicherheit. Daher kontrollierte ich mehrmals, ob alle Abstände nun wirklich richtig waren..&lt;br /&gt;
&lt;br /&gt;
Vorsichtige Modellbahner können die Muttern jeweils noch mit einer Kontermutter versehen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Der Abschluß =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix1.jpg|framed|Die Gleiswendel wird mit einem abnehmbaren Landschaftsteil überbaut.]]&lt;br /&gt;
&lt;br /&gt;
Bei der Gleisverlegung muß (wie in allen verdeckten Abschnitten) mit besonderer Sorgfalt gearbeitet werden. Vor dem Weiterbau der Anlage müssen umfangreiche Testfahrten stattfinden. Nach dem Überbau mit Landschaft ist die Gleiswendel nur schwerer zu erreichen, um Fehler zu beheben. &lt;br /&gt;
&lt;br /&gt;
Natürlich blieb ein großes Loch in der Mitte der Wendel. Aus den Überresten der Grundplatte baute ich eine abnehmbare Abdeckplatte. Als Ummantelung plante ich Hartfaserplatten, welche sich genügend biegen lassen. Bevor ich jedoch dazu kam, wurde &amp;quot;Bad Knüsselsdorf&amp;quot; wegen Umzug abgebaut. Mittlerweile deutet es sich ab, daß auch &amp;quot;Bad Knüsselsdorf II&amp;quot; mit einer Wendel ausgestattet werden wird. Die alte Gleiswendel läßt sich in Grenzen anpassen: Zusätzliche &amp;quot;Umdrehungen&amp;quot; lassen sich durch Verlängerungen der Gewindestangen ansetzen. Geringe Abweichungen in den Höhenlagen können durch die Muttern eingestellt werden. Das alte Bauteil wird also wahrscheinlich weiter verwendet werden ... &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Der ursprüngliche Autor Frank Forsten pflegt seine Version auf seiner Homepage http://www.forsten-online.de&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Anlagenbau]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Lissy&amp;diff=12503</id>
		<title>Lissy</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Lissy&amp;diff=12503"/>
				<updated>2008-11-11T13:08:05Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Lissy steht für „Lok individuelles Steuerungs-System“ &lt;br /&gt;
&lt;br /&gt;
Lissy ist ein multifunktionales Steuerungssystem. Mittels Infrarot-Datenübertragung werden Lokadresse und Zugkategorie von einem Sender unter der Lok bzw. Wagen an einen Sensor im Gleis übertragen. Die Sensoren sind mit einem Empfänger verbunden, der programmierbare Fahr- oder Schaltbefehle, oder auch Belegtzustände über das [[LocoNet|LocoNet]] an die Zentrale und weitere LocoNet Teilnehmer überträgt. In Verbindung mit LocoNet Zentralen, wie etwa die [[Digitalzentralen|Intellibox]] oder das [[Digitalzentralen|Twin Center]], können komplexe Funktionen gesteuert werden. Dazu zählt die automatische Steuerung eines [[Schattenbahnhof|Schattenbahnhofs]], oder die [[Blockstreckensteuerung|Blocksteuerung]] einer durch [[Blockstreckensteuerung|Blöcke]] gesicherte Fahrstrecke. Auch ein Pendelverkehr mit wechselnden Zügen, kann halbautomatisch oder auch vollautomatisch gesteuert werden. Einfache Funktionen, wie etwa ein einzelner [[Pendelzug|Pendelzug]] ist auch schon mit dem [[Digitalzentralen|LokBoss]] von Fleischmann möglich.&lt;br /&gt;
&lt;br /&gt;
Lissy wurde in Zusammenarbeit von [[Hersteller|Fleischmann]] und [[Links_Hersteller_Zubehör|Uhlenbrock]] entwickelt.&lt;br /&gt;
&lt;br /&gt;
Uhlenbrock führt das System unter dem Namen Lissy.&lt;br /&gt;
&lt;br /&gt;
Fleischmann führt das System unter dem Namen Train-Navigation&lt;br /&gt;
&lt;br /&gt;
Weitergehende Informationen sind im Handbuch von Uhlenbrock zu finden.&lt;br /&gt;
http://www.uhlenbrock.de/3/9/0/I280CEBF-045.apd/Bes68000-02.pdf &lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=POM&amp;diff=12502</id>
		<title>POM</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=POM&amp;diff=12502"/>
				<updated>2008-11-11T13:05:05Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Vorlage Glossar verwendet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Glossar}} Programming On Main.&lt;br /&gt;
&lt;br /&gt;
Das Einstellen der Konfigurationsvariablen (CV) während des Betriebs auf dem Hauptgleis. Die Werte der Variblen können i.d.R. nicht gelesen, sondern nur eingestellt werden.&lt;br /&gt;
&lt;br /&gt;
Im Englischen findet man dafür häufiger den Begriff »Operations Mode Programming« als Gegensatz zum »Service Mode Programming«.&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=MM2&amp;diff=12501</id>
		<title>MM2</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=MM2&amp;diff=12501"/>
				<updated>2008-11-11T13:00:23Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: Redirekt auf MM&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[MM]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=DCC-friendly&amp;diff=12500</id>
		<title>DCC-friendly</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=DCC-friendly&amp;diff=12500"/>
				<updated>2008-11-11T12:55:03Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* DCC-friendly */  Optik&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Kategorie:Gleise]]&lt;br /&gt;
[[Kategorie:Glossar]]&lt;br /&gt;
&lt;br /&gt;
Dieser genaugenommen fehlbesetzte Begriff bezeichnet den Umbau einer Weiche, bei der das polarisierte Herzstück vollständig von den Zungen getrennt wird. &lt;br /&gt;
In vielen Fällen soll herstellerseitig das Herzstück über die Zungen mit Spannung versorgt werden, was verschiedene Nachteile hat.&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;der Kontakt ist schmutzanfällig&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;der Anpreßdruck der Zungen muß sehr hoch sein, um einigermaßen Kontakt zu haben, das erfordert unverhältnismäßig starke Weichenstelleinrichtungen&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;bei ungünstiger Konstellation können Radsätze Kurzschlüsse zwischen Herzstück und abliegender Zunge verursachen&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Bild:DCC_Weiche_abzweigend.png|framed|left|Die gestrichelten Linien stellen die beweglichen Zungen dar, über die der Herzstückbereich mit Strom versorgt wird.]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Abhilfe schafft ein schmerzloser Schnitt durch die Zungen kurz vor dem Herzstück. Die Zungen werden fest mit den Backenschienen verdrahtet, das Herzstück wird über einen Schalter versorgt, der mit dem Weichenatrieb verbunden ist.&lt;br /&gt;
&lt;br /&gt;
[[Bild:DCC_Weiche_Umbau_abzweig.png|framed|left|Der grün dargestellte Bereich wird je nach Weichenlage mit der rechten oder linken Außenschiene verbunden. Der Umschalter befindet sich am  [[Weichenantriebe|Weichenantrieb]].]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Beispiele für einen solchen Umbau:&lt;br /&gt;
* [[Digitalumbau Tillig Elite Weichen|Tillig H0 Elite Weiche]]&lt;br /&gt;
* [http://cygbert.franken.de/anlage/weichenumbau/ Peco N Code 55 Weiche]&lt;br /&gt;
* [http://www.tt-digital.de.vu/tt-bahn/digi_tipps/weiche/index.html Schaltung mit 2 Wechselkontakten], bei der die Weichenzungen in Abhängigkeit der Weichenlage stromlos geschaltet werden.&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=M%C3%A4rklin_H0_:_Das_M%C3%A4rklin-System&amp;diff=12486</id>
		<title>Märklin H0 : Das Märklin-System</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=M%C3%A4rklin_H0_:_Das_M%C3%A4rklin-System&amp;diff=12486"/>
				<updated>2008-11-04T16:29:13Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Kunststoff-Gleise */ Link gesetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Das Märklin-System=&lt;br /&gt;
&lt;br /&gt;
==Das Märklin-Gleissystem==&lt;br /&gt;
&lt;br /&gt;
===Allgemeines zum Gleissystem===&lt;br /&gt;
&lt;br /&gt;
====Welche Gleise kann ich benutzen?====&lt;br /&gt;
&lt;br /&gt;
Nicht alle Modelle, die von anderen Firmen für das Märklinsystem produziert wurden, einschließlich umgerüsteter Modelle, können ohne Probleme auf Märklingleisen betrieben werden. Innerhalb der Produktpalette von Märklin sind mit wenigen Ausnahmen (siehe unten) alle Gleise für alle Modelle geeignet&lt;br /&gt;
&lt;br /&gt;
====Welche Radien gibt es?====&lt;br /&gt;
&lt;br /&gt;
Im Metallgleissortiment &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;(seit 2001 nicht mehr im Programm&amp;quot;!) &amp;lt;/font&amp;gt; gab es 5 Radien: &amp;lt;br /&amp;gt;Industriekreis/R0 (R = 286 mm) mit 5120 &amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 5100 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 437,4 mm) mit 5200 &amp;lt;br /&amp;gt; Großkreis I/R3 (R = 535 mm) mit 3800, &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(nur von 1953 bis 1957 im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Großkreis II/R4 (R = 585 mm) mit 3900, &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(nur von 1953 bis 1957 im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[#Metall-Gleise | Metall-Gleise]]&lt;br /&gt;
&lt;br /&gt;
Das Kunststoffgleissortiment hat ebenfalls 5 Radien &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(die K-Gleise der 21xx-Serie sind nicht mehr im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Industriekreis/R0 (R = 295 mm) mit 2110 oder 2210 &amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 2121 oder 2221 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 424,6 mm) mit 2131 oder 2231 &amp;lt;br /&amp;gt; Großkreis I/R3,5 (R = 553,9 mm) mit 2141 oder 2241 &amp;lt;br /&amp;gt; Großkreis II/R4,5 (R = 618,5 mm) mit 2151 oder 2251 &amp;lt;br /&amp;gt; beliebige Radien (erst ab 360mm Radius empfehlenswert) können mit dem Flexgleis 2205 individuell zugeschnitten werden.&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[Märklin_H0_:_Das_Märklin-System#Kunststoff-Gleise | Kunststoff-Gleise]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das C-Gleissortiment hat zur Zeit folgende Radien &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ACHTUNG: C-Gleise haben kein Industrieradius mehr!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 24130 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 437,5 mm) mit 24620 &amp;lt;br /&amp;gt; Großkreis I//R3 (R= 515mm) mit 24330 &amp;lt;br /&amp;gt; Großkreis II/R4 (R=579,3mm) mit 24430 &amp;lt;br /&amp;gt; Großkreis III/R5 (R=643,6mm) mit 24530 &amp;lt;br /&amp;gt; Riesenkreis III/R9 (R=1114,6mm) mit 24912 &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ACHTUNG: bislang nur in Form von Weichen und Gegenbögen vorhanden!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[Märklin_H0_:_Das_Märklin-System#C-Gleise| C-Gleise]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zwischenradien können bei allen Gleistypen aus einem kleineren Radius mit kleinen, geraden Gleisstücken erzeugt werden.&lt;br /&gt;
&lt;br /&gt;
====Welche Gleise kann ich im DC-Betrieb benutzen?====&lt;br /&gt;
&lt;br /&gt;
Für den 2-Leiter-DC-Betrieb und den 3-Leiter-Betrieb '''&amp;lt;u&amp;gt;nicht&amp;lt;/u&amp;gt;''' geeignet sind die M-Gleise der 3600, 5100 und 5200-Reihe. Weichen der Kunststoffgleise haben verbundene Außenleiter (22xx-Serien), sodaß hier Umbaumaßnahmen zum (Außenleiter-)DC-Betrieb notwendig sind. Alle anderen Gleise von Märklin sind DC-tauglich.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Welche Fahrzeuge kann ich auf den Gleisen betreiben?====&lt;br /&gt;
&lt;br /&gt;
Bei historischen Modellen, die mit &amp;quot;Pilzschleifern&amp;quot; (&amp;lt;span class=&amp;quot;Kommentar&amp;quot;&amp;gt;diese Schleifer sehen von der Seite aus wie umgedrehte Pilze&amp;lt;/span&amp;gt;) ausgestattet sind, sind zum Betrieb mit Punktkontaktgleisen nicht zu empfehlen. Gleiches gilt teilweise auch für &amp;quot;Löffelschleifer&amp;quot;. Für den Betrieb auf den heutigen Märklingleisen sind die &amp;quot;Skischleifer&amp;quot; betriebssicher. Fremdfabrikate mit diesen Schleifertypen (z.B. Trix-Express) sind ebenfalls &amp;lt;u&amp;gt;&amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;NICHT&amp;lt;/font&amp;gt;&amp;lt;/u&amp;gt; betriebssicher. Diese Schleifertypen können sich bei Weichen in den Herzstücken verhaken und die Lok bzw. den Zug zum Entgleisen bringen. Mit den ehemaligen Mittelschienengleisen können alle Schleifertypen betrieben werden.&lt;br /&gt;
&lt;br /&gt;
====Welche Radien können befahren werden?====&lt;br /&gt;
&lt;br /&gt;
* Der derzeitige Standardradius beträgt 360mm. Alle Märklinfahrzeuge können diesen Radius ohne Probleme im Normalfall befahren.&lt;br /&gt;
* Angesetzte Details (Kolbenstangenschutzrohre, Schürzen, etc.) vergrößern den Mindestradius (siehe auch die Bedienungsanleitung zum Modell)&lt;br /&gt;
&lt;br /&gt;
** Nicht betriebssicher sind:&lt;br /&gt;
*** 2-achsige Personen- und Güterwagen mit einem Achsstand &amp;gt;10cm auf R0&lt;br /&gt;
*** 4-achsige Personenwagen mit einem Drehgestellabstand &amp;gt;20cm auf R0&lt;br /&gt;
*** Wagenverbände mit Kurzkupplung im Schiebebetrieb in Radien &amp;lt;= R1&lt;br /&gt;
*** neuere Schnellzugdampfloks ab Baujahr 1973, und alle Varianten der BR 41 auf R0&lt;br /&gt;
*** Güterzugdampfloks neuerer Produktion ohne Knickrahmen auf R0&lt;br /&gt;
*** Schienenzeppeline aller Varianten auf R0 und in Gegen (d.h. S-)Kurven&lt;br /&gt;
*** 1:100 und 1:87-Modelle von anderen Herstellern in R0&lt;br /&gt;
*** 1:100 und 1:87 bei M-Gleisweichen mit großen (d.h. quadratischen) Laternenköpfen&lt;br /&gt;
** Problematisch sind außerdem:&lt;br /&gt;
*** Alle Varianten der BR 41 können auf Weichen des Normalkreises, vor allem beim M-Gleis, entgleisen.&lt;br /&gt;
*** Alle Varianten der BR 18.1 mit kurzem Tender neigen bei großen Zuglasten zum Entgleisen bei Radien &amp;lt; R5.&lt;br /&gt;
*** 1:100-Schnellzugwagenmodelle von Märklin in R0 (bedingt)&lt;br /&gt;
*** Schienenzeppelin 3077 bei hoher Geschwindigkeit in Radien &amp;lt;R2&lt;br /&gt;
** Empfehlungen:&lt;br /&gt;
*** wirklich nur kurze Industriegleise für kleine, zweiachsige Wagen und kurze Loks mit max. 3 Achsen verlegen.&lt;br /&gt;
*** S-Kurven vermeiden.&lt;br /&gt;
*** keine Hauptstrecken mit Industrieradius versehen.&lt;br /&gt;
*** besondere Vorsicht mit Modellen bei hoher Geschwindigkeit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Welche Steigungen können befahren werden?====&lt;br /&gt;
&lt;br /&gt;
Generell für Steigungen gilt, daß '''vor allem''' der Übergang zwischen Ebene und Steigung nicht zu abrupt geschehen darf (längere Fahrzeuge bleiben sonst im Knick hängen). Der maximale, störungsfrei zu bewältigende Übergang aus der Ebene für alle bisher produzierte Märklinmodelle in H0 ist von 0 auf 1:20 (von 0 auf 5%). Sind Wagenmodelle mit 30,3cm (1:87 Schnellzugwagen) vorhanden, so sollte der maximale Übergang von 0 auf 1:50 (2%) nicht überschreiten. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Bei Clubanlagen und ausreichend Platz sollte die allgemeine Empfehlung von 3% nicht überschritten werden&lt;br /&gt;
* Alle Märklin-H0-Modelle können 5% problemlos bewältigen, lediglich Modelle mit Märklin-Faulhabermotor werden deutlich langsamer&lt;br /&gt;
* Falls der Platz nicht ausreicht, können bis 15% Steigung bewältigt werden. Ab 10% haben einige Modelle Probleme die Steigung in Solofahrt zu bewältigen&lt;br /&gt;
* In Spezialfällen sind Steigungen bis 20% und mehr möglich. '''Derartige Steigungen sollten wirklich nur die Ausnahme bleiben.'''&lt;br /&gt;
&lt;br /&gt;
Wenn man große Steigungen schon einrichtet, dann sollte die Rampe auch gut gegen ein Durchhängen gesichert sein, sonst sind die Modelle durch noch größere Steigungen überlastet. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Folgende Auflistungen basieren auf Erfahrungswerten von Modellbahnern. Sie erheben keinen Anspruch auf generelle Anwendbarkeit!'''&amp;lt;br /&amp;gt; Viele betriebliche Probleme können durch Pflege des Rollmaterials behoben bzw. durch intensive Schieneninstandhaltung '''&amp;lt;u&amp;gt;&amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ÖL!)&amp;lt;/font&amp;gt;&amp;lt;/u&amp;gt;''' vermieden bzw. beseitigt werden.&lt;br /&gt;
&lt;br /&gt;
Modelle, die 10% Steigung in Solofahrt unter Umständen nicht bewältigen können sind:&lt;br /&gt;
&lt;br /&gt;
* 3015/CCS800/30159/36159 (schweizer Krokodil Ce 6/8 II mit SLFCM)&lt;br /&gt;
* 33591 (schweizer Doppellokomotive Typ Ae 8/14 mit DELTA und DCM2)&lt;br /&gt;
&lt;br /&gt;
Betriebsprobleme bei Zugfahrten mit mehr als 5 Wagen vom Typ C4i Wü 01 (Nr. 4211) ab 3% Steigung können mit Modellen, die den Faulhabermotor 1717 oder den Sinus-Motor haben auftreten. Falls der Zug an Hp0 stehen soll, rollt der Zug ggf. rückwärts den Hang hinunter. Dies gilt für alle Betriebsarten (analog/digital). Davon betroffen sind bislang:&lt;br /&gt;
&lt;br /&gt;
* (3311, 3411, 3511, 3513, 3514, 3611, 3613, 3614, 3711, 34112, 34113, 37112, 37113 als Varianten der BR 18.1, 34059,37059 als Varianten der BR 59)&lt;br /&gt;
* alle Modelle mit der Katalognummer 39xxx, die einen Sinus-Motor enthalten können bei Zughalt in Steigungen bergab rollen&lt;br /&gt;
&lt;br /&gt;
Dieses Problem läßt sich durch geeigneten Anlagenaufbau vermeiden (keine Halteabschnitte in Steigungen). &amp;lt;br /&amp;gt; Bei noch höheren Zuglasten (8 Wagen) kann es ab 5% zum Stillstand auf der Steigung kommen.&lt;br /&gt;
&lt;br /&gt;
===Compound-Gleise===&lt;br /&gt;
&lt;br /&gt;
====Alpha-Gleise====&lt;br /&gt;
&lt;br /&gt;
Im Jahre 1988 wurde das bisherige Gleis-System aus K- bzw. M-Gleisen durch das &amp;quot;Alpha-Gleis&amp;quot; mit der Bezeichnung &amp;quot;Gleis 2000&amp;quot; erweitert. Diese Gleise waren eine Kombination Kunststoff-Böschungskörper und Metall-Gleisen und stellten mit ihrem neuen Stecksystem die Vorläufer der C-Gleise dar. Diese Gleise waren nur von 1988 bis 1996 im Programm. Die angebotenen Gleisstücke orientierten sich in ihrem Raster am M-Gleis (180mm, R1, R2):&lt;br /&gt;
&lt;br /&gt;
* 2001 Gerade 1/1 (180mm)&lt;br /&gt;
* 2006 6 gerade Gleise 2001 1/1 mit Verpackung als Brücke&lt;br /&gt;
* 2019 Prellbock (70mm)&lt;br /&gt;
* 2021 Gebogenes Gleis 1/1 R1 (r=360mm, 30°)&lt;br /&gt;
* 2026 6 gebogene Gleise 2021 1/1 mit Verpackung als Brücke&lt;br /&gt;
* 2031 Gebogenes Gleis 1/1 R2 (r=456,4mm, 30°)&lt;br /&gt;
* 2062 Weiche R1 links (180mm/30°)&lt;br /&gt;
* 2063 Weiche R1 rechts (180mm/30°)&lt;br /&gt;
* 2090 Anschluß gerade 1/1 (180mm)&lt;br /&gt;
* 2091 Übergangsgleis Alpha-M-Gleis, gerade 1/1 (180mm)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt; Dieses Gleissystem wurde ohne Ausgleichsgleise angeboten.&lt;br /&gt;
&lt;br /&gt;
====C-Gleise====&lt;br /&gt;
&lt;br /&gt;
'''Vorbemerkungen'''&lt;br /&gt;
&lt;br /&gt;
Umfangreiche Informationen zum C-Gleis erhält man zunächst auf den Produktseiten der Firma Märklin. Folgende Hinweise mögen als praxisbezogene und kostensparende Ergänzung dienen. &amp;lt;br /&amp;gt;[[Image:märklin-c-gleis.jpg | framed|left]] '''Gleisanschlüsse'''&amp;lt;br /&amp;gt; Für den Anschluß der C-Gleise gibt es die Anschlußgarnitur 74040 mit Flachsteckhülsen zum Anstecken an das Gleis. Die Anschlüsse lassen sich auch sehr leicht löten (roter Pfeil).&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt; Für die Trennung des Mittelleiters der C-Gleise gibt es die Mittelleiter-Isolierung 74030. Diese, in Form kleiner, roter Hütchen produzierten Isolationen werden über die inneren Kontaktlaschen geschoben und unterbrechen damit die Verbindung. Pro Packung (74030) sind acht Hütchen für vier Trennstellen enthalten. Flexibler läßt sich der Mittelleiter an der Unterseite des Gleises (zwischen den Pukos!) mit der Minitrennscheibe unterbrechen (grüner Pfeil). Diese Trennung läßt sich später gegebenenfalls durch eine Kabelbrücke zwischen den beiden B-Anschlüssen des Gleises wieder schließen.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; Das Prinzip des Kontaktgleises auf zwei elektrisch getrennten Gleisen, wobei nur eine Seite an Masse angeschlossen ist. Das andere Gleis wird dann durch die Radsätze mit Masse verbunden. Beim C-Gleis haben die beiden Gleise jeweils ihre eigenen Kontakte und sind nur an beiden Enden durch eine Brücke miteinander verbunden.Durchtrennt man diese beiden Brücken (gelbe Pfeile), so hat man bereits ein Kontaktgleis. Diese Trennung läßt sich später gegebenenfalls durch eine Kabelbrücke zwischen den beiden 0-Anschlüssen des Gleises wieder schließen. Am Anfang und Ende der Kontaktstrecke muß nun allerdings noch jeweils eine Gleistrennung erfolgen. Bequemste (leider auch teuerste und unflexibelste) Lösung ist der Kontaktgleis-Satz 24995. Die einfachste Lösung - aber später nicht mehr rückgängig zu machen - wäre auch hier wieder die Trennscheibe. Da die Gleise aber konstruktionsbedingt keine Schienenverbinder besitzen, reicht eines der oben erwähnten Isolierungs-Hütchen auf der äußeren Kontaktzunge zur Trennung der Gleise (solange diese sich nicht durch unebenen Untergrund oder Fertigungstoleranzen berühren sollten - ist bei mir &amp;lt;small&amp;gt;''(B.N. Anm. des Autors)''&amp;lt;/small&amp;gt; bisher aber nicht vorgekommen).&lt;br /&gt;
&lt;br /&gt;
'''Anwendungsbeispiel'''&amp;lt;br /&amp;gt; Ein Anlagenbau nach diesen Regeln wird unter [http://www.noethlich.net/modellbahn  http://www.noethlich.net/modellbahn] dokumentiert.&lt;br /&gt;
&lt;br /&gt;
===Kunststoff-Gleise===&lt;br /&gt;
&lt;br /&gt;
'''K-Gleise'''&amp;lt;br /&amp;gt; bestehen - genau wie die C-Gleise - aus zwei gegeneinander isolierten Aussenschienen sowie einem verdeckt in den Schwellen angeordnetem Mittelleiter.&amp;lt;br /&amp;gt; Es gibt zwei grundsätzlich unterschiedliche Gleistypen:&lt;br /&gt;
&lt;br /&gt;
[[Image:märklin-k-gleis.jpg|framed|left]]&lt;br /&gt;
&lt;br /&gt;
* Serie 21xx von 1969 - 1980 gefertigt, mit Hohlprofilschienen (gefalzten Schienen) und breiten Kontaktlaschen (im Bild links)&lt;br /&gt;
* Serie 22xx seit 1980 gefertigt mit Vollprofilschienen (massiv, vorbildgetreuer) und engen Kontaktlaschen. (Bild rechts)&lt;br /&gt;
&lt;br /&gt;
Die K-Gleise sind systembedingt empfindlicher als C- und M-Gleise und eignen sich damit nur bedingt für den Aufbau fliegender Anlagen. Allerdings hat ein Tritt auf ein solches Gleisstück nicht die verheerenden Folgen wie das z. B. bei M-Gleisen der Fall ist.&amp;lt;br /&amp;gt; Kritisch ist vor allem das Zusammenstecken der Gleise, insbesondere im Bereich von Weichenstraßen. Nur allzu schnell bricht das außenliegende Stück der Schwelle ab und muß dann durch entsprechende Landschaftsgestaltung kaschiert werden, sofern das Bruchstück nicht wieder anzukleben ist. Beim Übergang von 21xx auf 22xx Gleise müssen die engeren, weil höher ausgeführten Schienenverbindungslaschen der 22xx-Gleise mit recht großem Druck zusammgefügt werden; dies kann insbesondere bei kurzen Gleisstücken zu Verschiebungen bis hin zum Ausbrechen der Schienen führen. Daher sollte in solchen Bereichen nur 'sortenrein' verlegt werden.&lt;br /&gt;
&lt;br /&gt;
'''Anschlußgleise'''&amp;lt;br /&amp;gt;[[Image:märklin-kgleisunten.jpg|framed|right]]&amp;lt;br /&amp;gt; Neben dem Standardanschlußgleis 2290 (2292 mit Entstörkondensator) von Märklin besteht die Möglichkeit, jedes beliebige Gleisstück mit einer Anschlußleitung zu versehen. Dazu muß nur auf der Unterseite ein Kabel an das in der Schwellenmitte freiliegende Kupferblech gelötet werden (gelber Pfeil). Vorsichtig und schnell (=heiß) arbeiten, damit der darüberliegende Kunststoff keinen Schaden nimmt.&amp;lt;br /&amp;gt; Bei Bedarf kann auch an die Edelstahlprofile der Außenschienen ein Massekabel angelötet werden. Eine weitere Möglichkeit besteht darin, ein leicht V-förmig gebogenes (Feder-) Blech zwischen Schienenprofil und Schwellenunterbau zu schieben. Selbstverständlich ist vorher das Anschlußkabel an dieses Blech zu löten (Ähnlich dem Masseanschluß 7500 von Märklin).&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt; Zur Trennung der Mittelleiter müssen jeweils die beiden kupfernen Kontaktzungen unter den Schienenverbindern gegeneinander isoliert werden. Dazu gibt es von Märklin unter der Nummer 7522 passende Kunststoffeinsätze. Mit etwas Feingefühl läßt sich aber auch eine Isolierung aus Papier, dünner Pappe oder sogar Tesafilm verwirklichen. Dies ist aber nur bei fester Verlegung der Gleise verläßlich. &amp;lt;br /&amp;gt; Falls die Gleise 'mit absoluter Sicherheit und nie wieder' ausgebaut werden sollen, ist es auch denkbar, die Kontakzungen einfach abzutrennen.&amp;lt;br /&amp;gt; Die Mittelleitertrennungen sollten zur Erleichterung einer späteren Fehlersuche vor Ort gekennzeichnet werden.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; werden z. B. vor Bahnübergängen oder in [[Schattenbahnhof | Schattenbahnhöfen]] benötigt. Kontaktstrecken detektieren alle Fahrzeuge, die sich in ihrem Bereich befinden. Dies geschieht durch Überbrücken der von einander isolierten Außenschienen durch die Achsen der darauf befindlichen Fahrzeuge.&amp;lt;br /&amp;gt; Dies kann durch den Kontaktgleissatz 2295 von Märklin oder durch einfaches Auftrennen einer Außenschiene jeweils am Anfang und Ende der zu überwachenden Strecke erfolgen; da die Schienen gegeneinander isoliert sind, kann der Zwischenraum mit normalen Gleisen bestückt werden. Anwendungsbeispiele für Kontaktgleise/Kontaktstrecken finden sich im Artikel [[Gleiskontakte#Kontaktgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Schaltgleise'''&amp;lt;br /&amp;gt; werden zur kurzzeitigen Kontaktgabe, z. B. zum Schalten von Signalen und Weichen, eingesetzt. Mit den Märklin-Kontaktgleisen 2229, 2239 und 2299 ist zusätzlich eine richtungsabhängige Kontaktabgabe möglich.&amp;lt;br /&amp;gt; Dies geschieht durch einen Schaltnocken, der vom Schleifer der Lok (und natürlich auch entsprechend ausgerüsteter Waggons) in der Fahrtrichtung betätigt wird und für die Dauer dieser Betätigung den entsprechenden Kontakt schließt.&amp;lt;br /&amp;gt; Prinzipbedingt darf kein Fahrzeug mit Schleifer auf einem Schaltgleisstück zu stehen kommen (direkt angeschlossene Magnetartikel würden sonst in kurzer Zeit durchbrennen). &amp;lt;br /&amp;gt; Im Laufe der Jahre erlahmen die Federbleche, die den Schaltnocken in die Mittelstellung bringen. Im Gegensatz zu den Schaltgleisen der M-Serie lassen sich die K-Gleise kaum noch nachjustieren. Anwendungsbeispiele für Schaltgleise finden sich im Artikel [[Gleiskontakte#Schaltgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
===Metall-Gleise===&lt;br /&gt;
&lt;br /&gt;
'''M-Gleise'''&amp;lt;br /&amp;gt; mit Punktkontakten lösten ab 1957 Jahren die Mittelleiterschienen ab und wurden bis zum Jahr 2001 gefertigt und sind &amp;quot;werkseitig nicht mehr verfügbar&amp;quot;. Wer also eine Anlage mit M-Gleisen bauen oder erweitern will, ist auf die Restbestände im Handel oder auf Modellbahnbörsen und (Online-)Auktionen angewiesen.&lt;br /&gt;
&lt;br /&gt;
'''Anschlußgleise'''&amp;lt;br /&amp;gt; Hier ist die Auswahl etwas vielfältiger als bei den K-Gleisen, es gibt gerade (5111 bzw. 5130/31 mit Kondensator) und gebogene (5103) Gleise sowie ein Kabel mit einem Kontaktschuh, der wie bei den Signalen einfach an beliebiger Stelle zwischen die Mittelleiterlaschen gesteckt wird.&amp;lt;br /&amp;gt; Auch ist es möglich, sich selbst aus beliebigen normalen Gleisstücken ein Anschlußgleis zu bauen. &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;Vorsicht beim Löten!&amp;lt;/font&amp;gt; Bei neueren Gleisen bestehen die Isolatoren nicht mehr aus Preßpappe, sondern aus recht hitzeempfindlichen Kunststoff!!&amp;lt;br /&amp;gt; Das rote Kabel wird am einfachsten an der Basis der Kontaktzunge angelötet - je nach Zustand diese vorher etwas anrauhen, einen Lötkolben mit hoher Leistung (60-100W) benutzen und vor allem bei Kunststoffisolatoren extrem schnell arbeiten!&amp;lt;br /&amp;gt; Das braune Kabel kann bei Bedarf an einer beliebigen Stelle des Unterbaus, möglichst weit weg von jedem hitzeempfindlichen Fremdmaterial angelötet werden. Aber auch hier ein Hinweis an die Dauerlöter: irgendwann schmilzt auch die beste Kabelisolierung, das Gleis wird schneller heiß als man es erwartet und letztlich könnte es zu Verfärbungen der Oberseite kommen.&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt;[[Image:märklin-5015.jpg|framed|left]] Die braunen Pappplättchen, die Märklin jedem Signal beilegt, können ohne Probleme als Vorlage für eigene Kreationen aus Papier oder dünner Pappe dienen. Diese werden dann einfach zwischen die Kontakzungen geschoben, fertig ist die Trennstelle. Sinnvoll ist die Kennzeichnung dieser Stellen z. B. mit dem Trennzeichnen 5015/5016 (?), damit bei späterer Suche die gewollten von ungewollten Unterbrechungen unterschieden werden können.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; Hier gab es zwei verschiedene Gleistypen:&lt;br /&gt;
&lt;br /&gt;
* Das Anschlußset, bestehend aus zwei halben Gleisstücken, bei denen jeweils eine Außenschiene getrennt und isoliert montiert ist und dem isolierten Gleisstück, welches den Fahrbahnübergang sowie die elektrische Verbindung darstellt sowie die Gleise 5115 und 5116 zur Verlängerung dieser Trennstrecke. Sie werden fast ausschließlich für den vollautomatischen Bahnübergänge 7192 genutzt.&lt;br /&gt;
* Kontaktgleise 5104/5105 (1/1 gerade bzw. gebogen, bis 1972 produziert) und 5127 (1/2 gerade, bis 1961 produziert). Hier ist ein Teil der Außenschiene isoliert montiert und mit einer seitlich angebrachten Buchse verbunden. Urspünglich zum Schalten von Magnetartikel vorgesehen, sollten diese Gleise dafür nicht genutzt werden - die Kontaktgabe ist zu lang und die Gefahr des Durchbrennens der Spulen zu hoch. Ein sinnvolles Einsatzgebiet ist z.B. die Gleisbesetztmeldung.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese beiden Typen sind untereinander nicht kombinierbar. Anwendungsbeispiele für Kontaktgleise/Kontaktstrecken finden sich im Artikel [[Gleiskontakte#Kontaktgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Schaltgleise'''&amp;lt;br /&amp;gt; werden zur kurzzeitigen Kontaktgabe, z. B. zum Schalten von Signalen und Weichen, eingesetzt. Mit den Märklin-Kontaktgleisen 5146, 5147 und 5213 ist zusätzlich eine richtungsabhängige Kontaktabgabe möglich.&amp;lt;br /&amp;gt; Dies geschieht durch einen Schaltnocken, der vom Schleifer der Lok (und natürlich auch entsprechend ausgerüsteter Waggons) in der Fahrtrichtung betätigt wird und für die Dauer dieser Betätigung den entsprechenden Kontakt schließt.&amp;lt;br /&amp;gt; Prinzipbedingt darf kein Fahrzeug mit Schleifer auf einem Schaltgleisstück zu stehen kommen (direkt angeschlossene Magnetartikel würden sonst in kurzer Zeit durchbrennen). &amp;lt;br /&amp;gt; Im Laufe der Jahre erlahmen die Federbleche, die den Schaltnocken in die Mittelstellung bringen. Sie können - eventuell nach vorsichtigem Ausbau des Schaltnockens - mit einer kleinen Spitzzange nachgespannt werden. Gleichzeitig sollten die Kontaktflächen mit einem Kontaktpflegespray gereinigt werden. Anwendungsbeispiele für Schaltgleise im Artikel [[Gleiskontakte#Schaltgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
===Sonstige Gleise===&lt;br /&gt;
&lt;br /&gt;
====Übergangsgleise====&lt;br /&gt;
&lt;br /&gt;
Sie ermöglichen den Übergang zwischen Anlagenteilen, die mit unterschiedlichen Gleissystemen gebaut worden sind. Häufig anzutreffen ist zum Beispiel der [[Schattenbahnhof]] mit den alten M-Gleisen und der sichtbare Teil der Anlage mit K-Gleisen.&amp;lt;br /&amp;gt; Märklin bietet dazu drei Gleistypen an:&lt;br /&gt;
&lt;br /&gt;
* 2291 - Übergang M nach K&lt;br /&gt;
* 24922 - Übergang K nach C&lt;br /&gt;
* 24951 - Übergang M nach C&lt;br /&gt;
&lt;br /&gt;
====Entkupplungsgleis====&lt;br /&gt;
&lt;br /&gt;
Ermöglicht das fernstgesteuerte Abkuppeln bzw. Trennen von Zugverbänden. Wird das Gleis auf der Kuppe eines Ablaufberges montiert und steht dann auch noch das Abdrücksignal 7043 daneben, so ist ein sehr realitätsnahes Rangieren und Zusammenstellen neuer Züge möglich. Ersatzweise kann bei M- und C-Gleisen ein Lichtmast 5113 angesteckt werden.&amp;lt;br /&amp;gt; Probleme gibt es, wenn die Kupplungen unter mechanischer Spannung stehen (zu starkes oder zu schwaches Gefälle), verbogen sind, verschiedene Kupplungstypen gemischt werden oder stromführende Kurzkupplungen - sofern überhaupt trennbar - angewandt werden.&lt;br /&gt;
&lt;br /&gt;
====Bahnübergang====&lt;br /&gt;
&lt;br /&gt;
Ein nettes Ausstattungdetail, die angebotene Märklinpalette reicht vom mechanisch betätigten (d.h. vom Fahrzeuggewicht betätigten), eingleisigen Übergang bis hin zum vollautomatischen ein- oder zweigleisigen Übergang mit Halb- und Vollschranken, letztere gibt es für alle drei Gleissysteme.&amp;lt;br /&amp;gt; Gesteuert werden diese Übergänge durch Kontaktstrecken (s. o.). Der ambitionierte Modellbahner sollte sich allerdings aufgrund der im Laufe der Zeit sicher auftretenden Kontaktprobleme überlegen, ob er die Ansteuerung nicht über Schaltgleise und Universalfernschalter durchführen sollte - dann ist auch eine Einbindung in ein Signal- und Sicherheitskonzept möglich (siehe [[Modellbahnsteuerung_-_Beispiele_Analogbetrieb#Automatische Fahrwegsteuerung | Automatische Fahrwegsteuerung]])&lt;br /&gt;
&lt;br /&gt;
====Drehscheibe====&lt;br /&gt;
&lt;br /&gt;
Für jedes Dampflok-BW unerläßlich, leider auch nicht sehr Platzsparend. Konventionell betriebene Drehscheiben können grundsätzlich nur von Gleis zu Gleis fahren, ein Vorwählen eines bestimmten Anschlusses oder auch nur ein automatisiertes Wenden ist nicht vorgesehen. Eine Abhilfe wurde an anderer Stelle veröffentlicht, hier hilft Herr Ortwein (siehe [[#Danksagung]]) gerne weiter.&amp;lt;br /&amp;gt; Der Einbau erfordert keine Grube, ist jedoch aufgrund der Geräuschentwicklung im Betrieb zu empfehlen. Weitere Dämmungsmaßnahmen sind ebenfalls ratsam. Die Steuerung erfolgt über ein Stellpult mit zwei Tasten. Es können zwei dreiständige Lokschuppen bedient werden.&lt;br /&gt;
&lt;br /&gt;
====Schiebebühne====&lt;br /&gt;
&lt;br /&gt;
Für ein modernes Bw bietet sich die Schiebebühne an, da die Anlagen kompakter gestaltet werden können als bei einer Drehscheibe. Auch ist eine Elektrifizierung der Bühne einfacher und betriebssicherer möglich.&lt;br /&gt;
&lt;br /&gt;
====Prellbock====&lt;br /&gt;
&lt;br /&gt;
So unscheinbar dieses Gleisstück aussieht, so wichtig ist es im regulären Ablauf des Großbetriebes. Dabei spielt die Schutzfunktion am Gleisende nur eine untergeordnete Rolle. Zur Sicherung emfiehlt es sich, die Prellböcke entweder zu befestigen um größere Unfälle zu vermeiden falls ein Treibwagen ungebremst auffährt. Oder ausreichend Platz hinter dem Prellbock beim Aufstellen vorzusehen.&amp;lt;br /&amp;gt; Wesentlicher ist die - von Märklin nur durch ein rotes Band angedeutete - Signaltafel SH2 (Schutzhalt). Zur Bedeutung von Prellböcken siehe [./grundlag.html Grundlagen der Eisenbahnsicherungs- und Signaltechnik]. Die Prellböcke gibt es - je nach Gleissystem mit fester oder aufgesprengter Bohlenkonstruktion sowie mit zusätzlicher roter Laterne (Nachtzeichen zu SH2)&lt;br /&gt;
&lt;br /&gt;
===Gleissysteme im Vergleich===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;80%&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;10%&amp;quot; | &amp;amp;nbsp;&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | M-Gleis&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | K-Gleis&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | C-Gleis&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Vorbildtreue'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering bis mäßig'''&amp;lt;br /&amp;gt;Mit Ausnahme der 38xx/39xx-Gleise sind die Punktkontakte deutlich zu sehen.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr hoch'''&amp;lt;br /&amp;gt;Böschungskörper und Gleise können beliebig gestaltet werden.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;Böschungskörper stellt guten Kompromiß dar.&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Trittsicherheit'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''nicht gegeben'''&amp;lt;br /&amp;gt;Schiene und Böschung sind i.d.R. irreparabel geknickt.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;solange kein Drehmoment auf die Gleise einwirkt.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel'''&amp;lt;br /&amp;gt;Die ersten Gleise verloren den Weichmacher zu schnell und zerbrechen heute schon bei normalem Gebrauch. Neuere Gleise sollen das Problem nicht mehr haben. &lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Robustheit'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;geeignet für fliegende Anlagen, auch für Kinderhände einfach zusammensetzbar.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel'''&amp;lt;br /&amp;gt;Schienenverbindungen erfordern ruhige Hand und gutes Augenmaß.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;wurde aus einem Spielbahnsystem entwickelt, paßt aufgrund mech. Führung, benötigt keine Schienenlaschen. Für Kinder weniger Verletzungsmöglichkeiten als bei M-Gleisen&lt;br /&gt;
|-&lt;br /&gt;
| '''Radien'''&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; align=&amp;quot;MIDDLE&amp;quot; | '''siehe [[#Welche Radien gibt es? | Welche Radien gibt es?]]'''&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Geräusch-&amp;lt;br /&amp;gt;entwicklung'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch/niedrig'''&amp;lt;br /&amp;gt;Böschungskörper leitet die Rollgeräusche sehr gut (Serien 51xx/52xx), eingelassene Kunststoffschwellen dämmen die Fahrgeräusche gut (Serie 38xx/39xx), Räder an Schienenstößen erzeugen ein rhythmisches Klappern&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering'''&amp;lt;br /&amp;gt;natürlich wirkendes Rollgeräusch, kaum Probleme mit den Schienenstößen&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering'''&amp;lt;br /&amp;gt;etwas lauter als K-Gleise&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Fahr-&amp;lt;br /&amp;gt;eigenschaften'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gut/sehr gut'''&amp;lt;br /&amp;gt;jede Schiene 'guckt' etwas anders, dadurch entstehen mehr oder weniger hohe Kanten oder seitliche Verwerfungen. Verlangen große Aufmerksamkeit beim Verlegen.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr gut'''&amp;lt;br /&amp;gt;durch Maßhaltigkeit der Schienen sehr zuverlässig; eventuell Probleme mit übergroßen Radsätzen älterer Waggons/Loks&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr gut'''&amp;lt;br /&amp;gt;Ähnlich den K-Gleisen, es fehlen allerdings die Langzeiterfahrungen.&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Kosten'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel/sehr hoch'''&amp;lt;br /&amp;gt;nicht mehr lieferbar, Börsenpreise bis zu 1,50EUR für neuwertige Ware (Serien 51xx/52xx) bzw. 4EUR (Serien 38xx/39xx)&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;lt. Märklin: 2,40EUR für ein Standardgleis&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;lt. Märklin: 2,40EUR für ein Standardgleis&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Signale==&lt;br /&gt;
===Formsignale===&lt;br /&gt;
&lt;br /&gt;
Formsignale haben im Märklin H0-System die längste Tradition. Eine Rekonstruktion ist aufgrund ihrer Robustheit und sicheren Funktion nicht notwendig. Allen Signalen gemeinsam ist der graue Schaltkasten (d.h. dessen Abdeckung), welcher anfangs mit Handschalthebel war, später ohne versehen ist. Mit Ausnahme der Vorsignale ohne Zugbeeinflussung (läßt sich allerdings von geschickten Bastlern nachrüsten), haben alle Signale zwei Umschalter welche ohne nennenswerten Aufwand umgebaut werden können.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;90%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;5%&amp;quot; | Kat.-Nr.&lt;br /&gt;
! width=&amp;quot;40%&amp;quot; | Beschreibung&lt;br /&gt;
! width=&amp;quot;15%&amp;quot; | Abbildung&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Bemerkungen&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7036&lt;br /&gt;
| Vorsignal mit beweglicher Scheibe, ohne Zusatzflügel, Vo0/Vo1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7037&lt;br /&gt;
| Vorsignal mit starrer Scheibe und beweglichem Zusatzflügel, Vz1/Vz2&lt;br /&gt;
|&lt;br /&gt;
[[Image:märklin-7037.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1975 nicht mehr im Programm&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt;keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7038&lt;br /&gt;
| Vorsignal mit beweglicher Scheibe und Zusatzflügel, Vz1/Vz2/Vz3&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7038.jpg]]&lt;br /&gt;
| keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7039&lt;br /&gt;
| Hauptsignal mit einem beweglichem Flügel, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7039.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7040&lt;br /&gt;
| Hauptsignal mit zwei gekoppelten Flügel, Hp0/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7040.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7041&lt;br /&gt;
| Hauptsignal mit zwei ungekoppeltem Flügeln, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7041.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7042&lt;br /&gt;
| Gleissperrsignal, Ve3/Ve4&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7042.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7043&lt;br /&gt;
| Abdrücksignal, Ra6/Ra7/Ra8&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7043.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1961 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Lichtsignale===&lt;br /&gt;
&lt;br /&gt;
Lichtsignale der Serie 70xx haben mechanisch die selben Eigenschaften wie die Formsignale der Serie 70xx. Signale der Baureihe 7187/7188 sind vereinfachte Signale zum Einstieg, wobei das Vorsignal 7187 ohne Hauptsignal 7188 nicht sinvoll betrieben werden kann. Signale der Serie 72xx haben einen abnehmbaren Signalantrieb und (wieder mit Ausnahme der Vorsignale) Möglichkeiten zur Zugbeeinflussung, wobei Standard ein Umschalter und zwei einpolige Schalter sind. Letztere können zum zweiten Umschalter umgebaut werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;90%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;5%&amp;quot; | Kat.-Nr.&lt;br /&gt;
! width=&amp;quot;40%&amp;quot; | Beschreibung&lt;br /&gt;
! width=&amp;quot;15%&amp;quot; | Abbildung&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Bemerkungen&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7044&lt;br /&gt;
| Lichthauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7044.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1958 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7236&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7237&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7238&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7239&lt;br /&gt;
| Hauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7240&lt;br /&gt;
| Hauptsignal, Hp0/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7241&lt;br /&gt;
| Hauptsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7242&lt;br /&gt;
| Gleissperrsignal, Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7242.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76383&lt;br /&gt;
| Vorsignal, Vr0/Vr1/Vr2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;ohne Zugbeeinflussung&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76391&lt;br /&gt;
| Hauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76393&lt;br /&gt;
| Hauptsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76394&lt;br /&gt;
| Hauptsignal mit Gleissperrsignal, Hp00/Hp1/Hp2/Hp0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76395&lt;br /&gt;
| Hauptsignal mit Vorsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;Kombination aus 76391 und 76383&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76397&lt;br /&gt;
| Hauptsignal mit Vorsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;Kombination aus 76393 und 76383&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76371&lt;br /&gt;
| Gleissperrsignal,. Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76372&lt;br /&gt;
| Gleissperrsignal mit Mast, Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Oberleitung im Märklinsystem==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel ist auf der Basis dem Abschnitte 2 der alten &amp;quot;FAQ H0 AC&amp;quot; von Stephan-Alexander Heyn entstanden. Mehr über die Artikel &amp;quot;Märklin H0&amp;quot; unter [[Märklin H0 : Allgemeines]] &lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Gleise]]&lt;br /&gt;
[[Kategorie:Zubehör]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=M%C3%A4rklin_H0_:_Das_M%C3%A4rklin-System&amp;diff=12485</id>
		<title>Märklin H0 : Das Märklin-System</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=M%C3%A4rklin_H0_:_Das_M%C3%A4rklin-System&amp;diff=12485"/>
				<updated>2008-11-04T16:27:50Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Übergangsgleise */ Link gesetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Das Märklin-System=&lt;br /&gt;
&lt;br /&gt;
==Das Märklin-Gleissystem==&lt;br /&gt;
&lt;br /&gt;
===Allgemeines zum Gleissystem===&lt;br /&gt;
&lt;br /&gt;
====Welche Gleise kann ich benutzen?====&lt;br /&gt;
&lt;br /&gt;
Nicht alle Modelle, die von anderen Firmen für das Märklinsystem produziert wurden, einschließlich umgerüsteter Modelle, können ohne Probleme auf Märklingleisen betrieben werden. Innerhalb der Produktpalette von Märklin sind mit wenigen Ausnahmen (siehe unten) alle Gleise für alle Modelle geeignet&lt;br /&gt;
&lt;br /&gt;
====Welche Radien gibt es?====&lt;br /&gt;
&lt;br /&gt;
Im Metallgleissortiment &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;(seit 2001 nicht mehr im Programm&amp;quot;!) &amp;lt;/font&amp;gt; gab es 5 Radien: &amp;lt;br /&amp;gt;Industriekreis/R0 (R = 286 mm) mit 5120 &amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 5100 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 437,4 mm) mit 5200 &amp;lt;br /&amp;gt; Großkreis I/R3 (R = 535 mm) mit 3800, &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(nur von 1953 bis 1957 im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Großkreis II/R4 (R = 585 mm) mit 3900, &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(nur von 1953 bis 1957 im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[#Metall-Gleise | Metall-Gleise]]&lt;br /&gt;
&lt;br /&gt;
Das Kunststoffgleissortiment hat ebenfalls 5 Radien &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(die K-Gleise der 21xx-Serie sind nicht mehr im Programm!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Industriekreis/R0 (R = 295 mm) mit 2110 oder 2210 &amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 2121 oder 2221 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 424,6 mm) mit 2131 oder 2231 &amp;lt;br /&amp;gt; Großkreis I/R3,5 (R = 553,9 mm) mit 2141 oder 2241 &amp;lt;br /&amp;gt; Großkreis II/R4,5 (R = 618,5 mm) mit 2151 oder 2251 &amp;lt;br /&amp;gt; beliebige Radien (erst ab 360mm Radius empfehlenswert) können mit dem Flexgleis 2205 individuell zugeschnitten werden.&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[Märklin_H0_:_Das_Märklin-System#Kunststoff-Gleise | Kunststoff-Gleise]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Das C-Gleissortiment hat zur Zeit folgende Radien &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ACHTUNG: C-Gleise haben kein Industrieradius mehr!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Normalkreis/R1 (R = 360 mm) mit 24130 &amp;lt;br /&amp;gt; Parallelkreis/R2 (R = 437,5 mm) mit 24620 &amp;lt;br /&amp;gt; Großkreis I//R3 (R= 515mm) mit 24330 &amp;lt;br /&amp;gt; Großkreis II/R4 (R=579,3mm) mit 24430 &amp;lt;br /&amp;gt; Großkreis III/R5 (R=643,6mm) mit 24530 &amp;lt;br /&amp;gt; Riesenkreis III/R9 (R=1114,6mm) mit 24912 &amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ACHTUNG: bislang nur in Form von Weichen und Gegenbögen vorhanden!)&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt; Nähere Informationen finden sich im Unterabschnitt [[Märklin_H0_:_Das_Märklin-System#C-Gleise| C-Gleise]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zwischenradien können bei allen Gleistypen aus einem kleineren Radius mit kleinen, geraden Gleisstücken erzeugt werden.&lt;br /&gt;
&lt;br /&gt;
====Welche Gleise kann ich im DC-Betrieb benutzen?====&lt;br /&gt;
&lt;br /&gt;
Für den 2-Leiter-DC-Betrieb und den 3-Leiter-Betrieb '''&amp;lt;u&amp;gt;nicht&amp;lt;/u&amp;gt;''' geeignet sind die M-Gleise der 3600, 5100 und 5200-Reihe. Weichen der Kunststoffgleise haben verbundene Außenleiter (22xx-Serien), sodaß hier Umbaumaßnahmen zum (Außenleiter-)DC-Betrieb notwendig sind. Alle anderen Gleise von Märklin sind DC-tauglich.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Welche Fahrzeuge kann ich auf den Gleisen betreiben?====&lt;br /&gt;
&lt;br /&gt;
Bei historischen Modellen, die mit &amp;quot;Pilzschleifern&amp;quot; (&amp;lt;span class=&amp;quot;Kommentar&amp;quot;&amp;gt;diese Schleifer sehen von der Seite aus wie umgedrehte Pilze&amp;lt;/span&amp;gt;) ausgestattet sind, sind zum Betrieb mit Punktkontaktgleisen nicht zu empfehlen. Gleiches gilt teilweise auch für &amp;quot;Löffelschleifer&amp;quot;. Für den Betrieb auf den heutigen Märklingleisen sind die &amp;quot;Skischleifer&amp;quot; betriebssicher. Fremdfabrikate mit diesen Schleifertypen (z.B. Trix-Express) sind ebenfalls &amp;lt;u&amp;gt;&amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;NICHT&amp;lt;/font&amp;gt;&amp;lt;/u&amp;gt; betriebssicher. Diese Schleifertypen können sich bei Weichen in den Herzstücken verhaken und die Lok bzw. den Zug zum Entgleisen bringen. Mit den ehemaligen Mittelschienengleisen können alle Schleifertypen betrieben werden.&lt;br /&gt;
&lt;br /&gt;
====Welche Radien können befahren werden?====&lt;br /&gt;
&lt;br /&gt;
* Der derzeitige Standardradius beträgt 360mm. Alle Märklinfahrzeuge können diesen Radius ohne Probleme im Normalfall befahren.&lt;br /&gt;
* Angesetzte Details (Kolbenstangenschutzrohre, Schürzen, etc.) vergrößern den Mindestradius (siehe auch die Bedienungsanleitung zum Modell)&lt;br /&gt;
&lt;br /&gt;
** Nicht betriebssicher sind:&lt;br /&gt;
*** 2-achsige Personen- und Güterwagen mit einem Achsstand &amp;gt;10cm auf R0&lt;br /&gt;
*** 4-achsige Personenwagen mit einem Drehgestellabstand &amp;gt;20cm auf R0&lt;br /&gt;
*** Wagenverbände mit Kurzkupplung im Schiebebetrieb in Radien &amp;lt;= R1&lt;br /&gt;
*** neuere Schnellzugdampfloks ab Baujahr 1973, und alle Varianten der BR 41 auf R0&lt;br /&gt;
*** Güterzugdampfloks neuerer Produktion ohne Knickrahmen auf R0&lt;br /&gt;
*** Schienenzeppeline aller Varianten auf R0 und in Gegen (d.h. S-)Kurven&lt;br /&gt;
*** 1:100 und 1:87-Modelle von anderen Herstellern in R0&lt;br /&gt;
*** 1:100 und 1:87 bei M-Gleisweichen mit großen (d.h. quadratischen) Laternenköpfen&lt;br /&gt;
** Problematisch sind außerdem:&lt;br /&gt;
*** Alle Varianten der BR 41 können auf Weichen des Normalkreises, vor allem beim M-Gleis, entgleisen.&lt;br /&gt;
*** Alle Varianten der BR 18.1 mit kurzem Tender neigen bei großen Zuglasten zum Entgleisen bei Radien &amp;lt; R5.&lt;br /&gt;
*** 1:100-Schnellzugwagenmodelle von Märklin in R0 (bedingt)&lt;br /&gt;
*** Schienenzeppelin 3077 bei hoher Geschwindigkeit in Radien &amp;lt;R2&lt;br /&gt;
** Empfehlungen:&lt;br /&gt;
*** wirklich nur kurze Industriegleise für kleine, zweiachsige Wagen und kurze Loks mit max. 3 Achsen verlegen.&lt;br /&gt;
*** S-Kurven vermeiden.&lt;br /&gt;
*** keine Hauptstrecken mit Industrieradius versehen.&lt;br /&gt;
*** besondere Vorsicht mit Modellen bei hoher Geschwindigkeit&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Welche Steigungen können befahren werden?====&lt;br /&gt;
&lt;br /&gt;
Generell für Steigungen gilt, daß '''vor allem''' der Übergang zwischen Ebene und Steigung nicht zu abrupt geschehen darf (längere Fahrzeuge bleiben sonst im Knick hängen). Der maximale, störungsfrei zu bewältigende Übergang aus der Ebene für alle bisher produzierte Märklinmodelle in H0 ist von 0 auf 1:20 (von 0 auf 5%). Sind Wagenmodelle mit 30,3cm (1:87 Schnellzugwagen) vorhanden, so sollte der maximale Übergang von 0 auf 1:50 (2%) nicht überschreiten. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Bei Clubanlagen und ausreichend Platz sollte die allgemeine Empfehlung von 3% nicht überschritten werden&lt;br /&gt;
* Alle Märklin-H0-Modelle können 5% problemlos bewältigen, lediglich Modelle mit Märklin-Faulhabermotor werden deutlich langsamer&lt;br /&gt;
* Falls der Platz nicht ausreicht, können bis 15% Steigung bewältigt werden. Ab 10% haben einige Modelle Probleme die Steigung in Solofahrt zu bewältigen&lt;br /&gt;
* In Spezialfällen sind Steigungen bis 20% und mehr möglich. '''Derartige Steigungen sollten wirklich nur die Ausnahme bleiben.'''&lt;br /&gt;
&lt;br /&gt;
Wenn man große Steigungen schon einrichtet, dann sollte die Rampe auch gut gegen ein Durchhängen gesichert sein, sonst sind die Modelle durch noch größere Steigungen überlastet. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Folgende Auflistungen basieren auf Erfahrungswerten von Modellbahnern. Sie erheben keinen Anspruch auf generelle Anwendbarkeit!'''&amp;lt;br /&amp;gt; Viele betriebliche Probleme können durch Pflege des Rollmaterials behoben bzw. durch intensive Schieneninstandhaltung '''&amp;lt;u&amp;gt;&amp;lt;font color=&amp;quot;#ff0000&amp;quot;&amp;gt;(ÖL!)&amp;lt;/font&amp;gt;&amp;lt;/u&amp;gt;''' vermieden bzw. beseitigt werden.&lt;br /&gt;
&lt;br /&gt;
Modelle, die 10% Steigung in Solofahrt unter Umständen nicht bewältigen können sind:&lt;br /&gt;
&lt;br /&gt;
* 3015/CCS800/30159/36159 (schweizer Krokodil Ce 6/8 II mit SLFCM)&lt;br /&gt;
* 33591 (schweizer Doppellokomotive Typ Ae 8/14 mit DELTA und DCM2)&lt;br /&gt;
&lt;br /&gt;
Betriebsprobleme bei Zugfahrten mit mehr als 5 Wagen vom Typ C4i Wü 01 (Nr. 4211) ab 3% Steigung können mit Modellen, die den Faulhabermotor 1717 oder den Sinus-Motor haben auftreten. Falls der Zug an Hp0 stehen soll, rollt der Zug ggf. rückwärts den Hang hinunter. Dies gilt für alle Betriebsarten (analog/digital). Davon betroffen sind bislang:&lt;br /&gt;
&lt;br /&gt;
* (3311, 3411, 3511, 3513, 3514, 3611, 3613, 3614, 3711, 34112, 34113, 37112, 37113 als Varianten der BR 18.1, 34059,37059 als Varianten der BR 59)&lt;br /&gt;
* alle Modelle mit der Katalognummer 39xxx, die einen Sinus-Motor enthalten können bei Zughalt in Steigungen bergab rollen&lt;br /&gt;
&lt;br /&gt;
Dieses Problem läßt sich durch geeigneten Anlagenaufbau vermeiden (keine Halteabschnitte in Steigungen). &amp;lt;br /&amp;gt; Bei noch höheren Zuglasten (8 Wagen) kann es ab 5% zum Stillstand auf der Steigung kommen.&lt;br /&gt;
&lt;br /&gt;
===Compound-Gleise===&lt;br /&gt;
&lt;br /&gt;
====Alpha-Gleise====&lt;br /&gt;
&lt;br /&gt;
Im Jahre 1988 wurde das bisherige Gleis-System aus K- bzw. M-Gleisen durch das &amp;quot;Alpha-Gleis&amp;quot; mit der Bezeichnung &amp;quot;Gleis 2000&amp;quot; erweitert. Diese Gleise waren eine Kombination Kunststoff-Böschungskörper und Metall-Gleisen und stellten mit ihrem neuen Stecksystem die Vorläufer der C-Gleise dar. Diese Gleise waren nur von 1988 bis 1996 im Programm. Die angebotenen Gleisstücke orientierten sich in ihrem Raster am M-Gleis (180mm, R1, R2):&lt;br /&gt;
&lt;br /&gt;
* 2001 Gerade 1/1 (180mm)&lt;br /&gt;
* 2006 6 gerade Gleise 2001 1/1 mit Verpackung als Brücke&lt;br /&gt;
* 2019 Prellbock (70mm)&lt;br /&gt;
* 2021 Gebogenes Gleis 1/1 R1 (r=360mm, 30°)&lt;br /&gt;
* 2026 6 gebogene Gleise 2021 1/1 mit Verpackung als Brücke&lt;br /&gt;
* 2031 Gebogenes Gleis 1/1 R2 (r=456,4mm, 30°)&lt;br /&gt;
* 2062 Weiche R1 links (180mm/30°)&lt;br /&gt;
* 2063 Weiche R1 rechts (180mm/30°)&lt;br /&gt;
* 2090 Anschluß gerade 1/1 (180mm)&lt;br /&gt;
* 2091 Übergangsgleis Alpha-M-Gleis, gerade 1/1 (180mm)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt; Dieses Gleissystem wurde ohne Ausgleichsgleise angeboten.&lt;br /&gt;
&lt;br /&gt;
====C-Gleise====&lt;br /&gt;
&lt;br /&gt;
'''Vorbemerkungen'''&lt;br /&gt;
&lt;br /&gt;
Umfangreiche Informationen zum C-Gleis erhält man zunächst auf den Produktseiten der Firma Märklin. Folgende Hinweise mögen als praxisbezogene und kostensparende Ergänzung dienen. &amp;lt;br /&amp;gt;[[Image:märklin-c-gleis.jpg | framed|left]] '''Gleisanschlüsse'''&amp;lt;br /&amp;gt; Für den Anschluß der C-Gleise gibt es die Anschlußgarnitur 74040 mit Flachsteckhülsen zum Anstecken an das Gleis. Die Anschlüsse lassen sich auch sehr leicht löten (roter Pfeil).&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt; Für die Trennung des Mittelleiters der C-Gleise gibt es die Mittelleiter-Isolierung 74030. Diese, in Form kleiner, roter Hütchen produzierten Isolationen werden über die inneren Kontaktlaschen geschoben und unterbrechen damit die Verbindung. Pro Packung (74030) sind acht Hütchen für vier Trennstellen enthalten. Flexibler läßt sich der Mittelleiter an der Unterseite des Gleises (zwischen den Pukos!) mit der Minitrennscheibe unterbrechen (grüner Pfeil). Diese Trennung läßt sich später gegebenenfalls durch eine Kabelbrücke zwischen den beiden B-Anschlüssen des Gleises wieder schließen.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; Das Prinzip des Kontaktgleises auf zwei elektrisch getrennten Gleisen, wobei nur eine Seite an Masse angeschlossen ist. Das andere Gleis wird dann durch die Radsätze mit Masse verbunden. Beim C-Gleis haben die beiden Gleise jeweils ihre eigenen Kontakte und sind nur an beiden Enden durch eine Brücke miteinander verbunden.Durchtrennt man diese beiden Brücken (gelbe Pfeile), so hat man bereits ein Kontaktgleis. Diese Trennung läßt sich später gegebenenfalls durch eine Kabelbrücke zwischen den beiden 0-Anschlüssen des Gleises wieder schließen. Am Anfang und Ende der Kontaktstrecke muß nun allerdings noch jeweils eine Gleistrennung erfolgen. Bequemste (leider auch teuerste und unflexibelste) Lösung ist der Kontaktgleis-Satz 24995. Die einfachste Lösung - aber später nicht mehr rückgängig zu machen - wäre auch hier wieder die Trennscheibe. Da die Gleise aber konstruktionsbedingt keine Schienenverbinder besitzen, reicht eines der oben erwähnten Isolierungs-Hütchen auf der äußeren Kontaktzunge zur Trennung der Gleise (solange diese sich nicht durch unebenen Untergrund oder Fertigungstoleranzen berühren sollten - ist bei mir &amp;lt;small&amp;gt;''(B.N. Anm. des Autors)''&amp;lt;/small&amp;gt; bisher aber nicht vorgekommen).&lt;br /&gt;
&lt;br /&gt;
'''Anwendungsbeispiel'''&amp;lt;br /&amp;gt; Ein Anlagenbau nach diesen Regeln wird unter [http://www.noethlich.net/modellbahn  http://www.noethlich.net/modellbahn] dokumentiert.&lt;br /&gt;
&lt;br /&gt;
===Kunststoff-Gleise===&lt;br /&gt;
&lt;br /&gt;
'''K-Gleise'''&amp;lt;br /&amp;gt; bestehen - genau wie die C-Gleise - aus zwei gegeneinander isolierten Aussenschienen sowie einem verdeckt in den Schwellen angeordnetem Mittelleiter.&amp;lt;br /&amp;gt; Es gibt zwei grundsätzlich unterschiedliche Gleistypen:&lt;br /&gt;
&lt;br /&gt;
[[Image:märklin-k-gleis.jpg|framed|left]]&lt;br /&gt;
&lt;br /&gt;
* Serie 21xx von 1969 - 1980 gefertigt, mit Hohlprofilschienen (gefalzten Schienen) und breiten Kontaktlaschen (im Bild links)&lt;br /&gt;
* Serie 22xx seit 1980 gefertigt mit Vollprofilschienen (massiv, vorbildgetreuer) und engen Kontaktlaschen. (Bild rechts)&lt;br /&gt;
&lt;br /&gt;
Die K-Gleise sind systembedingt empfindlicher als C- und M-Gleise und eignen sich damit nur bedingt für den Aufbau fliegender Anlagen. Allerdings hat ein Tritt auf ein solches Gleisstück nicht die verheerenden Folgen wie das z. B. bei M-Gleisen der Fall ist.&amp;lt;br /&amp;gt; Kritisch ist vor allem das Zusammenstecken der Gleise, insbesondere im Bereich von Weichenstraßen. Nur allzu schnell bricht das außenliegende Stück der Schwelle ab und muß dann durch entsprechende Landschaftsgestaltung kaschiert werden, sofern das Bruchstück nicht wieder anzukleben ist. Beim Übergang von 21xx auf 22xx Gleise müssen die engeren, weil höher ausgeführten Schienenverbindungslaschen der 22xx-Gleise mit recht großem Druck zusammgefügt werden; dies kann insbesondere bei kurzen Gleisstücken zu Verschiebungen bis hin zum Ausbrechen der Schienen führen. Daher sollte in solchen Bereichen nur 'sortenrein' verlegt werden.&lt;br /&gt;
&lt;br /&gt;
'''Anschlußgleise'''&amp;lt;br /&amp;gt;[[Image:märklin-kgleisunten.jpg|framed|right]]&amp;lt;br /&amp;gt; Neben dem Standardanschlußgleis 2290 (2292 mit Entstörkondensator) von Märklin besteht die Möglichkeit, jedes beliebige Gleisstück mit einer Anschlußleitung zu versehen. Dazu muß nur auf der Unterseite ein Kabel an das in der Schwellenmitte freiliegende Kupferblech gelötet werden (gelber Pfeil). Vorsichtig und schnell (=heiß) arbeiten, damit der darüberliegende Kunststoff keinen Schaden nimmt.&amp;lt;br /&amp;gt; Bei Bedarf kann auch an die Edelstahlprofile der Außenschienen ein Massekabel angelötet werden. Eine weitere Möglichkeit besteht darin, ein leicht V-förmig gebogenes (Feder-) Blech zwischen Schienenprofil und Schwellenunterbau zu schieben. Selbstverständlich ist vorher das Anschlußkabel an dieses Blech zu löten (Ähnlich dem Masseanschluß 7500 von Märklin).&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt; Zur Trennung der Mittelleiter müssen jeweils die beiden kupfernen Kontaktzungen unter den Schienenverbindern gegeneinander isoliert werden. Dazu gibt es von Märklin unter der Nummer 7522 passende Kunststoffeinsätze. Mit etwas Feingefühl läßt sich aber auch eine Isolierung aus Papier, dünner Pappe oder sogar Tesafilm verwirklichen. Dies ist aber nur bei fester Verlegung der Gleise verläßlich. &amp;lt;br /&amp;gt; Falls die Gleise 'mit absoluter Sicherheit und nie wieder' ausgebaut werden sollen, ist es auch denkbar, die Kontakzungen einfach abzutrennen.&amp;lt;br /&amp;gt; Die Mittelleitertrennungen sollten zur Erleichterung einer späteren Fehlersuche vor Ort gekennzeichnet werden.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; werden z. B. vor Bahnübergängen oder in Schattenbahnhöfen benötigt. Kontaktstrecken detektieren alle Fahrzeuge, die sich in ihrem Bereich befinden. Dies geschieht durch Überbrücken der von einander isolierten Außenschienen durch die Achsen der darauf befindlichen Fahrzeuge.&amp;lt;br /&amp;gt; Dies kann durch den Kontaktgleissatz 2295 von Märklin oder durch einfaches Auftrennen einer Außenschiene jeweils am Anfang und Ende der zu überwachenden Strecke erfolgen; da die Schienen gegeneinander isoliert sind, kann der Zwischenraum mit normalen Gleisen bestückt werden. Anwendungsbeispiele für Kontaktgleise/Kontaktstrecken finden sich im Artikel [[Gleiskontakte#Kontaktgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Schaltgleise'''&amp;lt;br /&amp;gt; werden zur kurzzeitigen Kontaktgabe, z. B. zum Schalten von Signalen und Weichen, eingesetzt. Mit den Märklin-Kontaktgleisen 2229, 2239 und 2299 ist zusätzlich eine richtungsabhängige Kontaktabgabe möglich.&amp;lt;br /&amp;gt; Dies geschieht durch einen Schaltnocken, der vom Schleifer der Lok (und natürlich auch entsprechend ausgerüsteter Waggons) in der Fahrtrichtung betätigt wird und für die Dauer dieser Betätigung den entsprechenden Kontakt schließt.&amp;lt;br /&amp;gt; Prinzipbedingt darf kein Fahrzeug mit Schleifer auf einem Schaltgleisstück zu stehen kommen (direkt angeschlossene Magnetartikel würden sonst in kurzer Zeit durchbrennen). &amp;lt;br /&amp;gt; Im Laufe der Jahre erlahmen die Federbleche, die den Schaltnocken in die Mittelstellung bringen. Im Gegensatz zu den Schaltgleisen der M-Serie lassen sich die K-Gleise kaum noch nachjustieren. Anwendungsbeispiele für Schaltgleise finden sich im Artikel [[Gleiskontakte#Schaltgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
===Metall-Gleise===&lt;br /&gt;
&lt;br /&gt;
'''M-Gleise'''&amp;lt;br /&amp;gt; mit Punktkontakten lösten ab 1957 Jahren die Mittelleiterschienen ab und wurden bis zum Jahr 2001 gefertigt und sind &amp;quot;werkseitig nicht mehr verfügbar&amp;quot;. Wer also eine Anlage mit M-Gleisen bauen oder erweitern will, ist auf die Restbestände im Handel oder auf Modellbahnbörsen und (Online-)Auktionen angewiesen.&lt;br /&gt;
&lt;br /&gt;
'''Anschlußgleise'''&amp;lt;br /&amp;gt; Hier ist die Auswahl etwas vielfältiger als bei den K-Gleisen, es gibt gerade (5111 bzw. 5130/31 mit Kondensator) und gebogene (5103) Gleise sowie ein Kabel mit einem Kontaktschuh, der wie bei den Signalen einfach an beliebiger Stelle zwischen die Mittelleiterlaschen gesteckt wird.&amp;lt;br /&amp;gt; Auch ist es möglich, sich selbst aus beliebigen normalen Gleisstücken ein Anschlußgleis zu bauen. &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;Vorsicht beim Löten!&amp;lt;/font&amp;gt; Bei neueren Gleisen bestehen die Isolatoren nicht mehr aus Preßpappe, sondern aus recht hitzeempfindlichen Kunststoff!!&amp;lt;br /&amp;gt; Das rote Kabel wird am einfachsten an der Basis der Kontaktzunge angelötet - je nach Zustand diese vorher etwas anrauhen, einen Lötkolben mit hoher Leistung (60-100W) benutzen und vor allem bei Kunststoffisolatoren extrem schnell arbeiten!&amp;lt;br /&amp;gt; Das braune Kabel kann bei Bedarf an einer beliebigen Stelle des Unterbaus, möglichst weit weg von jedem hitzeempfindlichen Fremdmaterial angelötet werden. Aber auch hier ein Hinweis an die Dauerlöter: irgendwann schmilzt auch die beste Kabelisolierung, das Gleis wird schneller heiß als man es erwartet und letztlich könnte es zu Verfärbungen der Oberseite kommen.&lt;br /&gt;
&lt;br /&gt;
'''Mittelleiter-Trennstellen'''&amp;lt;br /&amp;gt;[[Image:märklin-5015.jpg|framed|left]] Die braunen Pappplättchen, die Märklin jedem Signal beilegt, können ohne Probleme als Vorlage für eigene Kreationen aus Papier oder dünner Pappe dienen. Diese werden dann einfach zwischen die Kontakzungen geschoben, fertig ist die Trennstelle. Sinnvoll ist die Kennzeichnung dieser Stellen z. B. mit dem Trennzeichnen 5015/5016 (?), damit bei späterer Suche die gewollten von ungewollten Unterbrechungen unterschieden werden können.&lt;br /&gt;
&lt;br /&gt;
'''Kontaktstrecken'''&amp;lt;br /&amp;gt; Hier gab es zwei verschiedene Gleistypen:&lt;br /&gt;
&lt;br /&gt;
* Das Anschlußset, bestehend aus zwei halben Gleisstücken, bei denen jeweils eine Außenschiene getrennt und isoliert montiert ist und dem isolierten Gleisstück, welches den Fahrbahnübergang sowie die elektrische Verbindung darstellt sowie die Gleise 5115 und 5116 zur Verlängerung dieser Trennstrecke. Sie werden fast ausschließlich für den vollautomatischen Bahnübergänge 7192 genutzt.&lt;br /&gt;
* Kontaktgleise 5104/5105 (1/1 gerade bzw. gebogen, bis 1972 produziert) und 5127 (1/2 gerade, bis 1961 produziert). Hier ist ein Teil der Außenschiene isoliert montiert und mit einer seitlich angebrachten Buchse verbunden. Urspünglich zum Schalten von Magnetartikel vorgesehen, sollten diese Gleise dafür nicht genutzt werden - die Kontaktgabe ist zu lang und die Gefahr des Durchbrennens der Spulen zu hoch. Ein sinnvolles Einsatzgebiet ist z.B. die Gleisbesetztmeldung.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese beiden Typen sind untereinander nicht kombinierbar. Anwendungsbeispiele für Kontaktgleise/Kontaktstrecken finden sich im Artikel [[Gleiskontakte#Kontaktgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Schaltgleise'''&amp;lt;br /&amp;gt; werden zur kurzzeitigen Kontaktgabe, z. B. zum Schalten von Signalen und Weichen, eingesetzt. Mit den Märklin-Kontaktgleisen 5146, 5147 und 5213 ist zusätzlich eine richtungsabhängige Kontaktabgabe möglich.&amp;lt;br /&amp;gt; Dies geschieht durch einen Schaltnocken, der vom Schleifer der Lok (und natürlich auch entsprechend ausgerüsteter Waggons) in der Fahrtrichtung betätigt wird und für die Dauer dieser Betätigung den entsprechenden Kontakt schließt.&amp;lt;br /&amp;gt; Prinzipbedingt darf kein Fahrzeug mit Schleifer auf einem Schaltgleisstück zu stehen kommen (direkt angeschlossene Magnetartikel würden sonst in kurzer Zeit durchbrennen). &amp;lt;br /&amp;gt; Im Laufe der Jahre erlahmen die Federbleche, die den Schaltnocken in die Mittelstellung bringen. Sie können - eventuell nach vorsichtigem Ausbau des Schaltnockens - mit einer kleinen Spitzzange nachgespannt werden. Gleichzeitig sollten die Kontaktflächen mit einem Kontaktpflegespray gereinigt werden. Anwendungsbeispiele für Schaltgleise im Artikel [[Gleiskontakte#Schaltgleise | Gleiskontakte]]&lt;br /&gt;
&lt;br /&gt;
===Sonstige Gleise===&lt;br /&gt;
&lt;br /&gt;
====Übergangsgleise====&lt;br /&gt;
&lt;br /&gt;
Sie ermöglichen den Übergang zwischen Anlagenteilen, die mit unterschiedlichen Gleissystemen gebaut worden sind. Häufig anzutreffen ist zum Beispiel der [[Schattenbahnhof]] mit den alten M-Gleisen und der sichtbare Teil der Anlage mit K-Gleisen.&amp;lt;br /&amp;gt; Märklin bietet dazu drei Gleistypen an:&lt;br /&gt;
&lt;br /&gt;
* 2291 - Übergang M nach K&lt;br /&gt;
* 24922 - Übergang K nach C&lt;br /&gt;
* 24951 - Übergang M nach C&lt;br /&gt;
&lt;br /&gt;
====Entkupplungsgleis====&lt;br /&gt;
&lt;br /&gt;
Ermöglicht das fernstgesteuerte Abkuppeln bzw. Trennen von Zugverbänden. Wird das Gleis auf der Kuppe eines Ablaufberges montiert und steht dann auch noch das Abdrücksignal 7043 daneben, so ist ein sehr realitätsnahes Rangieren und Zusammenstellen neuer Züge möglich. Ersatzweise kann bei M- und C-Gleisen ein Lichtmast 5113 angesteckt werden.&amp;lt;br /&amp;gt; Probleme gibt es, wenn die Kupplungen unter mechanischer Spannung stehen (zu starkes oder zu schwaches Gefälle), verbogen sind, verschiedene Kupplungstypen gemischt werden oder stromführende Kurzkupplungen - sofern überhaupt trennbar - angewandt werden.&lt;br /&gt;
&lt;br /&gt;
====Bahnübergang====&lt;br /&gt;
&lt;br /&gt;
Ein nettes Ausstattungdetail, die angebotene Märklinpalette reicht vom mechanisch betätigten (d.h. vom Fahrzeuggewicht betätigten), eingleisigen Übergang bis hin zum vollautomatischen ein- oder zweigleisigen Übergang mit Halb- und Vollschranken, letztere gibt es für alle drei Gleissysteme.&amp;lt;br /&amp;gt; Gesteuert werden diese Übergänge durch Kontaktstrecken (s. o.). Der ambitionierte Modellbahner sollte sich allerdings aufgrund der im Laufe der Zeit sicher auftretenden Kontaktprobleme überlegen, ob er die Ansteuerung nicht über Schaltgleise und Universalfernschalter durchführen sollte - dann ist auch eine Einbindung in ein Signal- und Sicherheitskonzept möglich (siehe [[Modellbahnsteuerung_-_Beispiele_Analogbetrieb#Automatische Fahrwegsteuerung | Automatische Fahrwegsteuerung]])&lt;br /&gt;
&lt;br /&gt;
====Drehscheibe====&lt;br /&gt;
&lt;br /&gt;
Für jedes Dampflok-BW unerläßlich, leider auch nicht sehr Platzsparend. Konventionell betriebene Drehscheiben können grundsätzlich nur von Gleis zu Gleis fahren, ein Vorwählen eines bestimmten Anschlusses oder auch nur ein automatisiertes Wenden ist nicht vorgesehen. Eine Abhilfe wurde an anderer Stelle veröffentlicht, hier hilft Herr Ortwein (siehe [[#Danksagung]]) gerne weiter.&amp;lt;br /&amp;gt; Der Einbau erfordert keine Grube, ist jedoch aufgrund der Geräuschentwicklung im Betrieb zu empfehlen. Weitere Dämmungsmaßnahmen sind ebenfalls ratsam. Die Steuerung erfolgt über ein Stellpult mit zwei Tasten. Es können zwei dreiständige Lokschuppen bedient werden.&lt;br /&gt;
&lt;br /&gt;
====Schiebebühne====&lt;br /&gt;
&lt;br /&gt;
Für ein modernes Bw bietet sich die Schiebebühne an, da die Anlagen kompakter gestaltet werden können als bei einer Drehscheibe. Auch ist eine Elektrifizierung der Bühne einfacher und betriebssicherer möglich.&lt;br /&gt;
&lt;br /&gt;
====Prellbock====&lt;br /&gt;
&lt;br /&gt;
So unscheinbar dieses Gleisstück aussieht, so wichtig ist es im regulären Ablauf des Großbetriebes. Dabei spielt die Schutzfunktion am Gleisende nur eine untergeordnete Rolle. Zur Sicherung emfiehlt es sich, die Prellböcke entweder zu befestigen um größere Unfälle zu vermeiden falls ein Treibwagen ungebremst auffährt. Oder ausreichend Platz hinter dem Prellbock beim Aufstellen vorzusehen.&amp;lt;br /&amp;gt; Wesentlicher ist die - von Märklin nur durch ein rotes Band angedeutete - Signaltafel SH2 (Schutzhalt). Zur Bedeutung von Prellböcken siehe [./grundlag.html Grundlagen der Eisenbahnsicherungs- und Signaltechnik]. Die Prellböcke gibt es - je nach Gleissystem mit fester oder aufgesprengter Bohlenkonstruktion sowie mit zusätzlicher roter Laterne (Nachtzeichen zu SH2)&lt;br /&gt;
&lt;br /&gt;
===Gleissysteme im Vergleich===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;80%&amp;quot; border=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;10%&amp;quot; | &amp;amp;nbsp;&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | M-Gleis&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | K-Gleis&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; align=&amp;quot;middle&amp;quot; | C-Gleis&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Vorbildtreue'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering bis mäßig'''&amp;lt;br /&amp;gt;Mit Ausnahme der 38xx/39xx-Gleise sind die Punktkontakte deutlich zu sehen.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr hoch'''&amp;lt;br /&amp;gt;Böschungskörper und Gleise können beliebig gestaltet werden.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;Böschungskörper stellt guten Kompromiß dar.&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Trittsicherheit'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''nicht gegeben'''&amp;lt;br /&amp;gt;Schiene und Böschung sind i.d.R. irreparabel geknickt.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;solange kein Drehmoment auf die Gleise einwirkt.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel'''&amp;lt;br /&amp;gt;Die ersten Gleise verloren den Weichmacher zu schnell und zerbrechen heute schon bei normalem Gebrauch. Neuere Gleise sollen das Problem nicht mehr haben. &lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Robustheit'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;geeignet für fliegende Anlagen, auch für Kinderhände einfach zusammensetzbar.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel'''&amp;lt;br /&amp;gt;Schienenverbindungen erfordern ruhige Hand und gutes Augenmaß.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;wurde aus einem Spielbahnsystem entwickelt, paßt aufgrund mech. Führung, benötigt keine Schienenlaschen. Für Kinder weniger Verletzungsmöglichkeiten als bei M-Gleisen&lt;br /&gt;
|-&lt;br /&gt;
| '''Radien'''&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; align=&amp;quot;MIDDLE&amp;quot; | '''siehe [[#Welche Radien gibt es? | Welche Radien gibt es?]]'''&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Geräusch-&amp;lt;br /&amp;gt;entwicklung'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch/niedrig'''&amp;lt;br /&amp;gt;Böschungskörper leitet die Rollgeräusche sehr gut (Serien 51xx/52xx), eingelassene Kunststoffschwellen dämmen die Fahrgeräusche gut (Serie 38xx/39xx), Räder an Schienenstößen erzeugen ein rhythmisches Klappern&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering'''&amp;lt;br /&amp;gt;natürlich wirkendes Rollgeräusch, kaum Probleme mit den Schienenstößen&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gering'''&amp;lt;br /&amp;gt;etwas lauter als K-Gleise&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Fahr-&amp;lt;br /&amp;gt;eigenschaften'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''gut/sehr gut'''&amp;lt;br /&amp;gt;jede Schiene 'guckt' etwas anders, dadurch entstehen mehr oder weniger hohe Kanten oder seitliche Verwerfungen. Verlangen große Aufmerksamkeit beim Verlegen.&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr gut'''&amp;lt;br /&amp;gt;durch Maßhaltigkeit der Schienen sehr zuverlässig; eventuell Probleme mit übergroßen Radsätzen älterer Waggons/Loks&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''sehr gut'''&amp;lt;br /&amp;gt;Ähnlich den K-Gleisen, es fehlen allerdings die Langzeiterfahrungen.&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''Kosten'''&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''mittel/sehr hoch'''&amp;lt;br /&amp;gt;nicht mehr lieferbar, Börsenpreise bis zu 1,50EUR für neuwertige Ware (Serien 51xx/52xx) bzw. 4EUR (Serien 38xx/39xx)&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;lt. Märklin: 2,40EUR für ein Standardgleis&lt;br /&gt;
| valign=&amp;quot;TOP&amp;quot; | '''hoch'''&amp;lt;br /&amp;gt;lt. Märklin: 2,40EUR für ein Standardgleis&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Signale==&lt;br /&gt;
===Formsignale===&lt;br /&gt;
&lt;br /&gt;
Formsignale haben im Märklin H0-System die längste Tradition. Eine Rekonstruktion ist aufgrund ihrer Robustheit und sicheren Funktion nicht notwendig. Allen Signalen gemeinsam ist der graue Schaltkasten (d.h. dessen Abdeckung), welcher anfangs mit Handschalthebel war, später ohne versehen ist. Mit Ausnahme der Vorsignale ohne Zugbeeinflussung (läßt sich allerdings von geschickten Bastlern nachrüsten), haben alle Signale zwei Umschalter welche ohne nennenswerten Aufwand umgebaut werden können.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;90%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;5%&amp;quot; | Kat.-Nr.&lt;br /&gt;
! width=&amp;quot;40%&amp;quot; | Beschreibung&lt;br /&gt;
! width=&amp;quot;15%&amp;quot; | Abbildung&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Bemerkungen&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7036&lt;br /&gt;
| Vorsignal mit beweglicher Scheibe, ohne Zusatzflügel, Vo0/Vo1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7037&lt;br /&gt;
| Vorsignal mit starrer Scheibe und beweglichem Zusatzflügel, Vz1/Vz2&lt;br /&gt;
|&lt;br /&gt;
[[Image:märklin-7037.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1975 nicht mehr im Programm&amp;lt;/font&amp;gt;&amp;lt;br /&amp;gt;keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7038&lt;br /&gt;
| Vorsignal mit beweglicher Scheibe und Zusatzflügel, Vz1/Vz2/Vz3&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7038.jpg]]&lt;br /&gt;
| keine Zugbeeinflussung möglich!&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7039&lt;br /&gt;
| Hauptsignal mit einem beweglichem Flügel, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7039.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7040&lt;br /&gt;
| Hauptsignal mit zwei gekoppelten Flügel, Hp0/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7040.jpg]]&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7041&lt;br /&gt;
| Hauptsignal mit zwei ungekoppeltem Flügeln, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7041.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7042&lt;br /&gt;
| Gleissperrsignal, Ve3/Ve4&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7042.jpg]]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7043&lt;br /&gt;
| Abdrücksignal, Ra6/Ra7/Ra8&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7043.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1961 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Lichtsignale===&lt;br /&gt;
&lt;br /&gt;
Lichtsignale der Serie 70xx haben mechanisch die selben Eigenschaften wie die Formsignale der Serie 70xx. Signale der Baureihe 7187/7188 sind vereinfachte Signale zum Einstieg, wobei das Vorsignal 7187 ohne Hauptsignal 7188 nicht sinvoll betrieben werden kann. Signale der Serie 72xx haben einen abnehmbaren Signalantrieb und (wieder mit Ausnahme der Vorsignale) Möglichkeiten zur Zugbeeinflussung, wobei Standard ein Umschalter und zwei einpolige Schalter sind. Letztere können zum zweiten Umschalter umgebaut werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div align=center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;90%&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;5%&amp;quot; | Kat.-Nr.&lt;br /&gt;
! width=&amp;quot;40%&amp;quot; | Beschreibung&lt;br /&gt;
! width=&amp;quot;15%&amp;quot; | Abbildung&lt;br /&gt;
! width=&amp;quot;30%&amp;quot; | Bemerkungen&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7044&lt;br /&gt;
| Lichthauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7044.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 1958 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7236&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7237&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7238&lt;br /&gt;
| Vorsignal&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7239&lt;br /&gt;
| Hauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7240&lt;br /&gt;
| Hauptsignal, Hp0/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7241&lt;br /&gt;
| Hauptsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 7242&lt;br /&gt;
| Gleissperrsignal, Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
[[Image:märklin-7242.jpg]]&lt;br /&gt;
| &amp;lt;font color=&amp;quot;#FF0000&amp;quot;&amp;gt;seit 2003 nicht mehr im Programm&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76383&lt;br /&gt;
| Vorsignal, Vr0/Vr1/Vr2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;ohne Zugbeeinflussung&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76391&lt;br /&gt;
| Hauptsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76393&lt;br /&gt;
| Hauptsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76394&lt;br /&gt;
| Hauptsignal mit Gleissperrsignal, Hp00/Hp1/Hp2/Hp0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76395&lt;br /&gt;
| Hauptsignal mit Vorsignal, Hp0/Hp1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;Kombination aus 76391 und 76383&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76397&lt;br /&gt;
| Hauptsignal mit Vorsignal, Hp0/Hp1/Hp2&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik, &amp;lt;br /&amp;gt;Kombination aus 76393 und 76383&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76371&lt;br /&gt;
| Gleissperrsignal,. Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|-&lt;br /&gt;
| align=&amp;quot;MIDDLE&amp;quot; | 76372&lt;br /&gt;
| Gleissperrsignal mit Mast, Sh0/Sh1&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| mit intergrierter Elektronik&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Oberleitung im Märklinsystem==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dieser Artikel ist auf der Basis dem Abschnitte 2 der alten &amp;quot;FAQ H0 AC&amp;quot; von Stephan-Alexander Heyn entstanden. Mehr über die Artikel &amp;quot;Märklin H0&amp;quot; unter [[Märklin H0 : Allgemeines]] &lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Gleise]]&lt;br /&gt;
[[Kategorie:Zubehör]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Der_Einstieg_ins_Hobby_-_analog_oder_Digital%3F&amp;diff=12484</id>
		<title>Der Einstieg ins Hobby - analog oder Digital?</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Der_Einstieg_ins_Hobby_-_analog_oder_Digital%3F&amp;diff=12484"/>
				<updated>2008-11-04T16:25:47Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Computer Steuerung */ Link gesetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== &amp;lt;font color=&amp;quot;#0000FF&amp;quot;&amp;gt;Analog vs. Digital&amp;lt;/font&amp;gt; ==&lt;br /&gt;
Diese Übersicht ist bewusst allgemein gehalten. Es sollen nur grundlegende Eigenschaften der Systemwelten aufgezeigt werden. Insbesondere ist fast alles, was als fehlend bezeichnet ist, durch Zusatzaufwand in jedem System realisierbar. Weiter sind viele Eigenschaften je nach System/Lieferant unterschiedlich stark ausgeprägt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Welche Systeme gibt es? ===&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;u&amp;gt;Analog&amp;lt;/u&amp;gt; gibt es im wesentlichen zwei Systeme: Mittelleiter mit Wechselstrom (H0 und teilweise Spur 0) und 2-Leiter Gleichstrom (alle Baugrößen). In Spur 1 gab es auch mal 2-Leiter Wechselstrom (von Märklin)&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;u&amp;gt;Digital&amp;lt;/u&amp;gt; gibt es zwei große und einige weniger verbreitete Systeme:&lt;br /&gt;
&lt;br /&gt;
* '''Märklin/Motorola''' hauptsächlich für die beiden hauseigenen Systeme Mittelleiter-H0 und Spur 1. Es gab davon auch eine Gleichstrom Variante, die von Arnold vertrieben wurde. Es gibt im wesentlichen nur Märklin als Komplettlieferant. Für Lokdekoder, Schaltempfänger und Rückmeldebausteine gibt es jedoch weitere Lieferanten.&lt;br /&gt;
* '''NMRA-DCC''' ('''N'''ational '''M'''odell '''R'''ailroader '''A'''ssociation '''- D'''igital '''C'''ommand '''C'''ontrol) hauptsächlich für 2-Leiter mit Gleichstrom Motoren. Es lässt sich jedoch auch im Mittelleiter Gleissystem einsetzen, sofern Gleichstrom Motoren verwendet werden. Es gibt eine Vielzahl von Lieferanten sowohl für Komplettsysteme, als auch für einzelne Komponeneten. Ein wichtiger Vorteil ist, dass dieses System einer öffentlichen Norm zu Grunde liegt.&lt;br /&gt;
* '''Selectrix''' von Trix (2-Leiter, Gleichstrom) hat den Vorteil, dass es in diesem System von Anfang an sehr kleine Lokdekoder gab. Daher ist es vor allem für die Baugröße N beliebt. Weiter werden die Fahreigenschaften dank 32 Fahstufen und Motorregelung gelobt. Allerdings haben die Hersteller von NMRA-DCC Lokdekodern mittlerweile ebenfalls sehr kleine Dekoder im Angebot / in der Planung. Trix scheint jedoch langsam auch auf NMR-DCC umzuschwenken. Die neueste Zentrale von Trix unterstützt sowohl das Selectrix als auch das NMRA-DCC Protokoll. Einziger Systemlieferant ist Trix. Die Firmen MÜT und MTTM liefern/entwickeln jedoch eine Palette von einzelnen Komponenten.&lt;br /&gt;
* '''FMZ''' von Fleischmann (2-Leiter, Gleichstrom) wird im wesentlichen nur bei Lokmodellen von Fleischmann verwendet. Fleischmann hat mittlerweile die Konsequenz aus dem Nischendasein seines Digitalsystems gezogen und bietet seit 2000 Twin-Dekoder und Twin-Zentraleinheiten an, die neben dem FMZ Protokoll auch das NMRA-DCC Protokoll beherschen.&lt;br /&gt;
* '''ZIMO''' war der Pionier der Digitalisierung. Neben dem (alten) hauseigenem System gibt es seit einiger Zeit NMRA-DCC Dekoder. Die neueren ZIMO Zentraleinheiten unterstützen beide Protokolle. &amp;lt;br /&amp;gt;&lt;br /&gt;
* Alle bisher erwähnten System steuern die Lokomotiven. Daneben gibt es jedoch auch Systeme, die die Spannung an Gleisabschnitten steuern. Dadurch entfällt der Umbau von Lokomotiven. Jedoch funktioniert diese Art der Steuerung nur in Verbindung mit einem Computerprogramm. Anbieter solcher Systeme sind: Gahler &amp;amp; Ringstmeier (erfordert zusätzliche Baugruppen im Computer, hoher Verdrahtungsaufwand), CTI und RCI (einzelne Baugruppe auf der Anlage, die über eine Steuerleitung miteinander und mit dem Computer verbunden sind). Das System von G&amp;amp;A entspricht dabei eher einer konventionellen Anlagensteuerung, die auf den Computer verlagert wurde. Die Systeme von CTI und RCI hingegen entsprechen eher einem Digitalsystem, nur dass statt der Loks die Gleisabschnitte gesteuert werden. Schalten und Erfassen erfolgen dabei wie in einem Digitalsystem. Diese Art von Systemen ist jedoch (zumindest in Europa) nicht sehr verbreitet.&lt;br /&gt;
&lt;br /&gt;
Wie aus den Darstellungen oben hervorgeht scheint es mittlerweile auf zwei Systeme hinauszulaufen. &amp;lt;br /&amp;gt; - Mittelleiter Gleissystem mit Märklin/Motorola Protokoll. &amp;lt;br /&amp;gt; - 2-Leiter Gleissystem mit NMRA-DCC Protokoll &amp;lt;br /&amp;gt; Für beide Protokolle gilt, dass diese über einen längeren Zeitraum weiterentwickelt wurden, so dass es heute mehrere Protokoll Varianten mit unterschiedlichen Fähigkeiten bzgl. Anzahl der Fahrstufen, Adressen und Funktionen gibt. Aktuelle Zentralen in beiden Systemen unterstützen jedoch weiterhin die älteren Protokoll Varianten.&lt;br /&gt;
&lt;br /&gt;
Eine aktuelle Entwicklung sind die Multi Protokoll Zentralen, die zwei oder mehr verschiedene Protokolle anbieten. Neben den Geräten von Trix, Fleischmann und ZIMO, die das eigene System um das NMRA-DCC Protokoll erweitern, gibt es die Intellibox von Uhlenbrock, die drei Systemwelten miteinander verbindet: Selectrix, Märklin/Motorola und NMRA-DCC. Bei letzterer werden auch mehrere Systeme für Eingabegeräte und Rückmeldung unterstützt.&lt;br /&gt;
&lt;br /&gt;
=== Welche Komponenten gehören zu einem Digital- oder Analogsystem? ===&lt;br /&gt;
&lt;br /&gt;
Zu einem &amp;lt;u&amp;gt;Digitalsystem&amp;lt;/u&amp;gt; gehören folgende Konponenten:&lt;br /&gt;
&lt;br /&gt;
* '''[[Digitalzentrale|Zentraleinheit]]''' (Control Unit, Central Control, ...) erzeugt aus den Eingaben die notwendigen Digitalsignale&lt;br /&gt;
* '''Verstärker''' ([[Booster]]) liefert die notwendige Leistung für das Digitalsignal am Gleis&lt;br /&gt;
* '''Transformator''' zur Spannungs/Stromversorgung&lt;br /&gt;
* '''Eingabegeräte''' zum Steuern von Loks und Schaltelementen (Weichen, Signale, Relais, Stellmotoren)&lt;br /&gt;
* '''[[Decoder#Lokdecoder|Lokdekoder]]''' zum Steuern der Lokmodelle&lt;br /&gt;
* '''[[Decoder#Schaltdecoder|Schaltdekoder]]''' zum Steuern von Weichen, Signale, Relais, ...&lt;br /&gt;
* '''Rückmeldeeinheiten''' zum Erfassen von Istzuständen auf der Anlage ([[Besetztmelder|Gleisbesetztmeldung]], ...) &amp;lt;br /&amp;gt; Der Bus für die Rückmeldung ist leider nicht standardisiert. Jeder Systemhersteller baut sein eigenens System.&lt;br /&gt;
* '''Computerinterface''' zur Verbindung mit einem Steuerprogramm auf einem Computer&lt;br /&gt;
&lt;br /&gt;
Notwendig sind die Komponenten Zentraleinheit, Verstärker, Transformator, Eingabegerät und Lok-/Schaltdekoder. Die Komponenten Zentraleinheit, Verstärker und Eingabegerät sind oft in einem Gerät zusammengefasst.&lt;br /&gt;
&lt;br /&gt;
In einem &amp;lt;u&amp;gt;Analogsystem&amp;lt;/u&amp;gt; braucht man die Komponenten '''Transformator''', '''Regler''' und einfache '''Schalter'''. Transformator und Regler sind meist in einem Gerät vereint. Bei endabgeschalteten Antrieben ist eine Rückmeldung der Schalterstellung meist mit eingebaut.&lt;br /&gt;
&lt;br /&gt;
=== Loksteuerung und Fahrverhalten ===&lt;br /&gt;
&lt;br /&gt;
In den &amp;lt;u&amp;gt;Analogsystemen&amp;lt;/u&amp;gt; kann man mehrere Loks nur dadurch unabhängig voneinander steuern, indem jede Lok auf einem eigenen Stromabschnitt fährt. Dies bedeutet einen entsprechenden Aufwand für Trennstellen, Verkabelung und Regler/Trafo.&lt;br /&gt;
&lt;br /&gt;
In den &amp;lt;u&amp;gt;Digitalsystemen&amp;lt;/u&amp;gt; stellt jeder Lokdekoder einen eigenen Regler für genau diese eine Lok dar. Am Gleis liegt immer die selbe Spannung an (sofern die Leistungsfähigkeit des Verstärkrs nicht überschritten wird). Dadurch entfällt die Notwendigkeit von abschaltbaren Abschnitten z.B. für das Abstellen von Loks. Der Verkabelungsaufwand reduziert sich damit theoretisch auf einen einzigen Anschluss an das Gleis. Dies gilt jedoch nur in der Theorie. Bei großen Anlagen, bzw. vielen Loks oder Wagenbeleuchtung müssen doch wieder mehrere Verstärker und damit Stromabschnitte eingesetzt werden. Weiter ist es in beiden Systemwelten sinnvoll in regelmässigen Abständen Stromeinspeisungen vorzunehmen (min. alle 3 Meter). &amp;lt;br /&amp;gt; Sollen funktionsfähige Signale benutzt werden sind in beiden Systemwelten Trennabschnitte mit eigener, allerdings örtlicher, Behandlung vorzusehen.&lt;br /&gt;
&lt;br /&gt;
Das Fahrverhalten eines Lokmodells wird von fünf Kriterien beeinflusst. &amp;lt;br /&amp;gt; - '''Stromabnahme''' (Kontaktsicherheit) &amp;lt;br /&amp;gt; - '''Mechanik''' (Kraftübertragung, Getriebe, Achsdruck) &amp;lt;br /&amp;gt; - '''Schwungmasse''' (ohne/mit, Dimension) &amp;lt;br /&amp;gt; - '''Motoreigenschaften'''&amp;lt;br /&amp;gt; - '''Spannungsregelung'''&amp;lt;br /&amp;gt; Die Stromabnahme kann ggfs. durch zusätzliche Kontaktpunkte verbessert werden. Regelmässige Reinigung der Räder und Schienen ist sicherlich hilfreich. &amp;lt;br /&amp;gt; Die Mechanik ist weitgehend durch die Konstruktion festgelegt (Zahl und Art der angetriebenen Achsen, Getriebeauslegung, Haftreifen, ...). Hier kann man nur wenig ändern. Lediglich durch Säubern und Schmieren der Getriebeteile und ggfs. Entgraten der Zahnräder kann man hier eine Verbesserung erzielen. Eine Änderung des Getriebes ist meistens schwierig und aufwendig. Der Achsdruck kann vielleicht noch durch Erhöhung des Ballastgewichtes verbessert werden. &amp;lt;br /&amp;gt; Eine (größere) Schwungmasse nachzurüsten ist in den meisten Fällen eine umfangreiche Arbeit und erfordert oft das Ausarbeiten des Ballastgewichtes. &amp;lt;br /&amp;gt; Die Motoreigenschaften kann man nur durch Tausch verändern. Allerdings ist ein Umbau auf z.B. Faulhaber Motoren nicht billig. Ist ein Rundmotor, wie er z.B. von Fleischmann oder Märklin oft verwendet wird, zu ersetzen, sind meistens umfangreiche Änderungsarbeiten notwendig.&lt;br /&gt;
&lt;br /&gt;
Lediglich bei der Spannungssteuerung unterscheiden sich Analog und Digital Systeme. &amp;lt;br /&amp;gt; Im &amp;lt;u&amp;gt;Analogsystem&amp;lt;/u&amp;gt; wird ein Gleisabschnitt geregelt, unabhängig von den Fahreigenschaften der verschiedenen Lokmodelle. Eine Anpassung an unterschiedliche Lokmodelle ist daher nicht möglich. &amp;lt;br /&amp;gt; In einem &amp;lt;u&amp;gt;Digitalsystem&amp;lt;/u&amp;gt; hat jede Lok durch den Dekoder ihren eigenen Regler eingebaut. Hier kann man die Regeleigenschaften an die Motoreigenschaften und das Fahrverhalten einer einzelnen Lok gezielt anpassen (sofern der Dekoder das zulässt). Eingestellt werden können meistens die Anfahrspannung, die maximale Geschwindigkeit sowie die Verzögerung beim Beschleunigen und Bremsen. Bei vielen Dekodern nach NMRA-DCC Standard kann zudem die Geschwindigkeitstabelle, das heisst die Zuordnung von Fahrstufe zu Motorspannung, programmiert werden. &amp;lt;br /&amp;gt; Man soll sich jedoch nicht täuschen. Man kann zwar das Fahrverhalten varieren, aber unzureichende Stromabnahme, schlechte Mechanik und fehlende Schwungmasse kann man damit nur zum Teil ausgleichen. Stehen diese drei Punkte jedoch auf der positiven Seite, kann man durch die Einstellungen im Dekoder das Fahrverhalten wirklich optimieren.&lt;br /&gt;
&lt;br /&gt;
=== Schalten und Verkabeln ===&lt;br /&gt;
&lt;br /&gt;
Schalten bedeuten in diesem Zusammenhang das Stellen von Weichen und Signalen, das Ein- und Ausschalten von Motoren und anderen elektrischen Verbrauchern (z.B. Licht, Blinker, ...).&lt;br /&gt;
&lt;br /&gt;
Dies ist in &amp;lt;u&amp;gt;Analogsystemen&amp;lt;/u&amp;gt; klar und einfach. Einfach die Kabel vom Verbraucher zu einem passenden Schalter ziehen und ggfs. diesen mit einer gemeinsamen Stromquelle verbinden. Geschaltet werden drei verschiedene Arten. &amp;lt;br /&amp;gt; - 1.) Weichen, Signale, ... also im Prinzip Relais. &amp;lt;br /&amp;gt; - 2.) Allgemeine Verbraucher wie Licht, Motoren oder Pumpen &amp;lt;br /&amp;gt; - 3.) Fahrstrom für abschaltbare Gleisabschnitte &amp;lt;br /&amp;gt; Der Aufwand bei der Verkabelung entsteht dadurch, dass die Schalter üblicherweise am Anlagenrand untergebracht werden (müssen). Dadurch ergeben sich recht lange Kabelwege. Will/muss man nun mehr als ein Dutzend Elemente schalten, so muss man schon deutlichen Aufwand betreiben, um die Verkabelung übersichtlich zu halten. Die Kabelwege werden dann, durch das meistens angewandte rechtwinklige Verlegen, nochmals deutlich länger.&lt;br /&gt;
&lt;br /&gt;
In einem &amp;lt;u&amp;gt;Digitalsystem&amp;lt;/u&amp;gt; werden '''Schaltdekoder''' verwendet. Die häufiste Art kann vier Elemente schalten. Der Schaltdekoder kann nun in der Nähe der zu schaltenden Elemente plaziert werden. Dadurch bleiben die Kabelwege kurz und übersichtlich. Die Schaltdekoder selbst werden über eine Leitung mit einem Booster und dadurch mit dem Digitalsignal verbunden. Bei kleinen Anlagen kann der Einfachheit halber der Digitalstrom aus dem Gleis entnommen werden. Bei größeren Anlagen wid man dafür einen eigenen Boosterkreis verwenden. Die Stellbefehle kommen dann über die Zentraleinheit von einem entsprechendem Eingabegerät (z.B. Keyboard).&lt;br /&gt;
&lt;br /&gt;
Will man nun ein '''[[Modellbahnsteuerung#Gleisbildstellpulte|Gleisbildstellpult]]''' statt der einfachen Schalter bzw. des Keybords verwenden stellt sich die Situation anders dar. &amp;lt;br /&amp;gt; In einem &amp;lt;u&amp;gt;Analogsystem&amp;lt;/u&amp;gt; ersetzen die Schalter im Stellpult einfach die normalen Schalter. Die Kabel müssen dazu in der Regel nur verlängert werden. Rückmeldungen von Weichen- und Signalstellungen sind bei endabgeschalteten Antrieben in der Regel integriert. &amp;lt;br /&amp;gt; In einem &amp;lt;u&amp;gt;Digitalsystem&amp;lt;/u&amp;gt; müssen hingegen über entsprechende Eingabedekoder von jedem Schalter im Stellpult die Adresse des zugehörigen Ports des Schaltdekoders erzeugt werden. Für Rückmeldungen müssen zusätzliche Anzeigedekoder benutzt werden.&lt;br /&gt;
&lt;br /&gt;
=== Sicherungstechnik ===&lt;br /&gt;
&lt;br /&gt;
Sicherungstechnik heisst das Erzwingen von Sicherheits relevanten Betriebszuständen. Das schliesst insbesondere ein: &amp;lt;br /&amp;gt; - '''Automatischer Halt''' vor roten Signalen &amp;lt;br /&amp;gt; - '''Automatische Langsamfahrt''' bei entsprechendem Signalbild &amp;lt;br /&amp;gt; - '''Automatische Blocksteuerung''' (Einfahrt in einen Block nur wenn der nächste Block frei ist) &amp;lt;br /&amp;gt; - '''Fahrstrassen''' mit Flankenschutz und Sicherungssignalen&lt;br /&gt;
&lt;br /&gt;
In Analogsystemen sind die Punkte 1 - 3 relativ einfach zu realisieren. Automatischer Halt kann durch Abschalten des Fahrstroms sehr einfach erfolgen. Signale haben oft einen zusätzlichen Schalter für diesen Zweck. Langsamfahrt kann durch Schalten eines Fahrstroms mit geringerer Fahrspannung erfolgen (Relais). Für beide Zwecke kann auch ein Anfahr/Bremsbaustein verwendet werden. Einige Anfahr/Bremsbaustein können auch so miteinander verbunden werden, dass sich daraus eine automatische Blocksteuerung ergibt. Für diesen Zweck sind jedoch auch spezialisierte Bausteine verfügbar. &amp;lt;br /&amp;gt; Das Schalten von Fahrstrassen (also das gemeinsame, nicht notwendig zeitgleiche Schalten mehrer Elemente [Weichen, Signale]) ist im Analogsystem nicht auf einfachem Weg möglich. Natürlich gibt es Lösungen wie Relaisketten oder Diodenmatrix, jedoch gibt es kaum fertige Bausteine für diesen Zweck.&lt;br /&gt;
&lt;br /&gt;
In &amp;lt;u&amp;gt;Digitalsystemen&amp;lt;/u&amp;gt; ist das automatische (langsame) Anhalten oder automatische Langsamfahrt für eine beliebige Lok nicht standardisiert. Demzufolge haben einige Dekoder keinerlei Vorkehrung dafür, andere reagieren auf Bremsdioden (z.B. Selectrix), wieder andere benötigen dafür Bremsgeneratoren. Will man also diese Funktionalität haben, so ist man bei der Auswahl seiner Lokdekoder eingeschränkt. Eine automatische Blocksteuerung benötigt den gezielten Halt vor Signalen und unterliegt daher denselben Einschränkugen. &amp;lt;br /&amp;gt; Das Definieren und Schalten von Fahrstrassen ist in &amp;lt;u&amp;gt;Digitalsystemen&amp;lt;/u&amp;gt; prinzipiell möglich, es benötigt jedoch in der Regel entsprechende Zusatzkomponenten. Daher wird es in den meisten Fällen eher über eine Computer Steuerung realisiert.&lt;br /&gt;
&lt;br /&gt;
Es bleibt festzuhalten, dass es weder im Analog- noch im Digitalsystem ein einheitliches, tragfähiges (= für alle Loks gültiges) Konzept für die Sicherungstechnik gibt. Während im Analogsystem eine automatische Blocksteuerung relativ einfach zu realisieren ist, erfordert eine Fahrstrassen Sicherung einiges an Aufwand. Umgekehrt hängt in einem Digitalsystem der automatische Halt vor einem Signal von den Eigenschaften der Lokdekoder ab. Dies gilt insbesondere, wenn mit Multiprotokoll Zentralen Dekoder aus verschiedenen Digitalsystemen eingesetzt werden. Damit ist eine automatische Blocksteuerung ebensowenig gewährleistet, wie eine Fahrstrassen Sicherung. Abschaltung des Digitalstroms wäre zwar möglich, führt jedoch zum Nothalt vor jedem roten Signal und ist damit sicherlich nicht im Sinne einer Digitalsteuerung. Leider ist bei der Entwicklung der verschiedenen Digitalsysteme der Punkt Sicherungstechnik konzeptionell nicht berücksichtigt worden.&lt;br /&gt;
&lt;br /&gt;
Beispiele, wie das im im Analogbetrieb geht, kann man in den Artikeln [[Gleiskontakte]] und [[Modellbahnsteuerung_-_Beispiele_Analogbetrieb]] sehen.&lt;br /&gt;
&lt;br /&gt;
=== Halt vor Signal ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In einer Diskussion zum Thema &amp;quot;Digitaler Halt vor Signal&amp;quot; wurden verschiedene Methoden diskutiert einen Zug vor einem rot zeigenden Signal (langsam) anzuhalten.&lt;br /&gt;
&lt;br /&gt;
Die einfachste Methode ist natürlich einfach den Strom auszuschalten. Das geht immer und funktioniert für alle Loks, aber man verliert die Vorteile eines Digitalsystems wie langsames Anhalten, Licht, Funktionen, ... Als zusätzliche Sicherung ist es jedoch sinnvoll. &amp;lt;br /&amp;gt; Eigentlich ist diese Methode auch für Analog nicht akzeptabel. Man verwendet dort Anfahr-Brems-Bausteine, um ein langsames Anhalten vor dem Signal zu erreichen.&lt;br /&gt;
&lt;br /&gt;
Alle nachfolgenden Methoden verwenden eine andere Stromart oder ein anderes Digitalsignal im Signalabschnitt. Daher müssen entsprechende Vorkehrungen gegen Kurzschluss zwischen Signalabschnitt und der Strecke mit dem normalen Digitalsignal getroffen werden. Dazu verwendet man zumeist einen umschaltbaren Gleisabschnitt vor dem Signalabschnitt. Die Umschaltung erfolgt unmittelbar vor der Einfahrt in den Signalabschnitt. Dieser umschaltbare Gleisabschnitt muss auf den längsten Zug ausgelegt sein. Der Signalabschnitt kann dadurch ggfs. kürzer ausfallen.&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;3&amp;quot; align=&amp;quot;Center&amp;quot; bgcolor=&amp;quot;#CCCCCC&amp;quot;&lt;br /&gt;
! width=&amp;quot;20%&amp;quot; bgcolor=&amp;quot;#DDDDDD&amp;quot; |&lt;br /&gt;
! width=&amp;quot;35%&amp;quot; | Märklin/Motorola Digital  ----&lt;br /&gt;
! width=&amp;quot;45%&amp;quot; | NMRA-DCC Digitalsystem  ----&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Strom aus plus &amp;lt;br /&amp;gt; Abschnitt mit &amp;lt;br /&amp;gt; Langsamfahrt&lt;br /&gt;
| Die Dekoder sollen unterhalb von 5V nicht mehr ordnungsgemäß arbeiten. Mit einem kleinen Sicherheitsaufschlag sollte das für die Einrichtung eines Abschnitt mit reduzierter Geschwindigkeit ausreichen. &amp;lt;br /&amp;gt;''Erfahrungen ???''&lt;br /&gt;
| Nach der Spezifikation müssen NMRA-DCC Dekoder bis hinunter zu +/- 7V arbeiten. Das sollte reichen um einen Abschnitt mit reduzierter Geschwindigkeit einzurichten. Wie Loks und ihre Dekoder auf eine Reduktion der Spannung tatsächlich reagieren ist jedoch noch zu erproben. Insbesondere geregelte Dekoder könnten für Überraschungen sorgen.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Umschalten auf &amp;lt;br /&amp;gt; Analog&lt;br /&gt;
| '''???'''&amp;lt;br /&amp;gt; Loks mit Dekodern, die den Analogbetrieb unterstützen, fahren vermutlich mit einer Geschwindigkeit relativ zur Spannung weiter. Die digitalen Funktionen gehen wahrscheinlich verloren. &amp;lt;br /&amp;gt;&amp;lt;u&amp;gt;Frage:&amp;lt;/u&amp;gt; Unterstützen alle Dekoder den Analogbetrieb?&lt;br /&gt;
| Loks mit Dekodern, die den Analogbetrieb unterstützen, halten mit der eingestellten Verzögerung an, wenn die Gleichspannung entgegen der Fahrtrichtung gepolt ist. &amp;lt;u&amp;gt;Sie wechseln jedoch nicht die Fahrtrichtung!&amp;lt;/u&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;u&amp;gt;Frage:&amp;lt;/u&amp;gt; Unterstützen alle Dekoder den Analogbetrieb? &amp;lt;br /&amp;gt;&amp;lt;u&amp;gt;Frage:&amp;lt;/u&amp;gt; Was passiert, wenn der Analogbetrieb abgeschaltet ist?&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Broadcast Adresse: &amp;lt;br /&amp;gt; Halt an alle&lt;br /&gt;
| '''???'''&amp;lt;br /&amp;gt;&amp;lt;u&amp;gt;Frage:&amp;lt;/u&amp;gt; Gibt es im M/M Digitalsystem eine Broadcast Adresse?&lt;br /&gt;
| In der erweiterten NMRA-DCC Spezifikation ist die Adresse 0 als Broadcast Adresse definiert. Alle Dekoder müssen auf Befehle an diese Adresse reagieren. Ein Haltebefehl an diese Adresse setzt nur die Geschwindigkeit. Die digitalen Funktionen sind davon nicht betroffen. &amp;lt;br /&amp;gt; Im NMRA-DCC Basis Standard (99 Adressen, 14 Fahrstufen) ist das Paket mit Adresse 0 und Geschwindigkeit 0 als Dekoder Reset definiert. Dies erfordert ein unmittelbares Anhalten. &amp;lt;br /&amp;gt;&amp;lt;u&amp;gt;Problem:&amp;lt;/u&amp;gt; Alte Dekoder können mit sofortigen Halt, statt langsamen Abbremsen reagieren.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Bremsgenerator&lt;br /&gt;
| Bremsgeneratoren funktionieren nur mit bestimmten Dekodern, daher sind sie nicht universell einsetzbar.&lt;br /&gt;
| Obwohl die Hersteller das nicht offenlegen, werden die meisten Bremsgeneratoren nach dem Prinzip der Broadcast Adresse arbeiten. Dennoch garantieren die Hersteller die Funktion nur für ihre eigenen Produkte.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; |&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | ----&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Eigene CU+Booster &amp;lt;br /&amp;gt; sendet Halt für alle &amp;lt;br /&amp;gt; aktiven Adressen&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | Dies erfordert die Kommunikation zwischen zwei Zentraleinheiten. Dies ist in den Digitalsystemen nicht vorgesehen. Vermutlich kann das, abgesehen von den elektrischen Problemen, nur mit einer Steuerung per Computer gelöst werden. Vorteil wäre, das dies auch Multiprotokol fähig sein sollte.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Bremsdioden&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | Bremsdioden werden im Selectrix System von Trix eingesetzt. Nur sehr wenige Dekoder in anderen Systemen benutzen diese Möglichkeit für ein Bremssignal. (Technisch gesehen reagiert der Dekoder auf das Ausbleiben einer Halbwelle.)&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | ZIMO&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | ZIMO benutzte schon in seinem alten System eine Funktion, um Loks ein Bremssignal zu geben. Diese Funktion ist auch in den NMRA-DCC kompatiblen Dekodern von ZIMO eingebaut. Dennoch ist es eine Insellösung, da sie nur in ZIMO Dekodern implementiert ist.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Computersteuerung &amp;lt;br /&amp;gt; plus Zugverfolgung&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | Diese Methode beruht darauf den Standort eines Zuges zu kennen und ihm bei Annäherung an ein rot zeigendes Signal einen Brems/Halt Befehl zu senden. Diese Methode ist unabhängig vom eingesetzten Digitalsystem, aber erfordert den Einsatz eines Computers, was nicht jeder Modellbahner will. Die Sicherheit dieser Methode hängt von der Korrektheit des Anfangszustandes und der Genauigkeit der Ortsmeldungen ab. Hinzufügen / Entfernen von Loks kann hierbei problematisch sein.&lt;br /&gt;
|- valign=&amp;quot;Top&amp;quot;&lt;br /&gt;
! bgcolor=&amp;quot;#DDDDDD&amp;quot; | Computersteuerung &amp;lt;br /&amp;gt; plus Zugerkennung&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; | Die Zugerkennung eleminiert die Probleme der Zugverfolgung. Methoden sind Strichcode oder Transponder mit entsprechenden Lesegeräten. Nachteilig sind die hohen Kosten und die Notwendigkeit die Anlage über einen Computer zu steuern.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Computer Steuerung ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt; Prinzipiell kann man in beiden Systemwelten eine Computer Steuerung aufbauen. In einem Analogsystem bedeutet das jedoch einen erheblichen Hardware Aufwand. Im Computer sind I/O Karten zu installieren, auf der Anlage bzw. am Übergabepunkt sind Anpassungen von den bei Modellbahn Anlagen üblichen Spannungen (12-16 Volt) auf Computer verträgliche 5 Volt vorzusehen. Ist Leistung zu schalten muss ein Relais oder Treiberbaustein verwendet werden. Um den Computer vor elektrischen Problemen auf der Modellbahn Anlage zu schützen, ist eine galvanische Trennung z.B. durch Optokoppler notwendig. Dass es geht, aber auch sehr aufwendig im Sinne von Zeit und Geld ist, beweist das System [[MpC]] von [http://www.gahler.de Gahler &amp;amp; Ringstmeier]. &lt;br /&gt;
&lt;br /&gt;
In den Digitalsystem ist eine Verbindung zum Computer konzeptionell mit eingeplant. Es werden lediglich die Interface Komponente und das Verbindungskabel benötigt. Da es den Anschluss an Computer schon seit langer Zeit bei den verschiedenen Digitalsystemen gibt, sind Programme zur Computer Steuerung in einer Vielzahl von Formen und Funktionsumfang verfügbar. Mehr darüber kann man auf [[Modellbahnsteuerung_via_PC|Modellbahnsteuerung via PC]] erfahren.&lt;br /&gt;
&lt;br /&gt;
Welche Vorteile bietet nun eine Steuerung mit dem Computer?&lt;br /&gt;
&lt;br /&gt;
* '''Kostenbegrenzung:'''&amp;lt;br /&amp;gt; Durch eine Computer Steuerung können viele Teile, die sonst als Hardware Komponenten auszuführen sind, durch Software realisiert werden. Dies betrifft vor allen zusätzliche Lokregler und ein Gleisbild Stellpult.&lt;br /&gt;
* '''Überwachung von Istzuständen:'''&amp;lt;br /&amp;gt; Dies ist die Voraussetzung für jede Form der Sicherung und Automatisierung. (Stellung von Weichen und Signalen, Gleisbelegung, Zugposition, ...)&lt;br /&gt;
* '''Sicherungslogik:'''&amp;lt;br /&amp;gt; Erzwingung sicherer Zustände durch Ausführung von Aktionen erst, wenn dies ohne Risiko möglich ist. (z.B. Blocksignal kann erst auf grün geschaltet werden, wenn der Blockabschnitt davor nicht belegt ist.)&lt;br /&gt;
* '''Fahrstrassen &amp;amp; Sicherung:'''&amp;lt;br /&amp;gt; Definition aller Weichen und Signalstellungen für eine Fahrstrasse. Zur Sicherung können zusätzliche Elemente definiert werden (Schutzweichen, Signale, ...). Freigabe der Fahrstrasse erst, wenn alle Bedingungen erfüllt sind.&lt;br /&gt;
* '''Automatikbetrieb:'''&amp;lt;br /&amp;gt; Fahren von Zügen nach Ereignissen. (Zugkreuzung, Überhohlung, Aufenthalt, [[Schattenbahnhof]], ...). In der Regel ist eine entsprechende Sicherungslogik Voraussetzung.&lt;br /&gt;
* '''Fahrplanbetrieb:'''&amp;lt;br /&amp;gt; Dies ist eigentlich auch ohne Computer gut möglich. Allerdings kann der Computer durch Bereitstellung von Informationen und Überwachung der Zeit gute Unterstützung leisten (Computer als Fahrdienstleiter). Besonders interessant, wenn mit verkürzter Modellzeit gefahren wird.&lt;br /&gt;
* '''Gleisbild Stellpult:'''&amp;lt;br /&amp;gt; Viele Leute werden durch den Aufwand, den es bedeutet ein reales Gleisbild Stellpult zu bauen, (Zeit, Kosten, Konzeption, Aufbau, Verkabelung, ...) davon abgehalten, jemals eines zu bauen. Mit einem Computer Programm vereinfacht sich das Ganze erheblich. Alles kann ausprobiert werden bis es funktioniert. Die Anlage kann Stück für Stück in das Gleisbild Stellpult übernommen werden bis alles stimmt. Und das Ganze ohne finanzielle Verluste befürchten zu müssen.&lt;br /&gt;
&lt;br /&gt;
 Alle oben erwähnten Punkte können letztendlich auch ohne Computer Steuerung erfolgen - für einen Fahrplanbetrieb z.B. bedarf es eigentlich nur einer (Modell-)Uhr und eines Buchfahrplans - aber mit Hilfe von Computer Programmen ist es oft einfacher und/oder kostengünstiger zu erreichen.&lt;br /&gt;
&lt;br /&gt;
Aus finanziellen Gründen kann es interessant sein, auch die Zentraleinheit als ein Programm auszuführen. Der Computer erzeugt das Digitalsignal und gibt es direkt an den Booster, der die notwendige Leistung zur Verfügung stellt. An Hardware braucht man dann nur noch einen Booster, einen Transformator und die Verbindung zum Computer. Ein Beispiel für diese Art von Programmen sind '''DDL''' (Digital Direct for Linux) von Torsten Vogt und '''Lok''' (für MS-DOS) von Dr. M. König.&lt;br /&gt;
&lt;br /&gt;
=== Sonstiges ===&lt;br /&gt;
&lt;br /&gt;
* In Digitalsystemen verschwinden die Unterschiede zwischen Wechsel- und Gleichstrom. Alle Systeme verwenden Rechteckspannungen um Strom und Daten gleichzeitig auf einem Leiterpaar zu übertragen. Die Motoren werden nicht mehr durch Änderung der Spannung gesteuert, sondern durch Änderung des Taktverhältnisses einer gepulsten Spannung (PWM == Puls Wide Modulation).&lt;br /&gt;
* Der Trend wird zu immer mehr Lokmodellen gehen, die von vorne herein einen Dekoder eingebaut haben. Bei Märklin H0 ist das schon sehr verbreitet, da dort durch den Dekoder, der sonst für den Analogbetieb notwendige, Umschalter für die Fahrtrichtung eingespart wird.&lt;br /&gt;
* Ausser bei dem System von ZIMO ist in keinem Digitalsystem eine Lokerkennung vorgesehen. Damit wurde leider eine Chance für den Automatikbetrieb vertan. In Programmen zur Steuerung wir versucht, dies durch eine Zugverfolgung zu ersetzen. Das bietet aber nicht die gleiche Sicherheit wie die Lokerkennung. Insbesondere ist man von der korrekten Angabe des Anfangzustandes abhängig. Das Hinzufügen oder Entfernen von Loks/Zügen erfordert dann Eingriffe am Computer.&lt;br /&gt;
* Startsets bieten die Möglichkeit zu einem preisgünstigen Einstieg in ein Digitalsystem. Genauso wie die Lok- und Wagenmodelle in Startsets häufig vereinfachte Varianten sind, müssen bei digitalen Startsets oft Einschränkungen im Funktionsumfang hingenommen werden. Ob dieser geringere Funktionsumfang für die eigenen Zwecke ausreichend ist, sollte man vor einem Kauf sorgfältig überlegen.&lt;br /&gt;
* Wirklich faszinierend sind funktionsfähige Modelle von Eisenbahnkränen, wie sie von Roco und Märklin angeboten werden. Diese Modelle sind nur in einem Digitalsystem denkbar. In einem Analogsystem gibt es keine Möglichkeit, sie unabhängig von der Fahrspannung zu steuern.&lt;br /&gt;
* Die Nachrüstung vorhanderner Analogloks mit einem Digitaldekoder ist im Prinzip möglich. Bei aktuellen oder relativ neuen Lokmodellen sollte das mit einem geringen bis vertretbaren Aufwand möglich sein. Lediglich bei alten oder sehr kleinen Lokmodellen kann es kritisch werden. Da ist dann manchmal ein größerer Umbau mit Fräsarbeiten notwendig, um Platz für den Digitaldekoder und seine Kabel zu schaffen. In den kleinen Baugrößen N und TT ist hier natürlich stärker mit Problemen zu rechnen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;u&amp;gt;Fazit&amp;lt;/u&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Eigentlich kann man keinen allgemeinen Rat geben, ob Mann oder Frau ein Digitalsystem einsetzen soll. Zu unterschiedlich sind die Bedürfnisse, zu groß ist die Zahl der Varianten, zu zahlreich sind die Faktoren, die Zeit, Kosten oder Aufwand beeinflussen. Auch kann nur jeder für sich selbst entscheiden, was ihm/ihr Freude bereitet und wofür man Zeit und/oder Geld investieren will. &amp;lt;br /&amp;gt; Dennoch wollen wir versuchen, im Folgenden einige Anhaltspunkte für eine Entscheidung zu geben.&lt;br /&gt;
&lt;br /&gt;
* Ein Analogsystem ist einfacher aufgebaut. Strom an und die Lok fährt, Spannung höher und die Lok fährt schneller. Es entfallen eine Vielzahl von elektronischen Komponenten, die die Komplexität erhöhen. Falls man seine Verkabelung übersichtlich angelegt hat, ist dadurch die allfällige Fehlersuche sicherlich einfacher. In der Regel genügt ein einfaches Messgerät für Strom, Spannung und Widerstand.&lt;br /&gt;
* Eine digitale Modellbahn ist durch die zusätzlich notwendigen Komponenten teuerer in der Anschaffung als eine analoge Modellbahn. Preisgünstige Startsets bieten oft nur einen eingeschränkten Funktionsumfang. Ob das für die eigenen Zwecke ausreichend ist, kann nur jeder für sich selbst entscheiden.&lt;br /&gt;
* Bei Digital ist das gemeinsame Spielen mit mehreren Lokführern - z.B. mit den eigenen Kindern - problemlos möglich. Wenn das ihr Ziel ist, sollten sie ein Digitalsystem ernsthaft ins Auge fassen.&lt;br /&gt;
* Bei Digital können die Schalter ferngesteuert werden. Sie können daher in der Nähe der zu schaltenden Elemente untergebracht werden. Dadurch verringert sich der Aufwand für die Verkabelung erheblich. Positiver Nebeneffekt ist, dass die Verkabelung dadurch übersichtlicher bleibt.&lt;br /&gt;
* Bei Digital ist eine Steuerung per Computer einfacher und preiswerter zu realisieren. Der Anschluss eines Computers ist bei der Konzeption der verschiedenen Digitalsysteme einfach mit vorgesehen worden.&lt;br /&gt;
* Ein Automatikbetrieb erfordert in beiden Systemwelten einigen Aufwand. In den verschiedenen Digitalsystemen gibt es keine einheitliche Lösung um eine Lok vor einem Signal anhalten zu lassen (das simple Strom aus ist bei einem Digitalsystem sicher keine angemessene Lösung). Jede Lösung die man wählt führt zu Einschränkungen an einer anderen Stelle (meist bei der Auswahl von Lokdekodern). &amp;lt;br /&amp;gt; Je größer die Anlage ist, die man steuern will, umso mehr kommen die Vorteile einer Steuerung mit dem Computer zum Zuge. Und damit hat ein Digitalsystem irgendwann die Nase vorne.&lt;br /&gt;
&lt;br /&gt;
Autoren: Torsten Vogt, Mario Graul, Edbert van Eimeren &amp;lt;br /&amp;gt; &lt;br /&gt;
Für die Bereitstellung von Daten bedanken wir uns bei Michael Weiss &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitalbetrieb]]&lt;br /&gt;
[[Kategorie:Einsteiger]]&lt;br /&gt;
[[Kategorie:Analogbetrieb]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	<entry>
		<id>http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12483</id>
		<title>Gleiswendel</title>
		<link rel="alternate" type="text/html" href="http://www.der-moba.de/index.php?title=Gleiswendel&amp;diff=12483"/>
				<updated>2008-11-04T16:25:06Z</updated>
		
		<summary type="html">&lt;p&gt;Michael Oppenauer: /* Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; */ Link gesetzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit Gleiswendeln läßt sich kompakt an Höhe gewinnen, um z. B. von der sichtbaren Ebene in einen unter der Anlage angeordneten [[Schattenbahnhof]] zu kommen. Dieser Artikel beschreibt, wie man eine Gleiswendel aufbauen kann.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Eine Gleiswendel für &amp;quot;Bad Knüsselsdorf&amp;quot; =&lt;br /&gt;
&lt;br /&gt;
Bei meiner ehemaligen Anlage &amp;quot;Bad Knüsselsdorf&amp;quot; mußte ein Höhenunterschied von 30cm zwischen Bahnhof und [[Schattenbahnhof]] überwunden werden. Dazu kam nur eine Wendel in Frage, deren Konstruktion ich im folgenden beschreiben möchte.&lt;br /&gt;
&lt;br /&gt;
= Abmessungen =&lt;br /&gt;
&lt;br /&gt;
Der Platz für die Wendel war vorgegeben, mehr als ein Radius von 50cm war nicht unterzubringen. Obwohl ich sonst Flexgleise einsetze, wählte ich hier fertig vorgebogenes Gleis und entschied mich für den ROCO-LINE R4 (48,1cm). Die lichte Höhe zwischen zwei Gängen der Wendel sollte inklusive Gleis ca. 7cm betragen. Bei einer Trassendicke von 1,6cm ergab sich damit eine Höhendifferenz von gut 9cm pro Umlauf, insgesamt also eine Steigung von ungefähr 3%. Die Trassenbretter waren 10cm breit, damit rechts und links neben dem Gleis genügend Platz für die Gewindestangen blieb.&lt;br /&gt;
&lt;br /&gt;
Ein paar Hinweise für die Ermittlung der Abmessungen beim Nachbau:&lt;br /&gt;
&lt;br /&gt;
7cm lichte Höhe reichen bei der Verwendung von Kunststoffgleis sogar für Oberleitungsbetrieb. Natürlich können keine Masten gesetzt werden, aber ein Gleisprofil unter der Trassenunterseite sollte für den sicheren Betrieb genügen. Andererseits sollten 7cm tunlichst nicht unterschritten werden. Es lassen sich zwar beim Dampf- und Dieselbetrieb noch 10-15mm &amp;quot;herauskitzeln&amp;quot;, aber dann wird es sehr eng, falls man eines Tages entgleiste Fahrzeuge wieder auf die Schienen setzen möchte. Bei der Dicke der Trassenbretter sind vielleicht noch 5mm drin.&lt;br /&gt;
&lt;br /&gt;
Hier ein paar Beispiele für die resultierenden Steigungen bei unterschiedlichen Abmessungen, die Radien entsprechen dabei dem ROCO-LINE Programm.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
! Lichte Höhe&lt;br /&gt;
! Trassendicke&lt;br /&gt;
! R2=35,8cm&lt;br /&gt;
! R3=42,0cm&lt;br /&gt;
! R4=48,1cm&lt;br /&gt;
! R5=54,3cm&lt;br /&gt;
! R6=60,4cm&lt;br /&gt;
|-&lt;br /&gt;
|7cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,8%&lt;br /&gt;
| 3,3%&lt;br /&gt;
| 2,8%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,3%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,6cm&lt;br /&gt;
| 3,4%&lt;br /&gt;
| 2,9%&lt;br /&gt;
| 2,5%&lt;br /&gt;
| 2,2%&lt;br /&gt;
| 2,0%&lt;br /&gt;
|- &lt;br /&gt;
|6cm&lt;br /&gt;
| 1,0cm&lt;br /&gt;
| 3,1%&lt;br /&gt;
| 2,7%&lt;br /&gt;
| 2,3%&lt;br /&gt;
| 2,1%&lt;br /&gt;
| 1,8%&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Man sollte stets versuchen, die Steigung so gering wie möglich zu halten, also einen möglichst großen Radius zu wählen. Die Steigung sollte 3 % nicht überschreiten, um einen sicheren Betrieb zu gewährleisten. Bei einer 2gleisigen Wendel sollte das nach oben führende Gleis nach Möglichkeit außen liegen (größerer Radius, geringere Steigung).&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
= Ein solides Fundament =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix4.gif|thumb|292px|Die Befestigung mit Gewindestangen geschieht alle 45°.]]&lt;br /&gt;
Eine große Platte aus 1,6cm Tischlerplatte diente als Grundplatte für die Gleiswendel. Ich zeichnete die Innen- und Außenkante der Trassenbretter mit einem Schnurzirkel an und legte probehalber einen Schienenkreis aus. Der Kreis wurde in 45 Grad-Segmente unterteilt (und weil ich dann Hunger auf Pizza bekam, machte ich erstmal eine Pause)&lt;br /&gt;
&lt;br /&gt;
Danach wurden die Kanten entlang der Markierungen mit einer Stichsäge ausgesägt. Eine Kante blieb gerade, dort wurde die Wendel später an der Zimmerwand befestigt .&lt;br /&gt;
&lt;br /&gt;
Entlang der 45-Grad Markierungen bohrte ich dann 6mm Paß-Löcher für die Gewindestangen, jeweils 1,5cm von der Außen- bzw. Innenkante entfernt. HINWEIS: An dieser Stelle sollte man die Gewindestangen nach dem ersten Paar Löcher probehalber einfügen und mit dem längsten verfügbaren Fahrzeug Testfahrten durchführen. Ich benutzte dazu einen 26,4m Personenwagen im Längenmaßstab 1/87.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Das Trassenbrett =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix2.jpg|framed|Die Preßspanbretter und Sperrholzbretter überlappen an den Stoßstellen, damit keine Knicke entstehen.]]&lt;br /&gt;
Das Trassenbrett entstand aus zwei 8mm dicken Holzstreifen. Auf der Unterseite nahm ich Preßspann, nach oben zum Gleis hingegen Sperrholz, da dort die Gleise festgeschraubt werden sollten. Mit Hilfe der fertig geschnittenen Grundplatte machte ich eine Pappschablone und sägte einige Stücke aus den Holzplatten aus. Schließlich baute ich daraus ¾-Kreise zusammen und achtete darauf, daß die Fugen immer versetzt blieben, ähnlich einem Ziegelmauerwerk. Damit vermeidete ich Knicke zwischen den Übergängen. Bei jedem der Teilkreise achtete ich darauf, daß am &amp;quot;unteren&amp;quot; Ende die obere Holzlage hervorschaute und am &amp;quot;oberen&amp;quot; Ende die untere Lage überstand. Beim späteren Zusammenbau (von unten nach oben) überlappt der neue Abschnitt den vorherigen. Schließlich wurden die Teile später immer von oben eingesetzt!. Wenn ein Teilkreis fertig war, befestigte ich das erste Stück des nächsten Abschnittes mit Schraubzwingen daran, um den richtigen Versatz zu bekommen. Genauigkeit ist nicht so wichtig (das ist wiederum wichtig für mich), kleine Lücken von 1-2mm zwischen benachbarten Abschnitten sind nicht problematisch. Nachdem alles fertig war, klemmte ich alles mit Schraubzwingen auf die Grundplatte und bohrte 6mm Löcher durch das ganze Paket, dabei benutzte ich die Löcher in der Grundplatte als Führung. Danach nahm ich wieder alles auseinander und bohrte die Löcher in den Trassenbretter (nicht die in der Grundplatte!) auf 8mm auf, um später genug Spiel für die Feinjustage zu haben. HINWEIS: Vor dem Bohren sollten die Teilstücke sorgfältig ausgerichtet werden!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Aufwärts bitte! =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix3.gif|thumb|365px|Die Trassenbretter werden mit Muttern in der Höhe exakt ausgerichtet und befestigt.]]&lt;br /&gt;
&lt;br /&gt;
Ich befestigte die M6-Gewindestangen mit Unterlegscheiben und M6-Muttern an der Grundplatte. Dann fügte ich das erste Teilstück hinzu (dabei sollte man nicht vergessen, zuvor die nötige Anzahl Muttern und Scheiben einzulegen!) und schraubte die Gleise auf die Trasse. Das nächste Trassenbrett nebst nötigen Kleineisen wurde eingesetzt und am vorherigen festgeklebt. SEHR WICHTIG: Das Gleis wurde sorgfältig verlegt und Gleisstöße genau an den Segmentenden vermieden, ggfs. unter Einsatz von ½ Gleisstücken. Nachdem alles montiert war, befestigte ich die Wendel am Anlagenunterbau. Dann war die Feinjustage an der Reihe. Mit Hilfe der Muttern war es einfach, die richtigen Höhen von unten nach oben einzustellen. Ich nutzte die Grundplatte als Referenz, notierte mir die richtigen Höhenmasse und stellte sie mit einem Lineal und Schraubenschlüssel ein. Neben dem sauber verlegtem Gleis ist auch eine gleichmäßige Steigung sehr wichtig für die Betriebssicherheit. Daher kontrollierte ich mehrmals, ob alle Abstände nun wirklich richtig waren..&lt;br /&gt;
&lt;br /&gt;
Vorsichtige Modellbahner können die Muttern jeweils noch mit einer Kontermutter versehen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
= Der Abschluß =&lt;br /&gt;
&lt;br /&gt;
[[Bild:Gleiswendel helix1.jpg|framed|Die Gleiswendel wird mit einem abnehmbaren Landschaftsteil überbaut.]]&lt;br /&gt;
&lt;br /&gt;
Bei der Gleisverlegung muß (wie in allen verdeckten Abschnitten) mit besonderer Sorgfalt gearbeitet werden. Vor dem Weiterbau der Anlage müssen umfangreiche Testfahrten stattfinden. Nach dem Überbau mit Landschaft ist die Gleiswendel nur schwerer zu erreichen, um Fehler zu beheben. &lt;br /&gt;
&lt;br /&gt;
Natürlich blieb ein großes Loch in der Mitte der Wendel. Aus den Überresten der Grundplatte baute ich eine abnehmbare Abdeckplatte. Als Ummantelung plante ich Hartfaserplatten, welche sich genügend biegen lassen. Bevor ich jedoch dazu kam, wurde &amp;quot;Bad Knüsselsdorf&amp;quot; wegen Umzug abgebaut. Mittlerweile deutet es sich ab, daß auch &amp;quot;Bad Knüsselsdorf II&amp;quot; mit einer Wendel ausgestattet werden wird. Die alte Gleiswendel läßt sich in Grenzen anpassen: Zusätzliche &amp;quot;Umdrehungen&amp;quot; lassen sich durch Verlängerungen der Gewindestangen ansetzen. Geringe Abweichungen in den Höhenlagen können durch die Muttern eingestellt werden. Das alte Bauteil wird also wahrscheinlich weiter verwendet werden ... &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot;/&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Der ursprüngliche Autor Frank Forsten pflegt seine Version auf seiner Homepage http://www.forsten-online.de&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Anlagenbau]]&lt;/div&gt;</summary>
		<author><name>Michael Oppenauer</name></author>	</entry>

	</feed>