Differences between revisions 2 and 15 (spanning 13 versions)
Revision 2 as of 2008-10-21 18:32:50
Size: 456
Editor: YoichiAso
Comment:
Revision 15 as of 2008-10-21 21:37:42
Size: 4653
Editor: YoichiAso
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
LISO is a circuit simulation and optimization program written by Gerhard Heinzel. It is useful for predicting the behavior of a circuit, estimating the noise, analyzing the stability of op-amps, fitting the measurement with the model, optimizing resistance/capacitance values etc. LISO is installed in /cvs/cds/caltech/apps/linux/LISO/. The LISO maual is [attachment:LISO-manual.pdf [[here|attachment:LISO-manual.pdf]]] LISO is a circuit simulation and optimization program written by Gerhard Heinzel. It is useful for predicting the behavior of a circuit, estimating the noise, analyzing the stability of op-amps, fitting the measurement with the model, optimizing resistance/capacitance values etc. LISO is installed in /cvs/cds/caltech/apps/linux/LISO/. The LISO maual is [[LISO-manual.pdf|here]].

=== liso command ===
The main command of LISO is `fil`. It expects you to run the command always in the LISO installation directory. Since it is inconvenient, I wrote a wrapper script called `liso`. It is in the command search path of `controls` account.
The script works just like `fil` except that you can call it from anywhere. The script takes the same arguments/options as `fil`.
What it does is to convert given paths to absolute paths (if necessary) and change directory to /cvs/cds/caltech/apps/linux/LISO/. Then it runs `fil` passing the arguments given to `liso`.

=== Eagle PCB CAD ===
Eagle is an electric circuit schematic and PCB layout editor (http://www.cadsoft.de/).
There is a free version for non-commercial use. Although its functionality is limited (board size is 100x80mm max, up to two layers, one schematic sheet), it is still useful for small projects.
The free version is installed in /cvs/cds/caltech/apps/linux/eagle/
It generates high quality garber files, so that we can send them to PCB manufactures.
However, the main reason I installed eagle on the controls machines is that eagle can be used as a graphical editor for LISO input files.

LISO input files are ascii text files. Usually you have to edit it using a text editor. A circuit is described as a net list. However it is not a fun to make a net list and there is a good chance of making mistakes.
Using eagle's schematic editor, you can draw a schematic of your circuit, specify input and output points you want to test, specify a node where you want to measure noise and so on. Then you can convert the schematic
into a LISO input file using a user language program (ULP) called `liso.ulp`. A preliminary version of `liso.ulp` was included in the LISO distribution. I enhanced it to be practically useful.
I also created an eagle component library for LISO (`liso.lbr`) to be used with `liso.ulp`.

=== Sample session of analyzing op-amp circuit using Eagle and LISO ===
Open Eagle from a linux machine by typing `eagle` from command line.

From the left pane of the control panel, go to [Projects]->[liso-examples]->[Op``Amp].
Double click on Op``Amp.sch to open the schematic.

A schematic with a simple opamp circuit will show up. It is an inverted low-pass filter.
To convert this schematic into a LISO input file, go to the control panel and find liso.ulp under "User Language Programs".
Right click on it and select "Run in Schematic". A file called "Op``Amp.fil" will be created in the same directory as the schematic (i.e. /cvs/cds/caltech/apps/linux/eagle/projects/liso-examples/Op``Amp/).
This is a LISO input file. To run LISO on it, go to the directory and type `liso OpAmp` .
A plot showing the transfer function of the circuit will be shown.

To change the frequency range, go back to the schematic and change the value of a component labeled "FREQ". To do so, click on attachment:change-val.png in the left side tool bar and then click on the component.
The default value `log 10 100k 300` means "Calculate the transfer function at 300 logarithmically spaced points from 10Hz to 100kHz". You can chose either log or lin for spacing.

The input and output nodes of the transfer function measurement are specified by "uinput" and "uout" components. You can move those components to change the input and output nodes.
You can specify the output format of the transfer function in the value of "uout". The format is explained in the description of the component and in the LISO manual.

LISO related components can be found in [Libraries]->[liso.lbr]. Some descriptions of the components are given in the library.
Basically, you can specify arguments of LISO commands in the value field of each component.
One useful component is GENERAL_INSTRUCTION component. The value field of this component will be directly written into the LISO input file.
So you can put any LISO command by this component.

Other examples can be found in the same directory. OpAmp-Stability.sch shows how to do an op-amp stability analysis with LISO.
OpAmp-Noise.sch is for noise estimation. More complex example can be found in /cvs/cds/caltech/apps/linux/eagle/projects/liso-examples/FSS/FSS_PC_Path.sch , which is the PC path filter of the FSS board.
 

LISO and Eagle on 40m machines

LISO is a circuit simulation and optimization program written by Gerhard Heinzel. It is useful for predicting the behavior of a circuit, estimating the noise, analyzing the stability of op-amps, fitting the measurement with the model, optimizing resistance/capacitance values etc. LISO is installed in /cvs/cds/caltech/apps/linux/LISO/. The LISO maual is here.

liso command

The main command of LISO is fil. It expects you to run the command always in the LISO installation directory. Since it is inconvenient, I wrote a wrapper script called liso. It is in the command search path of controls account. The script works just like fil except that you can call it from anywhere. The script takes the same arguments/options as fil. What it does is to convert given paths to absolute paths (if necessary) and change directory to /cvs/cds/caltech/apps/linux/LISO/. Then it runs fil passing the arguments given to liso.

Eagle PCB CAD

Eagle is an electric circuit schematic and PCB layout editor (http://www.cadsoft.de/). There is a free version for non-commercial use. Although its functionality is limited (board size is 100x80mm max, up to two layers, one schematic sheet), it is still useful for small projects. The free version is installed in /cvs/cds/caltech/apps/linux/eagle/ It generates high quality garber files, so that we can send them to PCB manufactures. However, the main reason I installed eagle on the controls machines is that eagle can be used as a graphical editor for LISO input files.

LISO input files are ascii text files. Usually you have to edit it using a text editor. A circuit is described as a net list. However it is not a fun to make a net list and there is a good chance of making mistakes. Using eagle's schematic editor, you can draw a schematic of your circuit, specify input and output points you want to test, specify a node where you want to measure noise and so on. Then you can convert the schematic into a LISO input file using a user language program (ULP) called liso.ulp. A preliminary version of liso.ulp was included in the LISO distribution. I enhanced it to be practically useful. I also created an eagle component library for LISO (liso.lbr) to be used with liso.ulp.

Sample session of analyzing op-amp circuit using Eagle and LISO

Open Eagle from a linux machine by typing eagle from command line.

From the left pane of the control panel, go to [Projects]->[liso-examples]->[OpAmp]. Double click on OpAmp.sch to open the schematic.

A schematic with a simple opamp circuit will show up. It is an inverted low-pass filter. To convert this schematic into a LISO input file, go to the control panel and find liso.ulp under "User Language Programs". Right click on it and select "Run in Schematic". A file called "OpAmp.fil" will be created in the same directory as the schematic (i.e. /cvs/cds/caltech/apps/linux/eagle/projects/liso-examples/OpAmp/). This is a LISO input file. To run LISO on it, go to the directory and type liso OpAmp . A plot showing the transfer function of the circuit will be shown.

To change the frequency range, go back to the schematic and change the value of a component labeled "FREQ". To do so, click on attachment:change-val.png in the left side tool bar and then click on the component. The default value log 10 100k 300 means "Calculate the transfer function at 300 logarithmically spaced points from 10Hz to 100kHz". You can chose either log or lin for spacing.

The input and output nodes of the transfer function measurement are specified by "uinput" and "uout" components. You can move those components to change the input and output nodes. You can specify the output format of the transfer function in the value of "uout". The format is explained in the description of the component and in the LISO manual.

LISO related components can be found in [Libraries]->[liso.lbr]. Some descriptions of the components are given in the library. Basically, you can specify arguments of LISO commands in the value field of each component. One useful component is GENERAL_INSTRUCTION component. The value field of this component will be directly written into the LISO input file. So you can put any LISO command by this component.

Other examples can be found in the same directory. OpAmp-Stability.sch shows how to do an op-amp stability analysis with LISO. OpAmp-Noise.sch is for noise estimation. More complex example can be found in /cvs/cds/caltech/apps/linux/eagle/projects/liso-examples/FSS/FSS_PC_Path.sch , which is the PC path filter of the FSS board.

Electronics/LISO (last edited 2017-03-08 01:37:01 by AndrewwadeATligoDOTorg)