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.

TMS320F2800157: Custom board

Part Number: TMS320F2800157
Other Parts Discussed in Thread: LAUNCHXL-F280025C, DRV8353, DRV8353RS-EVM

we tried using the DRV8353 and launchxl-f280025c to run the motor, and it worked well. i am currently attempting to use a custom board to operate the motor, but the DC Bus voltage is fluctuating. so can you please suggest to resolve the issue.

thanks,

Pavani G.

  • Hello Pavani,

    My instinct here is that there may be an issue with the hardware connected to the VDC sensing ADC pin. It's also possible that the software configuration is off, but given that the DC bus voltage motorVars_M1.adcData.VdcBus_V seems to go to 24V and then down to 0, it looks like it's probably sensing correctly. (This assumes that the provided DC bus Voltage is approx. 24 to 25V.)

    Regards,
    Jason Osborn

  • we tried using the DRV8353 and launchxl-f280025c to run the motor, and it worked well. i am currently attempting to use a custom board to operate the motor, but the DC Bus voltage is fluctuating from 48v to zero and consuming maximum current. Below here i have attached the low and high pulses for u, v and w phases, there is dead band issue how to calibrate or solve this issue. so can you please provide any suggestions.

    Thanks in advance,

    Pavani G.

  • Pavani,

    If you're not seeing any deadband whatsoever, I would first double check your ePWM configuration. Are the following functions ever called for all three phases?

    1. EPWM_setRisingEdgeDelayCount
    2. EPWM_setFallingEdgeDelayCount

    Are the values being set in these functions valid? In the Universal Motor Control Lab, the values are set by the following #define macros in hal.h

    1. MTR1_PWM_DBRED_CNT
    2. MTR1_PWM_DBFED_CNT

    Finally, the DRV8353RS has built-in minimum deadband insertion utilized by the Universal Motor Control Lab. If you're not using this device, check to see if your new device has equivalent functionality that can be enabled.

    Regards,
    Jason Osborn

  • Hi ,

    Thanks for your reply.

    Tried with different dead values from 255(2.25us) to 5 (50ns). No changes Still showing dead short.

    When enabling the run flag enable its runs for a few minutes and after sometimes go to a short condition(48V becomes zero and current is consuming maximum)

  • Hello,

    A few questions.

    1. For the deadband issue, what is the value of pPWMData->minCMPValue ?
    2. For the deadband issue, check that SPI communication with the DRV is happening properly.
    3. For the DC bus voltage, are you monitoring the DC bus with an oscilloscope or multimeter? If something is wrong in the hardware, that issue cannot be solved in code.
    4. Finally, as a general question, what is your current build level?

    Finally, I just noticed in your original video that Rs_Ohm = 0. Please ensure you use the actual stator resistance of your motor, there are several parameters which rely on this. I do not know whether or not the system can function completely correctly without accurate physical motor properties.

    Regards,
    Jason Osborn

  • 1)Will update this value pPWMData->minCMPValue and

    MTR1_PWM_DBRED_CNT adjusted from 5 to 255 

    MTR1_PWM_DBFED_CNT adjusted from 5 to 255  Values but still motor going to short condition and taking maximum current

    2)Right now circuit used UCC gate driver and not with DRv8353 .But code system condition is "BSXL8353RS_REVA " and code deployed in current custom board .so SPI communication is not required here.or anything else need to take care

    3)We measured in oscilloscope and some drop is there in bus voltage This issue will fix in hardware and working on the same.

    4)Current build level is 1.and just verifying everything is correct or not ?

    Rs_ohm=0.0368 but some times which is not identified in expression window even if enable bypass motor id  "userParams_M1.flag_bypassMotorId = true" (already provided values in user_mtr1.h Rs_ohm)

  • Hello,

    1. According to the user's guide for the Universal Motor Control Lab, the motor should not be connected in build level 1. Other than that, adjust DBRED and DBFED to an appropriate value for your system and move on to build level 2- I'm reasonably certain everything looks reasonable for build 1. If you deadband continues to not be applied in build 2, please let me know.

    2. In user_mtr1.h, ensure that the values of the #define parameters related to the DRV8353RS-EVM are updated to match your new board. For example, based on the settings of the Universal Motor Control Lab, the full scale current of the motor (i.e. the current of the motor when the current sensing ADC pins read 3.3V) is 47.14285714 A. This is the "USER_M1_ADC_FULL_SCALE_CURRENT_A" define in user_mtr1.h
    3. Glad I was able to help identify that issue. Keep in mind that if your motor driver has an under-voltage fault state, it can be tripped by these dips in the bus voltage.

    4. See (1.)

    As a side note, if the value of Rs_ohm is not properly being shown in the expressions window, there may be some other problem going on. Check to make sure the value of #define USER_MOTOR1 in user_mtr1.h is correct . USER_MOTOR1_Rs_Ohm is defined on a motor-dependent basis, so if the wrong motor is being used, it won't use the correct value.

    Regards,
    Jason Osborn

    Finally, just as a final note, I highly recommend the CCS 'folding' option for editing files like user_mtr1.h. In the top bar, go to 'Window' -> 'Preferences' -> Show Advanced Settings. Then, where it says 'type filter text', type in "folding". Check the first three boxes. Check the last box. This will make navigating large files significantly easier.

  •   RMCS_1021.pdf24V setting PARAMETERS.docx

    Hello ,

    I am currently attempting to use a custom board to operate the motor, motor is running but at starting point, its consuming more current and speed is too high for few seconds and after few seconds it get stabilized. Here i have attached the settings parameters and also motor specifications. Can you check and please let us know any calibration need to be done and what values need to give?

    Thanks,

    Pavani G.

  • Pavani,

    Take a look at USER_MOTOR1_STARTUP_CURRENT_A and the other current-related parameters near it in user_mtr1.h. Taking a look at your datasheet, while it does not explicitly list a rated current, the no-load current and the output power relative to the nominal voltage are both low enough that I would expect these current values are too high for your motor.

    I'd suggest lowering those parameters significantly- during motor startup, USER_MOTOR1_STARTUP_CURRENT_A in particular is very important. I'd say lowering it to around the listed No Load Current or lower. If the motor startup fails, slowly increase it until it is successful.

    Regards,
    Jason Osborn