DrawBot – The Assembly, Part III

I debated with myself over how best to lay out my build log for this DrawBot. 1  Is it better to post the build process as I’m working on it, so that it would span numerous posts, or is it better to try to keep posting all the major steps into one post so that it is easy to follow?  At the cost of appearing repeatedly repetitious over and over again, I think if I were following along at home I’d want to read either one long post that covers everything or a small series of posts that cover the few major steps.  It’s easier at this stage to put all the information into one long post, revising it as I go along and pruning the ubiquitous2 nonsense out as I go.

Here’s what I’m adding in this iteration:3

  1. A section about optional hacks to the Adafruit Motor Shield
  2. More detail about the various libraries and the sketch necessary to upload the Polargraph source code
  3. Instructions for uploading the Polargraph source code
  4. Slightly better organization of my build outline

Now that all the parts have arrived, I’ve finished soldering the Adafruit Motor Shield, it’s time to figure out what the hell I’m doing.

  1. The Parts
    1. 9 VDC 1000mA regulated switching power adapter – UL listed 
    2. Stepper motor – 200 steps/rev, 12V 350mA
    3. Micro servo
    4. Arduino Uno R3 (Atmega328 – assembled)
    5. Adafruit Motor/Stepper/Servo Shield for Arduino Kit v1.0
  2. Assembly
    1. Adafruit soldering and assembly instructions for the Adafruit Motor Shield
      1. Hint:  Don’t try to put the L293D into the 16-pin sockets before you solder the socket into place.
      2. Hint:  While preparing to solder the header pins into the motor shield, I found that the motor shield would not sit flat on the Arduino Uno because the leads from the motor shield’s reset button were in the way.  I crimped the leads slightly and then motor shield sat flat.
    2. Optional:  Hack the Adafruit Motor Shield
      1. Sandy Noble added three small hacks/modifications to the Adafruit Motor Shield.  These are optional, but could make your robot easier to assemble, tune, and operate.
        1. Add heatsinks to the L293D chips aka the “H-Bridges”
        2. Add breakout boards to connect the terminals to the clips for the motor leads.
        3. Use the extra pins for hooking up a cooling fan.  Sandy says he doesn’t use them any more, but it really wouldn’t be a bad idea given that it would take hours for even a simple print.
    3. Download and read the Polargraph Instructions
      1. Polargraph build instructions on Instructables
      2. Latest Polargraph Build Instructions circa 11/28/201145
    4. Install the Processing environment
      1. Processing environment download page
      2. It’s necessary to run the Polargraph controller software
    5. Update the Arduino Uno’s firmware
      1. Go to Arduino.cc and download the latest software (Version 1.0 is 85.9MB for Windows)
        1. The latest version of Sandy Noble’s Polargraph software requires the Arduino 1.0 firmware
      2. Install the Arduino drivers
        1. Plug in your board and wait for Windows to begin it’s driver installation process.  After a few moments, the process will fail, despite its best efforts
        2. Click on the Start Menu, and open up the Control Panel.
        3. While in the Control Panel, navigate to System and Security. Next, click on System. Once the System window is up, open the Device Manager.
        4. Look under Ports (COM & LPT).  You should see an open port named “Arduino UNO (COMxx)”
        5. Right click on the “Arduino UNO (COmxx)” port and choose the “Update Driver Software” option.
        6. Next, choose the “Browse my computer for Driver software” option.
        7. Finally, navigate to and select the Uno’s driver file, named “ArduinoUNO.inf”, located in the “Drivers” folder of the Arduino Software download (not the “FTDI USB Drivers” sub-directory).
        8. Windows will finish up the driver installation from there.
    6. Download Sandy Noble’s Polargraph Controller v2.0
      1. Download the Windows binaries or
      2. Download the source code and compile them for yourself
    7. Add the AccelStepper Arduino Library
      1. Direct download
      2. Extract these files into a folder named “AccelStepper”
      3. Drop that folder into your Arduino libraries subfolder located “arduino/libraries/”
    8. Add the Adafruit Motor Shield Arduino Library
      1. Direct download
      2. Extract these files into a folder named “AFMotor”
      3. Drop that folder into your Arduino libraries subfolder located “arduino/libraries/”
    9. Add the Polargraph source code to the Arduino Sketch folder
      1. Direct download to the version I’m using now, which is “a1.”  The latest version will always be at here.
      2. Create a folder inside your Arduino Sketch folder with the same name as the prefix of this source code file.  At the time of this post, the source code file is is called “polargraph_server_a1.ino”, so the folder should be named “polargraph_server_a1”
    10. Upload the Polargraph source code to the Arduino6
      1. Connect the Arduino (without the motor shield attached to it) to your computer with the USB A to B cable
      2. Start the Arduino software
      3. Click “Open” or “Ctrl-O” or “File -> Open”
      4. Navigate to your “polargraph_server_a1.ino” file, select it, and click “Open”
      5. Click “Upload” or “Ctrl-U” or “File -> Upload”
      6. Wait for the sketch to be uploaded.  You should see, “Compiling sketch…” then “Uploading…” and finally “Done uploading”

I haven’t built much at this point.  As of right now, I’ve really only been trying to see if I can get the Arduino programmed properly.  The next thing I’m going to do is design a spool to attach to each of my two steppers.  I’ll work on that and then continue on with this big build log.  Stay tuned!

Posts in the DrawBot Adventure Series
  1. Wanna make a DrawBot?
  2. DrawBot, the Adventure Begins
  3. DrawBots for the slow learner
  4. DrawBot - Parts Ordered!!!
  5. DrawBot - The Breakdown
  6. DrawBot - Parts Shipped!!!
  7. DrawBot - What would you draw?
  8. DrawBot - The Hacks
  9. DrawBot - The Delivery?
  10. DrawBot - The Delivery, Part II
  11. DrawBot – The Delivery, Part III
  12. DrawBot – The Assembly, Part I
  13. DrawBot – The Software, Part I (and an existential conversation)
  14. DrawBot – The Delivery, Part IV
  15. DrawBot – The Assembly, Part II
  16. DrawBot – The Assembly, Part III
  17. DrawBot – The Assembly, Part IV
  18. DrawBot – Halp!!! No - seriously, a little help?
  19. DrawBot – The Face Palm
  20. DrawBot – The Delivery, Part V
  21. DrawBot – The Silver Lining of Failure
  22. DrawBot – The Delivery, Part VI
  23. DrawBot – The Assembly, Part V
  24. DrawBot – The Assembly, Part VI
  25. DrawBot – Printed Parts
  26. DrawBot – The Assembly, Part VII
  27. DrawBot – The Operation, Part I
  28. DrawBot – The Assembly, Part VIII
  29. DrawBot – Printing!
  30. DrawBot – Printing, Part II
  31. DrawBot – Why are you crying?
  32. DrawBot – Calibration
  33. DrawBot – How to Recover from a Stalled Print!
  34. DrawBot – Pen Selection, Part II
  35. DrawBot – Onwards and Upwards!
  36. Restarting a Stalled DrawBot Drawing
  37. TSP FTW!
  38. Speedier DrawBot Drawings
  39. Two new DrawBot links! And an update!
  40. Excellent DrawBot Slides
  41. Another Drawing Robot!!!
  42. The biggest inkjet printer ever
  43. Why do DrawBots draw on walls?
  44. All New Polargraph on the way!!!
  45. Ideas for improving my DrawBot
  46. DrawBot Aesthetic Re-Design Ideas
  47. The Eagle Has Landed
  48. Every Body Needs a Skull
  49. This project is not going to overengineer itself
  50. Overengineered Spools
  51. Overengineered Stepper Motor Mounts, Filament Guides
  52. Overengineered Bolt Endcaps, Case Holder
  53. Sourcing DrawBot Parts
  54. DrawBot - A Tour!
  55. DrawBot - A Preview
  56. Arduino Powered Drawing Robot Poll
  57. Building an Arduino Drawing Robot - On The Cheap
  58. DrawBot - Printed Parts Tour
  59. Unidentified Foam Object
  60. Arduino Powered Drawing Robot - Take 2 (Or 3)
  61. DrawBot, now ACTUALLY wall mounted!
  62. A Study of Drawing Robot Pen Holders and Design Considerations
  63. Drawing Robot Pen Holders, Calligraphy Pens, and Thought Experiments
  64. Ideal Qualities in a Drawing Robot Pen Holder
  65. Enough talk! Finally a pen holder!
  66. DrawBot Pen Holder Post Mortem
  67. To Maker Faire!!!
  68. Skipping! How could I forget the skipping?!
  69. PlotterBot at Maker Faire Bay Area 2013!
  70. PlotterBot.com - a new site dedicated to drawing robots
  1. FYI, I was explaining this DrawBot to a friend at a party yesterday.  He suggested I create a wipe board robot instead, similar to the Lady Ada and Matt Metts robots, and call it the BotWiper. []
  2. Don’t you just love that word? []
  3. Since this information is 95% stuff you would have seen from the prior Assembly post, I’ll put it after a little “More” tag. []
  4. Polargraph Instructions circa 10/20/2010 []
  5. Polargraph Instructions circa 10/9/2010 []
  6. Adapted from the Arduino Getting Started Guide []

4 Responses to “DrawBot – The Assembly, Part III”

  1. […] DrawBot – The Assembly, Part III […]

  2. Hola amigos es posible manejar el DrawBot con un arduino 2560 R3 y y los drivers A4988 para los motores,
    Yo soy de Costa Rica, e intento armar un DrawBot, Yo soy artista plástico y quiero hacerlo para hacer mis proyectos, yo tengo los motores y el arduino y los drivers solo me falta el servo para elevar y bajar el lapiz,
    Si me pueden ayudar con esto les agradecer{ia mucho

    Lic. Mariano Prado

  3. MakerBlock says:

    @Mariano: Please forgive me – my Spanish is not so good and I had to lean on Google translate. I would suggest a servo motor to raise and lower the pen.
    Hello friends can handle DrawBot with R3 and Arduino 2560 and A4988 drivers for engines,
    I am from Costa Rica, and try to put together a DrawBot, I am an artist and I want to do my projects, I have motors and drivers Arduino and the servo I only need to raise and lower the pen,
    If I can help with this is a lot to thank you
    Lic. Mariano Prado

  4. OK, Hello friends can build a DrawBot using an Arduino 2560 and A4988 drivers for engines,
    I am from Costa Rica, and try to build a DrawBot, I’m an artist and I want to do my projects, I have the engines and the Arduino board 2560, A4988 drivers, I lack the servo to raise and lower the pen,
    If I can help with this ia a lot to thank you {

    Lic. Mariano Prado