|Archive: Servo «3D Print» BFB Touch|
Operation ??? Monkey
Do you have any siggestions for a powder/liquid mix? Send it to me and I will try to get the materials and do a test print:
Operation Muscle Monkey
No tests yet, but I bought some Benefibre/sugar mix at the local gym. Five spoons full go into a glass of water if you want muscle. As a prototypical geek, I do not need muscle, and so this will go into starch (potato starch for now, because corn starch is harder to get in Germany). I will hopefully get a test going tomorrow - time permitting.
Operation Japanese Monkey
Ah, a new mixture. Dental plaster plus rice wine! So far, the results look somewhat promising. One of the sample blocks has much less bleeding than the rest. I wonder if the model will hold up (but I need to be patient for another hour).
Operation Inked Monkey
Interesting! I let the Gin cartridge in the printer over night and it emptied completely into the plaster, leaving an unsightly blob of Juniper juice and dentistry devices. It seems the alcohol has destroyed the nozzles and found its way out through some broken seals. Bye, Gin cartridge.
Now, I only had the black in head left, so I tried it on the dental plaster. The result is the same crumbly mass that I observed using other powders with ink. Ink is not an optin (and neither is Gin for these HP cartridges)
Operation Yellow Monkey
Result: I managed to solidify the plaster and get some shape! Even though this looks not much like the monkey, I did generate the rough shape. So what went wrong? For making tooth imprints, the plaster needs to be evenly mixed with the water within 20 seconds. To make that easier for a plaster that needs so little water, the manufacturer add flow enhancers. Great news for dentists, bed news for us: the flow enhancers make the plaster bleed to all sides like crazy (many millimeters!), ruining our shapes.
Nevertheless, Yellow Monkey is a great success, proving that the concept is good and the printer actually works.
Operation Drunken Monkey
I bougt some medelling plaster at the store and loaded the cartridge with Gin (Vodka is recommended, but I only had Gin - sorry). While the Gin was probably just fine, the plaster was horrible. It required litres of water, and the packaging clearly announced 24 hours dry time. Doh.
Result: let's not talk about it... .
Operation Black Monkey
I did a few tests on paper until I was sure that everything is fine. Then I loaded the machine with plaster (only to find out that I bought the worst plaster ever with up to penny-size rock-hard pieces in it) and sliced the Blender Monkey into 10x10x8mm. The file was copied onto an SD card and printed through the Arduino firmware.
The final model was too weak. This is probably due to multiple factors. The plaster was bad, the ink saturation was too low, ink itself is a bad idea (Vodka is better), and of course I lacked the patience by digging the model out after an hour instead of waiting until tomorrow.
Result: the monkey head was there and had a blob shape, but then crubled into a million wet pices. Ooops.
Apr 21st 2013: Math Time
After another failed attempt (Alcohol and plaster of Paris), I guess I have to do some math again.
Phew. Now, I did test 60 drops without success, meaning I am still doing something wrong.
The printing process:
So I thought that a nozzle on my first print head died. AFter exchanging the head, the same nozzle did not work - huh? After checking the carrier, the chips, the connectors, I finally found the culprit: a hectic cut while soldering close to already wired connections. See the picture on the left.
Apr 17th 2013: This is my Interpretation
I just finished the essential commands for the 3dp file reader and interpreter.
All the slicing work, compilation, and optimization is done in the PC software where most of the computing power is available. Printing data is then stored in a proprietary .3dp file format on an SD card. The Arduino interpretes this file and sends the commands to the hardware interfaces. No PC is needed during printout.
Slicing and writing the .3dp file is next.
TODO: the ink cartridge need a cleaning and capping mechanism
Apr 16th 2013: Hooking it Up
Today was the day when all the hardware came together. All motors are moving, all end stops are signaling, all buttons are working, and all pixels light up. The firmware grew, and I can run tests on all those functions. Now the art will be to control the motors in the order required to generate a 3D model... .
Apr 15th 2013: Menus and Buttons
I replaced the push buttons on the panel, and hey, everything is working just fine. So I proceeded to recreate the firmware from the code samples I wrote over the last weeks, giving me an About Screen and a tree-style Menu Structure. Now I have a 90's telephone style menu to access test routines and whatever else I need to set up the machine.
Apr 14th 2013: Mounting the Panel
I had a few minutes today to mount the control panel and test the i2c command set, only to find out that the buttons I ordered were closed contact, opening when pushed. That won't work in a matrix, so I'll have to replace the buttons tomorrow. Luckily, I can get them locally.
I did fix many issues in the laser software, hoping that I will be able to cut complex parts again soon.
Oh, and while sourcing, I found spring-loaded contacts that are relatively cheap and will make for a great connector for the HP 45 cartridges (or whatever other cartridge comes my way).
If anyone has more information on the Xarr 128 cartridges, please contact me. Thanks!
Apr 13th 2013: The Control Panel
I lost the dongle to my laser cutter software. It took my three days to get that thing back up running again, and it is still not working all the way. At least, I managed to cut out parts for the control panel.
Originally, I wanted to provide just a web interface and not have any controls on the machine. But having a display is fantastic for debugging and a requirement for stand-alone operation. I decided for the LCD03 because it can also read a keyboard matrix and have an i2c bus.
Apr 8th 2013: Firmware Command List
I add the list of firmware commands that will be supported in the first version here.
Note: layers should offset the swash and/or use overlapping swashes to avoid weak vertical structures
Todo: get dimensions of printer in relation to end stops. Implement remaining firmware functions. Implement test pattern files.
Apr 7th 2013: Calculating step size
I need to know how far each axis travels when I send it a stepper pulse. So here is my formule:
Now about the printhead. It has 96dpi and 12 nozzles in a row, so:
And what about the pistons? Now that one is easy:
After all that math, I will test my calculations tomorrow - yep, seems to work.
Apr 7th 2013: Adding End Stops
Stepper motors are neat, but they have no idea about absolute positioning. They need to be put into a reference position once, and from then on, they will drive exactly where we need them (assuming we are not losing steps).
Here is my solution for End Stops. The X End Stop is mounted on the left gantry element and interrupted by a cardboard tab. The Y End Stop is on the main chassis and interrupts before the gantry hits the physical end.
Connecting the photo interrupter GP1S53 is very easy: pin 2 and 4 connect to ground, pin 1 onnects via a 330 Ohm resitor to +5V to drive the LED. Pin 3 connects to an Arduino input with the PULLUP on. Uninterrupted, the Arduino pin will return 0, but as soon as the tab interrupts the path of light, the pin will go to 1 and we found the home position.
Apr 7th 2013: Setting up Workshop
The printouts on the paper were made by my machine. It's shakey and all, but I am getting there.
Apr 5th 2013: Missed me?
OK, in the mean time, I received the PCBs for my Arduino Mega breakout board.It's a collection of headers that go to the steppers and come from the end stops, an i2c header for a display, a full size SD card holder with level converter, and of course the darlington array to control the ink head nozzles. Everything is Through-Hole for simple soldering.
And to my own surprise, everything just works! The PC Power Suplly connects nicely and runs everything from Arduino to steppers to ink head. The X and Y motors are connected and work fine. And of course the Ink Head works as well. So I managed to print a few lines of text onto a paper that I taped on the build chamber.
I also managed to finally find the missing 2.5mm bolts to mount the Z Drives, but I am unhappy with it. The torque will eventually rip the mounts out.
Note: PCB needs room for beeper, status LED, reset switch, i2c pullups, smaller PC plug. Z Motor mount needs to be reworked.
Mar 6th 2013: Moved. Electronics.
After carefully weighing my choices, I ended up redesigning the ink cartridge driver board as well. My version requires four CPU pins and no extra power supply using only two chips (or one in SMD). I received the chips today, and I will hopefully solder and test the board tomorrow.
Mar 1st 2013: Moving, and Moving On
In case you wondered: I moved to another city and we are not online yet. Still, a lot happened around the machine. No pictures though for the lack of bandwidth.
So first of all, I redesigned the entire moving assembly of the machine. I threw out all the nuts and bolts and glued the parts instead. But a lot more needed to be changed, so instead of fixing here and there, I started from scratch. The original design must have been for different stepper motors. Everything was interfering with everything else. The roller motor scratched on the Y rod. The X motor had different mounting holes and would not fit in the space alotted. The Y motor did not fit either.
In the new setup, I also redesigned the X carriage to match the cartridge holder. The new Y carriages are much more sturdy, and the gantry no longer collapses under the pull of the belt tightener - which I redesigned as well.
I kept the body (for now) and assembled everything. All motors, pulleys, and belts are mounted and connected and work sufficiently well.
The stepper drivers are connected, but not yet mounted. The end stops work with the microcontroller, but are not mounted either. I put an SD card reader together on a strip board that I assembled and tested this afternoon.
Feb 19th 2013: Slow Progress
Today was a busy day - not for Pwdr though. I did have time to assemble the ink carrier and discovered an issue that will throw me back. The wood I am using is too soft in the 4mm variant. Tightening the screws squishes the wood and nothing fits right anymore.
There is another issue: some steppers don;t fit. This may be due to false transfer to parametric files, or because the steppers are a different than the original ones.
In any case I have to redesign the 4mm oarts to make the steppers fit better and to configure them for glueing instead of bolting together. To make everything correct (the German gene), I will have to enter all external parts used into teh CAD system/
Feb 18th 2013: Back at Work
I managed to sand down one piston to fit into the box. The box is too high and the lead screw does not push the piston all the way to the top. This need to be fixed for the next version for easy part removal and cleaning.
I ordered a few more electronic parts, mainly wires and a 3.3V converter for the SD Card socket. Oh, and two new tooth belts as the original ones were much too short.
Feb 12th 2013: Arduino and Steppers
Today I had time to play with the Arduino. I ordered the Mega 2560 as mentioned in the BOM, a model that is already pretty outdated agin. Time flies when you're having fun... .
I hooked up the Arduino with a Dange Shield and an EasyDriver to my Mac and started the Arduino dev environment.
Kudos to the Arduino developers. Everything worked right out of the box and pretty much exactly as described. This is something I am not used to as a software developer ;-) .
So what do we have so far: CPU, buttons, sliders, and a happily turning stepper motor. Still ahead though is the SD card interface (I am somewhat reluctant to buy a shield for such a minor layout), more buttons, a display (the good old 2x16 standard), end stops, and of course the ink cartridge control.
This particular cartridge fires 12 nozzles, one at a time at 5us per nozzle. Using a 74154, we can select each nozzle using only 4 pins plus one pin to enable the brint head (the output must be inverted!). We can further reduce the number of pins by using a shift register, shifting out the pattern, or even just shifting out a 4 bit number (3 pins).
Feb 5th 2013: Building a Piston
Click here to see how the pistons are built.
Click here to see how the body is built.
Feb 4th 2013: Cleaning parts
You saw the parts right after they came fro the laser in the picture above. The scorching comes from the laser buring the glue between the layers of wood. The picture on the left shows a sample part after and before cleaning with sand paper. I use my lunch break to clean a few of the parts.
Customs let my stepper controllers through. Hooray! The stepper motors will be sent tomorrow, which will then complete all my orders so far. I know already that I will need longer timing belts, but I won't order them until I know exactly how long.
Feb 3rd 2013: Design decissions
Traveling by train is great. I used the time to draw a bunch of plans for a next version, including gutters, parts distribution, a removable controller, a powder collection box, and removable ink tanks. A man can dream, right?
My other research was more about the HP45 cartridges. I found flexible PCBs in the Farnell catalog, and I wonder if it would be possible to create a daughterboard for five-cartridge ink head X-carriage, as they are unavailable from HP.
Feb 2nd 2013: New Stepper Drivers ordered.
Being a very impatient person, I decided to look for different stepper drivers instead of the SparkFun EasyDrivers. I found the Pololu A4988 drivers at Watterott which are in stock and have even better characteristics than the EasyDrivers. The 16 microstep setting may proove invaluable since my belt gears have a larger circumference.
Feb 1st 2013: Laser Cut Parts
WIth a little extra time on my hands, I managed to laser-cut all required parts. The picture shows the results just as they come from the machine. They still need to be cleaned and sanded. I used the wrong kind of wood: the glue is giving the laser a problem, resulting in a slow cut and charring. With a different sort of wood, this could be much reduced. Taping off the back will eliminate the smoke residue (next time).
Acyllics don't have this problem.
This is the file I used. My beam radius is 0.36mm. I set my cut offset to 0.20mm, plust the 0.18mm offeset as mentioned in the file.
Jan 31th 2013: Testing the design
Jan 30th 2013: No new part deliveries
I test-cut some pieces on the laser today to figure out the beam width (it's 0.8mm - must replace lens and mirrors, I guess). Now I can calculate the bearing holes for a perfect fit.
I also added order numbers for ink cartridges and carrier assemblies. Seems like some of the stuff is made out of unobtainium. I'll have to salvage these from old printers. The list is on the last Blog page.
Tonight I managed to get the remaining parts into OpenSCAD and render them out as DXFs. Again, these are still untested, cut at your own risk.
The files are licensed under Creative Commons Attribution-NonCommercial 3.0 Unported License (CC BY-NC 3.0).
Jan 29th 2013: New parts
I managed to get the hopper and the piston into OpenSCAD. Five more designs to go and I can laser out the parts. Yay!
Jan 28th 2013: Parametric CAD Files
The material that I will be using for the carriages is only 4mm think instead of 5mm. Instead of reworking the files in QCAD, I programmed the layout in OpenSCAD. OpenSCAD ican create CAD files using parameters. For example, I can change the thickness of my material, and OpenSCAD will adjust all drawings to accomodate for the change, yet producing the same final parts.
Therefore, the first lines of the OpenSCAD file contain a list of parameters that can be changed to reflect the different bearing sizes, bolts, and materials. The file is then rendered and output to DXF.
Here is the file for those who would like to try it out. I have not cut anything yet, so there may be errors in the layout. BTW: this is also great if you can not get any metric material. Just change the first few lines to imperails measurements.
The files are licensed under Creative Commons Attribution-NonCommercial 3.0 Unported License (CC BY-NC 3.0).
Oh, and gears, belts, axes, bushings, and bearings arrived.
Jan 27th 2013: Planned Improvements
Well, it's the weekend and none of the parts arrived yet. So I decided to make a little list of planned improvements by priority:
Jan 24th 2013: Ordering Parts
I ordered all required parts today. The original part list contains parts that are not available in Germany or somewhat uncommon, so I changed the BOM and moved to local suppliers whereever possible. I managed to get everything I need, but I will have to modify the CAD files to accomodate the new sizes of the parts.
Here are the major changes:
Jan 23rd 2013: First Steps
The first version of the printer will be a close copy of Pwdr as it is described on the page. In later versions, I plan to change the ink cartridge to a higher resolution one, eventually with five colors (CMYK plus transparent).
Today I downloaded all resources from the Pwdr website. I had to convert the SVG files to DXF, so I can laser-cut the part
(c) 2012-15 Matthias Melcher