cancel
Showing results for 
Search instead for 
Did you mean: 

Can i use six-steps controlling method to drive motor during using FOC library

SkyWork
Associate III

Is it possible to use six-steps driving method to drive motor when motor at the low speed situation and change to FOC when speed is rising ?

Do i need to do is that to only change the angle when hall sensor is changed at the following function ?

in FOC_CurrController function

{

hElAngle = SPD_GetElAngle(STC_GetSpeedSensor(pSTC[bMotor]));

==> change the code according to the hall sensor change and change the hElAngle?

....

}

9 REPLIES 9
Laurent Ca...
Lead II

Dear @SkyWork​ 

We will try to answer to you ASAP.

In the meantime, could you detail to us you whole environment, that is to say SW (devs, tools, drivers and their versions) and HW (boards, MPU, motors, and so on)?

Best regards

Laurent Ca...

SkyWork
Associate III

Hi @Laurent Ca...​ 

The following is my environment

1, developing tool (Atollic TrueSTUDIO® for STM32, Built on Eclipse Neon.1a. Version: 9.2.0 + MotorControl Workbench 5.3.2 )

2 NUBLEO-F303RE + X-NUCLEO-IHM08M1-1sh

3 i use one shunt current sensing

4 motor is from Taiwan's motor factory

cedric H
ST Employee

Hello Skywork,

FOC and 6steps architectures are very different, and switching from one algo to the other is not possible.

What is doable is to switch from sensor to sensor less mode, but staying in FOC mode.

Be aware that 6 steps algo is not yet fully supported in the MCSDK, it is just delivered as an example.

Regards

Cedric

SkyWork
Associate III

Hello @cedric H​ 

How to solve the FOC with sensor mode in heavy loading startup situation ?

I always met motor produce noise when i try to heavy loading startup the motor ?

And i don't see any sensor six-steps example can you tell me where can i find such examples?

Hello,

> How to solve the FOC with sensor mode in heavy loading startup situation ?

What kind of sensor do you use encoder or Hall sensors ?

>And i don't see any sensor six-steps example can you tell me where can i find such examples?

The 6steps exemples in the SDK 5.4.4 are sensorless only.

More complete support of 6steps into the SDK is in preparation.

SkyWork
Associate III

@cedric H​ 

Hi I use Hall sensor to drive motor

There is no specific parameter for Hall sensor startup. Basically, the FOC algo will apply the required current in order to spin your motor at the targeted speed.

This is true if your control mode is configured in speed mode. Are you controlling your motor in speed or torque mode ?

Could you describe the issue do you have at startup ? Do you have an error reported by the monitor tool ?

Did you measure the current applied to your motor phases ?

Could you provide current a capture done with a current probe during the startup ?

Cedric

Laurent Ca...
Lead II

Dear @SkyWork​ 

Is it possible to answer to the @cedric H​ 's questions?

But perhaps did you solve your problems? (and then I consider this thread closed?)

Best regards

Laurent Ca...

SkyWork
Associate III

Hi @cedric H​ 

About question1

Due to i need to limit the speed so i use the speed mode to control the motor

About question 2

There're two condition i meet the issue

  1. sometimes i will hear motor produce noise when i startup the motor on the flat , i will met startup failure but i will ack this fault and try to start the motor again
  2. ​ I find that the phase current is get small when i try to climb the Hill

So i think maybe FOC is not good choice to startup the motor without any speed that's why i try to use six-steps to start motor in the low speed