¿ªÔÆÌåÓý

Current Dependent Voltage Source


 

I've tried to understand how to create a current dependent voltage source but am unable to comprehend how to get my simulation circuit to work.? Is there anything available to describe in detail how to do this?? It all seems confusing or incomplete.


 

Hello,

Please take a look to this example from our Files-section..



?

Best regards,

Helmut



H. Current Dependent Voltage Source

Symbol Name: H

Syntax: Hxxx n+ n- <Vnam> <transresistance>

This circuit element applies a voltage between nodes n+ and n-. The voltage applied is equal to the value of the transresistance times the current through the voltage source <Vnam>.

Syntax: Hxxx n+ n- value={<expression>}

This is an alternative syntax of the behavioral source, arbitrary behavioral voltage source, B.

Syntax: Hxxx n+ n- POLY(<N>) <V1 V2 ... V3> <c0 c1 c2 c3 c4 ...>

This is an archaic means of arbitrary behavioral modeling with a polynomial.

?


 

rmoreno.phone?wrote:

? ?"I've tried to understand how to create a current dependent voltage source but am unable to comprehend how to get my simulation circuit to work.? Is there anything available to describe in detail how to do this?"

Yes; there is the LTspice Help page for H-elements (current-dependent voltage sources).? But most of the reference descriptions there are most helpful for SPICE Netlists, and are a little vague about applying the same syntax to schematic symbols.

Assuming that you are using a schematic:

Voltage sources are our "ammeters".? Put a voltage source (probably set to 0V, but could be non-zero if that fits the rest of your circuit) in the branch where you want to sense the current, that will control your CCVS.

Add an H element where you want it.? Then right-click on the H that is by itself.? Edit that field so that it looks something like this:

Vxxx yyy.y

where Vxxx is the name (reference designator) of the voltage source that is the "ammeter",

and yyy.y is the transresistance or gain (in ?volts/amps) that you want.

Andy



 

What if I want to input a table of data I measured from a unit?? I have multiple input/output pairs that I want to use.? How would I do this??


Sent from Yahoo Mail.


On Monday, August 1, 2016 11:50 PM, "Andy ai.egrps@... [LTspice]" wrote:


?
rmoreno.phone?wrote:

? ?"I've tried to understand how to create a current dependent voltage source but am unable to comprehend how to get my simulation circuit to work.? Is there anything available to describe in detail how to do this?"

Yes; there is the LTspice Help page for H-elements (current-dependent voltage sources).? But most of the reference descriptions there are most helpful for SPICE Netlists, and are a little vague about applying the same syntax to schematic symbols.

Assuming that you are using a schematic:

Voltage sources are our "ammeters".? Put a voltage source (probably set to 0V, but could be non-zero if that fits the rest of your circuit) in the branch where you want to sense the current, that will control your CCVS.

Add an H element where you want it.? Then right-click on the H that is by itself.? Edit that field so that it looks something like this:

Vxxx yyy.y

where Vxxx is the name (reference designator) of the voltage source that is the "ammeter",

and yyy.y is the transresistance or gain (in ?volts/amps) that you want.

Andy





 

> What if I want to input a table of data I measured from a unit?? I have multiple input/output pairs that I want to use.? How would I do this?

Then you don't need a current/voltage dependent current/voltage source, just a behavioural source or a VCVS/CCVS. For behavioural sources, the syntax is:

table( f(x), time0, value0, time1, value1, ...)? ; f(x) = any time-dependent (or not) quantity

and for CCVSs/VCVSs:

table( time0, value0, time1, value1, ...)? ; the input is implicitly used.

These are assuming you need an input that needs to be passed (transformed) through the table. Otherwise, if all you need is to generate data based on a table, a simpe current/voltage PWL="file" source will do.

Vlad
______________________
-- holding, among others:
a universal analog/digital filter, block-level models
for power electronics (and not only), math blocks
with a more stream-lined approach, some digital
ADC, DAC, (synchronous-)counter, JKflop, etc.


 

"
?
rmoreno.phone" asked how to enter a table of measured values for her/his CCVS.

Vlad might have had the table descriptions a little bit confused with respect to your question, because I think the data you have is voltage/current values, not voltage/time values.? You wanted a controlled or dependent source, not an independent source.

Using SPICE's built-in H element (current controlled voltage source or CCVS), LTspice *MIGHT* have the ability to accept a table of current/voltage values.? See the Help pages for E (VCVS) and G (VCCS) elements.? A table is listed as an option. ?"A look-up table is used to specify the transfer function." ?The same 'table' description is not listed for the F (CCCS) and H (CCVS) elements.? I am not sure if that was an omission on those Help pages, or if that option really doesn't exist for those two controlled sources.? The "LTwiki" () is where I usually go when I have questions about the Help pages.? Unfortunately, the LTwiki also doesn't show a table option for the CCVS.? That leads me to believe that you can't use a table with the standard CCVS element.

But LTspice's B-elements can do that and much more.

Here is from the Help page for B-elements:

? table(x,a,b,c,d,...) ??Interpolate a value for x based on a look up table given as a set of pairs of points.

Start with a Bv symbol, then right-click on "V=F(...)" and edit it.? I think (but could be wrong) it should look like this when you are done:

V=Table( I(V4), 0mA, 0V, 1mA, 1mV, 2mA, 1.9mV, 3mA, 2.5mV ...)

where I(V4) means the current measured through V4 (this is your controlling current), and the pairs that come next, are the (current, voltage) pairs that you measured.

I have rarely used the Table() functions in LTspice, so please excuse my inexperience with them.

Regards,
Andy



 

Wow, emails to [LTspice] are not making it again!

Here is a message I sent several hours ago that hasn't shown up yet:

---

"rmoreno.phone" asked how to enter a table of measured values for her/his CCVS.

Vlad might have had the table descriptions a little bit confused with
respect to your question, because I think the data you have is
voltage/current values, not voltage/time values. You wanted a
controlled or dependent source, not an independent source.

Using SPICE's built-in H element (current controlled voltage source or
CCVS), LTspice *MIGHT* have the ability to accept a table of
current/voltage values. See the Help pages for E (VCVS) and G (VCCS)
elements. A table is listed as an option. "A look-up table is used
to specify the transfer function." The same 'table' description is
not listed for the F (CCCS) and H (CCVS) elements. I am not sure if
that was an omission on those Help pages, or if that option really
doesn't exist for those two controlled sources. The "LTwiki"
(www.ltwiki.org) is where I usually go when I have questions about the
Help pages. Unfortunately, the LTwiki also doesn't show a table
option for the CCVS. That leads me to believe that you can't use a
table with the standard CCVS element.

But LTspice's B-elements can do that and much more.

Here is from the Help page for B-elements:

table(x,a,b,c,d,...) Interpolate a value for x based on a look up
table given as a set of pairs of points.

Start with a Bv symbol, then right-click on "V=F(...)" and edit it. I
think (but could be wrong) it should look like this when you are done:

V=Table( I(V4), 0mA, 0V, 1mA, 1mV, 2mA, 1.9mV, 3mA, 2.5mV ...)

where I(V4) means the current measured through V4 (this is your
controlling current), and the pairs that come next, are the (current,
voltage) pairs that you measured.

I have rarely used the Table() functions in LTspice, so please excuse
my inexperience with them.

Regards,
Andy


 

Thanks to everyone who expertly explained how to accomplish this.? With all your help I was able to get my simulation to work?using the table of test data I collected.?? Thank you for helping me.?


Sent from Yahoo Mail.


On Thursday, August 4, 2016 8:31 AM, "Andy ai.egrps@... [LTspice]" wrote:


?
"
?
rmoreno.phone" asked how to enter a table of measured values for her/his CCVS.

Vlad might have had the table descriptions a little bit confused with respect to your question, because I think the data you have is voltage/current values, not voltage/time values.? You wanted a controlled or dependent source, not an independent source.

Using SPICE's built-in H element (current controlled voltage source or CCVS), LTspice *MIGHT* have the ability to accept a table of current/voltage values.? See the Help pages for E (VCVS) and G (VCCS) elements.? A table is listed as an option. ?"A look-up table is used to specify the transfer function." ?The same 'table' description is not listed for the F (CCCS) and H (CCVS) elements.? I am not sure if that was an omission on those Help pages, or if that option really doesn't exist for those two controlled sources.? The "LTwiki" () is where I usually go when I have questions about the Help pages.? Unfortunately, the LTwiki also doesn't show a table option for the CCVS.? That leads me to believe that you can't use a table with the standard CCVS element.

But LTspice's B-elements can do that and much more.

Here is from the Help page for B-elements:

? table(x,a,b,c,d,...) ??Interpolate a value for x based on a look up table given as a set of pairs of points.

Start with a Bv symbol, then right-click on "V=F(...)" and edit it.? I think (but could be wrong) it should look like this when you are done:

V=Table( I(V4), 0mA, 0V, 1mA, 1mV, 2mA, 1.9mV, 3mA, 2.5mV ...)

where I(V4) means the current measured through V4 (this is your controlling current), and the pairs that come next, are the (current, voltage) pairs that you measured.

I have rarely used the Table() functions in LTspice, so please excuse my inexperience with them.

Regards,
Andy