Software zur Ansteuerung Plotter / CNC

Gast #2116336
Lesenswert?

Hallo allerseits,

bisher habe ich mir einen kleinen Plotter aufgebaut. Durch simple 
Eingabe von X bzw Y Koordinaten zeichnet er mir eine Bahn. Außerdem kann 
er selbstständig Kreise zeichnen.

Zeichnen reiner BitMap-Grafiken ist einfach.

Das Problem was ich habe ist, dass ich gerne Vektorgrafiken bzw 
Schriften zeichnen möchten. Um das Rad nicht neu erfinden zu müssen bin 
ich derzeit auf der Suche nach einer Art Treiber, am besten eine C# oÄ 
Klasse, die mir die zu zeichnenden Koordinaten als X/Y Wert ausgibt, 
sodass ich diesen an meine Steuerung übersenden kann.

Wie gesagt, was ich suche ist kein vollwertiges Programm, das dies 
erledigt, sondern eine Klasse, die mit Vektorformaten klarkommt (evtl. 
svg, dwg dfx, wmf...) da bin ich flexibel. Soll aber nicht bedeuten dass 
ich kein vollwertiges Prgm ablehnen würde.

Ich hoffe dies gibt es bereits im homebrew CNC-BEreich oder sogar für 
Plotter.

Vielen Dank soweit.
Gast #2116382
Lesenswert?

Die Sprache für Plotter ist HP-GL.

Wenn dein Plotter die kann, ist es kein Problem mehr die anderen Formate 
auszugeben. Es gibt/gab eine Software PrintGL, die auch normales HP-GL 
in einfaches HP-GL (nur Stift bewegen und PenUp PenDown) umwandelt..
Gast #2116395
Lesenswert?

Hey, Vielen Dank für die äußerst schnelle Rückmeldung.

Also mein Plotter ist recht dumm, der kann garnichts, da eig kein 
richtiger Plotter, sondern nur XYZ-Positionierer, mit dem Ziel Plotten 
zu können.

Aber die Sache mit Stift bewegen und PenUp PenDown hört sich schonmal 
gut an.

Ich glaub das ist was ich suche, vorrausgesetzt ich interpretiere 
richtig. Ich möchte nur ein Prgm bzw Klasse, welche sagt, fahrt (x;y;z) 
stift runter, fahr..... usw.
Gast #2116420
Lesenswert?

Schau mal nach hp2xx Die steht unter GPL und wandelt HP-GL in 
verschiedene Grafikformate(Vektor und Bitmap). Dazu wird das ganze 
erstmal in einfache Vektoren zerlegt.

Vielleicht kannst du da ansetzen.

Eine Linie von P1 nach P2 zeichnen kann dein Plotter doch.

Viel Spaß dabei.
Gast #2116573
Lesenswert?

Du willst zwar nichts fertiges, aber ich würde deinen Plotter vielleicht 
doch etwas intelligenter machen, zumindest Kreise und ähnliches. Ich 
kann mir vorstellen, dass es recht aufwendig ist, wenn du für einen 
Kreisbogen alle X/Y Koordinaten einzelnen übertragen musst. (Passt auch 
irgendwie nicht zu einem Plotter)

Ich probiere gerade GRBL aus, das ist eine CNC Firmware für AVR die 
G-Code versteht. Es gibt zwar noch ein paar Macken, aber bisher gefällt 
mir die ganz gut. Da das ganze Open Source ist, könntest du da ja mal in 
den Code gucken.

http://dank.bengler.no/-/page/show/5470_grbl?ref=mst
Gast #2117821
Lesenswert?

Hi,

das Problem ist, dass ich keine Selbstbau-Hardware einsetze, sondern 
proprietäre. Die Steuerung kann man bedingt programmieren. Zurzeit 
schreibe ich ein ServerSocket, welche eine TCP-Kommunikation erlaubt. 
Sollte dies dann Laufen, werde ich einen Clienten in irgendeiner 
PC-Sprache erstellen, der vorhandene Daten aufbereitet an die Steuerung 
sendet.

Da ich die ZEit aber nicht habe geometrische Figuren auszurechnen, wäre 
es für mich am coolsten, die Geometrien (ausgedrückt durch Vektoren) 
schon als reine x;y Koordinaten zu bekommen. Die Genauigkeit ist da eher 
hintenangestellt.
LEtztendlich wird auch ein HighEnd Plotter irgendwo seine Daten 
interpolieren und den Druck gerastert aufbauen. Vllt so gut, dass 
unsichtbar für das menschl Auge.

DirkB hatte einfaches HP-GL erwähnt, also x,y PenUp/Down. Kennt jemand 
eiin Programm welches solchen einfachen HPGL-Code ausgibt?

Viele Grüße
#2117870
Lesenswert?

Crunch schrieb:

> LEtztendlich wird auch ein HighEnd Plotter irgendwo seine Daten
> interpolieren und den Druck gerastert aufbauen. Vllt so gut, dass
> unsichtbar für das menschl Auge.

Such mal nach "Bresenham Algorithmus"

> DirkB hatte einfaches HP-GL erwähnt, also x,y PenUp/Down. Kennt jemand
> eiin Programm welches solchen einfachen HPGL-Code ausgibt?

HPGL ist ein ASCII Format. Zur Not kann man sowas auch mit einem 
Texteditor erzeugen für erste Tests.
Gast #2119416
Lesenswert?

Suche dir mal einen Druckertreiber für einen HP Plotter und installiere 
den mal. Als Schnittstelle dann einfach "File" angeben. Wenn du jetzt 
über diesen Treiber druckst, landen alle Befehle in der Datei, das 
sollte doch reichen.
Gast #2121566
Lesenswert?

Hi,

was ich suche ist eine Software, die mir eine Schriftart als Vektoren 
ausgibt, allerdings ohne jegliche Kreisfunktionen, Splines oÄ. Also 
ausschließlich lin Vektoren.

Zu sehen in angehangener Bilddatei.

Viele Grüße
Angehängte Dateien:
#2121607
Lesenswert?

Sag doch gleich, dass du über Fonts reden willst!

Plotter werden benutzt um Zeichnungen, Pläne u dgl. auszugeben. Also 
Zeichnungen, die aus Linien, Polygonen und Bögen aufgebaut sind. Und 
nicht aus Buchstaben aus einem True Type Font.

Es gibt Codebeispiele im Netz, wie man True Type Fonts in Linen auflöst.

Beim Rest bleibe ich nach wie vor dabei: Du solltest deinem Plotter ein 
wenig Eigenintelligenz verpassen. So schwer ist das nicht.
(Firma: Q3) #2122641
Lesenswert?

Du solltest deinem Plotter einen HP/GL-Interpreter spendieren und dann 
z.B. aus InkScape, CorelDraw oder Adobe Illustrator (mit HPGL-Plugin) 
die Daten exportieren. Damit hast du eine funktionierende Schnittstelle 
zu allen gängigen (Vektor-) Grafikformaten.
HP/GL (nicht HP/GL2!) hat nur eine Handvoll Kommandos im ASCII-Format, 
das sollte man evtl. sogar auf einem ATMega hinbekommen:

- PU pen up
- PD pen down
- PR x y posit relative
- PA x y posit absolute
- SP p select pen
- IN init ... plus einige numerischen Parameter.

Die Approxximation von Kurven zu Geraden-Stückchen und die Umwandlung 
von Text nach Pfaden macht dann die exportierende Software und ist nicht 
dein Problem.
#2122888
Lesenswert?

DirkB schrieb:
> GAnz sotrivial ist HP/GL nicht.
> HP/GL kann durchaus auch Rechtecke, Kreise, Kreissegmente und Texte
> (Label) schreiben.

Grundsätzlich richtig.
Nur nutzen das die wenigsten Anwendungsprogramme auch aus. Für den Fall 
des Falles (allgemeiner Plottersupport) haben sie meistens sowieso eine 
Emulation der Funktionalität mit und wenn es auf 
Übertragungsgeschwindigkeit nicht ankommt, dann emulieren sie meistens 
lieber selber. Denn dann kriegen sie auch 100% das richtige Ergebnis.

Mit den oben angeführten HP/GL Befehlen kann man zwar unter Umständen 
nicht jedes HPGL plotten, aber das meiste wird einwandfrei gehen. Und 
wenn man drauf kommt, dass ein Befehl fehlt, dann rüstet man den eben 
nach. Wenn man seine HP/GL Engine einigermassen vernünftig aufgebaut 
hat, ist das ja kein Problem.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren