EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference
  • What I am trying to do : Run 3-phase Induction motor using Direct Torque Control method.
  • What I am sensing: 3-phase stator currents through current sensor board and speed through speed encoder.
    • MCU: TI C2000 F29069M
    • Level Shifter: 2.5 shift, 0.5 gain
    • Current sensor: 0.1 gain
    • The issue: Significant jumps in current retrieved and seen through DAC, even if the voltage supply is not given.
  • Waveforms shown below:
    1. Yellow : Phase A current retrieved and seen through DAC
    2. Green : Phase B current in DAC
    3. Blue : Phase C current in DAC
    4. Pink : Phase A actual current sensed by current probe
  • Fig 1. Only shift seen in DAC as the code is not yet turned on.
  •                                                                                                       Fig 1. Only the shift of level shifter seen in DAc as code not yet started. Fig 2 Below shown when the inverter switching is started, these jumps are seen in the phase currents 1. 2. & 3 waveforms .

                                                                                                                                                           Fig .2 Jumps in current even though supply is off   

  • Fig 3. When supply is given, the first three waves (phase A, B, C currents) are not sine wave as they should come as the 4th waveform (pink). 4th waveform is the phase A current through current probe.
  • Another issue I am facing is that the speed encoder is not giving some constant value of speed while running the motor. It is varying a lot by +-30 to 40 rpm which is affecting the speed control PI loop as well. Is it because of the encoder fault or in my code some problem is there?
I am attaching the .c code and also the video of current waveform and how the encoder result is varying. Please do take a look.

DTC_main_code.txt


The 2024 Embedded Online Conference