GMU:Algorithmic Art/HP 7475A: Difference between revisions

From Medien Wiki
No edit summary
Line 43: Line 43:


Another approach is to export a .svg file with Processing and to convert it to .hpgl with InkScape. (The files produced by inkscape are not really compatible with my “HP7475A_feed_hpgl_file_01” sketch yet). InkScape also has the option to directly send graphics to the plotter, but I had no good experience with that. It also needs original HP Pens (or 3d printed adaptors), as it sends SP; commands, which let the plotter attempt to change the pen, before beginning to draw.
Another approach is to export a .svg file with Processing and to convert it to .hpgl with InkScape. (The files produced by inkscape are not really compatible with my “HP7475A_feed_hpgl_file_01” sketch yet). InkScape also has the option to directly send graphics to the plotter, but I had no good experience with that. It also needs original HP Pens (or 3d printed adaptors), as it sends SP; commands, which let the plotter attempt to change the pen, before beginning to draw.


==='''How to install the HPGL library in Processing:'''===
==='''How to install the HPGL library in Processing:'''===

Revision as of 10:33, 24 November 2018

Working with the HP 7475A

Utility programs

General

The plotter is placed in room 204, in the shelf behind the projection screen. Take it out, place it on a desk and connect the serial adapter to your computer. Please do not forget to return it to the shelf when you are done! You have to bring your own pens and paper. Expect that some trial and error is involved when working with the HP7475A, until you achieve perfect results.


Working Times

If you want to work with the plotter, first check if the room is currently unoccupied. If you want to be sure that no one else is working with the plotter, send a message to the whole class, with the date and time that you intend to use the plotter (Email, Telegram, WhatsApp!?)

Class Schedule in M7 Room 204


Paper Setup

The HP7475A either takes A4 or A3 paper. The thickness of the paper is very flexible.


Pen Setup

To use your own pens with the plotter, you can simply extend your pen’s diameter, by wrapping some paper around it. This way it will fit the pen mount of the plotter. A better way would be to 3D print adaptors, that exactly fit the original HP pen measurements. Unless you have a pen that mimmicks the original HP pen shape, avoid the HPGL commands SP; SP1; SP2; SP3; SP4; SP5; SP6; as they attempt to change the pen.

Original HP pen measurements and openSCAD code


Serial Connection

You need to find out the name of the serial port, as which the USB/Serial adaptor is registered in your computer. After connecting the USB/Serial adaptor to your computer, open a new Processing sketch and run the following program.

import processing.serial.*;
println(Serial.list());

It will display a list of all available serial devices, in the console. In Windows, the ports are named COM1, COM2,... You can try all of them until you find the right one, or check the Windows Device Manager to find out. If you have a Mac, you need to look for a name like "/dev/tty.usbserial..." Copy that name from the console and use it one of the programs that are supposed to talk to the HP7475A.


HPGL

The plotter only understands HPGL (Hewlett Packard Graphics Language). You can try the HP7475A_live_input sketch, to test some HPGL commands. You can find documentation about that language here:

Simple but incomplete reference
Full original reference (PDF)
Full original reference (txt)

Fortunately, there is a HPGL library for Processing, which can convert your sketches to HPGL files.

Another approach is to export a .svg file with Processing and to convert it to .hpgl with InkScape. (The files produced by inkscape are not really compatible with my “HP7475A_feed_hpgl_file_01” sketch yet). InkScape also has the option to directly send graphics to the plotter, but I had no good experience with that. It also needs original HP Pens (or 3d printed adaptors), as it sends SP; commands, which let the plotter attempt to change the pen, before beginning to draw.


How to install the HPGL library in Processing:

Sketch → Import Library… → Add Library… → search for: HPGLGraphics → Install → restart Processing

You can now open the examples of the library (File → Examples → Contributed Libraries → HPGLGraphics → …). Try the examples and adapt the code for your own sketches.


How to use the HPGLGraphics library to export a .hpgl file?

import hpglgraphics.*;
HPGLGraphics hpgl;

void setup(){
  size(1104, 772); // 1616 x 1104 for A3(!?)
  Hpgl = (HPGLGraphics) createGraphics(width, height, HPGLGraphics.HPGL);
  hpgl.setPaperSize("A4"); //either A4 or A3
  hpgl.setPath("yourFileName.hpgl"); //file will appear in sketch folder
  noLoop();
}

void draw(){
  beginRecord(hpgl);
  // your code here (the graphics you want to export as hpgl file)
  endRecord();
}

void mousePressed(){
  redraw();
}

How to send a HPGL file to the plotter?

Use the HP7475A_feed_hpgl_file_01 or HP7475A_feed_hpgl_file_02 programs, which are almost the same (only the buffer handling works differently). Both do not work perfectly yet for all cases, but almost. For very detailed graphics (for example the “noise.hpgl” file), version 02 works better. Instructions how to use the programs are in the comments.