A better way to get 400 steps/rev...
Roman Black - Aug 2002 This concept is Hippyware Here is a little-known method for half-stepping, that has great advantages over conventional half-stepping techniques: * more torque than any normal half-step system * equal torque on every half-step * equal total current on every half-step * excellent anti-resonance properties -------------------------------------------------------- First the 2 "normal" ways to do half-stepping. Understanding that full steps require 4 steps to a complete "cycle" giving 200 steps/rev, and that all forms of half-stepping must have 8 steps to the same complete cycle (400 steps/rev). Here are the stepping systems shown as currents through the 2 motor phases A and B. The current can be from 0% to 100%. These current % tables are valid for both unipolar and bipolar motors alike. -------------------------------------------------------- First is an example of full stepping, using the current % table: Full step (2-phase on): Step A B 1 +100 +100 2 -100 +100 3 -100 -100 4 +100 -100 -------------------------------------------------------- Now the simplest form of half-step is "crude" half step as done in many hobby stepper apps using the most primitive circuits. Crude half-step is the only option when you don't have fractional currents and the circuit can only perform on/off coil switching: Half-step CRUDE Step A B 1 * +100 +100 2 0 +100 3 * -100 +100 4 -100 0 5 * -100 -100 6 0 -100 7 * +100 -100 8 +100 0 This crude half-step system has many problems. The steps marked with the * are the same as the fullsteps in the table above, and have TWO coils on. The other half steps only have ONE coil on, and the resulting problems are low torque in some steps and excessive current consumption in other steps. Unfortunately in the real world the pull-out (rotating) torque is only as good as the weakest link which is the lowest torque step. Half-step CRUDE score: worst torque = 1 average current = (1+2)/2 = 1.5 max current = 2 (if it stops on those steps!) torque compensated = NO -------------------------------------------------------- The second form of half-step system is the Torque-compensated half step and requires a driver that can have 2 different current levels for the whole motor (and the ability to turn phases on/off of course). This can be done with ONE current adjustment for the whole motor. With TC half-step the goal is to keep the torque for all steps equal. As the 100%,0% steps are already running a coil at full current the only way to equalise torque is to REDUCE the current for the steps where 2 phases are on. ie; you can't improve the weak steps, so you make the strong steps weak too. The math model for TC half-step shows that phase currents of 70.7% in each coil, through both coils, will give the same torque as the weaker one phase on steps. With real world motors the fiqures are quite different, and are around 60% with the motors I've tested. This is due to the poles of the motor being designed for max holding torque in the both phase on positions. Half-step TORQUE COMPENSATED Step A B 1 * +60 +60 2 0 +100 3 * -60 +60 4 -100 0 5 * -60 -60 6 0 -100 7 * +60 -60 8 +100 0 Half-step TORQUE COMPENSATED score: worst torque = 1 average current = (1+1.2)/2 = 1.1 max current = 1.2 (if it stops on those steps) torque compensated = YES Although TC half-step has advantages of lower total current consumption and equal torque steps, the one great limitation of TC half-step is that the torque is still limited to the max of 1, ie the same torque as a "weak" (one phase on) step. So ALL steps are weak. But having the same torque on each step has advantages, as does the reduced and more regular current consumption. -------------------------------------------------------- The 3rd (and little known) way of half-stepping:Hi-Torque Half Stepping!
This is a system that I discovered recently, although I doubt I was the first to do so. This is a standard principle in quarter-stepping, but I have seen no mention of it as a complete half-stepping system. Maybe this web page will help to popularise a "new" half-stepping system that has a lot of benefits. :o) To do high torque half-step you need a driver that is capable of 2 different current levels, one for each phase. Then you run one at 100% current, and the other at 40% current. They coils are never off, they are either 100% or 40%. The HT half-step system relies on the fact that there is another logical way to do half-step, ie when the half-steps chosen are exactly BETWEEN the standard half step positions. Half-step HIGH TORQUE Step A B 1 +100 +40 2 +40 +100 3 -40 +100 4 -100 +40 5 -100 -40 6 -40 -100 7 +40 -100 8 +100 -40 So there are still 8 steps to a cycle, and 400 steps/rev, like all other forms of half-step. But it now runs at the MAXIMUM current and torque of any possible half-step system. No coil is ever off, and the current (and magnetic field) are equal for every step, so it doesn't need to be tuned to give equal torque on each step, although it may need tuning for step angular position. Also, since stepper motor pole construction is optimised for max torque at positions where both phases are on, there is a significant torque advantage to always having some phase current and bringing the rotor closer to the (stronger) pole position. In my case the motor tested at 28% more torque which is very nice to have when building a machine. :o) Half-step HIGH TORQUE score: worst torque = 1.28 (every step) average current = 1.4 (every step) max current = 1.4 (every step) torque compensated = YES Another nice benefit I found is that resonance is greatly reduced, and the motor performs more like a microstepped motor. This is because these new angular step positions are less "in phase" with the full step pole positions where the maximum resonance occurs. Of course having 28% more torque and no torque ripple helps a lot and the motor performs well both at high and low speeds. -end --------------------------------------------------------
Interested:
Questions:
actualy how we get half step. I want the procedure of half step. which type of program you write to step down form 1.8degree to 1.4degree ie full step to half step.
James Newton replies: Just turn TWO coils on at the same time between the steps where you turn only one coil on. This creates a new set of positions half way between the standard, full step, positions and doubles the total positions in the system.
Great, useful site (and probably useful kits and concepts too). Perhaps it's my failing memory, but my recollection is that all the old disc drive stepper drives used "one coil on" for full steps, and "both coils on" for the half-steps when needed (rather than the other way 'round). The fact that 60%+60% typically yields similar torque to 100%+0% indicates that the "one coil on" positions are more efficient for motor geometry (ie, torque vs total current), although the "both coils on" positions" still win in overall efficiency because of the reduction in copper losses. I've looked into the +/-100%, +/-40% drive method, and it does seem to offer the smoothest possible operation, although I can't yet see how it would yield a 28% torque improvement for the same power input. That said, there is no down side, so I'm prepared to try it out, and once I digest the rest of the website I expect to contact you again for a parts order.
Comments:
I found some half-step code for arduino, and made the appropriate minor changes to implement this hi-torque method, and it is really excellent. it gave me a much more reliable sweep, 25% faster than the full-step code I started with. the code changes I had to make are: #define LOWX 0, MEDX 511, HIGHX 1023, alter the 8 steps to use these values, per the pattern above, use pins 5,6,10 & 11, replace digitalWrite() with analogWrite(). so easy, and so helpful. thanks!!!