Dieses Dokument beschreibt die Verbindung zwischen Steuerung und PC. Diese Kopplung wird über eine in den Rechner einzubauende so genannte 'PIO-Karte', d. h. eine parallele Ein- und Ausgabekarte und die nachfolgend beschriebene Schaltung bewerkstelligt. Die Zusatzkarte für den Rechner muss 24 Leitungen besitzen die man per Software-Befehl als Ein- oder Ausgang programmieren kann. Die üblichen Produkte arbeiten praktisch alle gleich, sie sind um einen Schaltkreis '8255' aufgebaut. Die ersten 8 Signale werden üblicherweise als Port A bezeichnet, sie dienen bei uns zur Übertragung von Daten in beiden Richtungen. Die nächsten 8 Pins (Port B) stellen die Adressen dar. Sie werden vom PC aus betrachtet nur als Ausgänge benutzt. Der Port C kann in zwei Vierer-Gruppen geteilt werden, die niederstwertigen 4 Bits übertragen Befehle vom PC zur Steuerung, die höchstwertigen übermitteln bestimmte Zustände der Steuerung an das Steuerprogramm.
Solche PIO-Karten gibt es praktisch nur mit dem so genannten ISA-Stecksockel. Das bedeutet, dass sie in Rechner, die nur einen PCI-Steckplatz haben, nicht eingebaut werden können. Für diese Fälle wird es demnächst eine Lösung geben: ein Gerät, das an den Drucker-Port angeschlossen wird, macht die PC-Steckkarte überflüssig. Dann wird man allerdings eine andere Interfacekarte brauchen. Sie wird gleichzeitig auch die Funktion der Netzteil- und Taktgeberkarte erfüllen.
Alle Signale werden auf der Karte entweder zum Einspeisen auf den Bus oder zur Übertragung an den PC aufbereitet. Die Kabel und Leiterbahnen sowie die angeschlossenen Schaltungen stellen zwar eine kaum messbare ohmsche Belastung dar. Sie haben jedoch wie ein Kondensator eine gewisse Kapazität. Das Ändern eines Signalpegels auf einer Leitung ist daher gleichbedeutend mit dem Auf- oder Entladen eines Kondensators. Die Kapazitäten sind zwar nur sehr gering, durch die schnelle Änderung der Pegel fließen aber doch für sehr kurze Zeiten hohe Ströme. Wenn man nun die Signale einfach nur verstärkt auf den Bus anlegt kann es passieren, dass sich das System wie ein kleiner Radiosender (mit schlechtem Programm!) verhält. Um diese unerwünschte Eigenschaft weitgehend zu unterdrücken sind in alle Leitungen RC-Glieder, d. h. Kombinationen aus Widerständen und Kondensatoren eingefügt.
Auf der Platine ist aber auch der Anschluss für die Stromquellen zur Umschaltung der Weichen und für die Loks vorgesehen. Wenn man allerdings an die Fahrreglerplatinen die Fahrspannung vor der 5Volt-Betriebsspannung anlegt, fahren die Loks alle los – eine höchst unerwünschte Sache. Daher ist in die Leitung ein Relais eingefügt, dass die Verbindung erst nach dem Vorhandensein der 5Volt-Betriebsspannung und dem Ablauf einer kurzen Verzögerungszeit herstellt. Es zieht erst an wenn der Kondensator C29 über R33 auf mehr als die Schwellenspannung der Basis-Emitterstrecke von T1 plus der der LED aufgeladen ist. Beim Ausschalten entlädt sich C29 schnell über D2, so ist die Schaltung schnell wieder einsatzbereit. D3 schützt T1 vor den Spannungsspitzen die an der Relaisspule auftreten können. Schließlich soll R34 dafür sorgen dass die Kondensatoren über der Fahrspannung auf den Fahrreglerkarten schnell entladen werden und so keine Lok auch nur kurzzeitig Spannung bekommen kann. Der Widerstand muss zwar keine hohe Dauerbelastung aufnehmen aber kurzzeitig doch ca. 2 Ampere vertragen. Eine 1 Watt-Type ist daher wohl als Minimum vorzusehen.
Mit IC3, einem Monoflop, ist eine kleine Verzögerungsschaltung aufgebaut. Immer wenn ein Schreib- oder Lesebefehl an die Steuerung geschickt wird, wird dieser Zeitgeber gestartet. Der Zustand an Ausgang Q wird über einen der Inverter in IC4 an den PC weitergemeldet. Die Steuersoftware gibt immer erst dann einen weiteren Befehl aus wenn die Verzögerungszeit abgelaufen ist. Damit wird verhindert, dass sehr schnelle Rechner die Steuerung überfordern in dem sie schneller Befehle erteilen als sie verarbeitet werden können. Zu diesem IC gibt es noch zwei Kleinigkeiten zu erwähnen: vielleicht fragen Sie sich wo der zeitbestimmende Widerstand ist. Er ist in den Schaltkreis eingebaut, an seinem Pin 9 ist ein 10kOhm-Widerstand intern angeschlossen. Damit und dem Kondensator 47nF ergibt sich eine Verzögerungszeit von rechnerisch 160µSekunden. Weiterhin ist zu beachten, dass es den Schaltkreis bei allen dem Autor bekannten Lieferanten nicht in der ansonsten verwendeten 'HC'-Ausführung gibt. Die Verwendung einer 'LS'-Ausführung an dieser Stelle funktioniert jedoch tadellos.
Wie schon kurz erwähnt bewirken RC-Glieder in den Daten-, Adress- und Steuerleitungen eine kleine Verzögerung der Signale um die Störsicherheit zu verbessern. In den Datenleitungen zum PC fehlen allerdings die Kondensatoren, hier wirkt die Kapazität des Kabels ausreichend. Beim Aufbau muss man beachten, dass nicht alle Widerstände und Kondensatoren gleich sind. Die Widerstände R30 und R31 haben einen Wert von 100 Ohm statt der sonst üblichen 27 Ohm. So wird sichergestellt, dass die Verzögerung der Steuerbefehle geringfügig größer ist als die der Daten- und Adressleitungen. Auch der Kondensator C6 und der Widerstand R2 sind mit einer größeren Zeitkonstante dimensioniert. So soll beim Einschalten das Reset-Signal etwas länger anstehen um damit einen definierten Einschaltzustand zu gewährleisten.