RoboPaint

From Evil Mad Scientist Wiki
Revision as of 00:20, 25 October 2014 by Windell (talk | contribs) (Getting RoboPaint)
Jump to: navigation, search
wcb_tn.jpg This wiki page is part of the documentation for the WaterColorBot.
Click here to return to the WaterColorBot overview.


Overview

There are three main software interfaces for driving the WaterColorBot: RoboPaint (as described on this page), the real-time painting app RoboPaint RT, and the WaterColorBot extensions for Inkscape.


RoboPaint is the Automatic Painting Software for the WaterColorBot. It runs under Mac, Windows, and Linux. In RoboPaint, you can open existing artwork in SVG format, snap the colors to your paint palette, and paint the document. It also has a rudimentary edit mode that lets you create new drawings to print.


If you’re starting with existing SVG artwork, RoboPaint is generally the best of the WaterColorBot interfaces to use for a few different reasons. Most importantly, it’s good at automatically filling in large solid regions of a painting.


We recommend that all WaterColorBot users download and install RoboPaint. Windows users should download and install RoboPaint prior to the other programs, as it also installs the WaterColorBot’s USB driver.


Getting RoboPaint

RoboPaint runs on Mac, Windows, and Linux.

Download and install the latest version from the releases page.

Note for Mac users: There are two different versions of RoboPaint available, one for MacOS 10.7 and newer, and one specific for MacOS 10.6. New releases (past September 2014) will support MacOS 10.7 and newer.

Using RoboPaint

Launching RoboPaint

RoboPaint is a stand-alone application that you open in the normal way, and can be run whether or not your computer is connected to the WaterColorBot.

If you are planning to make paintings in a given session with RoboPaint, we suggest that you take the following three actions before opening RoboPaint:

  1. Move the carriage to the upper left (Home/START) corner,
  2. Plug in the power supply (both to the WaterColorBot and to power), and
  3. Plug in the USB cable (both to the WaterColorBot and to your computer)


The Home Screen

robopaint screen shot

When you first open RoboPaint you will likely be greeted by this welcoming screen. If RoboPaint has managed to find and connect to your WaterColorBot, you may also see a message flash by quickly ("Port found, connecting... Connected!") as it says "hello" to the WaterColorBot.


If you can't connect to the WaterColorBot

robopaint screen shot

If RoboPaint cannot find your WaterColorBot, you will see a slightly less welcoming message: "Couldn't connect! - Port not found. What do you want to do?"

You will get this message when the WaterColorBot is not connected to your computer by USB, or when your computer is already using the USB port. (For example, if RoboPaint RT is already talking to your WaterColorBot.) If trouble persists, please see our troubleshooting guide for additional assistance.

When the WaterColorBot is unable to connect, you will have a choice presented, to either "Continue in Simulation mode" or "Try to Reconnect." If you choose simulation mode, RoboPaint pretends that it has a valid connection to the WaterColorBot. You can use this mode for opening, creating, and preparing files, or to try out the whole WaterColorBot process when you do not have the machine handy.


Choices from the Home Screen

robopaint screen shot robopaint screen shot

There are two main options presented on the Home Screen: Create and Print.

  • In Create mode, you can open, resize, and edit existing vector artwork. You can also make new drawings to print out on the WaterColorBot.
  • In Print mode, you actually operate the WaterColorBot to paint your drawing.


Most commonly, one begins in Create mode (for example, to open and prepare a file), and then switches over to Print mode when ready.


Create Mode

robopaint screen shot

Here is what it looks like when you first enter Create mode: A blank canvas, with a set of tools and commands.


Opening Files

robopaint screen shot

From the File menu, you can create a new document to paint, or open an existing SVG drawing.

Aside: We generally recommend http://inkscape.org Inkscape] as a great place to create SVG documents for use with the WaterColorBot. Inkscape can import artwork in many vector graphics formats including PDF, and is excellent for creating new artwork as well. The WaterColorBot does not (directly) paint bitmap pictures (e.g., JPG, PNG, BMP files), but the tracing functions in Inkscape are one approach towards converting pictures into paintings.


robopaint screen shot

You can also open one of several included sample files, to test out the process. (The "Earth" and "Tree" examples are two of our favorites.)


Preparing a file to print

robopaint screen shot

Once you have opened a file, you normally need to do some simple prep work to prepare it for printing.

We suggest the following two steps, in most cases:

  • Click the "Fit Content" button to resize your drawing to fill the available print area of the WaterColortBot, and
  • Click the "Auto Color" button to "snap" all of the colors in your drawing to those of the paint palette, giving you a preview of how it will print.


Other controls available in Create mode allow you to:

  • Add new shapes (with the various controls on the left-hand side)
  • Group and ungroup elements (from the Object menu)
  • Pick fill colors and line colors ("stroke" colors) from the paint palette
  • Arrange objects in front of and behind other objects (from the Object menu)


Moving to Print mode

robopaint screen shot

When you are ready, switch over to Print mode to paint your drawing.


Print Mode

robopaint screen shot

In Print mode, you have a simpler set of controls: The big "Start" button that begins painting, and three other buttons:

  • Raise/Lower brush. Use this to check and adjust the position of the brush in the brush holder, or if you should need to raise the brush for any other reason.
  • Park Home. The WaterColorBot carriage needs to be in the upper-left (START) corner before you start a new painting. If the WaterColorBot moved its carriage elsewhere and you would like to to go back home, click this button.
  • Unlock motors. This command disengages the WaterColorBot's motors so that you can move the carriage by hand.


Pausing and resuming

robopaint screen shot

While painting, the Start Button turns into a "Pause" button. If you click the "Pause" button, the painting will halt, and the top button now reads "Resume"; you can use it to resume your painting.


Status messages

You may also notice that the lower part of the controls indicates the status of the WaterColorBot:

robopaint screen shot robopaint screen shot robopaint screen shot

Here are some example status messages that you may see while the WaterColorBot is painting.


Returning to Create mode

robopaint screen shot

You can also return to Create mode by clicking the symbol in the toolbar.


Settings

robopaint screen shot

To access the RoboPaint settings dialog, click the "gears" logo in the upper right corner of the screen. Settings are available from the home screen, and from both Print mode and Create mode.

Changes made to the settings in RoboPaint only affect the behavior of the WaterColorBot when operated from RoboPaint. They do not affect the operation of either RoboPaint RT or the Inkscape extensions.


robopaint screen shot

There are three tabs within the Settings dialog, and we will go through their contents in detail. The first tab is is "Painting Style," which contains the most frequently changed controls and settings.


Painting Style Tab

robopaint screen shot

The first control is for the Carriage Movement Speed: That is, how fast does the carriage go? Slower speeds tend to be a little more accurate and reliable, but, well, take longer.

The WaterColorBot can go both slower and faster than humans tend to paint, but pens and paintbrushes are designed to operate at human painting speed, so you may want to take that into account. We tend to like settings in the range of 75% or so-- a little bit faster than a human normally paints.


robopaint screen shot

The next set of controls are for:

  • Painting/Drawing mode, to select how the WaterColorBot behaves in general. More about that in a moment.
  • Showing color names on the paint palette
  • Installed Paint set, providing an option for other other arrangements of paint colors.


robopaint screen shot

The available Painting/Drawing modes are:

  • Default (Brush, Water & Paint)-- standard watercolor painting mode
  • Water Only (No Paint: Buddha Board) -- for use with water-painting boards
  • Paint Only (No Water: Non-watercolros) -- for use with (for example) tempera paints
  • No Water or Paint (Pen/Pencil mode) -- for sketching, do not dip the pencil in paint or water.


robopaint screen shot

The options for Installed Paint Set are:

  • Crayola Classic -- the set included in Crayola 8-pan sets
  • Crayola Alternate -- the other set included in Crayola 16-pan sets
  • Prang Glitter -- for the Prang brand 8-pan glitter watercolor paint set

Most commonly, we stick with the default option "Crayola Classic." (We may add more options to this menu in the future, as well.)


robopaint screen shot

The next set of options:

  • Refill Distance: How far the brush travels before going back to get more paint
  • Stroke precision: How accurately the WaterColorBot will trace paths
  • Stroke overshoot: How much to compensate for the bending of the paint brush


robopaint screen shot

Finally, there are settings for the type of fill used for filling solid regions with paint:

  • Type: What kind of fill is used
  • Fill Precision
  • An option to connect small gaps -- almost always a good idea to leave enabled
  • Options for the angle and spacing of line and hatch fills


robopaint screen shot

The options for Fill Type are:

  • Straight line
  • Traingle line
  • Sine line -- wavy -- Good for painting water!
  • Center spiral -- big circles look good when painting wood
  • TSP squiggle -- efficient random-looking fills that tend to look a bit messy, for better or worse.


Basic Setup Tab

robopaint screen shot

The basic setup options allow you to change the set height for the Brush-Up, Brush-Down (for painting) and Brush-Down (for washing the brush) positions. You can also change how long is allowed for the brush to move between these positions.

As you drag the sliders, the WaterColorBot will follow along, and you can use this to fine-tune the positions. Take care that if you go to far, the brush-lift servo motor will strain under the load. (The motor should be relatively quiet when at rest.)


Advanced Tab

robopaint screen shot

The Advanced tab contains less-frequently used options:

  • Invert X or Y stepper: In case one of your motors is wired backwards
  • Buffer smoothing: To fix jittery robot motion, in some cases
  • Swap X for Y: In case you have your Motor X wired as Motor Y and vice versa


robopaint screen shot

  • Manual paint-- May enable experimental advanced-level painting options, for the adventurous.
  • Open last image on startup: Or, start with a blank canvas every time.


robopaint screen shot

The API server. RoboPaint contains an API server that lets you write your own software to control the WaterColorBot. You can also enable the API to accept remote connections (if you know what you're doing) to allow your WaterColorBot to be controlled by remote devices on the network.


Troubleshooting

In case of difficulty, please begin at our troubleshooting page.

Known issues

Error upon launch: USB conflict (Windows 8)

RoboPaint has a known issue under Windows 8 that can produce give a "code 80020005" error if certain types of devices are connected to your computer by USB instead of (or in addition to) the WaterColorBot. We consider this to be a "critical" issue, and are working hard on a solution.

If you encounter this error, please remove any non-essential USB devices from your system and try again. (Yes, your keyboard and mouse are essential!)

For Developers

Repository

RoboPaint is maintained at our github repository.

Bugs and feature requests

Please use the issues page at our repository to report bugs and request new features for RoboPaint.