Thursday, February 27, 2014

Project CNC - more on build materials

A brief look ahead (what my build looks like right now):
Starting calibration

After adding X-axis brace
 
Stepper Drivers
Initially I thought I'd be able to use L293 chips (dual H-Bridge drivers), since I already have plenty of them. But...I ended up finding out that I didn't understand what “Stepper Drivers” were and how CNC G-Code worked (how information is sent out).

Basically, programs interpreting G-Code send out pulses to control 1.) direction and 2.)distance (in this case - “steps”). Dedicated stepper motor drivers are designed to interpret these 2 pulsed signal to the motors for each axis. With the type mill I'm trying to make that means 3 axis with 2 signal lines to the motor controller for each axis.

Dual H-Bridge drivers are fine for powering and running stepper motors but they do not have the additional circuits to interpret and translate digital signals into power to the stepper motor coils. So, either I would need to program controllers to interpret the signals or better yet - find chips that are already designed to do this.

Surprise, surprise – once you really know what you are looking for/need it becomes much easier to find it.  Long story short – there are a number of different chips and breakout boards that are made specifically to control stepper motors for robotics and computer assisted machining (just what I needed). Some boards have multiple drivers (up to 5 for true 3D milling), different voltage and amperage levels (depending on the size and type of stepper motors you are using).

The most popular seem to be the Easy Driver Board by Sparkfun and the Pololu Stepper Driver boards (I later found out that these boards are used in RepRap 3D Printers and the ShapeOko CNC machines).  These boards control one stepper and each board takes two inputs (direction and distance - in steps) and outputs the signals to bipolar stepper motors on 4 wires. I eventually settled on the Pololu boards, since I was able to find package deals on 3 boards (just the number I would need). These drivers can handle up to 35V and up to 2amps for the motor power supply. These boards work great for the NEMA 17 stepper motors that I have. The design of these boards is open source so you could make them yourself – if you are comfortable with surface mount chips (not me...yet).
3 Pololu Stepper Boards with added Capacitors for spike protection


Received my longer 8mm rods, additional linear slide bearings (originally only had 10 and found that I really needed 12 – 4 for each axis) and a replacement for burnt out stepper driver board (I ordered 2 just in case I burned out another one). Also, I ordered a 24 volt 5 amp power supply (about $16) which also arrived, so I don't need to continue to rely on batteries for the stepper power supply.

Finished my new mount for rotary tool, complete with linear slide bearings.

Finished Mount
I've seen a number of similar configurations but the one I adapted this design from came from searching through the SketchUp 3D Warehouse. Details on the original design can be found at http://mydiycnc.blogspot.com/search?updated-min=2012-01-01T00:00:00%2B01:00&updated-max=2013-01-01T00:00:00%2B01:00&max-results=1 

Stages of making my mount:
MDF board for mount - routed out areas for HDPE sections
 
Mounting board lined up to bearings and taped in place

Temp nails hammered in board to mark spots and ensure glide with no binding

Picture after nails removed


Having to deal with setbacks is a consistent part of life and building/making is far from an exception. Just the other day I thought I was so close to being done when...Oops! I tried to move the frame onto its side, with everything attached, while only holding one section of frame – End Result – the screws joining the 2 sides ripped though the MDF on both ends. End result – I had to cut a new section out of the MDF, sand it down, check dimensions, drill new guide holes to attach piece, drill new holes to attach x-axis support (small mistake = bigger repair). When I was running a cut test I attempted to stabilize the x-axis I ended up breaking the same side again - this time I did not have the extra MDF to remake the section so I had to glue it with epoxy.
Glued repair

I'm still trying to catch up to where I'm actually at now in this build.  Currently my machine is functional but there have been a number of issues that have slowed me down, due to having to solve them.

 I am working to catch up on posting this build process - it is difficult to work to solve developing issues while also writing them up.  I know that my posts are delayed but I am endeavoring to write up my entire journey - especially including the obstacles I encounter and the solutions that I am able to eventually find to them.  

Building and making is fraught with challenges, what seems simple and straight forward at first frequently turns out to be more difficult.  But, that is no reason to give up.  While we all want a successful end result I personally feel it is the journey that is most important (it's searching for the prize that is the adventure - not the prize itself).

Monday, February 10, 2014

Project CNC - Start of Build, Materials


An overview of the materials I've used in my build as well as some the rationale I used for my choices.

General Structure
  • 1/2” MDF – 2'x4' piece was about $6.

Motors:
  • Initially I hoped to use ones from old printers and scanners
    • First problem that I ran into was that most of the steppers I've salvaged were unipolar and I needed bipolar motors
    • Next – motors were could not produce enough torque
    • Last – the steppers that I salvaged were all fairly low resolution (about 50 steps per revolution and I wanted more in the range of 200 steps per revolution).
  • Decided on 3 x NEMA 17 (picked up on ebay – they came with vibration dampeners which was a nice extra).
  • Spindle Motor
    • Old cordless Dremel (10-12 years old). When the battery pack died I removed the motor and eventually remounted it in PVC piping along with power cord and a toggle switch to control direction. The shaft on the motor has a rotary bearing and collet holder already attached. This is the motor I used in my initial prototyping.

    • Expanded to using a knockoff brand rotary tool (Toolshop – picked up on sale at Menards for about $15).


Guide rails (rods):
  • From the start I thought of using the steel rods out of printers and scanners
  • I've kept old ones with the idea that I could use them for something someday (they are precision machined).
  • Only issue was that I found that I had 3 different diameters 6, 8, 10mm.
Decided on the 8mm rods since they seemed to be a common size for linear slide bearings when I did online searches.
Initial Y-axis frame with 8mm guide rods

Searching through my salvaged parts I determined that I needed at least 2 more 8mm hardened steel rods. So...I made a trip to Goodwill (with a small section of rod in my pocket to compare) and purchased a a few old scanners that I found ($2-3 dollars each – plus they contain Cold Cathode Fluorescent Tubes, with the boards to power them, additional stepper motors, glass plates, tactile buttons, as well as other goodies).

Currently I am waiting on some additional 8mm rods that I ordered off of ebay (since I decided to use a full size rotary tool for my spindle I wanted to enlarge the size of the work area). When they arrive I should have a work area of about 8” x 13”.

Linear Slide Bearings:
Due to my using 8mm rods for guides I decided on using SC8UU Linear Slide Ball Bearing Block Bearings (this was based on them being the most common slide bearings for purchase – on ebay on other sites). I did do searches for 6 and 10mm slide bearings but they were less common and more expensive. In addition; I wanted “Block Bearings” since I could secure them easily with screws.
Bottom view of Y-axis - square blocks are the linear bearings

Screw Drive vs/Belt Drive:
Initially I intended to use screw drives for the x, y and z axis – later I switched to thinking about using belt drives with gears and belts from old scanners for x and y axis (after reading an article on ebay). After looking at all the different belts I have (and gaining a better understanding of sizes, pitch, spacing, etc. - which came about from my research on what other people have used, why they used it and what is available) I realized that I don't know what belt came with what gear system – I salvaged them from old printers and scanners but did not keep each set together.

Further research lead me to switch back to using a screw drive, since I could use use regular all-thread rod with some additional elements to reduce backlash. In addition I did the math – 24 turns per inch comes out to about 1mm per revolution and with my stepper motors that is 200 steps per revolution or, about, 200 steps per millimeter which should be plenty good resolution. 

I continue this overview in my next post and then get into the nitty gritty of the build process.

Friday, February 7, 2014

Project CNC - Adventures with CNC milling

My First Functional Prototype
I have been looking at home 3D printers and CNC milling machines since I first heard about them a few years ago (I actually heard about 3D Printers first and in the past year learned about home CNC milling machines). 

I knew I really wanted one, but had to focus on what I wanted it to do.  The list of things that computer controlled mills are able to make is very long as the materials they can make them with is also long.  To approach building one I had to be realistic so I needed to answer some basic questions:
  1. What materials do I want to use the mill to work with?
  2. Types of objects I want to make?
  3. Size of objects?
Price is not really a question - I want to minimize it as much as I can but I'm willing to pay more in the long run (during building process) as long as I'm learning how it all works and each purchase I end up making isn't to high.  Basically, I want to keep price low but I'm willing to start simple and cheap and build on what I've made as long as the basic framework is good and solid.  (I've always taken the same approach to other things - like bikes: as long as I have a good frame I can keep improving it with better pedals, tires, bearings, gears, shifters etc.).
A quick note - if you are looking for a quick start into computer controlled milling machines - as in getting one set up and running with minimal hassle I suggest looking at ShapeOko or Phlatprinter (more expensive).  Kits like these will save you a lot of headache - they are tried and true designs.  If you are a bit more adventurous and willing to purchase individual pieces on your own: Mantis 9.1 CNC Mill (mainly for PCB manufacture) is likely the least expensive entry into CNC milling (as long as you substitute stepper drivers with StepStick and use  GRBL  loaded onto an Arduino board - both of which I ended up doing).

I've already spent the past month building, changing things, and building again (repeated many times with different parts of the machine - and I'm still not done all the way).  I will try and bring my build process up to date on here as quick as I can over this coming week.  So, keep tuned in.

Tuesday, January 21, 2014

The Other Coffee Maker Hack

Whatever happened to the second hack of the coffee maker?
Well, it went in a few different directions as well, before it finally got put to use.

My initial goal was to use the timer from an old coffee maker to trigger the brew cycle of a newer Single Cup coffee maker (since they have no clocks/timers).
Initially I thought that I would be able to power the timer board independently from the power supply from the coffee maker (there is a ribbon cable connecting the 2 boards together and testing the individual connections enabled me to find the power lines).

Running the board with a 5v power supply seemed to work (I also had to hook a resistor as a load across 2 other lines).

I only have 1 solenoid and it is one that I pulled out of some old broken film camera (I don't remember what it was). The solenoid pulls instead of pushing but I figured that I could still work with that so I make a little circuit with 2N2222 transistor to switch on the solenoid (it needed larger current than the timer board could deliver)– it worked but the solenoid did not deliver enough force to trigger the button. On to another way to solve this issue.

Next I thought I could use the one small servo motor I have (since it is low power and the gearing in it allows it to produce significant force. So, I began putting together a board (circuit came from Make Magazine – link) to run my little servo motor fully in one direction using it to press the button on the other coffee maker and triggering it from a similar transistor switching circuit (I needed to change the base resistor to match the current needed by the new circuit). Testing this is when I found that the clock/timer circuit from the old coffee maker was running fast.
Servo Controller and mini Servo
To keep this short – I realized that I was making everything over complicated and it would be much easier to just use the original coffee maker power supply board and just change out the output of the relay to switch the power on for the servo motor control board. So, I cut the traces from the relay to the mains AC power and connected it to a wall wort dc power supply (I connected the plug, with spade connectors, into the wiring for the wall plug going to the old coffee maker). Finally it all works, just need to mount everything in a box and figure out a way to put the servo by the on button.
Coffee Timer, Finished - prior to putting in enclosure
 This is when my wife, Laura, told me that she ordered a new coffee maker! What do I do with this stuff now? 

Well... she had told me that she wants a better light timer to help her get up in the morning – I've been trying to use a cheap commercial timer (with the rotary dial and tabs to set on and off times) but it hasn't performed well (difficult to get it set correctly to current time and even harder to get it to turn on right when you want it to). They are not made to be very accurate, if they were, then using them as deterrents when you are gone would be ineffective (if they turned on and off at precise times everyday a potential thief watching the house would notice since most people are not so precise when it comes to turning lights on and off everyday). 

Purchasing a timer to switch appliances on and off at specific times is much more expensive than a simple rotary timer. I figured that I already have a digital timer that can switch a relay on and off why not just wire the relay to a regular 3 prong outlet and put everything in together into a box with the display on the front. I did it and it works. Note – the board from this coffee maker turns on for 2 hours and then automatically shuts off.
Fully Functional Light Timer
Total cost:
Coffee maker $0 (old one I still had in storage, Goodwill has them here for about $5)
Outlet for box - $0 salvaged from an old appliance
Outlet cord - re-used from original coffee maker
Project Box (from Radio Shack) about $6
Potential improvements as a Wake Up light:
  • simple circuit to gradually increase the light intensity
  • servo motor to gradually turn light towards the head of the bed (same effect as increasing intensity/brightness)
Some stuff I learned from this project:
  • controlling a servo motor (I've done it before with an Arduino but not from simple hardware - helped greatly in my understanding as to how they function and are controlled)
  • Determining the pinout of cables (I always need practice at this, since it does come up a lot)

Final (for now) Bird Bath Heater post

After many redesigns of the heating element I have had no success in melting any ice in the birdbath. I have tested the integrity of the newest element that I made, multiple times, as well as the power coming from the windmill and I can say that the windmill is generating the expected power and the heating element seems to be intact (resistance is unchanged from the calculated and initial measured resistance). It seems that I need either a bigger windmill or even higher gauge (thinner) wire than what I have used so far.

The last heating element I tried was a repeat of the last one only I made it much more compact to concentrate the heat:
Heating Element v3
I put it together using:
I wrapped the Nichrome wire around a short section of wire insulation taken from a hair curler (same one I took the original Nichrome wire from) - I wound the wire as close as I could and then coated it with the RTV silicone. (On the left side of the picture is a tube of RTV silicone (Room Temperature Vulcanizing) meaning it sets and cures at room temperature to become resistant to higher temperatures [this one was rated around 300 degree Celsius)
For clarity, a bigger windmill would mean any of the following or a combination of them:
Larger propeller (bigger swept area)
Bigger motor (larger stepper, treadmill motor – just something with a bigger output)
Higher placement (less turbulent winds)

Other things that would possibly increase effectiveness:
*More efficient heating element
  • thinner wire
  • closer spacing of wire in coil (tighter coil)
  • improve heat conduction from coil to body of element
*Add solar to increase power to heater (likely minimal due to decreased solar radiation in winter)

The windmill itself is undamaged and continu
es to function even after the nasty weather that we've had over the last few weeks. So, I can say the basic design works and I will leave it outside to see how it holds up over the rest of the winter.

I will continue to post over this week to catch up (I've been working on some additional projects)

Monday, December 30, 2013

Project Birdbath Heater - Update

I've survived the Holiday's so far so it's time for a progress update.

I've encountered a few additional problems, ones I anticipated might happen, but hoped would not:
  • Frozen bearing mount - I noticed that my windmill blades did not seem to turn very often, at first I didn't think much about it (wind was pretty minimal) but I finally got curious ad checked.  I found that the bearing that allowed the windmill to rotate into the wind was frozen.
  • Vane on back of windmill - vibration due to wind seems to have worked nuts loose, found vane on the ground under the windmill.
  • Fixing and securing bearing mount (adding set screws) caused the wood to split.
Solution to cracked mount - due to trying to secure bearing with set screws - Zip Ties (they've held up for a week now)

Rudder fell off - screws came loose due to vibration - Zip Ties to the rescue again (still holding up)

New heating element tested (v2a) - using 40 AWG Nichrome wire (18.2cm long)

Cut from steel enclosure from dead Nintendo play station power supply

Before folding closed and sealing with epoxy

The v2a element still did not work successfully. Never really got warm enough to melt the ice.

Newer element, v2b, using 40 AWG nichrome wire wrapped around heat resistant wire insulation harvested from hair curler (or hair dyer - I'm not really sure).  18.2cm of wire wrapped around insulated tubing, then coated with RTV (room temperature vulcanizing) silicone, allowed to dry, inserted into aluminum tubing and sealed with more silicone. This element uses the same length and gauge of wire as v2a but is much more compact (concentrating the heat).  Currently waiting for the silicone to dry and will hopefully test in the morning.


Saturday, December 14, 2013

Project Bird Bath Heater - Windmill Mount Re-Design

Due to the results of my initial test I needed to redesign and build a better mount for my little windmill, one  that allows rotation but is strong enough to stay attached to the pole it is secured to.

I'm hoping that a better idea is to use an actual bearing assembly instead of a caster wheel from an old rolling shelf (at least I think that's what I salvaged it from). My local Ace Hardware carries flanged axial bearings that should be ideal for this. My only issues are: 1.) how to mount the bearing and 2.) how to secure the axle that I need to place inside the bearing (ideally the axle should be hollow so I can run the wiring through it and down the inside of the pole). Well, I guess I also 3.) need to secure the the whole assembly to the pole – so 3 issues to take care of.
Flanged Axial Bearing

Looking up pictures of mounts for flanged axial bearings I mainly came up with cast iron fittings. Not real helpful but then I saw a picture of a bearing used with a spring type shock absorber and it gave me an idea -  If I could drill or bore out a hole in acrylic, or some other material, just big enough to fit the body of the bearing with the lip (or flange) on the edge of the hole – then I could secure it with set screws or glue. I decided to prototype using wood and if it works out I could try acrylic or some type of hardwood.

I had some scrap 1”x3” poplar board so I decided to use that. Below is what I came up with. Initially I was going to use just 2 layers – 1 for the bearing and 1 for the conduit. But, thought about it and decided to use 2 layers for the conduit connection (providing about 1 ½” overlap of the conduit pipe. Initially, I am just screwing these layers together with galvanized deck screws after sealing the pieces with paint. If this works I'll try and get something better like teak to make the mount out of and round out the corners to make it look nicer. But my first objective is to actually get this functioning.
 
Wood Layers Drilled out for Bearing and Pole

Stacked Mount

Rt. to Lft.  Locking ring, Bronze Flanged Sleeve Bearing, Flanged Axial Bearing

Bearing assembly

Bearing assembly with windmill body attached

Bearing Mount, Support Pole, Lynch Pin (to secure to mount to pole)

Lynch Pin Inserted

Windmill Mount all together (before painting and wiring)

Yesterday I painted the wood in the hope that it will help protect it from the elements (and allow the mount to last longer so this idea can be fully tested). Today the paint is fully dry so I can begin assembling the whole thing:
  1. First step is to run the wiring down the pole and out to the rectifier board
  2. Glue (epoxy) the axial bearing into the the wooden mount
  3. Place some type of cap over the top of the bearing assembly to prevent water, snow and ice from entering the pole

Below is a picture of how the wiring enters the support pole:

 I finally found a small plastic box for the rectifier board.  I added a plug so that I'd be able to change heating elements easily (just in case I come up with a more efficient configuration)
Hopefully I'll be able to run another live test tomorrow.