left & double spindle difference

Posted dannykong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了left & double spindle difference相关的知识,希望对你有一定的参考价值。

1. project_cfg.h

#define NUMBER_OF_SPINDLES   (1u)

2. SensorPosition.c

Seems problem! but may only effect on Diagnosis

Spo_CalculatePosition

for ( lu8_Spindle = 0; lu8_Spindle < C_U8_CONFIG_NUMBER_OF_SPINDLES; lu8_Spindle++)

1. Calculate main position based of data from left spindle */

C_U8_CONFIG_NUMBER_OF_SPINDLES

E_SPO_SPINDLE_PRIMARY

E_SPO_SPINDLE_SECONDARY

 

3. MisuseDetection_cfg.c

#if(2u == NUMBER_OF_SPINDLES)
...

#endif

4. ObstacleDetection_cfg.c

5. SlamDetection_cfg.c 

/* primary side - dual sided and single systems */
    SCI_Read_HallSensor_Rpm(&(Sld_ms_PrimarySpindleData.u16_Rpm), E_SHA_HALL_PRIMARY  );

    #if(2u == NUMBER_OF_SPINDLES)
        /* secondary side - only dual sided systems */
        SCI_Read_HallSensor_Rpm(&(Sld_ms_SecondarySpindleData.u16_Rpm), E_SHA_HALL_SECONDARY  );
    #endif

6. SpindleBreakDetection_cfg.c

7. SwcApplPIDCtrlPwm_A.c

  /* Set/reset over current flag depending on spindle current and limit value */
 if ((Inputs->u16_MotorCurrentA < lu16_CalculatedCurrentLimit)
#if NUMBER_OF_SPINDLES > 1
   && (Inputs->u16_MotorCurrentB < lu16_CalculatedCurrentLimit)
#endif

8. SwcActuatorSpindleMotor.c

typedef enum{
#if NUMBER_OF_SPINDLES > 1
 TlgtMot_Right = 1, /* right Tailgate motor */
#endif
 TlgtMot_Left  = 0 /* left  Tailgate motor */
} TlgtMotT;

9. SwcApplPowerBalancer.c

 

/* primary side - dual sided and single systems */
    Sbd_ms_PrimarySpindleData.u16_PreviousRpm = Sbd_ms_PrimarySpindleData.u16_Rpm;
 SCI_Read_HallSensor_Rpm(&(Sbd_ms_PrimarySpindleData.u16_Rpm), E_SHA_HALL_PRIMARY  );
...
    Sbd_ms_PrimarySpindleData.b_TailgatePositionValid = lb_ReadBoolean;

    #if(2u == NUMBER_OF_SPINDLES)
        /* secondary side - only dual sided systems */

        Sbd_ms_SecondarySpindleData.b_TailgatePositionValid = lb_ReadBoolean;
    #endif

 

 

 

 

 Already Research:

2. Short to Gnd Dignosis

some investigation already done:

In Pmg_UpdateHCOMStableFlag() of PowerManager_cfg.c

from the comment

/* Hall Supply A and B shall behavior in the same way, not working independantly*/

this part only considered double spindle system.

the flag b_UHallStable is set here

以上是关于left & double spindle difference的主要内容,如果未能解决你的问题,请参考以下文章

C++模板初阶--懒人创造世界

C++模板初阶--懒人创造世界

C++模板初阶--懒人创造世界

C++模板初阶--懒人创造世界

C++模板(函数模板类模板)

Diagnosis -- Spindle Supply