1
\$\begingroup\$

Could someone help me understand what is happening in B1 when stepping between P = 2.9 W and 3.0 W?

Constant Power @ 2.9 W

Constant Power @ 3.0 W

\$\endgroup\$
9
  • \$\begingroup\$ please show the actual sim output \$\endgroup\$
    – Aaron
    May 23, 2022 at 18:33
  • \$\begingroup\$ For P = 2.9 W: --- Operating Point --- V(v_source): 75 voltage V(v_load): 74.1137 voltage I(B1): 0.0391291 device_current I(R_wire): 0.0391291 device_current I(V1): -0.0391291 device_current \$\endgroup\$
    – MemorX86
    May 23, 2022 at 18:38
  • \$\begingroup\$ For P = 3.0 W: --- Operating Point --- V(v_source): 75 voltage V(v_load): 0.626573 voltage I(B1): 3.2836 device_current I(R_wire): 3.2836 device_current I(V1): -3.2836 device_current \$\endgroup\$
    – MemorX86
    May 23, 2022 at 18:38
  • \$\begingroup\$ I meant the graphs \$\endgroup\$
    – Aaron
    May 23, 2022 at 18:40
  • 1
    \$\begingroup\$ @MemorX86 You can add an .op label and a .tran 1 (startup is not needed here). The transient analysis will ignore the .op, and when you need only .op, simply Ctrl+RClick on the .tran 1 to comment it out. \$\endgroup\$ May 23, 2022 at 18:58

1 Answer 1

2
\$\begingroup\$

The constant power source is (still) undocumented, but you can read a bit about it here (see the Bn P=f(...) part):

In order to avoid large currents at voltages near zero, the arbitrary power sink/sources foldbacks to resistive behavior when the absolute value of voltage across the device falls below a default value of 1 volt. The foldback point may be modified by specifying a VprXover parameter for the device, e.g. VprXover=50mV.

Judging by the value of that resistor, it was deliberately chosen like that (which could have been a normal one with 22.65 as value, without the R=, which makes it a behavioural resistor; nothing wrong, though). Maybe it was reached through testing. At any rate, if you'll make the load P=p VprXover=x and use .op with:

.step param x 0.1 1 0.1
.step param p list 2.9 3

you'll get a plot with the variation of <some quantity> over that x. If you then plot the voltage across the load you'll see this:

VprXover limit

Because the default value for VprXover is 1, the folding happens right around the 1 V value. If that is what's biting your rear, simply change VprXover to a different value. For P=3 use VprXover=2, for example, and it will work. Adjust accordingly for whatever power you need. Don't forget that it's up to the user to do this, LTspice can't read minds. No SPICE can.

\$\endgroup\$
3
  • 1
    \$\begingroup\$ This might be a good reference for beginners if they're new to constant power loads and the vprxover parameter: analog.com/en/technical-articles/… \$\endgroup\$
    – Ste Kulov
    May 23, 2022 at 19:36
  • 1
    \$\begingroup\$ @SteKulov That's a good link, it certainly has better words. blush \$\endgroup\$ May 23, 2022 at 19:53
  • \$\begingroup\$ Thanks for all the help, ill have to do some reading :) \$\endgroup\$
    – MemorX86
    May 23, 2022 at 20:14

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.