Dave Covert wrote:
Thank you sir. I know you have deep knowledge and appreciate you taking the time to reply.
Agreed. Why does it limit them anyway? I mean, if I have clicked ÂĄRelease
tension¢ and it isn¢t doing that, I would like to try ¥Extend all¢. As you
know, the current state machine doesn¢t allow that transition.
extend-all only really makes sense from fully retracted, not if you are already
extended (for many frames, this would over-extend the belts)
so this is to a protection against getting yourself into trouble.
Why is that? What is inhibiting the motors rolling out 20mm when you hit
¥Release tension¢? Is the micro controller busy and doesn¢t get the message?
Or is the firmware checking some value and deciding ¥nope¢?
the system canât âjust feed the belts out 20mmâ, the motor movement and encoder
movement are not directly coupled, the motor moves the spool, the belt runs the
encoder.
a given amount of motor movement can result in a different amount of encoder
movement depending on how much belt is on the spool and how tightly itâs spooled
a given amount of current to the motor will result in different amount of motor
movement depending on the amount of friction in the arm and tension on the belt.
when the motor runs, itâs very possible that the encoder doesnât move.
if the belt is loose on the spool, telling the the motor to retract, the spool
will move and tighted the belt on the spool until it is fully wound before the
belt going through the encoder starts to move
if there is no pulling force on the belt, then running the spool out does not
move the encoder.
The maslow has a mode for the motor it calls âcomplyâ where it senses encoder
movement and then feeds the motor out to allow the movement to continue,
stopping when the encoder stops. When you extend the belts, this is the mode it
goes into, and the difficulty in getting the belts to start moving is that you
need to get the encoders to move first before the motors start to move. you need
to stretch the belt enough for the encoder to register movement.
I believe that relax tension uses something like that. I think it gives the
motor a tiny pulse, if there is enough tension to cause the belt to move a
measureable amount, it will move a little more
So it will apply enough power to the motors to pull the belts stiff when
taking up slack or moving but wimps out when retracting a loose belt? Are
there different current limits for the various modes? One for
tensioning/moving and one for retraction?
Yes, there are three different limits.
- there is a retraction limit that is used when you do retract-all
- there is a calibratino limit that is used to decide if you have pulled tight
during calibration
- while cutting, there is a limit of 4000 at which point it decides that
something is wrong (4096 is max possible power, so this is ~98% of max possible
power)
also, these limits arenât actual current measurements, the maslow doesnât have
any way of measureing the current.
the maslow drives the motors with a PWM signal that is set with a PID loop. the
âcurrent limitsâ are actually just how much the PID has had to ramp up the PWM
duty cycle. There was a change related to this in this last release (tweaking it
to be basing it on a running average IIRC)
ask away if you have more questions.
David Lang