Roland DXY-990
Roland DXY-990
https://github.com/TimeTravel-0/penplotterfeeder
https://pypi.python.org/pypi/Chiplotle
https://hackaday.io/project/12276-roland-dg-dxy-990
http://www.rolandforum.co.uk/viewtopic.php?f=49&t=2072
Milieu de page page http://www.synthfool.com/laser/
Cable Serial <> USB : http://cmc.music.columbia.edu/chiplotle/manual/_static/SerialPlotterCable_Chiplotle.pdf
CréCréer un adaptateur àà partir d'un vieux "pen": https://www.flickr.com/photos/anachrocomputer/sets/72157624783555539
Convertisseurs HPGL
-
Plugin inkscape :
https://www.timewasters-place.com/inkscape-and-plotters-the-2nd/ -
Software C :
https://github.com/anachrocomputer/vec#the-pens -
Processing \o/ (voir plus bas)
psdtoedit
Pstoedit est un vieux soft en ligne de commande pour convertir àà peu prèprès n'importe quel fichier vectoriel en HPGL.
Installation sur Raspbian Jessie Lite :
$ sudo apt install ghostscript $ sudo apt install pstoedit
Utilisation :
$ PAGE_SIZE="a3" HPGL_VERSION=1 pstoedit -f "plot-hpgl:-plotformat hpgl" input.pdf output.hpgl
Les traits ont l'air d'êêtre appliquéappliqués deux fois, ce qui peut êêtre sympa pour les bics un peu rérécalcitrants mais çça vaudrait la peine de chercher àà comprendre pourquoi.
Des variables d'environnement sont disponibles, voir sur sur https://www.gnu.org/software/plotutils/manual/en/html_node/Plotter-Parameters.html
Filtres et remplissage
-
Hatch Fill :
https://www.thingiverse.com/thing:4943
Recherches HPGL
Envoi depuis une Raspberry Pi avec le script python python https://github.com/TimeTravel-0/penplotterfeeder Ratio de 40 sur les distances:
PD400,400;
envoie le pen àà x10mm, y10mm. Maximum travel size: x416, y259 (16640, 10360). Au-dessus le dédéplacement est impréimprédictible (quelques millimèmillimètres de dédécalage).
Control commands
Des commandes spéspéciales permettent de parler àà la machine grâgrâce au caractècaractère d'ééchappement "ESC". Il a le code code ASCII 27, en python on l'obtient avec avec chr(27). En Nodejs, "\x1b".
-
[ESC].Brécupérécupérer l'éétat du buffer (Nodejs:"\x1b.B") -
[ESC].Erécupérécupérer un code d'erreur (0 = pas d'erreur, pour les autre codes voir manuel papier) -
[ESC].Orécupérécupérer l'éétat de la machine (pour codes voir manuel papier) -
[ESC].Karrêarrêter le plot en cours et vider le buffer. Ne fonctionne pas top, on doit envoyer la commande plusieurs fois pour qu'elle soit prise en compte et parfois elle ne l'est pas.
-
IN;initialisation -
SP1;selection du pen⇒⇒ 1 -
VS1;vitesse du pen⇒⇒ 1 -
SI1,1;taille surl’l’axe x⇒⇒ 1, y⇒⇒ 1 -
PA0,4000;position x⇒⇒ 0, y⇒⇒ 4000 -
DT$;carractècarractère final⇒⇒ $ et (char)3 =caractècaractère invisible pardédéfault -
LB RADISLAV EST BG$;texteàà afficher⇒⇒ RADISLAV EST BG + char final⇒⇒ $ (qui ducoup sera afficher) -
PU;lever le pen -
PD;decendre le pen -
CP;retouràà la ligne
Raspberry pi
Interface Web
John a créécréé une app web pour importer un fichier HPGL, le préprévisualiser et l'envoyer àà la machine : https://github.com/LgHS/hpgl-sender
(suivre les instructions du README)
Script Python
ssh pi@192.168.*.* sudo apt-get install git virtualenv git clone https://github.com/TimeTravel-0/penplotterfeeder.git cd penplotterfeeder virtualenv . . bin/activate pip install pySerial python plot.py tests.hpgl 1 0 0 /dev/ttyUSB0
Processing
Il est possible de génégénérer du HPGL directement depuis Processing avec cette librairie : https://github.com/ciaron/HPGLGraphics.
Cette lib ne prend pas en compte P3D (rotateX, vertex(float,float,float)), il faut repartir d'un Fork de PGGraphicsSVG (sur le github de Processing) et adapter pour le HPGL.
Fork HPGLGraphics
John a forkéforké la librairie Processing pour pouvoir dédéfinir des tailles personnalisépersonnalisées, des marges et la vitesse du pen : https://github.com/drskullster/HPGLGraphics (v1.0.4)
Pour compiler :
-
brew install ant -
gitcloneclone https://github.com/drskullster/HPGLGraphics.git -
cd HPGLGraphics/resources -
ant -Dclasspath.local.location=[Processing path] -Dsketchbook.location=[Sketchbook path] -
La librairie est
compilécompilée dans le dossier [Sketchbook path]. Si l'originaleéétaitdéjàdéjàpréprésente, elle aétéétéremplacéremplacée.
Projets
-
https://github.com/LgHS/hpgl-sender
Interface web pourcontrôcontrôler le plotter et envoyer du HPGL -
https://github.com/drskullster/plots
Sketchs Processing random de John