Zum Kaufen gehört, Geld auszugeben. Wer einen Plotter erstehen will, muß davon eine ganze Menge mitbringen. Die Preise von DIN A3 großen Plottern bewegen sich normalerweise in Regionen um 5000 DM. Die bayrische Firma nbn Elektronik präsentierte auf der CeBIT ’88 in Hannover einen Low-Cost-Plotter zum fast sensationellen Preis von 2600 DM. Wir haben uns das gute Stück für Sie angeschaut. Bevor wir näher auf den PL-450 (so nennt nbn sein Fernost- Produkt) eingehen, sollten wir uns fragen, was ein Plotter ist, und wer ihn eigentlich braucht.
In der grauen Vorzeit der Computerei dienten Fernschreiber als Ausgabegeräte für Texte. Sie waren die einzigen bereits vorhandenen Maschinen, die aus Stromimpulsen Text erzeugen konnten. An die Produktion von Graphiken, wie sie heute auf jedem Matrixdrucker hergestellt werden können, war überhaupt nicht zu denken. Dafür mußten neue Geräte entwickelt werden.
Der Plotter findet seinen geistigen Vater beim X-Y- Schreiber, den sicher schon jeder einmal gesehen hat. Solche Schreiber dienen z.B. zur Aufzeichnung von Luftfeuchtigkeitswerten in klimatisierten Räumen. Ein mit der Meßeinheit verbundener Stift bewegt sich auf und ab; das Papier befindet sich auf einer Walze, die sich kontinuierlich dreht.
Die Entsprechung zu dieser Technik ist der Rollenplotter. Er bewegt den Stift nur in X-Richtung, während die Y-Position des Stiftes durch Hin- und Herfahren des Papiers verändert wird. Der PL-450 jedoch ist ein Flachbettplotter. Bei ihm liegt das Papier fest auf einer Unterlage, die durch einen Zeichenarm vollständig überfahren werden kann.
Diese Technik ähnelt sehr stark einem Zeichenbrett, wie man es in jedem Konstruktionsbüro in größeren Mengen findet. Der Stift wird in Y-Richtung an einem Arm bewegt, dieser wiederum wird von einem Motor in X-Richtung über die Zeichenfläche gefahren. Ein kleiner Elektromagnet ist für Aufheben und Absenken des Stiftes zuständig. Für die Bewegung sind wie gesagt Motoren zuständig. Dabei werden Schrittmotoren verwandt, die sich durch einen elektrischen Impuls um einen bestimmten Winkel weiterdrehen. Durch eine Untersetzung kann so der Kleinst-schritt des Plotters festgelegt werden. Beim PL-450 werden der Arm und der Stift mittels Zahnriemen von den Motoren angetrieben.
Es leuchtet ein, daß, je genauer die Motoren und die Zahnraduntersetzungen arbeiten, die Genauigkeit des Plotters steigt. Leider steigt dann auch sein Preis. Der PL-450 arbeitet mit einer Auflösung von 40 Schritten je Millimeter, wobei die vom Anbieter angegebene Wiederholgenauigkeit bei 0,2 Millimeter liegt. Darunter versteht man, wie genau das Gerät beim erneuten Anfahren des gleichen Punktes ist.
Aus seiner Konzeption ergibt sich die hervorragende Eignung des Plotters für das Zeichnen gerader Linien. Auch Kreise und mathematische Kurven können exzellent dargestellt werden. Das Ausmalen von Flächen oder die Erstellung seitenlanger Schriftstücke sind jedoch nicht seine Stärken. Aber für technische Zeichnungen und zum Erstellen von Platinenlayouts ist er zum professionellen Arbeiten unentbehrlich.
Da die Stifte, mit denen der Plotter zeichnet, tauschbar sind, erlangt er eine besondere Vielseitigkeit. Verschiedene Linienstärken - gerade bei technischen Zeichnungenunerläßlich - sind kein Problem. Spezialstifte für Projektionsfolien oder Tuschespitzen für Transparentpapier sind auch für den PL-450 erhältlich. Er besitzt seitlich der Zeichenfläche ein Magazin für acht verschiedene Stifte, die mittels Software-Befehl ausgetauscht werden können.
Gebraucht wird ein Plotter also vor allem beim Einsatz von CAD (Computer Aided Design), dem technischen Zeichnen mit Hilfe des Rechners. Bei professionellen CAD-Anlagen, die im Paket komplett mit Hard- und Software angeboten werden, gehört daher ein Plotter immer dazu.
Ausgepackt und auf den Schreibtisch gestellt wirkt er ein wenig kahl. Soviel Geld für so wenig, fragt man sich. Doch es liegt nun mal in der Natur der Sache, daß ein Plotter überwiegend aus Zeichenfläche besteht. Im Paket befinden sich noch acht bunte, leider sehr dicke Faserstifte sowie ein serielles Datenkabel und ein Handbuch, das wegen seines Umfangs besser als Handheft bezeichnet werden sollte.
Auf der Plotteroberseite befindet sich ein kleines Bedienfeld. Mit vier Tasten läßt sich der Plotterstift manuell über die Zeichenfläche bewegen. Auch das Absenken und Anheben des Stiftes kann über eine Taste bedient werden. Weiterhin läßt das Tastenfeld das Anfahren und Setzen der beiden Eckpunkte der Zeichenfläche zu.
Drei Lämpchen geben Auskunft über Stromversorgung,
Stift oben/unten und einen evtl, aufge-tretenen Fehler.
Auf der Rückseite können die Standardwerte für Papiergröße, Zeichensätze und das Übertragungsprotokoll der seriellen Schnitt-stelle per DIP-Schalter eingestellt werden
Wir haben uns den PL-450 ausgiebig im Zusammenspiel mit den verschiedenen CAD-Programmen, die es für den ST gibt, angeschaut und haben keine Unverträglichkeiten feststellen können.
CAD project, Campus CAD, GFA Draft Plus und Haba Cad-PL machten keine Probleme. Nur bei Drafix, dem CAD-Programm von Foresight, gab es Schwierigkeiten mit dem Übertragungsprotokoll der seriellen Schnittstelle. Der Plotter weigerte sich beharrlich, auch nur einen Strich zu Papier zu bringen.
Der PL-450 wird mit zwei Schnittstellen ausgeliefert: einer seriellen (RS-232C) und einer parallelen (Centronics). Bekannt sind die Problemchen des ST mit der seriellen Schnittstelle, und so lassen die oben erwähnten Programme auch die Wahl der Schnittstelle, über die der Plotter gefüttert werden soll. zu. Nur beim Layout-Programm Haba Cad- PL war Ausprobieren angesagt, denn es verwendet ausschließlich die serielle Schnittstelle. Aber schließlich ließ sich der Bestük-kungsplan denn doch zur vollsten Zufriedenheit plotten. Da die Kommandos, die unser Testobjekt versteht, kompatibel zum HP 7475A-Standard sind, läßt er sich problemlos mit den für diesen Plotter vorgesehenen Treibern benutzen.
Plotten ist keine schnelle Angelegenheit. Besonders Kurven mit sehr hoher Auflösung, für die eine Unmenge einzelner Punkte angesteuert werden müssen, werden nur sehr langsam abgearbeitet. Dabei tritt das Time-Out Problem der parallelen Schnittstelle am ST auf. Der ST bricht die Übertragung der Daten über Centronics ab, wenn er 30 Sekunden lang keine Nachricht mehr vom Ausgabegerät erhalten hat. Dabei ist ihm völlig schnurz, ob das daran lag, daß das Gerät nicht angeschaltet war, oder obes noch zu tun hatte. Wer selbst programmiert, wird diesen Fehler auffangen können und vor jede Ausgabe eine Abfrage setzen, die feststellt, ob der Plotter bereit ist. Doch es steht zu befürchten, daß es Programme gibt, die das nicht tun. Der Fehler äußert sich dann so, daß der Druck einer größeren Zeichnung plötzlich abgebrochen wird.
Wer eine technische Zeichnung mit Hilfe von ST und dem PL-450 erstellen will, braucht also zunächst ein CAD-Programm, von denen einige oben genannt wurden. Während des Zeichnens muß man ständig darauf achten, mit welcher Linienbreite man arbeitet, denn je nachdem wird der Plotter einen Stift wählen. Ist die Zeichnung fertig, muß der Plotter zunächst mit speziellem Papier (Plotterpapier hat eine glatte, sog. satinierte Oberfläche) versorgt werden. Außerdem werden jetzt die Stifte eingesetzt. Eine automatische Verschlußmechanik im Plotter soll zwar verhindern, daß die Stifte allzu schnell austrockenen, wenn sie in die Stifthalter eingesetzt sind, jedoch sollte man sie bei längeren Pausen herausnehmen und mit einer Kappe verschließen. Bei der Stiftwahl kann man nun entscheiden, wie die Linienbreite dargestellt werden soll. CAD project beispielsweise ordnet jeder Linienbreite und dem Text einen anderen Stift zu. Setzt man aber anstatt verschieden breiter verschieden farbige Stifte ein, kann man so eine Hervorhebung z.B. der Beschriftung erreichen.
Einige CAD-Programme bieten auch die Möglichkeit, nicht direkt auf den Plotter auszugeben, sondern stattdessen die gesamte Ausgabe in eine Datei umzulenken. Diese Datei kann dann zu einem späteren Zeitpukt geplottet werden. Das bietet sich an, wenn z.B. an mehreren Plätzen mit dem gleichen System gearbeitet wird und aus Gründen der Auslastung nur ein Plotter vorhanden ist. Dann kann an einem Rechner ausschließlich das geplottet werden, was auf mehreren anderen erstellt worden ist.
Interessant ist die Ansteuerung des Plotters auch für eigene Programme. Die Programmierung unterscheidet sich dabei grundlegend von der eines Druckers. Der Drucker nämlich arbeitet ausschließlich zeilenorientiert, d.h. eine Graphik muß von oben nach unten ausgegeben werden. Das erfordert oft großen Rechen- und Speicheraufwand. Der Plotter hingegen arbeitet vektor- oder objektorientiert. Zu jedem Zeitpunkt kann ein beliebiger Punkt der Zeichenfläche angesteuert und dort eine Linie, ein Kreis usw. gezeichnet werden. Sind die Objekte einer Zeichnung bekannt, können sie also unabhängig von ihrer Lage sequentiell ausgegeben werden.
Die Grundbefehle, mit denen man bereits arbeiten kann, heißen in der Plottersteuerungssprache HP-GL (Hewlett Packard Graphic Language):
Pen Up/Pen Down Plot Absolute X,Y
Damit läßt sich der Stift von jedem Punkt der Zeichenfläche zum anderen bewegen und dabei - je nachdem, ob gezeichnet werden soll oder nicht - senken oder heben. Nun ist es natürlich sehr lästig, z.B. einen Kreis in lauter Koordinaten werte zu zerlegen, die dann einzeln durch Linien miteinander verbunden werden. Wollte man dabei die höchste Auflösung des Plotters verwenden, wären immerhin 40 Koordinatenpaare pro Millimeter notwendig! Daher bietet HP-GL quasi ‘eingebaut' bereits Befehle für Kreise, Rechtecke, Schraffuren, verschiedene Linienformen etc. Einige Variationsmöglichkeiten für Texte sehen Sie auf den Abbildungen.
Besonders auffallend ist, daß es auch Befehle gibt, auf die der Plotter antwortet. Ja, er spricht mit Ihnen! Er kann beispielsweise Auskunft über seine momentane Stiftposition geben oder die Koordinaten der Zeichenfläche angeben. Mit einem anderen Befehl wird der Benutzer aufgefordert, einen Punkt der Zeichenfläche anzufahren und diesen mittels’ Enter’ - Taste an den Rechner zu übermitteln. Zwar wäre es ziemlich nervtötend, so ganze Zeichnungen zu digitalisieren, aber wenn es beispielsweise darum geht, nur einen kleinen Bereich innerhalb der gesamten Zeichenfläche zu erfassen, kann diese Option durchaus von Nutzen sein.
Ein Beispiel, wie man in GFA-BASIC ein einfaches Funktions-Plot Programm erstellt, finden Sie im anschließenden Listing.
Mal abgesehen von den Einstellschwierigkeiten. die sich aus den verschiedenen Parametern der seriellen Schnittstelle ergeben, hatten wir keine Probleme mit dem PL-450. Meist ließ sich der Hewlett-Packard Plotter HP-7475 konfigurieren und mit diesem Treiber zog der PL-450 treu und brav seine Linien und Kreise. Die Wiederholgenauigkeit ist für den normalen Gebrauch völlig ausreichend. Selbst ein und dieselbe Zeichnung - fünfmal übereinander geplottet, läßt kaum Ungenauigkeiten erkennen.
Die Geschwindigkeit des Gerätes ist zwar nicht überwältigend, aber die Erkennung, ob es sich bei einer Bewegung um eine Positionier- oder Zeichenaktion handelt und davon abhängig die Geschwindigkeit der Motoren zu regeln, kostet bei anderen Plottern halt auch sehr viel Geld mehr. Auch sein Speicher von 1 kByte ist nicht gerade üppig. Wer noch Platz im RAM seines ST hat, kann sich mit einem Spoolerbehelfen. Wie der Test zeigte, ist damit auch das Time-Out-Problem behoben, der Spooler scheint sich darum nicht zu kümmern.
Wenn man bedenkt, daß eine technische Zeichnung mit drei Linienstärken gezeichnet wird, dürfte ein Reservoir von acht Stiften reichlich sein. Das genügt auch, um eine Geschäfts-Graphik ansprechend farbig zu gestalten. Mit speziellen Stiften könnte das auch auf einer Folie für Tageslichtprojektion geschehen.
Sehr gut hat uns die Möglichkeit gefallen, den Plotter über sein Bedienfeld in den Einschaltstatus zurücksetzen zu können, also einen Reset durchzuführen. Daran sollten sich die Druckerhersteller ein Beispiel nehmen. So entfällt der lästige Griff zum oft versteckt angebrachten Netzschalter.
Das mitgelieferte Handbuch zeigt kurz und bündig Bedienung und Pflege des Plotters. Die Schalterstellungen der Dipschalter und der Befehlsumfang seiner zu HP-GL kompatiblen Steuerungssprache ‘ SK-GL ’ sind tabellarisch auf geführt. Für umfangreichere Programmierung des Plotters bietet nbn allerdings ein spezielles Buch ‘Programming Manual for SK-GL' an.
Der PL-450 ist ein sinnvolles Werkzeug für alle, die technische Zeichnungen oder Platinenlayouts erstellen wollen oder müssen. Er hat keine überflüssigen Schnörkel, dafür ist sein Preis mehr als fair. Sicher ist er nicht für den harten Büroalltag oder täglich 12 Stunden langes Dauerzeichnen ausgelegt. Aber welcher ST-Besitzer wird das auch einem Plotter zumuten? 2600 DM sind zwar ein wenig viel für ein Spielzeug, aber - das sei gesagt es macht auch viel Spaß, mit dem PL-450 einfach nur zu spielen.
PL-450
Papiergröße: DINIISO A3
Schreibgeschwindigkeit: 400 mmls axial
Auflösung: 0,025 mm
Wiederholgenauigkeit: 0,2 mm
Stiftanzahl: 8
Schnittstellen: RS 232C. Centronics
Preis: 2622 DM
Bezugsadresse: nbn Elektronik GmbH Gewerbegebiet 8036 Herrsching
Der von uns getestete Plotter PL-450 gehorcht den gleichen Befehlen wie die Plotter der Finna Hewlett-Packard. Deren Steuerungssprache nennt sich HP-GL (Hewlett-Packard Graphic Language). Das klingt zwar sehr kompliziert, doch beim näheren Hinschauen zeigt sich, daß die Steuerung eines Plotters wesentlich einfacher ist als die eines Druckers. Natürlich muß man sich darüber im Klaren sein, daß ein Plotter in erster Linie zur Produktion von Zeichnungen technischer Art gedacht ist. Eine Hardcopy, wie sie für einen Matrixdrucker problemlos programmiert werden kann, würde auf einen Plotter nur unbefriedigende Ergebnisse liefern.
Doch gehen wir in Medias Res: Die wesentlichen Befehle, die man zur Erstellung einer Zeichnung benötigt sind:
PUIPD (Pen Up/Pen Down)
PA X,Y (Plot Absolute X,Y)
Außerdem braucht man oft:
IN (Initialisieren)
SP N (Select Pen N)
PR X,Y (Plot Relative X.Y)
Eine Sonderstellung nimmt der Befehl ‘LB’ (Label) ein. Wird danach ein ASCII-String an den Plotter gesandt, wird er als Text geplottet. Damit der Plotter erkennen kann, wann dieser Label-Text zuende ist, muß er mit dem Zeichen ASCII (3) beendet werden (im Atari-Zeichensatz ist das der Pfeil nach rechts).
Auf der Suche nach einem handfesten Beispiel fiel mir wie einmal das gute alte Funktions-Plot Problem ein. Auf dem Matrixdrucker ist das Plotten mathematischer Funktionen nämlich wirklich ein Problem. Da der Drucker von oben nach unten zeilenorientiert arbeitet, müßte man für jede Nadelzeile des Druckers zunächst einmal untersuchen, ob und wo die Funktion, die geplottet werden soll, dort einen Funktionswert hat.
Auf einem Plotter gestaltet sich das wesentlich einfacher. Da wir bei diesem Gerät ständig Zugriff auf jeden Punkt der Zeichenfläche haben, können wir die mathematische Funktion X-Wert für X-Wert durchgehen und die jeweiligen Y-Werte miteinander verbinden. Dafür muß lediglich ein Maßstab und eine Schrittweite festgelegt werden. Das Programm in GFA- BASIC, das ich im Folgenden beschreiben werde, finden Sie im Listing abgedruckt.
Das Koordinatensystem des Plotters hat bei einem quergelegten DIN A4-Blatt seinen Ursprung in der unteren linken Ecke. Da der Plotter in Schritten von 1/40 mm arbeitet, hat die obere rechte Ecke also die Koordinaten:
X=27640=11040
Y=19340=7720
Der Nullpunkt unseres Koordinatensystems soll aber in der Blattmitte liegen, wir müßten also zu unseren Koordinaten noch etwas hinzuaddieren, wäre da nicht der Befehl ‘SC’.
Mit “SC-5520,5520,-3860.3860” skalieren wir die beiden Achsen so, daß der Ursprung des Plotter-Koordiantensy-stems genau in der Blattmitte liegt, und wir können uns die Addiererei sparen.
Nun können wir daran gehen, die beiden Achsen zu zeichnen. Die Routine ‘Spitze ’, die für die Erstellung der Pfeilspitzen dient, kann man als ein Makro bezeichnen. Sie zeigt den Vorteil des ‘PR’-Befehls. Die Spitze wird durch diesen Befehl immer an der aktuellen Stiftposition gezeichnet, da nur relativ zur aktuellen Position gezeichnet wird. Daraufhin wird die Skala gezeichnet. Ich habe mich dabei auf jeweils einen Strich für X= 1 und Y = 1 beschränkt. Der Abstand dieser Punkte vom Ursprung ist abhängig vom Maßstab, den Sie in der Variablen ‘Mass’ festlegen.
Nachdem das Koordinatensystem fertig ist, beginnt die eigentliche Aufgabe des Programms. In den Variablen ‘Xs’ und ‘Xe’ stehen Start- und Endwert des Plots auf der X-Achse. Die Variable ‘Auf!’ legt die Auflösung fest, d.h. die Schrittweite in Punkten pro Millimeter, in der die Funktion betrachtet werden soll. In der Schleife werden die Funktionswerte berechnet und der Plotter mit dem ‘PA’-Befehl jeweils an diese Stelle positioniert. Der Stift wird abgesenkt und so werden die Punkte Schritt für Schritt miteinander verbunden. Als praktisch erweist sich der Umstand, daß der Plotter Y-Werte, die außerhalb des Zeichenbereichs liegen, sorglos übergeht.
Sicher fällt Ihnen noch mehr ein und Sie werden das Programm vielleicht noch erweitern wollen. Ich kann nur sagen: Nur zu! Sollten Sie noch keinen Plotter Ihr eigen nennen, dann fragen Sie doch mal Ihre Bank, wie es so um die Finanzierungsmöglichkeiten steht...
*** Funkplot.bas - (C) 1988 Ingo Brümmer ***
Lprint "IN;SP1;PS4" ! INITIALISIEREN, STIFT NEHMEN,DIN A4
'
Lprint "SC-5520,5520,-3860,3860" ! URSPRUNG=BLATTMITTE
'
Deffn Funkt (X) =Sin (X*5) ! ZU PLOTTENDE FUNKTION
'
Mass=20 ! MASSTAB : 1=. . .MM
Auf1=2 ! AUFLÖSUNG: ...PUNKTE/MM
Xs=-5 ! X-WERT START
Xe=5 ! X-WERT ENDE
'
@Koord.sys
@Skalier(Mass)
'
For X=Xs To Xe Step 1/ (Mass*Aufl)
Lprint "PA";Int(X*Mass*40),Int(@Funkt(X)*Mass*40);"PD"
Next X
'
Lprint "PU;SPO;PAO,0;IN" ! STIFT HOCH, ABLEGEN, ENDE
Edit
'
Procedure Koord.sys
Lprint "PA-5000,0;pd;PA5000,0" ! X-ACHSE
@Spitze (1)
Lprint "LB X";CHR$(3)
Lprint "PAO,-3000;PD;PAO,3000" ! Y-ACHSE
@Spitze(2)
Lprint "LB Y";CHR$(3)
Return
'
Procedure Skalier (Fakt%)
Local L%
L%=Fakt%*40
Lprint "PA";L%,"80;PD;PR0,-160;PU" ! X-SKALA
Lprint "PRO,-120;LB1";CHR$(3)
Lprint "PA-80",L%;"PD;PR160,0;PU" ! Y-SKALA
Lprint "LB 1";CHR$(3)
Lprint "PU;PA0,0"
Return
'
Procedure Spitze (Richt%)
If Richt%=l ! RECHTS
Lprint "PD;PR-200,-80;PU;PR0,160;PD;PR200,-80;PU"
Endif
If Richt%=2 ! HOCH
Lprint "PD;PR-80,-200;PU;PRl60,0;PD;PR-80,200;PU"
Endif
Return
Einfaches Beispiel für die Ansteuerung eines Plotters mit GFA-BASIC