Just spent a few minutes watching the Video's, I hadn't seen these before. Thank you.
The 1st doesn't so much apply to me at this stage as I have the combined board but will be useful if (when) I get separate drivers and a BOB. The second video was very helpful and have followed along and all my Drives (apart from my dead Y..) seem to do what they should.. so I feel the Pin No.s I have are correct.. yay
Thanks Neale for your comments about the heat, I have now taken to spitting on the motors to keep them cool.. Do I need to spit on the PSU too..? Bzzzt
I am taking this to mean that whilst a program is running and a particular motor may be stationary it is not idle.. ie.. it is powered to maintain that position and will be making some sort of noise rather like revving a car engine in a gear on a hill to maintain ... blah.. Like, riding the clutch..! (I'll get there eventually..)
Does 'Tuning the Motor' seems to help with this heat problem though..?
At the end of the 2nd Video a tantalising reference to slaving Motors.. But.. (I thought it would be quite a common practice.)
I am assuming that the slaving has to happen in Mach3 prior to the driver boards so the same signal is going out to 2 drivers but the actual Motors have 2 wires reversed (on one motor) to allow mirror action..? Sounds straightforward..
Re the heating on the motors have you set the drivers to the correct motor current setting? With the first 3 dip switch settings .. Clive
I'm not having a go at you and I class telling you this as helping because the way your going the outcome will be you blow the drives which is wasted money and the motors are just rubbish.
Now most of your problems come from the motors and the fact they are are 6 wire motors with high inductance connected to poor drives.
First you have them wired Full winding which is effectively like using Series winding and this means you should run them at half the motor rated current. Your motors are rated 1A but your giving them nearly twice what they would want wired in series and thats why they are getting hot.
Because of the way steppers work they draw most current when at rest so again they are getting hot because your providing too much current. Decent ddrive do indeed drop current to lower amount when at rest. Yours probably don't.
Next the 14mH inductance means you need high voltage to any kind of performance out of them, 24V just is now where near enough to be of any use so between too much current and not enough volts you have shitty running motors with poor performance at best.
To help your over heating problem then wire the motors half winding. So use Black & Yel and Red & White cap the others. This would be like wiring in parallel and use the full amp rating of the motor.
The Road runner G-code is done in imperial units so if your using metric units then the moves will be tiny and can appear like judders. If the G-code says 1 it would mean 1 inch but your in mm so 1=1mm hence the small size and tiny juddery moves. If you scale the axis by 25.4 you'll see a difference in the motors. (Remember to reset the scale factor)
Slaving is completely done in the software and you DONT wire the motors in mirror wire them all the same.
If you have motor going wrong way then you can just change the active high/low pin state in motor outputs.
Thank you for your response, (I have been a bit un-well for the last few days so apologise for not responding.)
Taking my highlighted comment, I wasn't having a go.. it was more about understanding more about the motors so when it is time to purchase more suitable ones I have more knowledge.
eg : I could pay £5 for my favourite Muller yoghurt's from Waitrose or £2 from ASDA.. Same product. That was my point. VFMoney
With Motor and driver choice, 'Optimum' seems to be the main criteria here, not too big and not too small, but just the right one. There is a natural tendency to go 'bigger' if in doubt it seems..
I will gratefully try and learn from your advice but your 'rubbishing' the hardware just based on price is not helpful. You could equally argue that 'New' hardware is better than 'Old' as progress tends to improve things (not always the case..)
On my bench setup so far, I have 3 motors running and am trying to figure some way of checking the non working 'Y' axis to see if the problem is with my stuff. (Longs are just ignoring my requests for a replacement board..)
As per my heading for this post, I have limited knowledge of what 'normal' is.. which is what I need for my baseline..
(aside) I would love to visit someone's working machine if they would let me (I am near Southend in Essex) as that could answer many questions.. anybody?.. pls.. Will bring BEER.. (No, Yorkshire is too far..)
I have spent much time trying understand what effect having UNI/BI polar, series/parallel actually has.. I have seen the graph of 'speed versus torque' but in this hypothetical state I am currently in, it does not point me in any particular direction..
I feel I have to actually build the beast to then see where my weak points are. I have always learned this way and do not mind spending a bit of cash for my education.
If 'Hot' running Motors are not the norm them I have to assume that Neales motors are not set to their optimum.. I have no idea what 'overheating' means in this scenario.. I accept the motors generate heat whilst working.. Too hot to touch..?
I shall try your 'half winding' suggestion.. I assume I should not damage anything..? What results should I expect? Will it lose torque or rotational speed.. or just lower temperature.?
I tried the roadrunner in Imperial and it didn't like it at all.. It seems to be quite happy in Metric.. But again.. No baseline..
I did find a very useful Youtube video from MachMotion describing slaving (as you say) all done in Mach3 and he wasn't persistently saying 'I am now going to go ahead and....' which seems very popular with out US cousins in their vids..
Would it help if I started a 'Build' log to show my Frame and then perhaps solicit opinions on the best Hardware..? I have done some designs in Sketchup but would rather do a little video viewing the actual build but am unsure as to the best way to post it.. I had tried to put up an Avatar but even my small jpeg was about 5 times too big.. advice please..
A few odd comments...
My motors run hot, depending on how they are being used. For example, a while ago I was cutting some 3D profiles which meant continuous running in the X direction (back and forth) for maybe 6 hours and occasional sideways steps in Y (at the end of each X pass). The Y motor became warm but not hot; the X motor was too hot to touch although it passed the "spit" test. I was a bit worried about this but doing some googling came up with the answer that stepper motors should be able to run like this. Given the capabilities of my machine, I could probably have reduced heating by reducing the current and still had enough torque available, but it didn't seem to be a big deal so I left it, and it did a number of those runs apparently without any harm to anything. Other cuts such as profile cutting out parts where both axes run maybe 50% of the time on average mean that neither motor gets that hot.
As for windings/current/torque, etc, it's all a bit complicated and some of it is not that intuitive, even if you've read the books. I'll try and hand-wave it, to see if that helps. For a given motor, torque is developed proportionally to the current through the winding(s). Double the current, double the torque. Torque also depends on how many turns of the winding the current goes through. Double the turns for a given current, double the torque. In effect, your 6-wire motors have two windings, each having a connection to the ends and one to the middle. For each coil, you could think of it as two windings in series, joined internally and with the common point brought out. So, based on my earlier comments, if you put some fixed current through the whole winding, you will get X amount of torque. Put the same current through half the winding (connect to end point and centre point) you will get X/2 torque. So why would you ever want to do that? The problem is that all the above is talking about "steady state" current, some time after you apply current and things have stabilised. When you first put a voltage across a coil, current will start to flow, but it takes a while to build up. It doesn't start flowing at full value immediately. How slow or fast it builds up depends on the inductance of the winding. Inductance is a bit like inertia - try pushing a trolley with a given force and it will start to accelerate. Put a load on the trolley, increasing its inertia, and the same force will make it accelerate more slowly. You might get up to the same speed, but it takes longer. Same with a stepper motor winding and its inductance. You are sending a series of pulses to the motor, and on each pulse you want the motor to turn to the next step. Low inductance coil/winding - current and therefore torque builds up quickly, motor moves to next step quickly. High inductance winding - current and therefore torque build up slowly and motor takes longer to respond. Put a load on the motor, and the low inductance version will be able to run faster as it builds up the torque on each current pulse to move the load more quickly; same load with a high-inductance motor and if you don't give it enough time on each pulse of current to build up enough torque to turn the load, it's going to sometimes fail to turn (missing steps) or in an extreme case, sit there vibrating a bit and not turning at all. That's why the recommendation is to use low-inductance motors. With a 6-wire motor, the best compromise is probably to use half the winding, which means only half the maximum torque, but also halving the inductance so you can keep up the stepping rate. With an 8-wire motor, you can choose to put each pair of windings in series (high inductance so limiting speed) or in parallel - low inductance so higher speeds, but you will need double the current capability from the power supply and driver as you will be putting the same current through each winding. The other way to get speed up is to increase the power supply voltage. Double the supply voltage and (roughly) you double the rate of rise of current. So you get to the final value more quickly on each pulse, so reach the torque needed to move the motor more quickly, so can run faster. If you read the data sheets, you might well see that a motor is rated at a nominal 4V but in a practical system, the power supply driving that motor will be at 65V. That is purely to make sure that the current rise is fast enough to develop max torque. The driver sorts out current limiting and so on to make sure that the motor is not overloaded - that's what the current setting on the DIP switches does, and you would typically set this to around the max motor current rating and ignore voltages. So the typical cheap drivers with their 24V supply will not allow you to run a motor as fast as you could with 48V or 70V. However, the higher voltage drivers and power supplies cost more.
As I say, that's all a bit hand-waving and there's plenty of theory that I've skipped or simplified, but having that kind of picture might help put some of the advice you've been given into context. It's all built on a sound technical background! Higher speeds come from low inductance motors driven by high voltages and drivers to suit; cheap kits have high inductance motors, low voltage supplies, and sometimes rather flaky drivers built down to a price. Tends to lead to disappointment all round!
Thank you Neale, I actually understood quite a lot of what you say even on 1st reading but I will refer back to it as my knowledge hopefully grows and it will make more sense.
I don't think I will ever truly understand electronics, I would love to but I just don't think my brain is wired that way.
I particularly like your use of Analogies (induction) and would ask you to try and assist me with one..
I am in a Car driving up an endless flight of stairs, step by step..
I (my brain) is Mach3 sending information to my hands and feet (Gcode).
The Engine (Stepper motor) is on and I am in 1st gear (Manual gearbox) and my front wheels are sitting on a step while the rear wheels are in-between steps sitting on the nosing of a tread. I am 'riding' the clutch to stop me rolling backwards.. ie the stepper is using ('Gas') electricity to hold it's position..
I wish to move up the steps so I need to send information to my accelerator foot to give just enough Gas (pulse) to move the front wheels up to the next step.. (a line of gcode..) and, Stop.
The variables are many.. Do I have a large Car with a very small engine.. or a Veyron FU..
How good is my clutch.. How good is my clutch footwork..
What fuel am I using, Diesel will generally give better torque than petrol.
Do I have an Old Car that has Carburettors or a newer one with Injection and engine management systems..
I am trying to equate this analogy with the path through from Mach3 to Motor..
1st problem to me is making sure all the separate components actually work.. and then, are they compatible with each other..
Assuming they all are & do, then joining all the wires to their correct home seems well documented and reasonably straightforward.
Configuring the system I think comes next..?
If continuing with the Car analogy then this system seems to relate back to Model T Ford era where each element has to be set in the correct order, Ignition on, fuel pumped, magneto magnetoed (no idea..) apply Choke (and I'm sure, lots of other jobs) prior to starting the Motor.. Then, as you trundle off, modifying things as you go..
(Rather than modern Cars with their 'Key In and Go' simplicity.)
I feel this is similar to the complex 'setting up' process with CNC Machine Building. Is this reasonable?
I have run out of Analogies but perhaps you could offer (or direct me to) your particular story of how you chose what you did and why and how you the put all the pieces together.
I am concerned that many of the Build Logs are quite old now and I don't know if new products/knowledge have superseded them..
Are there some critical measurements that can be proffered by newbies like myself.. Like, Table size, weight of Gantry or ? to assist the Elders in guiding us to relevant information..
Thanks again Neale for your help.
Might want to switch which motor is which and see if you have a dead board from the maker (has happened before) or if you have a multi-meter checking you are getting good voltage. On the Heat issue, from the voice of experience as Jazz, JohnS, Andy, and a host of others (including Jonathan who does not always explain why) who helped me pointed out that all in one boards have issues (I have let the smoke out more than once). I currently run a PMDX-126 board and the voltage is right at 67.5V most times (Supply to the shop changes by about 1 - 1.75V and that affects the Voltage at the machine).
Heat from my experience is more of an issue at low voltage than when running at or near max voltage. It takes over four hours run time these days to get my machines motors to more than just slightly warm. I will let Jazz and Jonathan and others explain the importance of Voltage and Current and why running to low leads to heat issues.
Good luck on the build and the advice you are getting here many folks pay money for. -MichaelLife is Live it
CAD software VIACAD Pro v9 (Beta testing x64) Also Aspire v8
CAM Software Aspire v8, PhotoVCarve, CamBam
Machine: Custom built see build log: http://www.mycncuk.com/threads/3661-...Second-machine
Work with Solid Surfaces, Acrylics, Woods, Foamboard.
A few quick words of background so you know where I'm coming from, and how much or little to trust anything I say...
I built my first CNC router a couple of years ago. It's essentially the JGRO design - comes from the US, built of MDF, uses cheap threaded rod as leadscrews. And those are the good points! It's bendy, not very accurate (i.e. difficult to set up accurately), distorts when it gets warm/cold/dry/moist/there's an R in the month, etc. But, the materials to build it were cheap, I cut my own Delrin anti-backlash nuts, made my own flexible couplers, etc, all in the name of keeping costs down as I didn't know if I was going to have much use for it after one specific job for which I built it (and which was a success). However, I struck lucky in one area and bought decent steppers, drivers, and power supply on the grounds that I had a sneaking suspicion that I would replace it with something better and these would be reusable. I have a background in electronics, mechanical engineering, and software. A useful combination, so playing with CNC stuff is up my street. I had already built a 3D printer, but I have no experience of CNC in any kind of commercial context.
If you don't mind, I'll try to walk you through the process of going from a design idea in your head to CNC cutting it without using your analogies and see how it goes.
You want to cut a rectangle of MDF, say, which is 25mm by 50mm. Start with a CAD drawing package. Draw a 25mm x 50mm rectangle, with the bottom LH corner at (0,0). That location is not essential but it's a common choice and if you are consistent about this kind of thing, it can help avoid mistakes. Save the drawing in .dxf format, which is probably the most common format for CAD drawings around. So, that's the design done and stored. Now to generate a toolpath. You are going to cut this with a 6mm diameter cutter, so the toolpath is going to be a rectangle with its bottom LH corner at (-3,-3), and 31x56mm along the sides. Draw this on a piece of paper and you will see where these dimensions come from. However, you don't need to do the arithmetic as the next piece of software, the CAM package, will do that for you. I use VCarve or Cut3D from Vectric but there are plenty of other options, some of them free. Start the CAM software, and load the dxf file from earlier. Somewhere in the software you will be able to specify the tool diameter that you want to use, so the software knows how far outside the line to generate the toolpath, how fast you want to cut, etc. I'm skipping a bit of detail about how this is done, but I want to concentrate on the principles and not get bogged down in what is often software-specific detail. So, the CAM software calculates the toolpath, essentially a list of coordinates to move to. Something like, "raise the cutter above the work, move to (-3,-3), lower to cutting depth, move to (28,-3) at a speed of 5000mm/min, move to (28,53), ..." Again, there's a little bit more to it, but that's the core element. This toolpath will be written as gcode which is a largely machine-independent language which works in real-world coordinates like these. However, every machine has a slightly different dialect of gcode, so CAM software includes a post-processor which takes the basic toolpath and creates a machine-specific output file. Somewhere in the CAM package there will be an option to choose which machine is the target. For us, the usual options are Mach3 or LinuxCNC. The rest are generally intended for commercial machines with their own controller software. Hit the button, and you will end up with a gcode file which will have the commands to move the tool, plus commands to start the spindle, set the coordinates to metric/imperial, or whatever. You can look at gcode files with a text editor, and even edit them if you are brave enough. Remember, at this point the gcode commands are instructions to move the tool in real-world units (metric or imperial). Now move to the machine, and fire up the machine control software, Mach3 or LinuxCNC, according to choice. [leaves small pause for religious arguments about which is "best"...]. The job of the machine control software is to read the gcode file in mm, say, and turn it into a set of pulses which will eventually drive stepper motors. It does all the clever things needed to synchronise movement in X and Y when you are cutting diagonals, going round curves, etc. What Mach3 needs to know is how many pulses move the tool in X, Y, and Z (may be different for each axis, but it can handle that). For the sake of argument, you have a 10mm pitch ballscrew, so one turn moves the tool 10mm. The stepper motor has 200 steps per rotation, but the driver is configured to use x8 microstepping. That means that it does some clever things with the way it drives the motor so that effectively the motor now has 200x8=1600 steps per rev, so a finer resolution. But one rev of the ballscrew is 10mm, so one step is 10/1600=(something but I can't do the sums in my head) mm. Mach3 and LinuxCNC both have a way to tell the software what all these numbers are for your particular machine. I use LinuxCNC, so I tell it the leadscrew pitch, number of steps per rev of the motor, and the microstepping ratio. Mach3 does it slightly differently, I believe, but the principle is exactly the same. So, the software now knows how many steps are needed to move the tool a given amount. It takes each gcode instruction in turn, looks at how far the tool has to move, calculates the number of steps needed, and for each step it generates an electrical pulse at the parallel port on the appropriate pin. This connects to the input of the driver (probably via a breakout board which is only a glorified junction box at this level of analysis) and the driver acts as a giant amplifier, turning the low voltage pulse at its input into a walloping great pulse of voltage and current at its output, carefully monitoring current to avoid overloading the motor, etc. Remember, each pulse from Mach3 moves the motor by one microstep which moves the tool by 10/1600 mm. The faster the pulses, the faster the tool moves.
And that's kind of where we came in. Whatever the machine capabilities, the CAD and CAM stages will be more or less the same, and the gcode pretty consistent. However, Mach3 or LinuxCNC is where the software and hardware interact, and why the software has to know about the hardware characteristics. Then, if you lie to Mach3 and say that the machine is capable of 2000mm/min movement but you are using underpowered steppers/drivers that can't run at this speed, the steppers won't keep up with the pulses being sent to them, the tool will not be where Mach3 thinks it is, the workpiece will come out the wrong size, and if you're lucky you won't actually break anything. One of the tuning operations when you set up a new machine, or certainly a new design, is to actually test it, and find out just how fast it will go without lost steps or other nastiness. Use underpowered steppers and the machine won't run as fast, although up to a point you can compensate by just using slower cutting speeds. That's what I have to do with my own machine; ideally I wanted to cut some MDF at about 5000mm/min but the fastest I can go without problems is only about 600mm/min. That means that everything takes nearly ten times longer than it should. It's worth trying to get it right...
Oh, and my new machine currently under construction is in steel, welded frame, much heavier and stronger. I've learnt something from the Mk1, anyway.
RE: my dead channel.. I have swapped the motors about and they all seem to work fine but I don't know enough to start poking Testmeter cables into the Motor outputs on the board.. I was kinda hoping that it was a software glitch or that I hadn't turned a switch on.. (Fate has a habit of doing this to me when I dive in to some new project.)
I see your company does Solid Surface.. I have been involved in that for many years (mainly Kitchen Worktops and showers) but was involved in casting for a while. Scott Bader stuff.
I hope I do not come across as ungrateful because I am most grateful. I do pass on the favour by teaching Guitar Building for free,so what goes around, comes around.
Neale, wow.. thanks.. that must have taken a while..
Taking your first revelation of your own Low cost build... fantastic.. Exactly what most of us newbies are doing.. It seems almost mandatory to do 2.. and I am perfectly prepared to do that.
I too tried using regular Threaded Rod and quickly realised it was the backlash lag that was the killer.. I accidentally tripped over the '2 nuts with a spring washer between them' trick but I had decided I liked the OpenBuild OX timing belt option rather than Threaded Rod so that's the route I shall be taking.
At the moment I have built the frame with a gantry and all seems OK. It moves easily with no 'slop' but have not yet mounted the motors.. They are still on the bench in the house and will not be moving them out to join the Frame in the workshop until I am happy I have it set up correctly.
Your description of the Cad and CAM is (will be..) very very helpful but I am not there yet.. Possibly by a long chalk if I can't get my motors running correctly. You say you bought good Drivers and Motors...
May I ask what they were and what size your original table was.. (Are you currently doing a Build Log?)
People seem quite reluctant to give these details.. Is it because you don't want to appear to be recommending them in case it all goes wrong? I could understand that.. 'You told me to buy these...'
If I go to Zapp or CNC4you to buy my components then I assume I will get the support and design help that I don't get from China Direct..
By Davek0974 in forum 3D Printers & Machine BuildingReplies: 32Last Post: 27-03-2014, 11:19 AM
By WandrinAndy in forum General DiscussionReplies: 22Last Post: 03-10-2012, 07:05 PM
By Jay in forum General DiscussionReplies: 3Last Post: 21-01-2012, 08:08 PM
By ptjw7uk in forum General DiscussionReplies: 18Last Post: 29-11-2009, 06:21 PM
By irving2008 in forum Machine DiscussionReplies: 6Last Post: 25-10-2009, 10:34 PM