1
\$\begingroup\$

I am using a current transducer (LPSR 15-NP) to measure the current that is flowing through my AC servo motor powered by my SVPWM PCB. I have currently implemented an open loop control to the motor and it is working perfectly. I need to now design a current control closed loop. For that, I am measuring the current going through the U-V-W phases of my PMSM motor. On the output I am getting a variation of 2.407V to 3.047V. I need a constant voltage so that I can implement my current loop.

How do I do this? Are the connections for my LPSR correct or do I need to add some capacitors for signal conditioning? I do not understand why the LPSR is not simply giving me an output voltage in the range 0-5V as the datasheet suggests.

Current transducer wiring in the SVPWM board

Do I need to add a True RMS to DC converter on the output of my LPSR 15-NP to get the DC voltage I require? Do I need to add some rectification or some capacitive filtering in my output? Or am I missing something here?

\$\endgroup\$
11
  • 1
    \$\begingroup\$ This sensor output directly follows the high frequency AC current created by the SVPWM driver. Yes, you need filtering and a rectifier. \$\endgroup\$
    – Jens
    Commented Sep 11, 2023 at 20:25
  • 1
    \$\begingroup\$ You need a high sampling rate if you want to filter this in software, but, yes, I did so myself. Have a look at the minimum load requirement in the datasheet, I am not sure what impact this might have. \$\endgroup\$
    – Jens
    Commented Sep 12, 2023 at 12:35
  • 1
    \$\begingroup\$ I would solder an R/C low pass and connect this to a scope. Then compare this with the calculated values. Is there always enough CPU power to do the math or is this lagging under some conditions, e.g. other CPU tasks? \$\endgroup\$
    – Jens
    Commented Sep 12, 2023 at 12:56
  • 1
    \$\begingroup\$ But the sensor delivers a signed value relative to the center voltage of 2.5 V. This includes the current direction. \$\endgroup\$
    – Jens
    Commented Sep 13, 2023 at 14:28
  • 1
    \$\begingroup\$ No, the LPSR series are true bipolar devices. The signal is a signed value Vout - Vref, where Vref is 2.5 V. The switching transients of PWM current reversal may have such a high amplitute, that you don't see the effective current in this noise. There may be capacitive coupling from the phase line into your ADC. Apply a low frequency sine wave current to verify the bipolar nature of the output. \$\endgroup\$
    – Jens
    Commented Sep 14, 2023 at 12:48

1 Answer 1

0
\$\begingroup\$

So, what I basically did was I made a comparator circuit to remove the 2.5V DC offset from the response. Then I received the values in my ADC. I calculated the RMS values for Ia and Ib. Ic can be calculated by this formula:

Ia + Ib + Ic = 0

Then I did the clark transform to get Ialpha and Ibeta.

Then I applied the park transform to get the Id and Iq values. I calculated the RMS value of Id and Iq once again. This seems to give me a steady state response. Id needs to be close to zero and Iq needs to increase as the current across the motor increase. I am not sure why this works but this is what I did. If there is a problem in my methodology please let me know.

I am going to try and implement the current PI control on Id_ref = 0 and Iq_ref = User defined, and then see how it goes.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.