This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV8301-69M-KIT: Spintac Move and Spintac Velocity

Part Number: DRV8301-69M-KIT
Other Parts Discussed in Thread: MOTORWARE

I am building a system that needs to implement both position control aswel al the velocity control.

As i noticed there are a few differences in these systems.

I based my tests and analizes on motorware lab 12b and lab 13c.
Both work fine a individual labs but it gets harder when I want to mix up both controls into 1 system.

The motor parameters for both systems are different as describered in main.h and pain_positions.h
As I have tried last week, I think i can just add in the missen parameters from main.h to main_position.h and work from there in lab 13c.

The biggest problem is that they both utilize an ST handle and object and these object differ allot from each other and I haven't been able yet to get both systems to work together

Can I get any info on the best practice to combine these two systems?

A little side question is about online_Rs calculation.
I use this value to create a temperature measurement as suggested in one of your documents.
But the Rs value tend to spike or dip allot giving many false positives to my over temperature protection.
My Rs was calculated to be 0.72ohm at room temperature and the values spike and dip to about 1.17ohm and 0.24 ohm.

Any chance there is an explanation for this? and an solution?

Thanks,

Alain

  • update:

    I found out that lab 13e is a velocity control that works almost the same as lab 12b but utilizes the same main_position.h and the same ST_handle/Obj and the implementation in my program works.

    The only problem that i am facing now is that when my mechanical construction reaches it final position the velocity controller faces a 2002 error due to the motor doesn't turn, but wants to maintain velocity I would asume.

    In lab 12b the velocity control doesnt have this position error and just forces itself with max current against the final mechanical position.
    In lab 13e it starts bumping back and forth against the final michanical position.

    Can i bypass this 2002 error (for velocity control) so that this part works the same for 13e as it does for 12b?

    I hope you understand what i mean.

    Greetings,

    Alain
  • Can you please give some more hint on what you are trying to achieve. Are you trying to switch between speed mode and position mode for the same motor, or just control two motors with the same program?
  • Tanks for the quick response.

    Indeed I want to switch between position and velocity mode on one motor.

    But I want the motor to provide torque in velocity mode when the speed is 0, for pushing against a weight with a constant torque.
    If i try that now (with the system used in lab13e) i get a 2002 error and the system starts pushing back and forth against the weight.

    Alain

  • Do you suggest you want to run the motor in torque and then switch to speed mode? If you only want to overcome a friction at the beginning, closed speed loop should allow you to do that. Can you please suggest the reason you want to do this switching?

    In addition, what kind of position sensor are you using? In order to ensure stable torque output at zero speed, you will need a way to know the "absolute" position of the motor at zero speed to feed into the FOC. A typical incremental encoder will have issue in this situation since it can only suggest the absolute position when you run across the index line. 

    Thanks.

    Han

  • I want to switch between a position control as in lab 13b/c and a speed control which I would use as a torque control as seen in lab 13e.

    The problem is that when you run the speed control and then stall the rotor during operation, I get a 2002 error. I want the motor to apply an even preasure against an object without the motor to turn (so i litmit the max current to a desired value)

    The 2002 error makes the motor behave bumpy at 0 speed.
    Im using a 500 lines quadrature encoder.

    The reason i want to use the speed control is next to the position control is for 2 reasons. Applying a constant force against an object. And for a homing cycle to calibrate the motor to a 0 position.