Thursday, April 14, 2011

HW10 Problem 1 Spice simulation

Hello, In verifying the solution for the HW10 problem 1 (ACMC), when I simulate the uncompensated loop gain in LTSpice, it matches the hand calculation (here the duty cycle was input using a voltage source). However, as soon as I put the PI compensator in the loop and connect the output to the duty cycle input of the CCM-DCM1 model, all currents and voltages of the converter go out of range (the inductor current becomes in kilo amps and the output of the compensator is in megaVolts)....I am not sure what is going on. I would expect the output voltage of the compensator to be twice the steady state value of the duty cycle (when multiplied by 1/VM would give the duty cycle). Any hints would be greatly appreciated. Regards, nitish

6 comments:

  1. Hi Nitish,
    I'm having exactly the same problem. When I simulate the converter and compensator on their own, they behave as expected. But when I close the loop, it becomes unstable. I have tried CCM1, CCM-DCM1, ideal opamp, real opamp, but all the same result, so it must be something more fundamental. I also model the PWM as a gain 1/Vm. If anybody could point us in the right direction, that would be great.

    Regards,
    Toby

    ReplyDelete
  2. Hi Toby,

    I tried using the .nodeset command and that helped. Essentially specified the node voltages at the converter output, compensator input and output, PWM output. Also, had to keep the Vc as a pure DC value and not derive it from iL in the circuit.

    Nitish

    ReplyDelete
  3. I also specified the node voltage at the current sense point

    ReplyDelete
  4. Hi Nitish,

    It was indeed as simple as initializing the compensator input voltage, so thanks a lot. I did not have to initialize other nodes.

    By the way, to regulate the output voltage, the command voltage vc should be inversely proportional to vg, you should not derive it from iL. Actually, iL is controlled by vc. Since there is a fixed load R=160Ω, the output current has to be constant as well for constant output voltage. I used a behavioral voltage source to model this, which gives a stable output voltage when vg is swept. By adjusting the gain of the behavioral voltage source and including 1/vg, the output voltage can be set to 400V over the specified range for vg.

    Regards, Toby

    ReplyDelete
  5. Hi Toby,
    When determining the Vc value, I found it to be proportional to IL which is proportional to Vg/D'^2. So when Vg is low, Vc does come out high and vice versa....but the proportion is not constant.
    Nitish

    ReplyDelete
  6. Hi Nitish,

    You are right that you need iL to calculate the range of vc for different vg, I used the (presumably) same equation as you did in part b. However, if you also use that equation to set Vc, you'd finally end up with iL=iL, which is always true. As iL=iL is always true, it does not provide any means to control the output.

    If you use the variable that changes (vg) to calculate vc, you'll know how to change iL to keep v stable when vg changes.

    If you replace iL with iL=V^2/(Vg*R) in your equation to calculate vc, you should get the correct feedback equation.

    I've simulated using the iL equation for vc, and I end up with the output (v) following the input (vg). When I use the vg equation to set vc, the output is controlled to 400V over the complete vg range.

    Hope this clarifies what I tried to say previously.

    Regards, Toby

    ReplyDelete

Note: Only a member of this blog may post a comment.