Skip to main content
浚钱.1
Associate II
January 15, 2024
Question

Warning at generation stage

  • January 15, 2024
  • 2 replies
  • 1096 views

{ "type": "inverter", "name": "EVSPIN32G4-mini", "descVersion": 4, "contentVersion": "1.0", "PN": "EVSPIN32G4", "shortDescription": "STSPIN32G4 demonstration board for three-phase brushless motors", "longDescription": "STSPIN32G4 demonstration board for three-phase brushless motors", "link": "https://www.st.com/en/evaluation-tools/evspin32g4.html", "mcu": "STSPIN32G4", "clockSource": "internal_osc", "clockFrequency": 170, "motorDrives": [ { "name": "M1", "maxRatedVoltage": 75, "minRatedVoltage": 10, "maxRatedCurrent": 20, "resistorOffset": 0.08, "features": [ { "name": "CurrentSensing", "type": "CurrentSensing", "tRise": 61, "hwVariants": [ { "type": "ThreeShunt_RawCurrents_SingleEnded_ExternalGain", "help": "", "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8.333, "polarizationOffset": 1.65, "amplifyingNetworkImax": 45, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_UP": [ { "name": "PA1", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VP": [ { "name": "PA7", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WP": [ { "name": "PB0", "help": "", "cost": 0 } ], "CURRENT_AMPLN_U": [ { "name": "PA3", "help": "", "cost": 0 } ], "CURRENT_AMPLN_V": [ { "name": "PC5", "help": "", "cost": 0 } ], "CURRENT_AMPLN_W": [ { "name": "PB2", "help": "", "cost": 0 }, { "name": "PC5", "help": "", "cost": 0 } ], "CURRENT_AMPL_U": [ { "name": "PA2", "help": "", "cost": 0 } ], "CURRENT_AMPL_V": [ { "name": "PA6", "help": "", "cost": 0 }, { "name": "PA2", "help": "", "cost": 0 } ], "CURRENT_AMPL_W": [ { "name": "PB1", "help": "", "cost": 0 }, { "name": "PA6", "help": "", "cost": 0 } ] } }, { "type": "ThreeShunt_RawCurrents_SingleEnded_InternalGain", "help": "", "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8, "polarizationOffset": 1.584, "amplifyingNetworkImax": 45.9, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_UP": [ { "name": "PA1", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VP": [ { "name": "PA7", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WP": [ { "name": "PB0", "help": "", "cost": 0 } ] } }, { "type": "ThreeShunt_RawCurrents_Differential_ExternalGain", "help": "", "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8.333, "polarizationOffset": 1.65, "amplifyingNetworkImax": 45, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_UP": [ { "name": "PA1", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VP": [ { "name": "PA7", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WP": [ { "name": "PB0", "help": "", "cost": 0 } ], "CURRENT_SHUNT_UN": [ { "name": "PA3", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VN": [ { "name": "PC5", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WN": [ { "name": "PB2", "help": "", "cost": 0 } ], "CURRENT_AMPL_U": [ { "name": "PA2", "help": "", "cost": 0 } ], "CURRENT_AMPL_V": [ { "name": "PA6", "help": "", "cost": 0 } ], "CURRENT_AMPL_W": [ { "name": "PB1", "help": "", "cost": 0 } ] } }, { "type": "ThreeShunt_RawCurrents_Differential_InternalGain", "help": "", "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8.333, "polarizationOffset": 1.65, "amplifyingNetworkImax": 45, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_UP": [ { "name": "PA1", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VP": [ { "name": "PA7", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WP": [ { "name": "PB0", "help": "", "cost": 0 } ], "CURRENT_SHUNT_UN": [ { "name": "PA3", "help": "", "cost": 0 } ], "CURRENT_SHUNT_VN": [ { "name": "PC5", "help": "", "cost": 0 } ], "CURRENT_SHUNT_WN": [ { "name": "PB2", "help": "", "cost": 0 } ] } }, { "type": "SingleShunt_RawCurrents_SingleEnded_ExternalGain", "help": "1. Remove the heatsink and the thermal interposer to simplify the following two steps\n2. Close the two solder jumpers JP1 and JP2 located on the bottom side of the board in proximity of the\nshunt resistors. Make sure to close both the solder jumpers for their entire length to ensure good electrical\nconnection and to avoid malfunctions\n3. Disconnect shunt resistors R31, R32, R35 and R36.\n4. Mount again the heatsink with thermal interposer", "cost": 10, "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8.333, "polarizationOffset": 1.65, "amplifyingNetworkImax": 45, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_P": [ { "name": "PA7", "help": "1. Remove the heatsink and the thermal interposer to simplify the following two steps\n2. Close the two solder jumpers JP1 and JP2 located on the bottom side of the board in proximity of the\nshunt resistors. Make sure to close both the solder jumpers for their entire length to ensure good electrical\nconnection and to avoid malfunctions\n3. Disconnect shunt resistors R31, R32, R35 and R36.\n4. Mount again the heatsink with thermal interposer", "cost": 10 } ], "CURRENT_AMPLN": [ { "name": "PC5", "help": "", "cost": 0 } ], "CURRENT_AMPL": [ { "name": "PA6", "help": "", "cost": 0 } ] } }, { "type": "SingleShunt_RawCurrents_SingleEnded_InternalGain", "help": "1. Remove the heatsink and the thermal interposer to simplify the following two steps\n2. Close the two solder jumpers JP1 and JP2 located on the bottom side of the board in proximity of the\nshunt resistors. Make sure to close both the solder jumpers for their entire length to ensure good electrical\nconnection and to avoid malfunctions.\n3. Disconnect shunt resistors R31, R32, R35 and R36.\n4. Mount again the heatsink with thermal interposer", "cost": 10, "shuntResistor": 0.005, "offsetNetworkAttenuation": 0.88, "opAmpGain": 8, "polarizationOffset": 1.584, "amplifyingNetworkImax": 45.9, "amplifyingNetworkVm": 3.3, "amplifyingNetworkPrating": 6, "signals": { "CURRENT_SHUNT_P": [ { "name": "PA7", "help": "1. Remove the heatsink and the thermal interposer to simplify the following two steps\n2. Close the two solder jumpers JP1 and JP2 located on the bottom side of the board in proximity of the\nshunt resistors. Make sure to close both the solder jumpers for their entire length to ensure good electrical\nconnection and to avoid malfunctions.\n3. Disconnect shunt resistors R31, R32, R35 and R36.\n4. Mount again the heatsink with thermal interposer", "cost": 0 } ] } } ] }, { "name": "PhaseVoltageGeneration", "type": "PhaseVoltageGeneration", "driverName": "G4_COMPLEX_LP_DRIVER", "driverPN": "STSPIN32G4", "minDeadTime": 500, "maxSwitchingFreq": 100, "tNoise": 1200, "hwVariants": [ { "type": "PoweringHighAndLowSides", "deadTime": 1000, "help": "", "signals": { "GD_CHU_H": [ { "name": "GHS1", "help": "", "cost": 0 } ], "GD_CHV_H": [ { "name": "GHS2", "help": "", "cost": 0 } ], "GD_CHW_H": [ { "name": "GHS3", "help": "", "cost": 0 } ], "GD_CHU_L": [ { "name": "GLS1", "help": "", "cost": 0 } ], "GD_CHV_L": [ { "name": "GLS2", "help": "", "cost": 0 } ], "GD_CHW_L": [ { "name": "GLS3", "help": "", "cost": 0 } ] } } ] }, { "name": "SpeedAndPositionSensing", "type": "SpeedAndPositionSensing", "hwVariants": [ { "type": "HallEffectSensor", "help": "The solder jumpers R84, R87 and R89 on the bottom side of the board, allow to select the sensors supply voltage (only one solder jumper must be mounted). Refer to the documentation of the board.", "signals": { "HALLSENSOR_H1": [ { "name": "PB6", "help": "", "cost": 0 } ], "HALLSENSOR_H2": [ { "name": "PB7", "help": "", "cost": 0 } ], "HALLSENSOR_H3": [ { "name": "PB8-BOOT0", "help": "", "cost": 0 } ] } }, { "type": "QuadratureEncoderRelative", "help": "In case of high resolution encoders replace R81, R82 and R83 with 330 ohm resistors.\nThe solder jumpers R84, R87 and R89 on the bottom side of the board, allow to select the sensors supply voltage (only one solder jumper must be mounted). Refer to the documentation of the board.", "cost": 10, "signals": { "QENC_A": [ { "name": "PB6", "help": "In case of high resolution encoders, replace R81 with 330 ohm resistor.", "cost": 10 } ], "QENC_B": [ { "name": "PB7", "help": "In case of high resolution encoders, replace R82 with 330 ohm resistor.", "cost": 10 } ] } }, { "type": "QuadratureEncoderAbsolute", "help": "The solder jumpers R84, R87 and R89 on the bottom side of the board, allow to select the sensors supply voltage (only one solder jumper must be mounted). Refer to the documentation of the board.", "cost": 10, "signals": { "QENC_A": [ { "name": "PB6", "help": "In case of high resolution encoders, replace R81 with 330 ohm resistor.", "cost": 10 } ], "QENC_B": [ { "name": "PB7", "help": "In case of high resolution encoders, replace R82 with 330 ohm resistor.", "cost": 10 } ], "QENC_Z": [ { "name": "PA8-BOOT0", "help": "In case of high resolution encoders, replace R83 with 330 ohm resistor.", "cost": 10 } ] } }, { "type": "BEMFSensingADCFixedDivider", "help": "enabled by default", "signals": { "BEMF_U": [ { "name": "PC0", "help": "", "cost": 0 } ], "BEMF_V": [ { "name": "PC1", "help": "", "cost": 0 } ], "BEMF_W": [ { "name": "PC2", "help": "", "cost": 0 } ] }, "dividingNetworkR1": 95000, "dividingNetworkR2": 3900 } ] }, { "name": "VBusSensing", "type": "VBusSensing", "busVoltageDivider": 25, "hwVariants": [ { "type": "VBusSensing", "help": "", "signals": { "VBUS": [ { "name": "PC3", "help": "", "cost": 0 } ] }, "busVoltageDivider": 24, "busVoltageDividerR1": 100, "busVoltageDividerR2": 6.8, "busVoltageDividerR3": null } ] } ] } ], "features": [ { "name": "SerialPortCommunication", "type": "SerialPortCommunication", "hwVariants": [ { "type": "Uart2WiresCommunication", "help": "", "signals": { "UART_TX": [ { "name": "PA9", "help": "", "cost": 0 } ], "UART_RX": [ { "name": "PA10", "help": "", "cost": 0 } ] } } ] } ] }

    This topic has been closed for replies.

    2 replies

    浚钱.1
    浚钱.1Author
    Associate II
    January 15, 2024

    Snipaste_2024-01-15_15-05-51.png

    Snipaste_2024-01-15_15-08-37.png

    The board was designed according to the official schematic, and only 2 sampling resistors were used for ADC acquisition; When generating the algorithm, I wanted to change it to single resistance sampling, and then an error occurred。

    cedric H
    Technical Moderator
    January 15, 2024

    Hello @浚钱.1 ,

    Your error is probably not a real one but is due to a too restrictive parsing of the cubeMX output.

    Could you please copy/paste the complete log, I guess the root cause appears above. Could you confirm that you are able to load and compile your project with Keil ?

    The warnings shown in your first screen-shot are there to inform you that there are hardware modification to do to enable this configuration ( Just in case you forgot to read the documentation of your board )

    Regards

    Cedric

    浚钱.1
    浚钱.1Author
    Associate II
    January 16, 2024

    I'm sorry, I didn't know what went wrong yesterday and reported an error. It's better today and there was no error.

     

    The top text is the JSON file of the board that was customized yesterday. I tried again today and the alarm is still there, but there was no problem generating the code.

     

    Thank you very much!