Arduino Unicorn tester
3
Likes
130
Downloads
584
Views
Published on February 1, 2011
Description
I finally finished printing the Unicorn. I really wish I had gone for the two piece derivative, it would've been way easier to finish and attach everything!
I used the printable linear slide. It works so-so, but has a good amount of stiction... as do the rotary joints on the servo connectors... so I wrote up this quick sketch to let me run a burn-in test on the unicorn and try to loosen up the joints.
The goal of this is to allow you to test your unicorn WITHOUT an Extruder Controller. However, if you're comfortable re-flashing your EC, you can load it with the Arduino Bootloader and use it instead of an Arduino. I hope the D9 port on the extruder is the same as pin 9 in Arduino - if so, it should work with the EC hooked up according to the usual instructions. Caveat Emptor; you'll have to re-flash your EC back to the reprap / makerbot software when done, and don't come crying to me if you have to get some funky ISP programmer or it doesn't work for you or you brick your EC and Makerbot has a two month backlog on them...
The current delay for a pen move is 1 second. This seems pretty good, with a small pause at the top and bottom of each move.
I used the printable linear slide. It works so-so, but has a good amount of stiction... as do the rotary joints on the servo connectors... so I wrote up this quick sketch to let me run a burn-in test on the unicorn and try to loosen up the joints.
The goal of this is to allow you to test your unicorn WITHOUT an Extruder Controller. However, if you're comfortable re-flashing your EC, you can load it with the Arduino Bootloader and use it instead of an Arduino. I hope the D9 port on the extruder is the same as pin 9 in Arduino - if so, it should work with the EC hooked up according to the usual instructions. Caveat Emptor; you'll have to re-flash your EC back to the reprap / makerbot software when done, and don't come crying to me if you have to get some funky ISP programmer or it doesn't work for you or you brick your EC and Makerbot has a two month backlog on them...
The current delay for a pen move is 1 second. This seems pretty good, with a small pause at the top and bottom of each move.
Instructions
Tested! Works! Bugs fixed! Updated Instructions to include unicron calibration! Pictures of hookup coming soon!
I use the Arduino Mini Pro for most of my development - its tiny and looks awesome in your projects... but any Arduino should be able to run this code.
I generally solder the mini pro with male pins. Below are the hookup instructions for that. If you want to use Female Headers or a regular Arduino, the instructions are the same, just skip the mini breadboard and jumper the servo straight to the arduino. Assumes you already have the Arduino software installed.
1. Attach Arduino Mini Pro to mini breadboard.
2. Use jumper wires to attach the servo connector to the mini pro via the following pins:
Gnd -> Black wire
Vcc -> Red wire
9 -> Yellow wire
3. Connect your FTDI cable (yes, the same one you use on your makerbot... or a spare) to the Arduino Mini Pro
4. Open Arduino on your computer, load the UnicornTester.pde sketch, and Compile, then Upload to I/O board. If you have any issues, make sure your serial port is configured and try again.
5. Open the Serial Monitor (right-most button on the button bar, Ctrl-Shift-M, or Tools -> Serial Monitor under the menu)
6. Make sure the Baud Rate drop down reads 57,600, and your caps lock is off
7. Put your unicorn through a few manual cycles. Keep your finger on the reset button of the Arduino, ready to stop the test in case of issues
a. Press "u" ENTER
b. Observe as the unicorn lifts the pen carriage
c. Press "d" ENTER
d. Observe as the unicorn drops the pen carriage
8. At first, the motor was only moving the carriage a little - the "rotating joint" on the servo connector needs to have a lot of stiction in it to get good full strokes. I've considered just gluing it in position (with the servo down and the carriage at it's lowest possible point) but I think you want it to have some give in case of jams and for smooth linear motion... so I cranked down really good on the outer nut as follows:
a. press "u" ENTER
b. using pliers, grip the nut tightly
c. press "d" ENTER (pause), release pliers
d. press "u" ENTER (pause) "d" ENTER and check for good travel - repeat steps a-c until satisfied.
9. Once you can manually run the up and down commands with no sticking or issues and tightened the servo connector, proceed slowly through the remaining commands.
a. Press "r" to move the unicorn up and down 10 times (20 seconds)
b. Press "s" to move the unicorn up and down 100 times (3 minutes)
c. Press "t" to move the unicorn up and down 1000 times (33 minutes)
10. To perform burn-in test, reset the arduino (to clear the Serial cache), and press "tt" for each hour of burn in you'd like to run. The Serial buffer on the arduino should hold the characters while each "t" is processed - this has a max of about 60 hours due to the size of the cache.
I did a 60 minute burn in and the motion seems very smooth now. Time to find something to print with my new Unicorn!
I
I use the Arduino Mini Pro for most of my development - its tiny and looks awesome in your projects... but any Arduino should be able to run this code.
I generally solder the mini pro with male pins. Below are the hookup instructions for that. If you want to use Female Headers or a regular Arduino, the instructions are the same, just skip the mini breadboard and jumper the servo straight to the arduino. Assumes you already have the Arduino software installed.
1. Attach Arduino Mini Pro to mini breadboard.
2. Use jumper wires to attach the servo connector to the mini pro via the following pins:
Gnd -> Black wire
Vcc -> Red wire
9 -> Yellow wire
3. Connect your FTDI cable (yes, the same one you use on your makerbot... or a spare) to the Arduino Mini Pro
4. Open Arduino on your computer, load the UnicornTester.pde sketch, and Compile, then Upload to I/O board. If you have any issues, make sure your serial port is configured and try again.
5. Open the Serial Monitor (right-most button on the button bar, Ctrl-Shift-M, or Tools -> Serial Monitor under the menu)
6. Make sure the Baud Rate drop down reads 57,600, and your caps lock is off
7. Put your unicorn through a few manual cycles. Keep your finger on the reset button of the Arduino, ready to stop the test in case of issues
a. Press "u" ENTER
b. Observe as the unicorn lifts the pen carriage
c. Press "d" ENTER
d. Observe as the unicorn drops the pen carriage
8. At first, the motor was only moving the carriage a little - the "rotating joint" on the servo connector needs to have a lot of stiction in it to get good full strokes. I've considered just gluing it in position (with the servo down and the carriage at it's lowest possible point) but I think you want it to have some give in case of jams and for smooth linear motion... so I cranked down really good on the outer nut as follows:
a. press "u" ENTER
b. using pliers, grip the nut tightly
c. press "d" ENTER (pause), release pliers
d. press "u" ENTER (pause) "d" ENTER and check for good travel - repeat steps a-c until satisfied.
9. Once you can manually run the up and down commands with no sticking or issues and tightened the servo connector, proceed slowly through the remaining commands.
a. Press "r" to move the unicorn up and down 10 times (20 seconds)
b. Press "s" to move the unicorn up and down 100 times (3 minutes)
c. Press "t" to move the unicorn up and down 1000 times (33 minutes)
10. To perform burn-in test, reset the arduino (to clear the Serial cache), and press "tt" for each hour of burn in you'd like to run. The Serial buffer on the arduino should hold the characters while each "t" is processed - this has a max of about 60 hours due to the size of the cache.
I did a 60 minute burn in and the motion seems very smooth now. Time to find something to print with my new Unicorn!
I


You must be logged in to post a comment.