TMCM-6110 StallGuard2 Reliability

TMCM-6110 StallGuard2 Reliability

Postby busta » 30 Apr 2012, 07:36

I am using a TMCM-6110 to control a 3 axis (x, y, z) machine. On the x and y axis we use a belt drive, on the z axis a rack/pinion.

We would like to use StallGuard to detect when the machine has hit an obstacle and therefore has lost steps. But I am encountering some problems in successfully configuring the StallGuard. So far I have tried different speeds, with different threshold and velocity limit values, but I can not get it to work reliable: either the stall is only detected sometimes (or not detected at all), or the threshold is so low that the motor also stops during normal operation.

Additionally, I found that stall detection works better when the motor hits a "soft" obstacle (which "slowly" increases the load angle of the motor, for example slowing down the moving part by hand). When hitting a "hard" mechanical limit/obstacle stall detection in most cases does not work at all, the motor keeps running after hitting the obstacle, and when I read the stall value it is even higher than in normal operation.

What could I be doing wrong? Could it be that changing the motors improves the behavior? What are the criteria for a motor to be suitable for stall detection?
busta
Power User
Power User
 
Posts: 16
Joined: 22 Dec 2011, 05:26

Re: TMCM-6110 StallGuard2 Reliability

Postby Olav Kahlbaum (TRINAMIC) » 02 May 2012, 08:28

The most important parameters for stallGuard2 are the velocity and the motor current. Motors with low inductivity are best (this is the case with most motors). Motor current and velocity should be chosen in a way that the stallGuard threshold value can be set to a value between -10 and +10 to get best results with stallGuard2.

What kind of motors are you using?
User avatar
Olav Kahlbaum (TRINAMIC)
Site Admin
 
Posts: 3363
Joined: 11 Aug 2006, 08:02

Re: TMCM-6110 StallGuard2 Reliability

Postby busta » 03 May 2012, 03:49

We are using a Sanyo Denki Motor, SH1424-52 (high resolution, 400 steps/revolution).

SanyoDenki_SH142.JPG
Motor Specs
SanyoDenki_SH142.JPG (57.21 KiB) Viewed 1211 times

For x/y axis we are using a timing belt (2 mm pitch), travel length is ~800 mm, required travel speed is around 200 mm/sec (~5 rps). For z axis we use a rack/pinion, travel length is ~ 60 mm. We assume that by properly selecting the motor there will be no step loss in normal operation. But we want to be able to detect a step loss in fault conditions, f.ex. when an obstacle is hit, ...
May I ask you, in your opinion/experience and using our setup, should it be possible to detect the resulting step loss with high reliability? Or do you recommend using a system with encoder feedback?

The threshold values I use at the moment are lower, around -40, -50. How can I get them to be higher?
busta
Power User
Power User
 
Posts: 16
Joined: 22 Dec 2011, 05:26

Re: TMCM-6110 StallGuard2 Reliability

Postby Goeran Eggers (TRINAMIC) » 04 May 2012, 10:23

Most important (whether you use stallGuard or not): select motor according to desired speed / torque curve, driver supply voltage and motor coil current. Usually, motor manufacturer supply torque vs. speed curves for their motors - with NEMA17 typically for 24V supply voltage. The operating area of the motor should be well inside this max. torque curve - still in the area where there is not yet a steep decline in torque vs. speed. The TMCM-6111 provides a maximum a 1.1A RMS motor current per driver stage (in standard configuration). Therefore, a motor with a nom. coil current of 1A would be a good fit. Longer motors with higher holding torque values usually have a lower maximum usuable speed at the same driver supply voltage.

When looking at stallGuard values:
- In general high efficient motors tend to generate better stallGuard signals. This also means that 1.8° motors (200fs per rotation) usually generate better signals than 0.9° motors (400fs per rotation)
- reducing motor current sometimes gives more sensitivity with regard to stallGuard - of course this has to be balanced with torque requirements
- speed / resonances are an important factor. StallGuard values are usually better / more reliable at some speeds than others- also due to mechanical resonances which are also visible on the electrical side
User avatar
Goeran Eggers (TRINAMIC)
Site Admin
 
Posts: 189
Joined: 18 Jul 2006, 15:28

Re: TMCM-6110 StallGuard2 Reliability

Postby busta » 14 May 2012, 07:11

Thanks for your reply. We replaces the motors with Orientalmotor high efficiency stepper motors (200 steps) and got considerably better results.

Nevertheless, I still have the issue that stall detection works quite well when slowly slowing down the motor (hitting a soft obstacle), but does not work well when the motor hits a hard mechanical limit. I don't even see a change in the load value. I already have turned the filter option off, but there still seems to be some filtering. Is there something else I can do to improve this behavior?

The stallguard load values for one axis look like this:
stallguard_value_1.JPG
Stallguard Load Value with Threshold 1
stallguard_value_1.JPG (74.34 KiB) Viewed 1134 times

The movement we have is only small, about 20 mm, and equals to ~ 1 revolution. For this graph, I moved the axis up and down repeatedly. The motor is standing still at the places where the load value is 0. Does this graph look like expected to you, or should it look different? And I only can use a very little range (0 ~ 150) of the whole load range (0 ~ 1000), can this be improved?

On the other hand, is it possible to build a custom pcb based on this board which allows using encoders?
busta
Power User
Power User
 
Posts: 16
Joined: 22 Dec 2011, 05:26

Re: TMCM-6110 StallGuard2 Reliability

Postby Olav Kahlbaum (TRINAMIC) » 25 May 2012, 07:40

You say that you only doing very little movements. How fast do you accelerate the motor? The stallGuard2 result aso depends on the speed. The graph looks as if the motor were oscillating with low (at least not very high) acceleration. Is this true?
Please tell us which speed and acceleration you are using.
User avatar
Olav Kahlbaum (TRINAMIC)
Site Admin
 
Posts: 3363
Joined: 11 Aug 2006, 08:02

Re: TMCM-6110 StallGuard2 Reliability

Postby busta » 25 May 2012, 09:12

I use the following parameters:

Code: Select all
    SAP 140, 2, 7              // microstep resolution (6: 64 microsteps, 7: 128 microsteps)
    SAP   6, 2, 160            // absolute max current
    SAP   7, 2, 100            // standby current 
    SAP 154, 2, 0              // pulse divisor 
    SAP   4, 2, 220            // maximum positioning speed
    SAP 153, 2, 7              // ramp divisor
    SAP   5, 2, 600            // maximum acceleration
    SAP 173, 2, 0              // stallGuard2 filter setting
    SAP 174, 2, 2              // stallGuard2 threshold value
    SAP 181, 2, 180            // stop on stall value


Then, I moved up and down using this command:
Code: Select all
    MVP REL, 2, 14080


One revolution of the pinion equals 35 mm linear travel, thus this movement is about 17.5 mm.
busta
Power User
Power User
 
Posts: 16
Joined: 22 Dec 2011, 05:26


Return to Modules / StallGuard issues

Who is online

Users browsing this forum: No registered users and 0 guests