Changeset 215 in t29-www


Ignore:
Timestamp:
Nov 14, 2010, 3:36:42 PM (9 years ago)
Author:
heribert
Message:

Heribert:

  • Entwicklungsprojekte, Texte geaendert/Bilder geaendert
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • de/entwicklungsprojekte.shtm

    r214 r215  
    4646
    4747<div class="desc-right">
    48         <img src="/shared/photos/rechnertechnik/facit4070.jpg" width="144" height="196" alt="Foto des Lochstreifenstanzers" />
     48        <img src="/shared/photos/rechnertechnik/facit4070.jpg" width="192" height="313" alt="Foto des Lochstreifenstanzers" />
    4949        <p class="bildtext" style="width:145px;">Der legendäre Lochstreifenstanzer <b>FACIT 4070</b></p>
    5050    </div>
     
    7777
    7878<p>Dieses Projekt besteht aus dem anspruchsvollen Vorhaben, einen Rechner (Mitte der 1960er Jahre), zu dem der eigentliche Drucker defekt und unvollständig ist, mit einem völlig anderem Drucker aus der gleichen Zeit auszustatten. Was auf den ersten Blick recht einfach erscheint, ist in der Realität ein außerordentlich kompliziertes Unterfangen. Im Gegensatz zu den Geräten ab den 90er-Jahren war man noch meilenweit von standardisierten Schnittstellen entfernt.<br>
    79 Ein Interface muss also her, eine transparent agierende unidirektionale Übersetzung von Computer zu Drucker. Dabei ist einiges zu tun: Der GAMMA 10 (G10) arbeitet nicht nur mit völlig anderen („negativen“) logischen Pegeln, sondern hat auch eine gänzlich andere Vorstellung davon, wie man eine 120 Zeichen lange Zeile in einen Drucker überträgt, als der anzuschließende Anelex-Zeilendrucker. Die Druckdaten werden bei der G10 im Rechner selbst abgespeichert, während sie beim Anelex Drucker eben dort gespeichert werden. Dass beide Geräte unterschiedliche Zeichensätze verwenden, ist daneben ein verschwindend einfaches Problem.<br>
    80 Wie bereits im Lochkartenprojekt haben wir uns auch diesmal für Mikrocontroller entschieden, die einen sehr guten Kompromiss aus Flexibilität, Geschwindigkeit, Programmierbarkeit und zuletzt auch Preis bieten.<br>
     79Ein Interface muss also her, eine transparent agierende unidirektionale Übersetzung von Computer zu Drucker. Dabei ist einiges zu tun: Der GAMMA 10 (G10) arbeitet nicht nur mit völlig anderen
     80„negativen“) logischen Pegeln, sondern hat auch eine gänzlich andere Vorstellung davon, wie man eine 120 Zeichen lange Zeile in einen Drucker überträgt, als der anzuschließende Anelex-Zeilendrucker. Die Druckdaten werden bei der G10 im Rechner selbst abgespeichert, während sie beim Anelex Drucker eben dort gespeichert werden. Dass beide Geräte unterschiedliche Zeichensätze verwenden, ist daneben ein verschwindend einfaches Problem.</p>
     81
     82<div class="desc-right">
     83    <img src="/shared/photos/rechnertechnik/bull-gamma10.jpg" width="320" height="195" alt="Bull Gamma 10 Computer" />
     84     <p class="bildtext" style="width:320px;">Bild 1: BULL Gamma 10 Computer mit Original-Drucker</p>
     85</div>
     86
     87<p>Wie bereits im Lochkartenprojekt haben wir uns auch diesmal für Mikrocontroller entschieden, die einen sehr guten Kompromiss aus Flexibilität, Geschwindigkeit, Programmierbarkeit und zuletzt auch Preis bieten.<br>
    8188Offensichtlich lässt sich das Problem in zwei Teilprobleme unterteilen, die einzeln für sich gelöst werden können. Im ersten Teilprojekt kümmert sich ein dezidierter Mikrocontroller um die Kommunikation mit dem Computer, übersetzt also die Druckausgaben nach ASCII, während wir in einem zweiten, unabhängigen Mikrocontroller-Projekt daran arbeiten, den Drucker mit Eingaben zu füttern, die zunächst von einem PC kommen.</p>
    8289 
    8390<h4>Teil 1: Kommunikation zwischen Anelex Drucker und PC</h4>
    8491
    85 <p>Der Anelex-Drucker ist sehr einfach aufgebaut – die 120 Sechs-Bit-Zeichen einer Zeile werden parallel interruptgesteuert in den Drucker geladen, anschließend wird die Zeile gedruckt. Zeilenvorschübe werden, im Gegensatz zum G10-Computer, in den Zeichenstrom kodiert. Zu Beginn einer jeden Zeile steht, wieviel Zeilenvorschübe auszuführen sind. Dadurch konnte man mehrere Zeilenvorschübe auf einen Schlag machen, wodurch man sich einen Zugewinn an Geschwindigkeit versprach. Zusätzlich sind die Ziffern auf der Druckwalze doppelt enthalten, sodass Zahlen in der doppelten Geschwindigkeit gedruckt werden können. <br>
     92<p>Der Anelex-Drucker ist sehr einfach aufgebaut – die 120 Sechs-Bit-Zeichen einer Zeile werden parallel interruptgesteuert in den Drucker geladen, anschließend wird die Zeile gedruckt. Zeilenvorschübe werden, im Gegensatz zum G10-Computer, in den Zeichenstrom kodiert. Zu Beginn einer jeden Zeile steht, wieviel Zeilenvorschübe auszuführen sind. Dadurch konnte man mehrere Zeilenvorschübe auf einen Schlag machen, wodurch man sich einen Zugewinn an Geschwindigkeit versprach. Zusätzlich sind die Ziffern auf der Druckwalze doppelt enthalten, so dass Zahlen in der doppelten Geschwindigkeit gedruckt werden können. <br>
    8693Die Schwierigkeit entsteht auch beim Anelex-Projekt erst dadurch, dass die Unterlagen nur unvollständig in niederländischer Sprache existieren. <br>
    8794Die Arbeitsweise des ersten Mikrocontrollers ist ziemlich einfach und folgt einer strikten Zustandsabfolge: Zunächst wird eine Zeile per RS232 in einen Ringpuffer eingelesen. Diese wird dann Zeichen für Zeichen parallel an den Drucker übergeben. Nach diesem Vorgang wird der Druckbefehl gestartet und der Drucker benötigt die nächsten 30ms zum Drucken. In dieser Zeit wird die RS232-Flusskontrolle wieder freigeschaltet und in bester Zeitausnutzung empfängt der nun unbeschäftigte Mikrocontroller Daten vom Computer (bzw. später dem anderem Mikrocontroller). Diese klassische Interfacetechnik wird in der Umsetzung insofern interessant, als dass sämtliche Timings empirisch erprobt werden mussten. <br>
     
    95102<div class="desc-left">
    96103    <img src="/shared/photos/rechnertechnik/drucktrommel.jpg" width="366" height="275" alt="Druckertrommel mit Kodierscheibe" />
    97      <p class="bildtext" style="width:366px;">Bild 1: Ausgebaute Trommel mit Kodierscheibe. Die optische Abtastung ist hier nicht zu sehen. Gewicht der Trommel: Ca. 50 Kg</p>
     104     <p class="bildtext" style="width:366px;">Bild 2: Ausgebaute Trommel mit Kodierscheibe. Die optische Abtastung ist hier nicht zu sehen. Gewicht der Trommel: Ca. 50 Kg</p>
    98105</div>
    99106
    100107<p>Die ursprüngliche Kommunikation lief keineswegs zeilenweise und unidirektional ab, sondern war ein reger zeichenweiser Dialog zwischen Drucker und Computer:
    101 <br>Im Original-Trommeldrucker der G10 rotiert ständig die Trommel, sodass zu jedem Zeitpunkt immer eine komplette Zeile mit einem Buchstaben gedruckt werden könnte. Auf der mitrotierenden Kodierscheibe wird dieser Buchstabe als 6bit-Binärcode ständig optisch abgegriffen und dem G10-Computer übermittelt. Dieser scannt daraufhin seinen Zeilenspeicher durch und sendet dem Drucker in einem seriellen Bitstream fuer jede der 120 Zeichenpositionen, ob das aktive Zeichen an der Position gedruckt werden soll oder nicht. Eine einzige komplette Zeile wird während einer ganzen Trommelumdrehung sukzessive mit den entsprechenden Zeichen aufgefüllt.</p>
     108<br>Im Trommeldrucker rotiert ständig die Trommel, so dass zu jedem Zeitpunkt immer eine komplette Zeile mit einem Buchstaben gedruckt werden könnte. Auf der mitrotierenden Kodierscheibe wird dieser Buchstabe als 6bit-Binärcode optisch abgegriffen und dem G10-Computer übermittelt (Bild 2). Dieser scannt daraufhin seinen Zeilenspeicher durch und sendet dem Drucker in einem seriellen Bitstream für jede der 120 Zeichenpositionen, ob das aktive Zeichen an der Position gedruckt werden soll oder nicht. Eine einzige komplette Zeile wird schließlich während einer ganzen Trommelumdrehung sukzessive mit den entsprechenden Zeichen aufgefüllt.</p>
    102109
    103 <p>Der Mikrocontroller simuliert bei dieser bidirektionalen Kommunikation den Originaldrucker. Bei einer Druckgeschwindigkeit von 300 Zeilen pro Minute bleiben dem Controller nur einige Mikrosekunden pro 7-Bit-Zeichen als Übertragungszeit. Dieser Hochgeschwindigkeitstransport des Bitstreams muss synchron verarbeitet werden und kann dann, übersetzt nach ASCII, per RS232-Schnittstelle an den PC (später den Anelex-Mikrocontroller) übertragen werden. Das weitgehend unbekannte Timing bringt dabei einen hohen experimentellen Arbeitsaufwand.
     110<p>Der Mikrocontroller simuliert bei dieser bidirektionalen Kommunikation den Originaldrucker. Bei einer Druckgeschwindigkeit von 300 Zeilen pro Minute bleiben dem Controller nur einige Mikrosekunden pro 6-Bit-Zeichen als Übertragungszeit. Dieser Hochgeschwindigkeitstransport des Bitstreams muss synchron verarbeitet werden und kann dann, übersetzt nach ASCII, per RS232-Schnittstelle an den PC (später den Anelex-Mikrocontroller) übertragen werden. Das weitgehend unbekannte Timing bringt dabei einen hohen experimentellen Arbeitsaufwand.
    104111Das Wissen über diese komplizierte Datenübertragung konnten wir zu allem Überfluss keinen Manuals entnehmen, sondern mussten es anhand von Reverse Engineering, also Nachkonstruktion der Übertragungslogik, aus den französischsprachigen Schaltplänen rekonstruieren. Hier gebührt der Dank den ehemaligen BULL-Fachkräften und engagierten Mitarbeitern im Museum Herr Naumann und Herr Balz.<br>
    105112Die Pegelübersetzung zwischen Standard-TTL (falsch = 0V, wahr = +5V) und invertiertem geshiftetem Gamma 10-Pegel (falsch = 0V, wahr = -5V) haben wir in einer selbst entworfenen Mosfet-Schaltung für alle 30 Datenleitungen realisiert.</p>
  • de/index.shtml

    r202 r215  
    8080                                       
    8181        Wegen der großen Nachfrage bei der Sonderführung "Mensch und Maschine" bieten wir auf Wunsch der Besucher im November eine Führung zum Thema <br><b>"Die Entwicklungsgeschichte der Kommunikationstechnik"</b><br> an.  Anhand von Experimenten und Vorführungen historischer Exponate werden folgende Themen informativ und unterhaltsam behandelt:<br>(Bild-)Telegraphie, Rundfunk, Faximile und Fernschreiber, Tontechnik, Schreibautomaten, SW- und Farbfernsehen, Pianola usw. <br>
    82         Sie können Ihr Interesse schon jetzt per E-Mail kundtun. Die Termine werden 14 Tage vorher hier bekannt gegeben.
     82        Es wird ein Eintrittsobolus von 3 Euro erhoben. Schüler und Studenten haben freien Eintritt.<br>
     83        <b>Termine:<br>
     84        Samstag, den 13. November 17:30 Uhr</b> und<br>
     85        <b>Sonntag, den 14. November 14:00 Uhr.</b><br>
     86        Verbindliche Anmeldung unter post@technikum29.de
     87       
    8388       
    8489                                        </li>
  • en/development-projects.shtm

    r184 r215  
    1010   --><!--#set var="next_title"   value="What's new?"
    1111   -->
    12      <title>technikum29 - <!--#echo var="title" --></title>
     12     <title>Technikum29 - <!--#echo var="title" --></title>
    1313
    1414    <!--#include virtual="/en/inc/head.inc.shtm" -->
     
    3131  <!--<li>punch card I/O with AVR ATmega microcontrollers via RS232 to computers,
    3232      Qt platform independent processing, with various hardware</li>-->
    33   <li>Analex printer interface to the Bull Gamma 10 computer (uC based)</li>
     33  <li>Anelex printer interface to the Bull Gamma 10 computer (uC based)</li>
    3434</ul>
    3535<br/>
     
    6565framework of the Linux 2.6 kernel series to program a user space driver in the programming
    6666language C with a little effort compared to a real kernel space driver.</p>
    67 
     67<div class="desc-right">
     68   <img src="/shared/photos/rechnertechnik/facit4070.jpg" width="192" height="313" alt="Photography of the paper tape puncher FACIT 4070" />
     69   <p class="bildtext" style="width:192px;">The legendary puncher <b>FACIT 4070</b></p>
     70</div>
    6871<p>The parallel port consists of three 8-bit hardware registers: a bidirectional data
    6972register, a control register and a signal register. Since paper tapes are made of
     
    7275implement a interrupt (device cycle) driven communication, since the status register
    7376features one interrupt enabled bit (strobe). Our devices punch at 80 chars/sec and read in
    74 250 chars/sec, so even older PCs can easily run the driver programs.</p>
     77250 chars/sec, so even older PCs can easily run the driver programs.<br>
    7578
    76 <div class="desc-right">
    77    <img src="/shared/photos/rechnertechnik/facit4070.jpg" width="144" height="196" alt="Photography of the paper tape puncher FACIT 4070" />
    78    <p class="bildtext" style="width:145px;">The legendary puncher <b>FACIT 4070</b></p>
    79 </div>
    80 
    81 <p>As already told, there's not really the question how to model punched papers on
     79As already told, there's not really the question how to model punched papers on
    8280computers, since they use the same word length (8 bit) and computer files are
    8381conceptually the same as paper tapes: byte arrays. A 250 byte binary file therefore
Note: See TracChangeset for help on using the changeset viewer.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License