Difference between revisions of "ESim/C2/Schematic-Creation-and-Simulation/English"

From Script | Spoken-Tutorial
Jump to: navigation, search
Line 11: Line 11:
  
 
'''Visual cue'''
 
'''Visual cue'''
 
 
 
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
  
 
'''Narration'''
 
'''Narration'''
 
 
 
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''
Line 36: Line 30:
  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | In this tutorial, using '''eSim,''' we will learn to-
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | In this tutorial, using '''eSim,''' we will learn to-
 
+
*create '''circuit schematic'''
 
+
* generate '''spice netlist'''
* <div style="margin-left:1.27cm;margin-right:0cm;">create '''circuit schematic'''</div>
+
* convert spice '''netlist '''to '''ngspice '''format
* <div style="margin-left:1.27cm;margin-right:0cm;">generate '''spice netlist'''</div>
+
* simulate the '''netlist'''
* <div style="margin-left:1.27cm;margin-right:0cm;">convert spice '''netlist '''to '''ngspice '''format</div>
+
* <div style="margin-left:1.27cm;margin-right:0cm;">simulate the '''netlist'''</div>
+
 
+
 
+
 
+
  
 
|-
 
|-
Line 50: Line 39:
  
 
Systems Requirements
 
Systems Requirements
 
  
  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To record this tutorial, we will use-  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To record this tutorial, we will use-  
  
<div style="margin-left:1.27cm;margin-right:0cm;">'''Ubuntu '''Linux OS '''16.04 </div>
+
*'''Ubuntu Linux OS '''16.04
<div style="margin-left:1.27cm;margin-right:0cm;">'''eSim '''version 1.1.2.</div>
+
'''eSim '''version 1.1.2.
 
+
 
+
 
+
  
 
|-
 
|-
Line 65: Line 50:
  
 
Prerequisites
 
Prerequisites
 
 
 
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To practice this tutorial, basic knowledge of '''analog and digital electronics''' is required.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To practice this tutorial, basic knowledge of '''analog and digital electronics''' is required.
 
|-
 
|-
Line 77: Line 59:
  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To launch '''eSim''', double-click on the '''eSim''' icon on your desktop.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To launch '''eSim''', double-click on the '''eSim''' icon on your desktop.
 
 
  
 
|-
 
|-
Line 108: Line 88:
  
  
Note that the project files created, will be saved in the''' eSim-Workspace''' directory, by default.
+
Note that the '''project files''' created, will be saved in the''' eSim-Workspace''' directory, by default.
  
  
Line 135: Line 115:
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Our new project '''RC''' will appear under '''Projects.'''
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Our new project '''RC''' will appear under '''Projects.'''
  
'''Double-click''' on '''RC '''to select the project.
+
Double-click on '''RC '''to select the '''project'''.
  
 
To create the '''circuit schematic''', click''' Open Schematic''' button on the left toolbar.
 
To create the '''circuit schematic''', click''' Open Schematic''' button on the left toolbar.
Line 142: Line 122:
  
 
Click Ok.
 
Click Ok.
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''Yes in''' the''' confirmation '''dialog box.
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''Yes''' in the confirmation dialog box.
  
  
Line 170: Line 150:
  
  
Then select '''R''' and click on '''OK'''. Now click anywhere on the '''editor'''.
+
Then select '''R''' and click on '''OK'''.  
 +
 
 +
Now click anywhere on the '''editor'''.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on the editor once.
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on the editor once.
Line 212: Line 194:
  
  
Type '''eSim_Sources''' in the '''Filter''' field,
+
Type '''eSim_Sources''' in the '''Filter''' field.
 
+
select '''sine''' and click on '''OK'''.
+
 
+
 
+
  
 +
Select '''sine''' and click on '''OK'''.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place sine on the editor
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place sine on the editor
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place the '''sine '''on the '''editor '''as done before.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place the '''sine '''on the '''editor '''as done before.
 
|-
 
|-
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | <span style="color:#000000;">'''Filter'''</span><span style="color:#000000;"> field >> Type </span><span style="color:#000000;">'''gnd'''</span><span style="color:#000000;"> >> select gnd >> click OK >> place on editor</span>
+
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Filter'''field >> Type '''gnd'''>> select gnd >> click OK >> place on editor
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, type '''gnd '''and place a '''ground terminal '''on '''editor'''.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, type '''gnd '''and place a '''ground terminal '''on '''editor'''.
 
|-
 
|-
Line 240: Line 219:
  
  
Now '''place it '''on the editor.
+
Now place it on the editor.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
Line 282: Line 261:
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on editor at preferred location.
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on editor at preferred location.
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place it at the preferred location, by clicking on editor again.
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Place it at the preferred location, by clicking on '''editor''' again.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim schematic window:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim schematic window:'''
Line 303: Line 282:
  
 
Click on '''Place wire '''button >> click '''sine resource '''and drag between Sine and Resistor >> click on it.
 
Click on '''Place wire '''button >> click '''sine resource '''and drag between Sine and Resistor >> click on it.
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''Place wire '''button''' '''from the right toolbar
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''Place wire '''button from the right toolbar.
  
  
Line 329: Line 308:
  
  
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To '''annotate '''the '''schematic components''',  
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To '''annotate '''the '''schematic components''', click on '''Annotate '''button from the top toolbar.
  
  
Click on '''annotate '''button from the top toolbar.
+
Click on '''Annotate '''and then click on '''OK.'''
 
+
 
+
Click on '''annotate '''and then click on '''OK.'''
+
  
  
Line 362: Line 338:
  
  
Click on '''Perform electrical rules check '''button
+
Click on '''Perform electrical rules check '''button on the top toolbar.
 
+
on the '''top toolbar '''bar.
+
  
  
Line 370: Line 344:
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Point to the errors.
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Point to the errors.
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | We can see the errors -* <div style="margin-left:1.27cm;margin-right:0cm;">'''global label not connected''''' ''</div>
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | We can see the errors -
* <div style="margin-left:1.27cm;margin-right:0cm;">and''' a pin is not driven to components'''</div>
+
*'''global label not connected'''
 
+
* and''' a pin is not driven to components'''
  
 
|-
 
|-
Line 380: Line 354:
  
 
Close '''ERC'''
 
Close '''ERC'''
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Ignore''' '''the '''global label not connected '''error,
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Ignore the '''global label not connected '''error, since we have used the '''labels '''for naming the '''nodes '''only.
 
+
since we have used the '''labels '''for naming the '''nodes '''only.
+
  
  
Line 390: Line 362:
  
 
Adding Power Flag
 
Adding Power Flag
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Note that the '''ground terminal pin is '''highlighted by a green arrow in the '''schematic.'''
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Note that the '''ground terminal pin''' is highlighted by a green arrow in the '''schematic.'''
  
  
Line 444: Line 416:
  
  
Click on '''Generate netlist '''button''' '''from the top toolbar.
+
Click on '''Generate netlist '''button from the top toolbar.
 
|-
 
|-
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | <span style="color:#000000;">Click </span><span style="color:#000000;">'''Generate netlist'''</span><span style="color:#000000;"> >> </span><span style="color:#000000;">'''spice'''</span><span style="color:#000000;"> tab >> check </span><span style="color:#000000;">'''Default'''</span><span style="color:#000000;"> >> click on Generate</span>
+
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click '''Generate netlist'''>> '''spice''' tab >> check '''Default'''>> click on Generate.
  
  
Line 459: Line 431:
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim schematic window:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim schematic window:'''
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | A Kicad''' netlist '''of the '''RC circuit '''has been generated.
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | A '''Kicad netlist '''of the '''RC circuit '''has been generated.
  
  
Line 476: Line 448:
  
 
Analysis Tab >> Select '''Transient'''  
 
Analysis Tab >> Select '''Transient'''  
 
 
 
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Let us add '''transient parameters''' in '''Analysis tab.'''
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Let us add '''transient parameters''' in '''Analysis tab.'''
  
Line 498: Line 467:
 
Type '''0 '''in the start textbox.
 
Type '''0 '''in the start textbox.
 
|-
 
|-
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | <div style="color:#000000;">Step time >> 5ms </div>
+
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 +
Step time >> 5ms  
  
<span style="color:#000000;">Stop time >> 30ms </span>
+
Stop time >> 30ms  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, make the '''Step time 5 milliseconds'''
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, make the '''Step time 5 milliseconds'''
  
Line 514: Line 484:
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Kicad to Ngspice Converter:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Kicad to Ngspice Converter:'''
  
<div style="color:#000000;">offset value >> 0</div>
+
offset value >> 0
  
<div style="color:#000000;">amplitude >> 5</div>
+
amplitude >> 5
  
<div style="color:#000000;">frequency >> 50</div>
+
frequency >> 50
  
<div style="color:#000000;">delay time >> 0</div>
+
delay time >> 0
  
<div style="color:#000000;">damping factor >> 0</div>
+
damping factor >> 0
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Enter '''the '''offset value '''as '''0 '''and press '''Tab.'''
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Enter the '''offset value '''as '''0 '''and press '''Tab.'''
  
  
Line 534: Line 504:
  
  
Press the '''Convert '''button to '''convert the kicad netlist to ngspice netlist'''
+
Press the '''Convert '''button to convert the '''Kicad Netlist''' to '''ngspice netlist'''
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
  
Click O'''k.'''
+
Click '''Ok.'''
  
 
Close the '''kicad to ngspice''' tool  
 
Close the '''kicad to ngspice''' tool  
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | A confirmation dialog box appears. Here let's click O'''k.'''
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | A confirmation dialog box appears. Here let's click '''Ok.'''
  
Close the '''kicad to ngspice''' tool by clicking close at top right corner of the window.
+
Close the '''Kicad to ngspice''' tool by clicking close at top right corner of the window.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim Main Window:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''eSim Main Window:'''
  
 
Click on '''Simulation.'''
 
Click on '''Simulation.'''
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''simulation '''from the '''eSim '''toolbar to simulate the '''example.'''
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Click on '''simulation '''from the '''eSim '''toolbar to simulate the example.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
Line 559: Line 529:
  
  
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | The plot waveforms show '''transient analysis '''of the '''RC '''circuit.  
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | The '''plot waveforms''' show '''transient analysis '''of the '''RC '''circuit.  
  
  
Line 568: Line 538:
  
 
Click on '''Potting tab''' >> maximize
 
Click on '''Potting tab''' >> maximize
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Select the python plot window by clicking on '''Plotting''' tab in the dock area.
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Select the '''python plot''' window by clicking on '''Plotting''' tab in the '''dock area'''.
  
  
Maximize the '''Python''' plot window.
+
Maximize the '''Python plot''' window.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
Line 590: Line 560:
 
Multimeter Feature
 
Multimeter Feature
  
 
+
Click on '''Multimeter''' >> Click on '''open schematic '''
<span style="color:#000000;">Click on </span><span style="color:#000000;">'''Multimeter'''</span><span style="color:#000000;"> >> Click on </span><span style="color:#000000;">'''open schematic '''</span>
+
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To view the '''rms values''' of '''node voltages,''' click on the '''multimeter''' button.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | To view the '''rms values''' of '''node voltages,''' click on the '''multimeter''' button.
  
Line 598: Line 567:
  
  
'''Maximise''' the '''schematic '''and '''drag''' the '''multimeter windows''' to the corresponding nodes of schematic.
+
'''Maximise''' the '''schematic '''and drag the '''multimeter windows''' to the corresponding nodes of '''schematic'''.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" |  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | <<PAUSE>>
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | <<PAUSE>>
 
  
 
Now let us summarize.
 
Now let us summarize.
Line 614: Line 582:
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | In this tutorial, we learnt to-
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | In this tutorial, we learnt to-
  
 
+
* Create '''circuit schematic '''
* <div style="margin-left:1.27cm;margin-right:0cm;">Create '''circuit schematic '''</div>
+
* Generate spice '''netlist'''
* <div style="margin-left:1.27cm;margin-right:0cm;">Generate spice '''netlist'''</div>
+
* Convert spice '''netlist '''to '''ngspice '''format
* <div style="margin-left:1.27cm;margin-right:0cm;">Convert spice '''netlist '''to '''ngspice '''format </div>
+
* Simulate the '''netlist'''
* <div style="margin-left:1.27cm;margin-right:0cm;">Simulate the '''netlist'''</div>
+
 
+
 
+
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''  
  
 
Assignment - 1
 
Assignment - 1
 
 
  
  
Line 633: Line 596:
  
  
Watch the '''Kicad '''and the '''Ngspice''' tutorials''' '''on the spoken tutorial website
+
Watch the '''Kicad '''and the '''Ngspice''' tutorials on the spoken tutorial website.
  
  
Create '''voltage divider''' by changing components in eSim and simulate it.
+
Create '''voltage divider''' by changing components in '''eSim''' and simulate it.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''  
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''  
  
 
Assignment - 2
 
Assignment - 2
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, Create the '''astable multivibrator''' in eSim and simulate it.
+
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Similarly, Create the '''astable multivibrator''' in '''eSim''' and simulate it.
 
|-
 
|-
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''
 
| style="background-color:#ffffff;border-top:1pt solid #000001;border-bottom:1pt solid #000001;border-left:1pt solid #000001;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | '''Show Slide:'''
Line 647: Line 610:
 
Forum
 
Forum
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Please post your timed queries in this forum.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Please post your timed queries in this forum.
 
 
  
 
|-
 
|-
Line 666: Line 627:
  
 
http://spoken-tutorial.org
 
http://spoken-tutorial.org
 
 
  
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Spoken Tutorial Project is funded by NMEICT, MHRD, Govt. of India.
 
| style="background-color:#ffffff;border:1pt solid #000001;padding-top:0cm;padding-bottom:0cm;padding-left:0.159cm;padding-right:0.191cm;" | Spoken Tutorial Project is funded by NMEICT, MHRD, Govt. of India.
Line 683: Line 642:
  
 
Thank you.
 
Thank you.
 
 
 
 
|-
 
|-
 
|}
 
|}

Revision as of 09:20, 11 September 2017

Schematic Creation and simulation using eSim

Author: Gaurav Supal

Keywords: video tutorial, eSim, schematic, simulation, EDA, Ngspice, analysis, transient


Visual cue

Narration

Show Slide:

Opening Slide


Welcome to the spoken tutorial on “Schematic Creation and Simulation using eSim
Show Slide:

Learning Objectives


In this tutorial, using eSim, we will learn to-
  • create circuit schematic
  • generate spice netlist
  • convert spice netlist to ngspice format
  • simulate the netlist
Show Slide:

Systems Requirements


To record this tutorial, we will use-
  • Ubuntu Linux OS 16.04

eSim version 1.1.2.

Show Slide:

Prerequisites

To practice this tutorial, basic knowledge of analog and digital electronics is required.
System Computer:

Desktop icon


To launch eSim, double-click on the eSim icon on your desktop.
Show slide:

Launch eSim through Terminal

esim >> press Enter


Alternately, you can also open eSim from the terminal.


To do so, press Ctrl, Alt and T keys together.


Now, type esim and press Enter.

System Computer:

eSim startup window



Click Ok.

eSim window opens up.


Note that the project files created, will be saved in the eSim-Workspace directory, by default.


Press “Ok” in the dialog box.

Let us now create an RC circuit schematic and simulate it.
eSim Main Window:

Creating New Project


Type RC >> click on OK.

Click on the New Project button, to create a new project.


In the “Enter Project name” field, type RC and click on OK.

Please note that spaces are not allowed in the Project name.
eSim Main Window:

Project Explorer >> point to RC >> Double-click >> click Open Schematic

Our new project RC will appear under Projects.

Double-click on RC to select the project.

To create the circuit schematic, click Open Schematic button on the left toolbar.

eSim schematic window:

Click Ok.

Click on Yes in the confirmation dialog box.


Ignore the eeschema error by clicking OK.


The Schematic editor window opens up.

eSim schematic window:

Click on Place component tool >> click anywhere

Let us now add components to the schematic.


Click on Place component tool from the right toolbar.


Now click anywhere on the editor.

eSim schematic window:

Adding Resistor


Type eSim_Devices in the Filter field.


Then select R and click on OK.

Now click anywhere on the editor.

Click on the editor once. Place the resistor R on the editor, by clicking on the editor once.
Press F1.


Zoom in by pressing F1.


You can also do so, by scrolling the scroll button of your mouse.

eSim schematic window:

Adding Capacitor


Filter field >> Type eSim_Devices >> select C >> click Ok

Click on the editor once again.


Type again eSim_Devices in the Filter field.


Then select C and click on OK.

Place capacitor on the editor Place the capacitor C on the editor as done before.
eSim schematic window:

Adding Sine Source



Filter field >> Type eSim_ Sources >> select sine >> click Ok

Click again on the editor.


Type eSim_Sources in the Filter field.

Select sine and click on OK.

Place sine on the editor Place the sine on the editor as done before.
Filterfield >> Type gnd>> select gnd >> click OK >> place on editor Similarly, type gnd and place a ground terminal on editor.
eSim schematic window:

Adding Plots


Filter field >> Type eSim_Plot >> select plot_v1 >> click OK >> place on editor

Similarly, type eSim_Plot, select the plot_v1 and place it on the editor.
Copy plot_v1 >> place on editor We need one more plot for output.


Place the cursor on plot_v1, right click and select copy component.


Now place it on the editor.

This is the plot component used to plot voltages at the required nodes.
eSim schematic window:

Adding Labels


Let us now add labels to the schematic.


The labels are used to name the required nodes in the circuit.


This will help us understand the netlist and connection of our circuit.

Click on Place global label tool >> click anywhere >> Type IN >> click on OK Click on Place global label tool from the right toolbar.


Now click anywhere on the editor.


Type IN in text field and click on OK.

Click on Place global label tool >> click anywhere >> Type OUT >> click on OK Similarly, place one more label OUT in editor.
Let us move and arrange the components to create the RC circuit.
eSim schematic window:

Moving the components

Place cursor on resistor >> press 'M'

To move the resistor, place the cursor on it and press the key 'm'.
Click on editor at preferred location. Place it at the preferred location, by clicking on editor again.
eSim schematic window:

Rotating the components


To rotate the resistor, place the cursor on it and press the key 'r'.


Similarly, move the plot components and labels, as shown.

eSim schematic window:

Connecting wires to the schematic

Now, let us connect the various components using wires.
eSim schematic window:

Click on Place wire button >> click sine resource and drag between Sine and Resistor >> click on it.

Click on Place wire button from the right toolbar.


Click on one end of the sine source.


Move the cursor point to one end of the resistor and click on it.

Similarly, connect all the components as demonstrated here.
eSim schematic window:


The plot components are placed at the output and input nodes.


This helps us to view the corresponding voltage waveforms on simulation.

eSim schematic window:

Annotate the schematic


To annotate the schematic components, click on Annotate button from the top toolbar.


Click on Annotate and then click on OK.


The schematic is now annotated.

eSim schematic window:

Giving values to components

To assign value to the resistor, right-click on it and choose Edit Component.


Click on Value.


Type 1k and click on OK.

Similarly, assign value 1u for capacitor.
eSim schematic window:

Perform ERC check

Click on Perform electrical rules check button >> click on Run.

Now let us do electrical rules check for this schematic.


Click on Perform electrical rules check button on the top toolbar.


Click on Run.

Point to the errors. We can see the errors -
  • global label not connected
  • and a pin is not driven to components


Close ERC

Ignore the global label not connected error, since we have used the labels for naming the nodes only.


Close the ERC window.

eSim schematic window:

Adding Power Flag

Note that the ground terminal pin is highlighted by a green arrow in the schematic.


It means that this pin is not driven by any power source.


To prevent this, let us place a power flag.

Click on Place component tool >> Click on Schematic editor >> Type PWR_FLAG >> click Ok >> place it on the editor


Click on Place component tool.


Click on the Schematic editor.


Type PWR underscore FLAG and Click OK Place it on the schematic editor.

Select wire >> connect PWR_FLAG to gnd


Connect this power flag to the ground terminal using a wire.


This indicates that a power source will be connected here.

eSim schematic window:

Perform ERC check


Now repeat the electrical rules check.


There will be only global label not connected errors, which can be ignored.

Click on Delete Markers >> click on Close. Click on Delete Markers and then click on Close.
eSim schematic window:

Generating Kicad Netlist


Now let us generate the netlist of this circuit.


Click on Generate netlist button from the top toolbar.

Click Generate netlist>> spice tab >> check Default>> click on Generate.


Click Save

Click on the Spice tab.


Check the option Default format and then click on Generate.


Click on Save.

eSim schematic window: A Kicad netlist of the RC circuit has been generated.


Now minimise the schematic editor.

eSim Main Window:

Click on Convert Kicad to Ngspice

Now, let us add simulation parameters to this netlist.


Click on Convert Kicad to Ngspice from eSim toolbar.

Kicad to Ngspice Converter:


Analysis Tab >> Select Transient

Let us add transient parameters in Analysis tab.


By default, Transient is selected.


Scroll down to enter values in the Transient analysis fields.

Kicad to Ngspice Converter:

Inserting values


Start time >> 0ms
Make Start Time equal to 0 by doing the following:


Type 0 in the start textbox.

Step time >> 5ms

Stop time >> 30ms

Similarly, make the Step time 5 milliseconds

and Stop time 30 milliseconds.

Kicad to Ngspice Converter:

Source Details Tab

Let us add the source details

To do so, click on Source details tab.

Kicad to Ngspice Converter:

offset value >> 0

amplitude >> 5

frequency >> 50

delay time >> 0

damping factor >> 0

Enter the offset value as 0 and press Tab.


Type 5 for amplitude, 50 for frequency and 0 for both delay time and damping factor.

Kicad to Ngspice Converter:

Press Convert button

We will talk about the Ngspice Model, Device Modelling and subcircuits tab in later tutorials.


Press the Convert button to convert the Kicad Netlist to ngspice netlist

Click Ok.

Close the kicad to ngspice tool

A confirmation dialog box appears. Here let's click Ok.

Close the Kicad to ngspice tool by clicking close at top right corner of the window.

eSim Main Window:

Click on Simulation.

Click on simulation from the eSim toolbar to simulate the example.


An ngspice terminal and plot windows open along with a python plot window.
Ngspice Plot:


The plot waveforms show transient analysis of the RC circuit.


Close the Ngspice terminal and plot window.

Python Plot Window:


Click on Potting tab >> maximize

Select the python plot window by clicking on Plotting tab in the dock area.


Maximize the Python plot window.

Check IN and OUT nodes >> click plot


To plot the output:

Check the IN and OUT nodes and click on the plot button.


The output plot is shown in blue and input plot in red.

Python Plot Window:

Multimeter Feature

Click on Multimeter >> Click on open schematic

To view the rms values of node voltages, click on the multimeter button.


The Multimeter window opens up, which will be on top of all other windows.


Maximise the schematic and drag the multimeter windows to the corresponding nodes of schematic.

<<PAUSE>>

Now let us summarize.

Show Slide:

Summary


In this tutorial, we learnt to-
  • Create circuit schematic
  • Generate spice netlist
  • Convert spice netlist to ngspice format
  • Simulate the netlist
Show Slide:

Assignment - 1


Here are few assignments for you to solve.


Watch the Kicad and the Ngspice tutorials on the spoken tutorial website.


Create voltage divider by changing components in eSim and simulate it.

Show Slide:

Assignment - 2

Similarly, Create the astable multivibrator in eSim and simulate it.
Show Slide:

Forum

Please post your timed queries in this forum.
Show Slide:

FOSSEE Forum

Please post your general queries on eSim in this forum.
Show Slide:

Textbook Companion

FOSSEE team coordinates the TBC project.
Show Slide:

Acknowledgment

http://spoken-tutorial.org

Spoken Tutorial Project is funded by NMEICT, MHRD, Govt. of India.


For more details, visit this website.

Previous slide


This is Usha from IIT Bombay, signing off.

Thank you.

Contributors and Content Editors

Nancyvarkey, PoojaMoolya, Saurabhbansode, Vineeta