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 Resources and Links
  3. DrawBot, the Adventure Begins
  4. DrawBots for the slow learner
  5. DrawBot - Parts Ordered!!!
  6. DrawBot - The Breakdown
  7. DrawBot - Parts Shipped!!!
  8. DrawBot - What would you draw?
  9. DrawBot - The Plan!
  10. DrawBot - The Hacks
  11. DrawBot - Giant Unicorn?
  12. DrawBot - The Delivery?
  13. DrawBot - The Delivery, Part II
  14. DrawBot – The Delivery, Part III
  15. DrawBot – The Software, Part I (and an existential conversation)
  16. DrawBot – The Delivery, Part IV
  17. DrawBot – The Assembly, Part II
  18. DrawBot – The Assembly, Part III
  19. DrawBot – The Assembly, Part IV
  20. DrawBot – Design Considerations
  21. DrawBot – Halp!!! No - seriously, a little help?
  22. DrawBot – The Delivery, Part V
  23. DrawBot – The Silver Lining of Failure
  24. DrawBot – The Delivery, Part VI
  25. DrawBot – The Assembly, Part V
  26. DrawBot – The Assembly, Part VI
  27. DrawBot – Printed Parts
  28. DrawBot – The Operation, Part I
  29. DrawBot – The Assembly, Part VIII
  30. DrawBot – The Breakdown, Part II
  31. DrawBot – Printing!
  32. DrawBot – Printing, Part II
  33. DrawBot – Why are you crying?
  34. DrawBot – Calibration
  35. DrawBot – Pen Selection
  36. DrawBot – How to Recover from a Stalled Print!
  37. DrawBot – Drawing Success(ish)!!!
  38. DrawBot – Pen Selection, Part II
  39. DrawBot – Onwards and Upwards!
  40. DrawBot – Another Successful(ish) Drawing!, and an Update
  41. Restarting a Stalled DrawBot Drawing
  42. TSP FTW!
  43. Speedier DrawBot Drawings
  44. Excellent DrawBot Slides
  45. Another Drawing Robot!!!
  46. DrawBot Practice Tip: A Watched Pot
  47. The biggest inkjet printer ever
  48. Why do DrawBots draw on walls?
  49. Maze Code + Polargraph?
  50. All New Polargraph on the way!!!
  51. Ideas for improving my DrawBot
  52. DrawBot Aesthetic Re-Design Ideas
  53. The Eagle Has Landed
  54. Every Body Needs a Skull
  55. This project is not going to overengineer itself
  56. Overengineered Spools
  57. Overengineered Stepper Motor Mounts, Filament Guides
  58. Overengineered Bolt Endcaps, Case Holder
  59. Sourcing DrawBot Parts
  60. DrawBot - A Tour!
  61. Building an Arduino Drawing Robot - On The Cheap
  62. Unidentified Foam Object
  63. Arduino Powered Drawing Robot - Take 2 (Or 3)
  64. DrawBot, now ACTUALLY wall mounted!
  65. A Study of Drawing Robot Pen Holders and Design Considerations
  66. Drawing Robot Pen Holders, Calligraphy Pens, and Thought Experiments
  67. Ideal Qualities in a Drawing Robot Pen Holder
  68. Enough talk! Finally a pen holder!
  69. DrawBot Pen Holder Post Mortem
  70. To Maker Faire!!!
  71. Skipping! How could I forget the skipping?!
  72. Drawing Robot Penmanship
  73. PlotterBot at Maker Faire Bay Area 2013!
  74. 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