Polargraph Controller v2.0, I mean 1.0.

To install:

It’s a bit more complicated than it used to be, sorry about that.

1. Check out this branch of the project: http://code.google.com/p/polargraph/source/browse/#svn%2Fcontroller%2Fbranches%2Fpolargraphcontroller_zoom

You need all of the files.

2. You need these libraries also installed:

Geomerative for SVG import and polygonalisation.

ControlP5 for the GUI.  I’ve tested with 0.5.4 which is the last stable release.

3. Alternatively, get some precompiled binaries.  These are a pain to make, and I can only test the windows versions myself, so there’s a good chance they won’t get updated very often, but they are here.

Changes:

  • SVG import and vector graphics output.  In conjunction with the latest version of the server code, this is now a pleasant reality.  It’s a bit slow, and a little inflexible right now, but I anticipate it’ll get better.  The SVG file is placed at the top-left of the machine, so I’ve been making a file in inkscape that’s the same size as the machine (in px), and drawing my layouts on that.   It is aware of lines only (no fills), and ignores all styles in the SVG.
    I’ve discovered that there is something like an incompatibility between the way inkscape exports text outlines and the way geomerative imports them though, that results in some of the centres of the letters being offset a bit.  Not sure why, but if I break the object into its constituent paths, (Path->Break Apart) then it’s solved.  Go figure.
  • Zooming and panning on the machine.  Use the mouse wheel to zoom the machine, and a middle button drag to move the machine.  This should let it be usable for most screens.
  • Adaptable button panels. They’ll stack to fit on the screen.
  • New GUI library.  I’m using ControlP5 to handle the buttons and tabs, and there’s a few nice things in that like the number spinners too.  It’s pretty good.
  • More sensible controls.  How to select an area is more obvious.  Buttons are disabled when not usable, buttons can toggle on and off too.
  • Machine designer.  The setup tab lets you define machine sizes, page sizes, page positions and pen width test settings.  You should save your properties and restart if you change the mmPerRev and stepsPerRev settings. The only thing you need to edit manually now is the serial port.  I’ll fix that shortly.
  • Queue path preview.  This looks for C01 (move pen) and C17 (move pen in straight line) commands in the queue and draws them on the machine.
  • Row size is now grid size.
  • Pixel threshold.  Use the bright pixel and dark pixel number spinners to ignore pixels at either end of the spectrum.  Chroma keying is reinstated (mask with bright green).

Please have a go and see what you reckon.

Almost forgot – AccelStepper has been officially upgraded to work with Arduino 1.0.  Don’t use my branch.

10 thoughts on “Polargraph Controller v2.0, I mean 1.0.

  1. Hi! I’m having trouble with the verifying the arduino code.
    I get a whole lot of these errors.
    “polargraph.cpp: In function ‘void loadMachineSpecFromEeprom()’:
    polargraph:199: error: ‘F’ was not declared in this scope”

    What am I doing wrong?
    I can verify that the precompiled mac binary opens and seems functional, but I don’t have the arduino far along enough in order to really test it.

    _Ross

  2. Sandy, fantastic update to the controler, the SVG import and draw is so cool.

    Pixel threshold works much better with the dark pixel minimum threshold set to 0 insted of 1 in the ‘controlesSetup’ file.

  3. hi there!
    I have an issue in the DisplayMachine.pde file,

    the line RPoint[][] pointPaths = loadedShape.getPointsInPaths();
    throws at me an error. – Cannot find anything named “loadedShape” -

    The pre compiled version seems to work fine,,I’ll give it a try tomorrow.
    Nice work on the GUI by the way!

  4. Hi Sandy and all the other Polargraph friends out there,

    i’ve got a problem with the now Code. I tried to use the new Software an plot some Vectors. Uploading the new servercode via aduino 1.0 was no problem at all. Also starting the precompiled windows binary. Everything went as usual in the Controller. But when i hit draw vector and set to polagraph to go something wierd happens. The gondola goes from homepoint to the startingpoint of the Vectorgraphic. The servo motor sets the gondola down. Then the gondola drives all the way down the machine and further on. Luckily my counterweights stop the gondola from falling off the machine, but the motors dont’t stop to go round. Stopping the machine in the controller has no effect, only thing that works is pulling the USB ant the powercable.
    I allready tried different SVGs and reuploaded the servercode serverall times.
    Anyone knows whats wrong?

    Stephan

    • Hey Stephan, sorry about that, I made a goof with two bits: Uploading the machine size to the machine did it in steps rather than mm, so it was much too high, and also the set home command wasn’t working properly.

      The result was that C01 commands (move fast as possible) were fine because they don’t require the machine to work out where anything is, but C17 (move in a straight line) made the gondola head for the hills because it thought the machine was 20 times bigger than it really was and it had far to go.

      What you needed to do to stop it was pause the queue (or clear it), and then reset the machine.

      It was fixed a while ago, but the fix was in the code repo rather than the binaries. I’ve just made new binaries, so give them a shot. You’ll need to re-upload your machine sizes to the machine.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>