Welcome! Log In Create A New Profile

Advanced

Basics for me that has been playing with steppers and Trinamic

Posted by Hellmut1956 
Basics for me that has been playing with steppers and Trinamic
December 22, 2020 11:51AM
Hello to all readers.

More than 7 years ago I did occupy myself intensely with stepper motors and with Trinamic modules. Using their stepRocker module and their IDE I was able to do many experiments to understand the implication that the Trinamic IDE made available to me controlling a stepper motor. I did use this combination of a stepper motor and the stepRocker module as part of my efforts to implement a winch to control the sail of my sailboat model. From the stuff that I learned then I am confronted with poor knowledge of stepper motors and with one of the consequences being to choose the wrong stepper motors. When myself trying to be polite addressing topics in this context I met aggressivity and comments that attacked me on a personal level. I hope this will be different here. And I want to explain why stepper motors today seem to be wrongly chosen and operated resulting in unnecessary step errors.

Let me go step by step:

The torque a stepper motor can deliver is dependant on the power with which it is fed. I know that this is only one parameter. I will come to others later.

To use numbers I want to use the standard power equation:

P[W] = I[A] * U[V]

Let's assume a printer is fed with the voltage and the current it is specified with. I call the nominal values.

P[W] = I[A] * U[V] = 1A * 12V = 12W

The critical factor in this example is the nominal value for the current, as this is related to the ability of the coils in the motor to how much current can flow through them.

Let us choose a different stepper motor with the same intake of power and in consequence the same torque:

P[W] = 4A * 3V = 12W

This is the better motor as its coils can be fed with 4A of current and achieve the same torque but with only 1/4 of the voltage means 3V!

Let us address the means by which Trinamic controllers control the feeding of a stepper motor. PW, Pulse with modulation. I am sure many of you know this. It is for those not familiar:



This graphic shows a PWM with 3 different settings for its duty cycle. Trinamic ICs control the current that flows through the coils of a stepper motor by changing the length of its duty cycle. So if you operate a stepper motor with its nominal values a duty cycle of 100% means the current flows continuously through the coils. But what does the Trinamic IC when you operate the second stepper motor, not with 3V, but with 12V? It sets the duty cycle to 25%. What is the result of this? The current that flows through the coils is still 4A:

P[W] = 4A * 12V = 48W

Thanks to the Trinamic IC, it limits the current to the 4A, its nominal value by using PWM at 25%. Now that second stepper motor has 4x the torque.

So whenever I choose a stepper motor for one of my naval modeling boats I choose the one that has the smallest nominal value for voltage as this way I have the maximum torque available. In my model sailboat, I feed my stepper motors used as winches for the control of the sails have a 3.6V nominal value fed by 12 LiFePO4 batteries. This battery pack when fully loaded delivers close to 40 V and when empty and they have to be recharged it is 24 V. So all SilentStepSticks based on Trinamic ICs offer this functionality.

So why it seems Creality i.e. uses nema17 in my Ender 5 Plus and specifies them to be 12V?

When I study YouTube Videos, i.e. the Kersley Fabrications channel I learn that one of the reasons to limit the printing speed is due to loss of steps. When I learn that the linear mode to accelerate and reduce speed is to be preferred over the S-Shape mode. If the NEMA 17 stepper motors used in my Ender 5 Plus are specified for 12V then the Trinamic IC is already using its PWM when the motor is fed with 24V. Of course, also the ability of the controller on the control card has to have the performance to do its computations. The higher the performance of the controller, the higher speed the printer can print while keeping the ability to do its control job.

It is topics related to this that made me choose the BIGTREETECH-SKR-PRO-V1.2 controller board. It has an ARM Cortex M4 controller that is already or powerful in its computation abilities and the higher operating frequency, 168MHz adds to it. The other reason I choose this board is that it supports SilentstepStick5160 and 5160hv. The TMC5160hv makes it possible for the SilentStepStick5160hv to feed the stepper motor with up to 50VDC, in the datasheet even 60VDC are mentioned. I have purchased a Meanwell 600W 48 VDC power supply and 6 SilentStepSticks5160hv from Watterott, the German company that partners with Trinamic, also a German company.

You might understand now why I was so surprised, not to be aggressive as Germans often are, that even the support of BIGTREETECH seems to be ignorant about this. I have already sent 3 emails to their support to ask if when applying 48VDC to their "Motor Power" connection these are isolated from other parts of the circuitry of my board. Still, just the response that the board can only be fed using either 12VDC or 24 VDC. Sure, and I am aware of this, the circuitry in this board can only be fed with one of these 2 possible voltage values.

Does anyone of you know if the Motor Power connectors are only passed to the VM of the sockets for the SilentStepSticks?
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 08:25AM
Immer noch der selbe beratungsresistente Klugscheisser? Frohe Weihnachten an entsorgte Ex-Siemensianer. smiling smiley
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 08:30AM
Dito
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 10:07AM
Quote
Hellmut1956
I am confronted with poor knowledge of stepper motors [...]
When myself trying to be polite addressing topics in this context I met aggressivity and comments that attacked me on a personal level.

maybe it wasn't the polite thing, praising yourself as semiconductor specialist and after asking a question and got the hint about cheap chinese 3d-printer quality to disqualify the person who wrote the message as a "dampfplauderer" (german word for talking about things without knowing something about)

You dont even calculate with the right voltage numbers on your assumes on the current-regulated motor drivers, and dont even think about effective power and reactive power and apparant power

Quote
Hellmut1956
The higher the performance of the controller, the higher speed the printer can print while keeping the ability to do its control job.

so there is the next myth, because even the "slow" 8-bit MCU ATmega2560 are powerful enough for a simple cartesic printer, which is proven on thousends of machines out there.
The 32-bit hardware may be the better choice for delta printers, but it is on a lot of cheap chinese machines more about the cheaper prices ot little ARM SoC compared to Atmel MCU. And about controllers with colored displays, to have a point of selling.

Quote
Hellmut1956
You might understand now why I was so surprised, not to be aggressive as Germans often are, that even the support of BIGTREETECH seems to be ignorant about this. I have already sent 3 emails to their support to ask if when applying 48VDC to their "Motor Power" connection these are isolated from other parts of the circuitry of my board. Still, just the response that the board can only be fed using either 12VDC or 24 VDC. Sure, and I am aware of this, the circuitry in this board can only be fed with one of these 2 possible voltage values.

So in the 3dprintforums message board you said, the BTT was not so ignorant and gave you a good support, and now they are bad too?

How you got the knowledge about 12V voltage on 3d-printer stepper motors? It would be the first printer with this high voltage on motor coils.

Quote
Hellmut1956
Does anyone of you know if the Motor Power connectors are only passed to the VM of the sockets for the SilentStepSticks?

I do, but you said iam dumb in the other board. So find out yourself.

Edited 4 time(s). Last edit at 12/24/2020 11:05AM by gafu.


CTC 3D Drucker, fabrikator II mini, ultimaker-diy,
Modifizierter Prusa I3 Boxed.
Baubericht im Blog: [blog.gafu.de]
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 10:53AM
@gafu: Taken.

I have no interest to convince any of you of anything. Apparently, the 3D printer community is living in its own world, a different one from mine. The reason I had published the thread was to see if I could find anyone to exchange with.

I have been working for more than 7 years with stepper motors and I have met key people from Trinamic and shows in Germany and learned from their support. The contact has been such that I got for free to of their early models, stepRocker, and motion cookies a board that was never released. I am using stepper motors the way I have been trying to present here since those early beginnings. That's why I presented the analogy of Galileo Galilei and those moons.

May be some time in the future I might come back with a new issue to ask. Have a nice christmas
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 04:46PM
So lets see about your stepper motor power.

you got a "real" resistance of the winding. And your steppermotor driver is set to a real physical current limit.

At standstill of your motor, by the given current, lets say the current is at 1.6A, you get a voltage drop over the motor winding of 4V. So the real power is everytime 4*1.6 = 6.4W
On a little 42mm nema17 motor this is in fact the heating power you can get into the housing without burning the motor down.

Because the constant current regulation of the driver you will never get 4times or 6 times the real effective power into the motor, because it will meltdown within minutes.
So it is for standstill even not a thing how high the power supply voltage of your motor driver is. You will get the same results at the motor windings, as long as the supply power is about the nominal motor voltage and additional 2 oder 3 volts on top for the electronics or even higher.
The inductance of the winding will smooth out the pwm in the motor current flow partial.

It changes a bit if your motor rotates, and you geht induction voltages against the driver voltage. But the induction voltage does not add to effective power (wirkleistung), it lowers the driver voltage virtually at the same amount, so you need to increase the driver voltage at the electrical motor winding terminals to get the same current as before. If you would measure the resulting voltage and multiply it with the motor current, you got the apparent power S (Scheinleistung).
Its the same as on 3 phase induction motor, but on current regulated devices the voltage is not the real voltage, and on 3 phase induction the voltage is real, but the current makes you crazy with the power factor.

If your physical resistence of the copper winding does not change, nor the current limit on the driver changes, the real effective electrical power doesnt change too.

So with this knowledge you need to rethink your torque assumptions on higher supply voltages at motor driver electronics.

Edited 3 time(s). Last edit at 12/24/2020 05:23PM by gafu.


CTC 3D Drucker, fabrikator II mini, ultimaker-diy,
Modifizierter Prusa I3 Boxed.
Baubericht im Blog: [blog.gafu.de]
Re: Basics for me that has been playing with steppers and Trinamic
December 24, 2020 08:34PM
On a serious response, first my thx. Let us go point by point:

You are right, the current limit is the result of the mechanical and electrical parameters of the coils. You are also right to make a difference between the power a motor is fed with and the power torque as a result is a result of the inefficiencies of the motor. So the effective torque a motor offers is lower.

Now the next point is to talk about the stepper motor holding position. This is the moment the stepper motor offers the highest torque, as the inductive voltage, which is always of opposite polarity to the applied voltage. So if we assume nominal values for current and voltage in the holding status, the inductive voltage = ZERO the torque is the maximum under those nominal operating conditions. The heat dissipation for the heat generated by the amount of current flowing through the coils is what limits the amount of current a certain stepper motor can handle. Let us be clear: It is the amount of current that determines the amount of heat generated. The nominal voltage value is the voltage that determines the amount of current flowing through the stepper motor as a result of the resistance the cables in the coil offer to the current flowing and as a consequence how much heat the stepper motor can dissipate.

So what would happen if we apply a voltage twice the nominal value and as consequence generate twice the amount of heat that needs to be dissipated due to the current also doubling. It is what you write, the heat would kill the motor.

But what happens if the Trinamic device uses its PWM to limit the flow of current through the cables of the coil to that amount that flows through them when you apply the nominal value? The motor would generate the same amount of heat as it does when operating at nominal value. The motor is not killed, because the amount flowing through the coils is still the nominal current value! The Trinamic IC generates a high-frequency PWM with a 50% duty cycle. The voltage applied is not the heat-generating parameter, it is the amount of current flowing through a cable that does it. Maybe looking into high-voltage electrostatic voltage is applied? Nearly no current will flow and as a consequence, no heat is generated!

But let us look into the power that results in a capability to generate torque.

Here is where the power equation I always use to explain this.

P = I * U

It always remains limited to its nominal value, that amount of current that the stepper motor is able to dissipate. What changes is the voltage!

U = 12 VDC: P = 1.6A * 12 VDC = 29.2 VA = 29,2 W

U = 24 VDC: P = 1.6A *24 VDC = 38.4 VA = 58.4W

So the torque that our stepper motor can generate if the nominal current is flowing through its coils doubles between these 2 examples, while the heat generated does not change! This is applying it to the stepper motor holding position results in the highest torque a stepper motor can deliver.

Now, let's look into stepper motor doing steps:

What changes is that the polarity of the voltage applied changes. This is simplifying the topic and what I believe helps to understand the issue.

On a coil where the voltage applied changes its value and its polarity, the current induced is proportional to the spread and magnitude the applied voltage changes and it has the opposite polarity of the applied voltage. Let's take a strongly simplified example:

At a certain step rate, the induced voltage has a certain absolute value and its polarity is inverse to the applied voltage. So if I would apply 10 VDC to the coil at s specific step rate the induced absolute voltage value could be i.e. 5VDC

Vt = Va + Vind = 10VDC + (-5VDC) = 5VDC

So at the step rate that induced this 5VDC absolute value the Vt = 5VDC and the torque would just be 50% of the holding torque. This results that at some point the stepper motor is either not able to make available the torque needed to do its job.

But it also implies that if I double the applied voltage at some step rate the induced absolute voltage could also be 5VDC:

Vt = Va 20VDC + Vind = 20VDC + (-5VDC) = 15VDC. So now the stepper motor still delivers 150% torque. So it can either deliver more torque to do its job, or it can take a faster step rate and still deliver enough torque.

This is the whole secret. But Trinamic is even much smarter and experienced. The Trinamic device can register how much torque the stepper motor is exposed to. It does so as it is able to compute this information by the angle by which the rotor of the stepper motor is twisted out of that position it would take if there was no load. This was a specially valuable feature for me as my model sailboat is powered by batteries. So I am interested to save energy as much as possible.

Before I learned this stuff by studying the Trinami8c IC functionality, I had planned to use a mechanical brake to keep the rotor of the stepper motor in its holding position. It is so that a stepper motor in its holding position consumes the maximum power supplied by the batteries. You can find a lot of information here:

[www.trinamic.com]

The Trinamic device can and does reduce the amount of current flowing through the coils of the stepper motor so that it is just able to withstand torque loads it might be exposed in a certain moment. Reducing the amount of current, using its PWM, reduces the heat that the motor needs to dissipate. But, thx to it be possible to operate a stepper motor at a higher voltage than the nominal voltage of the stepper motor its PWM is able and can do so by itself select a duty cycle that increased the amount of current flowing through the stepper motor by up to 20% for a limited time by selecting a duty cycle that allows the current to flow through the stepper motor to a value above the nominal value.

The Trinamic Stepper motor drivers use this feedback it gets from operating the stepper motor to notice when the object moving runs into an obstacle. At the YouTube channel from Trinamic you can see the fancy stuff the Trinamic ICs can offer.
Re: Basics for me that has been playing with steppers and Trinamic
December 25, 2020 07:06AM
Still wrong.
You forgot about the PWM and the resulting effective voltage.
By given resistence you cant increase the voltage without increasing the current. (the resulting effective voltage, or in motion case the effective voltage after voltage decrase because induction voltages)

The supply voltage of the driver is never the voltage on the motor coils.
And we are not even at microstepping with current steps between zero and normal spec current.

If you will not leave your roundabout, you will never get it.

So iam out there, i need to do things with an effect in the reality

Edited 2 time(s). Last edit at 12/25/2020 07:20AM by gafu.


CTC 3D Drucker, fabrikator II mini, ultimaker-diy,
Modifizierter Prusa I3 Boxed.
Baubericht im Blog: [blog.gafu.de]
Re: Basics for me that has been playing with steppers and Trinamic
January 14, 2021 03:18PM
Here an extract from an article published:

Begin:

Chopping the drive voltage provides better torque-speed characteristics
Stepper motor performance
Providing higher voltage to the motor windings effectively pushes the torque-speed curve “out,” resulting in higher torque production at higher speeds.
Image credit: PBC Linear
Chopper drives supply a high level of voltage (often up to eight times the nominal voltage) to the motor, which, according to Ohm’s law (current = voltage ÷ resistance), results in higher current through the windings.

stepper motor performance

When the drive senses that the current has reached a predetermined value, the voltage supply is switched off, or “chopped.” And when the current falls below a certain level, the high voltage supply is switched on again.

This method of voltage chopping also improves the rate of current rise (dI/dt). So by increasing the driving voltage, the windings can reach a higher current level — even when the pulse rate is high, meaning more torque is produced at a higher speed.

End

Here where the extract comes from!
Re: Basics for me that has been playing with steppers and Trinamic
February 02, 2021 08:06AM
Funny, as long as you dear friends felt arrogant and aggressive attacking me personally, I got a lot of answers. After I listed what Trinamic writes on their website, silence is the response. It is easier to attack and be aggressive and arrogant when you feel to be better informed!

I do accept and confess that the interpretation I made after having done those experiments were partly wrong. The cause that made me run into that trap was due to the fact that I did not do those experiments with a load. That is why I did assume that applying the Power equation:

P = V * A

I assumed this would compute a higher torque and this to be due to the higher voltage.

Correct is that the torque a stepper can deliver is only dependent on the amount of current flowing through it. The torque can be increased by 20% by increasing the current by modifying the duty cycle of the PWM. The higher stepping frequency is achieved by applying a higher voltage that enables PWM and adding the applied voltage to the induced inverse polarity and has it prevent the effective voltage drop below the nominal value. Of course, rather factors within the stepper also have their influence resulting in the curve Trinamic shows.

So, even having been attacked in the personal way that took place I was able to restudy the topic and learn what I wrote.
Sorry, only registered users may post in this forum.

Click here to login