cancel
Showing results for 
Search instead for 
Did you mean: 

Open Loop Mode in MCSDK

SRedd.5
Senior III

I have seen the following options in the software in MCSDK

 MCI_CMD_SETOPENLOOPCURRENT, /*!< set open loop current .*/

 MCI_CMD_SETOPENLOOPVOLTAGE, /*!< set open loop voltage .*/

in mc_interface.h file, but i don't see any source code related to them does MCSDK support open loop mode? I need them to rectify some of the hardware issues, before i run in closed loop with hall sensors. Please advise.

13 REPLIES 13

Duty Cycle = 10

OL_UpdateVoltage( &OpenLoop_ParamsM1, ((10 * 32767) / 100));

Speed = 100

MCI_ExecSpeedRamp(&Mci[MOTOR_0], (int16_t)((100 * SPEED_UNIT) / U_RPM), 1000);

Duration is 1000.

I am not sure the below is also impacting

OpenLoop_Handle_t OpenLoop_ParamsM1 =

{

 .hDefaultVoltage = OPEN_LOOP_VOLTAGE_d,

 .VFMode      = OPEN_LOOP_VF,

 .hVFOffset    = OPEN_LOOP_OFF,

 .hVFSlope     = OPEN_LOOP_K

};

#define OPEN_LOOP_VOLTAGE_d      2000   /*!< Three Phase voltage amplitude in int16_t format */

#define OPEN_LOOP_VF         false 

I am also checking on the hardware side in parallel. Could you please tell me any other changes i need to check or any signal i can verify to confirm?

I have attached the motor data sheet i have the Battery voltage at 20V.

SRedd.5
Senior III

Thank you it runs now after correcting hardware issues, but few concerns is after some rotations for 1 to 2 minutes it gets struck up, sometimes gets problem in starting. Do we have solutions for that?

SRedd.5
Senior III

Now I have landed in confusion when you give the last command Mci_execSpeedRamp it does not stay in open loop mode it goes to speed mode, could you please explain me this?​

It is my mistake


_legacyfs_online_stmicro_images_0693W00000bkVV0QAM.png