hyprfrcx
Junior Member level 1
I have a serious problem with Labcenter Electronics, Proteus Professional 8.
What i need is to simulate nonlinear analog current sources with several variables, mainly, a function I(V1,...,Vn,I1,...In). Some matematical functions and if-else conditions.
Nothing so complex but enough for making me to write some expressions or a few lines of code.
An expression, after all.
NODE Command
At first i went into EasyHDL NODE Command, with expressions documented solely in the program help (and in some google site which mainly replicate them in an exact way), like that:
NODE V(MyAnalogPin)
NODE I(MyAnalogPin)
NODE V(MyAnalogPin1,MyAnalogPin2)
NODE I(MyAnalogPin1,MyAnalogPin2)
NODE VOUT(MyAnalogPin)
All them embedded inside a Generator as Local code or as a Text Script enclosed as:
*SCRIPT PROGRAM MYCODE
<NODE declarations>
<expressions>
*ENDSCRIPT
or
*SCRIPT GENERATOR MYSIGNAL
<NODE declarations>
<expressions>
*ENDSCRIPT
The second case is out of my use, because i am clear with signals, i am looking for functions.
None of the written sintaxis worked actually. I didnt find any working sample not any functional tutorial in the whole internet.
SPICE Support
Moreover, i then switched into using a Spice code inside Proteus. My surprise was huge by realizing that the standard Spice function GXXXX is not supported for expressions!. Hence this s not valid when tried:
G1 1 2 3 4 value={<F(V(1),...,V,I(1),...,I)>}
This is confirmed in here by a Proteus specialist.
https://support.labcenter.com/forums/viewtopic.php?f=9&t=6330&p=21028&hilit=EasyHDL#p21063
Hence, i concluded that Proteus simply do not supports the EasyHDL NODE commands for designing an analog block, nor SPICE GXXXX nonlinear expressions.
What i believe is they were removed due to convergence issues, as the Proteus specialist explained in the same post at their forum.
So how should i simulate nonlinear expressions after all?
Or i should simply switch to another, better program?
What i need is to simulate nonlinear analog current sources with several variables, mainly, a function I(V1,...,Vn,I1,...In). Some matematical functions and if-else conditions.
Nothing so complex but enough for making me to write some expressions or a few lines of code.
An expression, after all.
NODE Command
At first i went into EasyHDL NODE Command, with expressions documented solely in the program help (and in some google site which mainly replicate them in an exact way), like that:
NODE V(MyAnalogPin)
NODE I(MyAnalogPin)
NODE V(MyAnalogPin1,MyAnalogPin2)
NODE I(MyAnalogPin1,MyAnalogPin2)
NODE VOUT(MyAnalogPin)
All them embedded inside a Generator as Local code or as a Text Script enclosed as:
*SCRIPT PROGRAM MYCODE
<NODE declarations>
<expressions>
*ENDSCRIPT
or
*SCRIPT GENERATOR MYSIGNAL
<NODE declarations>
<expressions>
*ENDSCRIPT
The second case is out of my use, because i am clear with signals, i am looking for functions.
None of the written sintaxis worked actually. I didnt find any working sample not any functional tutorial in the whole internet.
SPICE Support
Moreover, i then switched into using a Spice code inside Proteus. My surprise was huge by realizing that the standard Spice function GXXXX is not supported for expressions!. Hence this s not valid when tried:
G1 1 2 3 4 value={<F(V(1),...,V,I(1),...,I)>}
This is confirmed in here by a Proteus specialist.
https://support.labcenter.com/forums/viewtopic.php?f=9&t=6330&p=21028&hilit=EasyHDL#p21063
Hence, i concluded that Proteus simply do not supports the EasyHDL NODE commands for designing an analog block, nor SPICE GXXXX nonlinear expressions.
What i believe is they were removed due to convergence issues, as the Proteus specialist explained in the same post at their forum.
So how should i simulate nonlinear expressions after all?
Or i should simply switch to another, better program?