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.

MCF8316C-Q1: Some questions for basic usage of MCF8316

Part Number: MCF8316C-Q1
Other Parts Discussed in Thread: MCF8316AEVM, MCF8316A

Tool/software:

Hi TI,

We plan to use MCF8316C-Q1 to driver some BLDC motor in limited range and limited time. I have already read the MCF8316C-Q1's datasheet., and it is a little complicated for me to understand...

My questions are as following, could you kindly help to analyze? Thanks a lot.

1.What is the MCF8316C-Q1's I2C address(Target ID)? I did not see the direct description in the datasheet, except the 0x60 in the example. So 0x60 is its unique target ID?

2.In our product, we have to finish the specific range in limited time such as 3 seconds, and the target speed is around 600RPM. Could this target speed be enough to generate enough BEMF for MCF8316 to recognize?(You could see the performance curve in the following)

3.I have a MCF8316AEVM in hand. For the software Motor Studio(ver: 0.1.18), what should I set for the Ralated Peak Current and Max Speed?

(1)Ralated Peak Current parameter

In <MCF8316A Tuning Guide>, it said "Rated peak phase current is the peak phase current drawn by the motor at rated torque of the motor". The performance curve provided by the motor supplier is:

Our target speed is around 600RPM, which should be bigger than the rated torque, then the corresponding current should be bigger than Rated peak phase current. Which point should I choose to set its current value to Ralated Peak Current? Assume the current at rated torque of the motor was chosen, could we get the target speed 600RPM while the current was limmited by the rated current?

(2)Max Speed

Should this parameter set to our target speed 600RPM, or the no-load speed 2100RPM?

4.MPET related

(1)Are the MPET results  the same for the motors of the same type from the same motor supplier? Need I to do MPET for every motor?

(2)Are the SPD_LOOP_KP/SPD_LOOP_KI constant? If I run MPET on the motor with no load, could the SPD_LOOP_KP/SPD_LOOP_KI got from this run used to the motor with load?

5.We would use another MCU to communicate with MCF8316Q-Q1 via I2C, so we could not directly use MSP430FR2355-GUI-FIRMWARE which is used for MCF8316AEVM. Writing the specfic values to so many registers seemed to be complicated and trivial. Is there some easy way to configure MCF8316Q-Q1 on another MCU?

6.In the DRV8889 which is Stepper Motor Driver, we implemented acceleration and deceleration strategy to get smooth start and stop. Is there any need to implemented acceleration and deceleration strategy on MCF8316? Or the only thing we do is set the target speed?

Thanks,

Alex

  • Hi Alex,

    Please see my answers Inline

    1.What is the MCF8316C-Q1's I2C address(Target ID)? I did not see the direct description in the datasheet, except the 0x60 in the example. So 0x60 is its unique target ID?

    [Venkatadri S] Default Target address is 0x1. In motor studio you have option to do find address, please use that to check device address. Out of the box address will be 0x1, user can change it permanently in the DEVICE_CONFIG1 (I2C_TARGET_ADDR)

    2.In our product, we have to finish the specific range in limited time such as 3 seconds, and the target speed is around 600RPM. Could this target speed be enough to generate enough BEMF for MCF8316 to recognize?(You could see the performance curve in the following)

    [Venkatadri S]  The BEMF is good enough to run this motor this speed. What is the pole pair of motor?

    3.I have a MCF8316AEVM in hand. For the software Motor Studio(ver: 0.1.18), what should I set for the Ralated Peak Current and Max Speed?

    [Venkatadri S] Stall current is 0.8A, rated torque is 0.442A at max power, we can chose 0.5A, this is for closed loop current. Current Limits has to be set for different state. Closed Loop State , Open Loop State (Motor_Startup1->O_ILIMIT). Apart from this fault detection logic for current thresholds , where will set for current threshold beyond which device stops driving the motor.

    3. (1) Our target speed is around 600RPM, which should be bigger than the rated torque, then the corresponding current should be bigger than Rated peak phase current. Which point should I choose to set its current value to Ralated Peak Current? Assume the current at rated torque of the motor was chosen, could we get the target speed 600RPM while the current was limmited by the rated current?

    [Venkatadri S] When motor starts with Startup state -> Open Loop -> Closed Loop, current limits set at open loop should not be exceeding rated limits, when motor speed increased winding current reduces due to BEMF building on the phase. The close Loop current Limit (ILIMIT set through FAULT_CONFIG1) is only to make sure torque is not delivered beyond this threshold, the device runs two loops 1) Current Loop which is inner loop, also called as Torque loop which regulates to set torque, 2) Speed Loop which is outer loop regulates to set speed. The maximum phase current which can be delivered based on the applied Voltage, speed of motor. Even if we configure ILIMIT to higher value and if applied voltage is not sufficient device cannot deliver current limit configured.

    3. (2)Max Speed

    Should this parameter set to our target speed 600RPM, or the no-load speed 2100RPM? 

    [Venkatadri] No Load speed, still user can select range suitable for the conditions.

    4.MPET related

    (1)Are the MPET results  the same for the motors of the same type from the same motor supplier? Need I to do MPET for every motor?

    [Venkatadri S] If same model motor from same supplier, MPET values will be similar. Use can leverage MPET to calibrate your design, need not run every time or every motor. The calibration or field testing MPET can be used

    (2)Are the SPD_LOOP_KP/SPD_LOOP_KI constant? If I run MPET on the motor with no load, could the SPD_LOOP_KP/SPD_LOOP_KI got from this run used to the motor with load?

    [Venkatadri S] These two are Coefficients for Proportional and Integral loops. Speed loop need to to tuned with actual or close condition of load. Many motors on no load will not be able to find KP, KI because even for small current motor may run at full speed. MPET need to extract Plant details and hence recommend to test with load conditions. 

    5.We would use another MCU to communicate with MCF8316Q-Q1 via I2C, so we could not directly use MSP430FR2355-GUI-FIRMWARE which is used for MCF8316AEVM. Writing the specfic values to so many registers seemed to be complicated and trivial. Is there some easy way to configure MCF8316Q-Q1 on another MCU?

    [Venkatadri S] Device has 24 words tuning parameters, User can finalize the tuning register and burn the value into EEPROM of device at production time and for regular operation, only speed command, status reading can be included in the external MCU. Also, you may have need to do field update for all tunign files, if there is a field update/service need then MCU should be able to update / read all 24 words.

    6.In the DRV8889 which is Stepper Motor Driver, we implemented acceleration and deceleration strategy to get smooth start and stop. Is there any need to implemented acceleration and deceleration strategy on MCF8316? Or the only thing we do is set the target speed?

    [Venkatadri S] We can configure Acceleration, Deceleration in this device also. Acceleration is available for openloop startup, close loop acceleration, closed loop deceleration , Anti Voltage based deceleration to avoid voltage surge, Active deceleration feature to suprres voltage surge if application need faster deceleration 

    Thanks and Best Regards,

    Venkatadri S

  • Hi Venkatadri,

    Thanks a lot for your detailed and clear explanation!

    2.

    What is the pole pair of motor?

    This motor poles is 12, then the number of motor pole pairs is 6.

    3(1).

    current limits set at open loop should not be exceeding rated limits, when motor speed increased winding current reduces due to BEMF building on the phase

    OK, so the limit of open loop should be set to less than 0.442A, right?

    The maximum phase current which can be delivered based on the applied Voltage, speed of motor. Even if we configure ILIMIT to higher value and if applied voltage is not sufficient device cannot deliver current limit configured.

    The rated voltage of this motor is 12V and we would apply this 12V to the motor. If 0.5A was chosen as the limit of closed loop current as you recommended, we could get the tartget speed 600RPM(whose current is 0.6A), right? Or Should I set the limit of closed loop current to 0.6A to get the desired torque?

    6.

    We can configure Acceleration, Deceleration in this device also.

    OK, got it. Another question is we have to finish the specific range in limited time such as 3 seconds, could the acceleration&deceleration time be configured as fixed values? Or do I have to tune the related parameters and measure the total running time to be close to the target 3 seconds?

    Thanks,

    Alex

  • Hi Alex,

    Answers to questions

    3(1) Open loop current can be up to max rated if there is a need for high starting torque only. Otherwise, we can configure to half of max rated if motor can start reliably from standstill condition. Once motor reaches to a speed where BEMF generated is adequate for the Closed loop to take over, current starts regulating to the level where reference speed is reached, and this close current will be max limit of ILIMIT configuration. 

    ILIMIT for closed loop can be set to 0.6A which is providing some margin, during transient time (speed change) we may need extra current than steady state full speed.

    6. Acceleration and deceleration have set of configurations (refer to the CLOSED_LOOP1->CL_ACC), example 1Hz/s, 10HZ/s, 25Hz/s  etc , based on Speed 1 to Speed 2 ramp time you can chose the acceleration. Use MPET to configure Closed Loop SPD_LOOP_KP, SPD_LOOP_KI , set 0.6A as ILIMIT.

    Please make sure motor parameters R, L, KE are per phase . Before going to speed loop first start by disabling it, get motor running in Torque mode.

    Even if you apply high torque initially based on motor  and load inertia speed change will be slow. 

    Thanks and Best Regards,

    Venkatadri S

  • Hi Venkatadri,

    Got it. Thanks for your answer.

    Thanks,

    Alex