Professional Documents
Culture Documents
Using Emtp RV
Using Emtp RV
This is a printed version of the electronic document Using EMTP Tutorials and Reference.
Table of Contents
1
1.2
New Users................................................................................................................................. 3
Online Documentation............................................................................................................... 3
Tutorials .................................................................................................................................... 4
5.1
5.1.1
5.1.2
5.1.3
5.2
5.2.1
5.2.2
5.2.3
5.2.4
5.3
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
5.4
5.4.1
5.4.2
5.4.3
5.4.4
5.4.5
5.4.6
5.4.7
5.5
5.5.1
5.5.2
5.5.3
5.5.4
5.5.5
5.5.6
5.5.7
5.5.8
5.5.9
Table of Contents
5.5.10
5.6
5.7
Background information.................................................................................................... 29
6.1.1
6.1.2
6.1.3
6.1.4
6.1.5
6.2
Top menus........................................................................................................................ 31
6.2.1
Options menu............................................................................................................. 32
6.2.2
6.2.3
6.2.4
Toolbar ....................................................................................................................... 35
6.3
6.3.1
6.3.2
6.3.3
6.3.4
6.3.4.1
Zooming............................................................................................................... 36
6.3.4.2
6.3.5
6.3.6
6.3.7
6.3.8
6.3.9
6.3.10
6.3.11
Printing.................................................................................................................... 39
6.3.12
6.3.12.1
6.3.12.2
6.3.13
Closing a Design..................................................................................................... 41
6.3.14
Disposing of a Design............................................................................................. 41
6.3.15
Exiting EMTPWorks................................................................................................ 41
6.4
6.4.1
6.4.2
Selection .................................................................................................................... 41
6.4.2.1
6.4.2.2
6.4.2.3
6.4.3
ii
Table of Contents
6.4.3.1
Cut ....................................................................................................................... 43
6.4.3.2
Copy .................................................................................................................... 43
6.4.3.3
Paste.................................................................................................................... 43
6.4.4
6.4.5
6.4.6
6.4.7
6.4.8
6.4.9
6.4.10
6.4.11
6.4.12
6.4.13
6.5
6.5.1
Devices: introduction.................................................................................................. 52
6.5.2
6.5.2.1
6.5.3
6.5.4
6.5.5
6.5.6
6.5.7
Moving a Device......................................................................................................... 57
6.5.8
6.5.9
6.5.10
Pins ......................................................................................................................... 58
6.5.11
6.5.12
6.5.13
6.5.14
6.5.15
6.5.16
Device Naming........................................................................................................ 66
6.6
6.5.16.1
6.5.16.2
6.5.16.3
6.5.16.4
6.5.16.5
6.5.16.6
6.5.16.7
6.5.16.8
6.5.16.9
6.5.16.10
iii
Table of Contents
6.6.1
6.6.2
6.6.3
Built-in libraries........................................................................................................... 73
6.7
iv
6.6.3.1
6.6.3.2
6.6.3.3
6.6.3.4
Work.clf................................................................................................................ 76
6.6.3.5
advanced.clf ........................................................................................................ 76
6.6.3.6
control.clf ............................................................................................................. 77
6.6.3.7
6.6.3.8
control functions.clf.............................................................................................. 78
6.6.3.9
control of machines.clf......................................................................................... 78
6.6.3.10
flip flops.clf.......................................................................................................... 79
6.6.3.11
hvdc.clf ............................................................................................................... 81
6.6.3.12
lines.clf................................................................................................................ 81
6.6.3.13
machines.clf........................................................................................................ 83
6.6.3.14
meters.clf ............................................................................................................ 84
6.6.3.15
6.6.3.16
nonlinear.clf ........................................................................................................ 87
6.6.3.17
options.clf ........................................................................................................... 88
6.6.3.18
phasors.clf .......................................................................................................... 89
6.6.3.19
sources.clf .......................................................................................................... 91
6.6.3.20
switches.clf ......................................................................................................... 92
6.6.3.21
symbols.clf.......................................................................................................... 93
6.6.3.22
transformations.clf .............................................................................................. 94
6.6.3.23
transformers.clf................................................................................................... 96
6.7.1
Signals ....................................................................................................................... 97
6.7.2
Interconnecting Signals.............................................................................................. 97
6.7.3
6.7.4
6.7.5
6.7.6
6.7.7
6.7.8
6.7.9
6.7.10
6.7.11
6.7.12
6.7.13
6.7.13.1
6.7.13.2
Table of Contents
6.7.13.3
6.7.13.4
6.7.13.5
6.7.13.6
6.7.13.7
6.7.14
6.7.14.1
6.7.14.2
6.7.14.3
6.7.14.4
6.7.14.5
6.7.14.6
6.7.14.7
6.7.14.8
6.7.15
6.8
6.7.15.1
6.7.15.2
6.7.15.3
6.7.15.4
6.8.1
6.8.2
6.8.3
6.8.4
6.8.5
6.8.6
6.8.7
6.8.8
6.8.9
6.8.10
6.8.11
6.8.12
6.8.13
6.9
7
7.2
7.2.1
7.2.2
7.2.3
7.2.4
7.2.5
Table of Contents
7.3
7.3.1
7.3.2
7.3.3
7.3.4
7.4
7.5
7.6
7.7
7.8
7.9
7.10
7.11
7.12
7.13
7.14
7.15
7.16
7.16.1
7.17
7.18
7.19
7.20
7.21
7.22
7.23
7.24
7.25
7.26
7.27
7.27.1
7.27.2
7.27.3
7.27.4
7.27.5
7.27.6
7.27.7
8.1.1
8.2
8.2.1
vi
Table of Contents
8.2.2
8.2.3
8.3
8.4
8.5
8.6
8.7
8.8
8.9
8.10
8.11
8.11.1
8.11.2
8.11.3
8.12
8.12.1
Masking................................................................................................................. 179
8.12.2
9.2
9.3
9.4
9.5
9.6
9.7
9.8
9.9
9.10
9.11
9.12
9.13
9.14
10
10.1
10.2
10.3
10.3.1
10.3.2
10.4
10.5
10.6
10.7
vii
Table of Contents
10.7.1
10.7.2
10.8
10.9
10.10
10.11
10.12
10.13
10.14
10.15
10.16
10.17
10.18
10.19
10.20
10.21
10.22
10.23
10.24
10.24.1
10.24.2
10.24.3
10.24.4
10.24.5
10.25
11
11.1
11.2
11.2.1
11.3
12
11.3.1
11.3.2
11.3.3
11.3.4
11.3.5
11.3.6
11.3.7
12.1
12.2
12.2.1
12.3
viii
Table of Contents
12.4
12.5
12.6
12.7
12.8
12.9
12.10
12.11
13
13.1
13.2
14
14.1
14.1.1
14.2
Can I install more than one version of EMTP on my computer? .......................... 237
14.2.1
14.2.2
14.2.3
Attributes............................................................................................................... 238
14.2.3.1
14.2.3.2
14.2.3.3
14.2.3.4
14.3
14.3.1
14.3.2
14.3.3
14.3.4
14.3.5
14.3.6
14.3.7
14.4
14.4.1
14.5
14.5.1
14.6
14.6.1
14.6.2
14.6.3
14.6.4
14.7
14.7.1
ix
1 Welcome to EMTP
EMTP is used to study transients in large scale power systems or in arbitrary electrical networks
generally speaking.
This new EMTP version called EMTP-RV is the next generation of this famous software released
recently by the Development Coordination Group (DCG) of the EMTP whose members are:
American Electric Power corporation, CEA Technologies, CRIEPI of Japan, lectricit de France,
EPRI, Hydro One Networks, Hydro-Qubec, US Bureau of Reclamation and Western Area Power
Administration.
The DCG has maintained research and development activities in the simulation of power systems
transients for the last 20 years. Since 1998, the DCG, under the technical leadership of HydroQubec (IREQ), has undertaken a major project for restructuring the EMTP with the target being
the complete rewriting of the software code using the latest software engineering techniques and
the most recent and proven computational methods. The EMTP-RV package was completed in
2003 and supersedes the previous EMTP; it establishes a new standard in the simulation and
analysis of power systems transients.
1.1
EMTP-RV has a powerful GUI called EMTPWorks which is also its simulation environment. It is
designed to efficiently create and maintain small circuits as well as very large scale networks.
EMTPWorks has an open-architecture for maximized user configurability from basic user-defined
model assemblies to more advanced script based programming. EMTPWorks offers script
methods for simple data management tasks to more advanced object attribute settings, library
functions and network device symbol redrawing and updating. Each device is given its data web
using DHTML. Device data web pages can reside on the users computer or anywhere on the
web. The script source code of all device data management functions is available to the user.
EMTPWorks has automatic subcircuit creation methods with unlimited levels of hierarchy.
Subcircuit masking options can accommodate user programming from simple data statements to
more complex scripts and data capture panels.
1.2
EMTP-RV uses a completely new approach for assembling network equations based on sparse
modified-augmented-nodal analysis. A new Jacobian based nonlinear solver eliminates
topological restrictions and allows solving very large scale nonlinear systems with a minimized
number of iterations. In addition to a large library of electrical/electronic circuit and power system
devices, EMTP-RV can solve control systems using block-diagrams. A library of primitive devices
is used to build libraries of specialized control functions. EMTP-RV has a completely new control
system solver and an optional Newton method for finding the ultimate simultaneous solution of all
blocks.
Power electronics circuits can be solved using macro-models, such as ideal switches and
detailed nonlinear functions. Simultaneous switching is achieved by treating the switches in an
iterative loop.
In addition to its time-domain solution EMTP-RV has a complex matrix based steady-state
solution used primarily in automatic initialization of state-variables. Automatic initialization is for
achieving quick harmonic steady-state in the first time-domain cycle. All devices, including the
distributed parameter transmission line models and machines, can be initialized.
Equipped with a fully automatic and dynamic memory management, EMTP-RV minimizes
numerical limitations and topological restrictions for providing to the user an environment of
unsurpassed expressive power. Although complex and powerful, it remains straightforward to
harness for conducting studies at all user levels.
Page 2, EMTP-EMTPWorks
Using EMTP
2 New Users
New users should start with the Quick overview document. Then it is recommended to read the
Tutorials to quickly familiarize with basic program operation.
3 Online Documentation
The documentation is organized into a set of generic documents for describing main functions
and methods, and into a set of specific documents. An electrical network device, for example, has
its own specific set of documentation and it can be accessed only from its help tab.
The Reference section provides detailed background information and procedures for all
the commands and features of the package.
The FAQ & Tech Notes section provides detailed answers to questions about specific
application areas and problem-solving.
See the Table of Contents at left for direct links to these sections.
4 Other Documentation
Some additional documentation is provided for advanced users.
Export (or Report) Script Language
EMTPWorks Export Script Language Reference Manual
JavaScript based scripting methods of EMTPWorks
EMTPWorks JavaScript extensions
5 Tutorials
5.1
After loading the program and opening libraries, you will see the "Welcome to EMTPWorks!" box.
This box allows you to select a design template suitable for your application. Each selection
enables the group of options most commonly used for the application type. All options can be
changed later, if desired.
Select the "EMTP" template.
We have selected a template with options set up for a typical EMTP design. It is possible to
create your own templates and add them to this list to customize the application to your needs.
You will now see an empty schematic drawing window ready for editing.
The creation of your first simple circuit is shown in this video on circuit1.ecf.
Page 4, EMTP-EMTPWorks
Using EMTP
Save the design (File>Save Design As) under the name circuit1.ecf (any name).
5.1.2
Wire editing
EMTPWorks allows you to edit wiring with some built-in "intelligent" rules. It is also feasible to
delete part or a wire or the entire wire.
This wiring movie shows some of the available wiring options.
EMTPWorks keeps automatic internal names for all signals. The user can change any signal
name. It is also allowed to use virtual connectivity, which is connectivity by name. Two signals
with the same name are virtually connected.
This connectivity movie demonstrates some of the available options.
5.1.3
Entering device data is achieved by double-clicking on a given device and opening the device
data web. After completing device data input it is necessary to set up simulations options before
running the simulation.
In this simulation movie, you will see how to enter device data, to enter simulation options and
to view simulation results. There are two separate packages for showing scopes (waveforms):
ScopeView and MPLOT.
5.2
EMTPWorks supports a number of different types of signal connections, such as control signals,
single- and 3-phase power signals and bundles. As you are working with these items, the
program enforces rules concerning what types of elements can be interconnected. In this tutorial
section we will try out the various signal tools.
The previously created circuit had only default power signal types (General Signal):
RLC1
AC1
+ RLC
10,100mH,0
0.57uF
1 /_0
C1
?vi
The General Signal has a default red color. The default depends on the type of device pin you
attach to.
Note that the item General Signal is checked. This indicates that this type of line can adapt to
whatever devices are attached to it. In this case, all attached items have power pins and this line
represents a single-phase power signal.
Select the 3-Phase Signal item in the Line Type submenu. The circuit is now 3-phase. The
3-phase signal is shown in default dark red color and is thicker than the General Signal.
By default all circuit data is assumed to be balanced, but you can modify 3-phase device data by
double-clicking on the device and opening its 3-phase data web.
RLC1
AC1
1 /_0
+ RLC
10,100mH,0
0.57uF
Page 6, EMTP-EMTPWorks
C1
?vi
Using EMTP
Note that this setting not only changes the line we clicked on, but all the other lines in the design
as well.
Optional: Right-click on any signal line in the design and check its line type, verifying that all
signals are now 3-phase.
Whenever the phase setting of a power signal is changed, EMTPWorks attempts to propagate
this change through the design, adjusting all attached devices and signals as needed to maintain
compatibility. In cases where some attached devices are not compatible with this change, a
warning may be issued. It is strongly recommended to use the Edit>Undo menu to correct the
problem, the simulation may encounter problems otherwise.
Use this tool to draw a bus along one side of the existing circuit.
A "3-phase bus" is electrically the same as a "3-phase signal", but its usage in the diagram is
different. A "3-phase signal" is used to simply interconnect components, while a "3-phase bus" is
typically used as a connecting point for multiple 3-phase or single-phase lines.
BUS1
RLC1
AC1
1 /_0
+ RLC
10,100mH,0
0.57uF
C1
?vi
5.2.3
Click anywhere and extend to connect to the bus or start from the bus.
Similarly, use the "Draw Phase B" to create the phase b signal.
Note that the Phase a and b lines are color-coded to distinguish them. The device C2 is 1-phase.
The phase signal name is BUS1a. It is the same for the other phases.
Click OK.
A bundle is a way of grouping any collection of other signals into a single line. It can make a
diagram much simpler by a collection of related lines by one bundle line. The signals in a bundle
can be any combination of power and control signals, but a bundle cannot contain another
bundle.
Click the arrow at the bottom of the "spine" of the breakout symbol and extend a bundle line
away and to the right to a clear area of the diagram.
Right-click at the end of the bundle and select the Breakout command. The resulting box
should contain a list of the existing signals in the bundle, or PHA PHB.
Remove the name PHB from the list so only PHA remains in the name box, then click OK.
Page 8, EMTP-EMTPWorks
Using EMTP
Gain1
PHB
PHA
Hold t0
hld1
Gain2
PHA
1
There is no fixed command for adding signals to a bundle. A bundle contains the sum of all
signals that are attached to it using breakouts. A given breakout can extract any or all of the
signals in the bundle.
Right-click along the line leading from the new Gain2 device to the PHA breakout pin and
select the "Pin List" command.
Note that this list shows the other device connected through the PHA signal inside the bundle.
The pin list also shows the breakout connection points. This is for convenience in locating
connections to the signal on the diagram, even if breakouts are not electrically significant in the
circuit.
The notation after each item (e.g. "1-A3") is the grid location of the item on the drawing sheet.
This can be helpful in locating items in larger designs.
Double-click on any of the items in this list to highlight and use the "Go To" button.
5.3
In this tutorial section we will look at how to use hierarchy to simplify the representation of
complex designs. Using this feature, a symbol on a top-level circuit can itself represent a
subcircuit of any desired size or complexity.
5.3.1
First, we will create a simple subcircuit, and then create the symbol that will be used to represent
it in higher-level circuits.
Using the methods covered in previous tutorials, create the simple circuit shown at left. You
will need one each of the device types R and L in the RLC Branches library.
L1
1mH
R1
+
1
Select the entire interconnected circuit. You can select the entire interconnected circuit
section using:
hold the CTRL button and double-click on any one of the devices, it will select the entire
(physically) interconnected circuit
Select the Create Subcircuit Block command in the Subcircuit submenu of the Options
menu.
Using EMTP
Note that there are some restrictions on names and that the Next button will be disabled if the
name contains blanks or other unacceptable characters.
A subcircuit needs to have special symbols called "Port Connectors" which indicate which signals
in the subcircuit are available for connection through the parent symbol. Since the circuit we
created does not contain any "Port Connectors", the program is offering to add them
automatically.
Select the last option "Add port connectors to all signals with loose ends". The list at the
right should show two entries.
DEV1
P1
P2
The program has replaced our original circuit with a single symbol representing the circuit we
created. Since we provided no hints about names for the ports, it has generated default names.
Numerous options are available for editing and modifying the symbol and the internal circuit.
11
L1
P1
1mH
P2
R1
+
1
You will see that the subcircuit contains our original design with port connectors added to the two
signals. This works well for simple circuits, but for larger subcircuits, we recommend adding
"Port Connectors" manually before coming to this step to ensure that they are named and placed
appropriately.
As a default procedure all freshly created subcircuits are locked, you need to first unlock the
subcircuit before making any changes to its contents.
To unlock a subcircuit (if needed to make changes), right-click in an empty area of the
subcircuit and select "Circuit Info". Then uncheck the checkbox "Read Only".
Right-click in an empty area of the subcircuit and select the "Options>Pop Up"
(CTRL+SHIFT+U) command. This will close the subcircuit and return to the parent circuit.
Double-click on the pin name P1 and enter a new name, for example YY1.
NOTE: The size of the symbol and the positions of the text are not modified by this operation, so
changing from a short name to a long name may not fit well on the symbol. Making manual
changes to the symbol is covered later.
Using EMTP
DEV1
YY1 YY2
Double-click on the symbol again to open the subcircuit and observe that the names on the
port connectors have been changed to match the pin name changes on the parent.
The association between the port connectors in the subcircuit and the pins on the parent symbol
is made by name. It is essential for each pin on the symbol to match exactly one port connector.
In this case, the program is making both changes for us, but if you manually change either the
circuit or the symbol, it is your responsibility to maintain this match.
Go to the "Options" menu, "Part Type" submenu, and select the command "Save to Lib".
If you already have a work library open, you can select it in the list. Otherwise, use the
"New Library" button to create a temporary library in a convenient location. You can call it
"Tutorial Lib" or any other desired name. Select the new library in the list. It is noticed that
the builtin EMTPWorks libraries are locked. The only default unlocked library is named
"Work.clf".
Ensure that the options "Save Symbol Image in its Original Orientation" and "Save Internal
Circuit Definition" are selected. The other options are not critical.
13
We have now saved the symbol to the library complete with the subcircuit definition. This entire
entity can now be freely used in other designs. Note that the data stored in the library is complete
of itself and there is no reference from the library back to this original design. You can modify or
discard this design without affecting the library version or any other designs that use it.
5.3.5
Instead of letting the program place the port connectors automatically, you can place them
manually. This provides more flexibility and is especially useful for large circuits.
The port connectors are selected from "Options>Subcircuit>New Port Connector". Another
approach is to select Port Connectors from the "Pseudo Devices.clf" library.
This movie shows two methods for creating subcircuits by placing port connectors.
Using EMTP
5.4
In this tutorial, we will work from the top level of the design, first creating the symbol and then
later describing its internal definition.
5.4.1 Creating a Block Symbol
Select the New command in the File menu.
In the Left Pins box, type the text "|P PX". The first character is the vertical bar and is used
to force a specific pin type, in this case Power.
In the Bottom Pins box, type "|I SW". This is a vertical bar, followed by the capital letter "I"
and indicates an input pin.
5.4.2
You should now see a square symbol with the requested 3 pins.
Click on pin PX in the list and verify that its function is Power.
Click on PY and verify that it is also a power pin, then click SW and verify that it is an input
pin.
The correct setting of the pin functions is essential as EMTPWorks checks to make sure only
compatible connections are being made as you draw your diagram.
It is important to fix the Part attribute for this new device. Use the "Options>Part Attributes"
command, select the Part attribute and enter the name SW_RL.
Click on the close box (X) at the top right corner of the window to close the symbol editor.
15
Locate the new item "SW_RL" in the library parts list and drag one onto the diagram.
Repeat the above step and place a second copy of the same part on the drawing.
DEV1
SW_RL
PY
SW
PX
DEV2
SW_RL
PY
SW
PX
Click OK
PY
SW
PX
The program has now created a subcircuit automatically, with port connectors added matching
the parent symbol. We need now only add the circuit elements needed to make the internal circuit
definition.
Draw the circuit shown (or any other circuit you like) using part types R, L and Controlled
Switch.
L1
PX
SW
1mH
cSW1
R1
+
PY
1
Using EMTP
At this stage, the actual internal circuit we create is not important. Note, however, that the pin
type of the port connectors is complementary to the pin type of the parent symbol. This will
restrict what type of connections you can make to each port. For example, only control input pins
can be connected to the SW port and only power connections can be made to the PX and PY
ports.
5.4.6 Closing and Verifying the Subcircuit
Close the subcircuit window to return to the top-level circuit.
Double-click on each of the block symbols in turn to verify that they both refer to the same
subcircuit definition.
Make some visible modification to the subcircuit and note that it affects the subcircuit under
both copies of the device.
Only one copy of the subcircuit definition is stored for all instances of the same device type.
Modifying the subcircuit anywhere in this design affects all instances.
5.4.7 Making a Unique Subcircuit
Make sure the subcircuit window is closed.
Click on either one of the block symbols so that exactly one of them is selected.
Go to the "Options menu", move down to "Part Type" and select the "Make Unique Type"
command.
Under the Scope options, select the "Selected Devices Only" option.
options as their default values.
We have now "separated" the selected device so that it now has a different definition than the
other device. It is strongly recommended to select a significant "Type Name" and to make visual
changes to the new device symbol using the "Edit Symbol" right-click menu. In this example we
changed the name and the fill color of the new device.
17
DEV1
PX
SW
SW_RL
PY
DEV2
PX
SW
SW_RL1
PY
Double-click on either device to open it and make a visible modification to the internal
circuit.
Return to the top-level circuit and open the other device and verify that is has NOT
changed, as it is now a distinct device type.
5.5
In this tutorial we will look at some more advanced operations on subcircuit blocks, such as the
use of bundle pins and making custom modifications to block symbols. More information on
subcircuits can be found in Subcircuits and Hierarchy.
You must also read the section on Bundles for detailed description on bundle pin and signal
usage rules.
In the Options menu, select the Subcircuit sub-menu and then the New Port Connector
command.
Click on the Bundle option, then enter the text "L0..5" in the Pin Name or Range box. Make
sure this is L, zero, two dots and 5. This specifies a range of numbered pins.
Click the Add Power button to add the pins to the list.
Using EMTP
Click the Place button. This returns us to the schematic diagram in device placing mode.
Use the left and right arrow keys on the keyboard, if necessary, to orient the port connector
as shown, and place it to the left on the diagram.
Repeat the above procedure, using the New Port Connector command to create a bundle
port with pins "R0..5" and named "R".
Place the new port connector to the right on the diagram, as shown.
Right-click anywhere along the bundle line and select the Breakout command. You should
see the text "L0..5" already placed in the Pins List box.
This new breakout symbol will give us access to the individual signals inside the bundle.
Repeat the above procedure for the R port connector, using the Breakout command to
create circuit as shown at left. As before, you may need to use the arrow keys on the
keyboard to orient the breakout symbol in the right direction.
Use the Save command in the File menu to save the file as "Tutorial Bundle Subcircuit" in
any convenient location. This is only for safekeeping, it is not a necessary part of this
procedure, but is useful in case we discover errors later and wish to return.
19
L5
L4
R5
1
R4
1
L3
R3
+
1
L2
L1
R2
1
R1
1
L0
R0
+
1
Select the Create Subcircuit Block command in the Subcircuit submenu of the Options
menu.
Select the Quick Subcircuit option and enter the name "RL" or any other valid name.
DEV1
The Quick Subcircuit option has cut the selected elements from the circuit and placed them in a
subcircuit block with a default symbol.
5.5.5 Verifying the Subcircuit Block
Double-click on the block symbol to see its internal circuit and verify our original circuit is
there as desired.
Right-click near the end of the R pin on the block symbol and select the "Bundle Info"
command.
Using EMTP
Enter two names, CTRL and SYNC, separated by a blank space, as shown.
Select the Pin Type as Input. NOTE: This selection is important as it determines what type
of signals can be attached to this pin.
Click OK.
You will receive a warning that you have made a structural modification to the device. Click
OK to confirm the change. If you have not unlocked the subcircuit, it will give you a warning
message, but the program will actually automatically unlock the subcircuit.
21
Two new internal pins have been added to the select bundle pin.
Two new signals with the same names have been added to the attached bundle.
The port connector in the internal circuit has had the same two pins added.
The two corresponding signals have been added to the attached bundle in the internal
circuit.
The above operation has made the new internal pins available inside the bundle and it is now our
job to make whatever connections are needed to these pins inside the internal circuit.
Double-click on the block symbol to open the subcircuit. You will notice that the internal
circuit looks exactly the same as before. The above changes have only affected the list of
internal signals in the R bundle and have not made any visible circuit change.
Right-click anywhere along the R bundle (but not to close to either the port connect or the
breakout symbols) and select the Breakout command. You will see that the default entries in
this box now include the CTRL and SYNC signals that we added above.
Delete the text "R0..5" so that we are creating a breakout only for the new signals, then click
OK.
Move the R pin and expand the box so that it appears roughly as shown.
Double-click on the new pin in the pin list and change the name to TEST1.
Using EMTP
Double-click on the new symbol to open the internal circuit. Note that there is no change to
the internal circuit.
Close the internal circuit again. You should receive an error message indicating that the
port TEST1 has no matching port connector.
IMPORTANT: Whenever you make manual changes to a block symbol such as this, it is your
responsibility to update the internal circuit, adding any necessary port connectors and circuitry
needed to make it valid.
Select the New Port Connector command in the Subcircuit sub-menu of the Options menu.
Select the Power port type and enter TEST1 for the port name.
Click the Place button and then place the port connector anywhere on the diagram.
23
dly1
TEST1
SYNC
CTRL
L5
Det1
R4
Detector
rising-pulse
1
L3
R5
+
1
L4
Delay
R3
+
1
L2
R2
+
1
L1
R1
+
1
L0
R0
+
1
Close the internal circuit window again. This time you should get no error message.
This procedure could have been also started by adding the port TEST1 in the subcircuit and then
modifying the device symbol to account for it.
Using EMTP
5.6
When a subcircuit is first created, its symbol pins inherit the phase numbers of the underlying port
pins. The signal (Line Type) type of each pin is blocked through the pin Phase attribute. In this
simple example the subcircuit is given by:
L1
p1
p2
1mH
L3
1mH
DEV1
p1
p2
If you right-click on pin p1 or p2, and select the Attributes item, the Phase attribute is given the
value "=1":
This is done automatically to avoid conflicts between the line types in the subcircuit circuit and its
parent.
25
If it is desired to change the number of phases in the parent or in the subcircuit circuit, then you
must manually adjust the Phase attribute for the related pins. If you forget to make the
adjustment, the contents of the subcircuit may become disconnected or phase corruption may
occur and remain undetected throughout the simulation. The possible complexity of hierarchical
designs makes it almost impossible to automatically propagate phases or the "Line Type" more
generally speaking.
If in the example above, the subcircuit circuit becomes 3-phase:
L1
p1
p2
1mH
L3
1mH
then the Phase attributes of the parent symbol pins p1 and p2 must be set to "=3":
The signals connected to pins p1 and p2 must be manually set to the appropriate "Line Type":
DEV1
p1
p2
Using EMTP
The same procedure is applicable backwards when going from 3-phase to 1-phase.
27
5.7
It is feasible to change the type of the signal entering the subcircuit from power to control. There
are several methods for changing the signal type in the port interface. The simplest method is
given by these steps (applicable to the previous example):
L1
p1
p2
1mH
L3
1mH
Move into the subcircuit and change the power port by an Input (or Output if another case)
port. This can be achieved through "Options>Subcircuit>New Port Connector".
The old port p1 must be deleted and the new port must be named also p1.
L1
SOU
p2
1mH
L3
R1
1mH
SOU
Gain1
1
p1
cI1
0/100
Select the pin p1 in the Symbol Editor pin list and change its "Pin Function" to Input.
More information on signal types can be found in Signal Line Type and Device pin types.
Reference
6 Basic Schematic Editing
6.1
Background information
6.1.1
Design Structure
In EMTPWorks the term "design" refers to a complete, independent logical entity which is saved
in a single file. The following rules outline how a design is stored:
A single design is stored in a single file and no logical connections are made between
designs. All information required to display and edit a design is stored in the design file.
A design never makes reference to external library files. When a library device is used,
all information needed is read from the library and stored with the design. Changing the
original library definition will not automatically update the design. More information on
the relationship between symbol libraries and designs can be found in About Device
Symbols.
When a design file is opened, the entire contents of the design are read into memory.
This means that design sizes are limited by the available memory in your computer and
increasing the memory allocated to the program will increase the size of the designs
you can work with.
A number of user-settable parameters are stored with the design and affect the entire
design when changed. These include:
6.1.2
hierarchy mode
In a hierarchical design (that is, one in which a symbol can represent a nested circuit
block), all hierarchy levels are stored in a single file. More information on hierarchical
design is in Hierarchy Overview.
What is a Circuit
Each page is viewed in a separate circuit window and any or all pages in a circuit can
be displayed on the screen simultaneously.
A page is drawn on the screen as if it was a single piece of paper, although it may have
to be broken up into a number of individual sheets of paper for printing or plotting.
Logical connections can be made between pages using a page connector device. Two
versions of this device can be found in the built-in "Pseudo Devices.clf" library. The
"Page Conn output signal" device is used to interconnect control signals across pages.
The "Page Conn Power Signal" is used to interconnect power signals across pages.
These devices are used only to provide visual information and documentation, since in
reality signals can be connected by name without necessarily using a visible signal line.
29
6.1.3
An EMTPWorks circuit is made up of five types of entities: devices, pins, signals, text objects and
picture objects.
A device is an object having a symbol, signal connection points called "pins", and
optional text attributes, internal circuit and simulation information. A device in
EMTPWorks can correspond to a physical device in a circuit, or it can represent a subcircuit block or a pseudo-device, such as a page connector.
A pin is a connection point on a device. A pin is not an independent entity since it only
exists as part of a device and cannot be created or deleted separately. However, pins
can have attributes, pin numbers and other parameters that may be different from pin to
pin on the same device. A bus (bundle) pin is a special type of pin that represents an
arbitrary number of internal pins. The internal pins are not visible on the schematic but
can still have the same logical properties as other pins.
A text object is used to place a title block or other notation on the diagram. Text can be
typed and edited directly within EMTPWorks, or can be created externally and pasted
onto the diagram from the clipboard. Text objects are not associated with any other
object and are not accessible through net or component lists. The attribute facilities
should be used to associate text with specific devices or signals.
A picture object is used to place any graphics item imported from another program or
the symbol editor tool via the clipboard. The Schematic tool cannot edit picture objects
directly, other than moving, deleting and copying them whole. They can, however, be
pasted into a symbol editor (or other application) window, edited using the device
symbol tools, then copied and pasted back into the schematic
6.1.4
A design template is simply a normal design file that has its sheet size, attribute fields, hierarchy
mode and other settings pre-defined for the application at hand. The simplest way to create a
template may be to take an existing design that is set up the way you like it, delete all the circuit
elements and extra pages out of it and save it in the appropriate template directory.
When you create a new design and select one of the template files listed, EMTPWorks just reads
the file in the normal way, then renames it "Circuit1" (or the next available number), and
disassociates it from the original file so that it cannot accidentally be Saved on top of the
template. In all other respects, creating a new design using the New command is the same as
doing an Open on the template design. All the settings and contents of the design template file
become part of the new design.
More information on "Design Templates" can be found in Design Templates.
Reference
6.1.5
EMTPWorks deals with a number of different types of files. The most important type is the design
file, which contains all the stored data of your schematics. Operations on design files are
discussed in this chapter.
This table summarizes the types of files used in EMTPWorks:
Description
File Extension
More Information
Design Files
ECF
Design Structure
Symbol Library
Files
CLF
Report Script
Files
RFM
JavaScript
Files
JS
Design and
Sheet
Template Files
ECF
NET
Initialization
Files
INI
In addition to the above files an extra set of files is created during the simulation process of
EMTP. More documentation on Input/Output files is available in "EMTP/EMTPWorks Input
Output Files" (see also the Help tab of the dialog box "Input output files" opened from
"EMTP>View Output Files").
6.2
Top menus
The standard menus start with the File menu. The > character is used to denote submenus.
Each time a menu item (submenu) is highlighted a tooltip appears on the status bar located at the
bottom of the EMTPWorks window. The Toolbar icons (tools) are described in Toolbar.
The following bullets provide documentation links to the non-obvious options.
File>Revert: Revert to the last saved version of this design. See Reverting to a Saved
File.
File>Libraries: Various library maintenance functions. See the section Working with
Symbol Libraries for detailed information on this option.
Edit>Past Special: Paste from the clipboard with options. See Paste Special.
Edit>Name: This is the same as the Naming tool used for device attributes, pins and
signal attributes. Selecting and clicking on a device, signal or pin gives access to the
name attribute. Selecting and clicking on a visible attribute gives access to that attribute
contents.
Edit>Draw Signal: creates a general signal. See Signals. This function is also available
from the Draw Signal tool.
31
Edit>Draw Bundle: Draw a bundle (signal grouping) line. See Bundles. This command is
also available from the Draw Bundle tool.
Edit>Draw 3-phase Bus: Draws a 3-phase power system bus. See Signal Line Type.
Edit>Draw Phase A: Draws the phase A of a 3-phase signal. Also available from the
Draw Phase A tool. See Signal Line Type.
Edit>Draw Phase B: Draws the phase B of a 3-phase signal. Also available from the
Draw Phase B tool. See Signal Line Type.
Edit>Draw Phase C: Draws the phase C of a 3-phase signal. Also available from the
Draw Phase C tool. See Signal Line Type.
Zap: Select the Zap (delete) cursor. See Deleting a Device and Hide a Visible Attribute
Value. This command is also available from Zap (delete) tool.
View>Parts Palette: Shows the Parts Palette. See Placing and Editing Devices. Also
available from the Parts Palette tool.
View>Workbook: Selects the workbook mode. This mode shows a tab for each opened
design.
Drawing>Find: Opens a scriptable find tool. See Locating Circuit Objects with the Find
Tool.
Drawing>Go To Selection: Zoom to the selected item. See also Locating Circuit Objects
with the Find Tool.
Drawing>Pages: Create, delete and modify circuit pages. See Adding, Deleting and
Titling Circuit Pages.
Drawing>Import Sheet Info: Used to set the sheet border and background style. See
also Importing Sheet Settings from another Design, Page or Template.
Drawing>Sheet Size Wizard: View and change sheet size. See also Setting Sheet Sizes
and Borders and Custom Sheet Size using Sheet Size Wizard.
Drawing>Border Wizard: View and change border settings. See Border Wizard.
6.2.1
Options menu
Options>Orientation: Sets the orientation of the next placed symbol (device). See also
Placing and Editing Devices.
Options>New Breakout: Creates a breakout symbol for a bundle. See also Using
Bundle Breakouts: New Breakout.
Options>Design Attributes: View and change design attributes. See Entering Design
Attributes and Predefined Attribute Fields.
Options>Define Attribute Fields: Create or modify attribute field definitions. See Defining
Attribute Fields.
Options>Pop Up: Close the current subcircuit and go to the parent level.
Options>Naming: Various naming options for devices and signals. See Using the AutoNaming Features, Signal Auto-Naming Options and Device Naming Options.
Options>Part Type>Make Unique Type: Make a new part type definition for the selected
device. See Make Unique Type and Tutorial 4: Creating a Subcircuit Top Down.
Reference
Options>Part Type>Update from Lib: Update the selected device from a library. See
Update from Lib.
Options>Part Type>Save to Lib: Save the part definition of the selected device to a
library. See Save to Lib.
Options>Part Type>Library to Circuit: Places all devices from the library into the current
circuit. See Library to Circuit.
Options>Part Type>Circuit to Library: Save all symbol definitions from the current
design to a library. See Circuit to Library.
6.2.2
Design menu
This menu is all scripted. It is created in the EMTP.INI file (see Creating Custom Menus) and
uses the EMTPWorks scripting techniques for programming various tasks. You can open the
scripts associated to each item and learn on script programming methods. Documentation on
the used scripting languages is available in Other Documentation.
Design>Create Project Directory: You can use this function to create folder on your hard
disk for saving the design file and all related files from EMTP simulations. This should
be the normal approach for each study. You should not save any design files into the
EMTPWorks program folder. This command is similar to the New>Folder command
available in Windows.
Design>Exclude Devices: Exclude the selected devices from the Netlist. This command
is similar to the Exclude/Include available from device right-click menu. The difference is
that in this case it can act on one or more selected devices in the design. You can
select entire circuit sections using the Shift and Ctrl keys while clicking on devices, or
using a bounding box. See Device right-click menu.
Design>Include Devices: Include the selected devices back into the Netlist. This
command is similar to the Exclude/Include available from device right-click menu. There
is no change if the selected devices are already included. The difference is that in this
case it can act on one or more selected devices in the design. You can select entire
circuit sections using the Shift and Ctrl keys while clicking on devices, or using a
bounding box. See Device right-click menu.
Design>Signal Params: Allows setting properties for selected signals. This is similar to
the item Signal Parameters available from individual signal right-click menu (see
Signal right-click menu). The difference is that you can now selected one or more
signals and apply simultaneous changes.
Design>Utilities>Run a script: Allows to select and run a script on the current design.
Design>Utilities>Delete generated files: Deletes all files generated for the simulation.
More information is available from the appearing dialog.
33
Design>Patch: Special patch function applied to the design. This is provided for
upgrading design templates and/or updating devices. You may be asked to perform this
command when a simulation results into an error or when a new option became
available. The design patch level is saved into the attribute PatchLevel. It is not harmful
to run this command on any design, since the patch level will be automatically detected
and is applicable for the current version of the program.
Design>Patch Devices: Special patch function applied to devices. This is provided for
upgrading devices or fixing device bugs. You will be asked to perform this command
when a simulation results into an error or when a new option became available. The
device patch level is saved into the attribute MPLevel.
6.2.3
EMTP menu
This menu is created in the EMTP.INI file (see Creating Custom Menus). It is all scripted and
designed for running EMTP simulations.
EMTP>Simulation Options: Set EMTP simulation options. The appearing dialog has
help sections for explaining various options. This command is usually the first step
before running a simulation.
EMTP>Star EMTP: Generates the EMTP Netlist and runs the simulation.
EMTP>Start EMTP (do not generated Netlist): Same as above, only now the Netlist is
not regenerated and the previous Netlist is used if available.
EMTP>Generate and open EMTP Netlist: Same as above, only now the Netlist is
opened in the file editor.
EMTP>View Output Files: Top level access to various output files resulting from an
EMTP simulation.
Reference
6.2.4
Toolbar
Zap (delete)
Open
New
circuit/text/symbol
Draw Bundle
Draw Phase A
Parts Palette
Pointer
Draw Phase B
Properties
Save
Print
Export
Draw Phase C
Duplicate
Export Again
Freehand drawing
Cut
Copy
Naming
Paste
Attribute Probe
Draw signal
Magnify
Text
Fit to window
Normal size
The Freehand drawing tools allow using 6 new drawing tools for freehand drawing over the
schematic. The resulting objects can be resized and offer other options such as coloring.
6.3
6.3.1
Basic Operations
Creating a New Design
A new design is created by selecting the New command in the File menu, then selecting Design,
and then choosing from one of the available templates. The new design will consist of an empty
circuit with a single page. This page will appear in a circuit window and given a default name. The
New command does not create a disk file. The design exists only in memory until you do a "Save
As" from the File menu. It is recommended to save the design files into personal directories and
not into the standard "Program Files" section.
Your circuit diagram is created by first placing one or more devices in the circuit window (as
described below), and then interconnecting the device pins with signal connections.
6.3.2
Choosing a Template
EMTPWorks does not have a fixed set of templates, but rather displays the ones that are
available in the designated Templates folder. The default EMTP template file "EMTP.ecf" is found
under the program directory Templates. A template may contain a variety of initial settings for
options and items such as a sheet border and title block, that make it easier for you to get started
on a design. You can create your own templates that suit your needs, once you are comfortable
with the basic operation of EMTPWorks. The templates are part of the open architecture methods
of EMTPWorks and should be used with care not to corrupt simulation data and built-in essential
attribute data.
35
It is important to remember that program updates may change the built-in template files. If you
have created your own template files from the existing template file, you may need to adjust it for
upgrading to include new attributes and settings. The changes are usually available through
patch scripts, but some changes maybe more complicated, so that the recommended approach is
to recreate your template file by reapplying your modifications to the latest template file
EMTP.ecf.
See Design Templates for more information on creating design templates.
6.3.3
Opening a Design
Locate the file using the Windows Explorer and double-click on the files icon. If
EMTPWorks is not already running, it will be started up. If it is already running, it will
come to the front and the selected file will be opened.
When you open a file, the circuit data is read into memory in its entirety and no more access to
the disk file is required.
There is no fixed limit on the number of designs that can be open at once, although the complete
contents of all open designs must fit into memory.
6.3.4
In addition to the standard scroll bars, EMTPWorks has these convenient features for moving
around a diagram.
6.3.4.1
Zooming
Reduce to Fit
Sets the scale factor and centers the display so that the
entire diagram fits on the screen. If the size of the diagram
and the size of the window is such that this would require a
scale factor of less than 20%, then the scale is set to 20%
and the diagram is centered. If the diagram fits completely
in the window at 100%, then the scale is set to 100% and
the diagram is centered.
Enlarge
Reduce
Reference
The Magnify tool in the toolbar is a powerful tool for moving around in a schematic diagram. It can
be used to zoom both in and out and can control the exact area displayed on the screen.
Clicking and releasing the mouse button on a point on the diagram will zoom in to that
point by one step.
Clicking and dragging the mouse down and to the right zooms in on the selected area.
The point at which you press the mouse button will become the top left corner of the
new viewing area. The point at which you release the button will become approximately
the lower right corner of the displayed area. The circuit position and scaling will be
adjusted to display the indicated area.
Clicking and dragging the mouse upward and to the left zooms out to view more of the
schematic in the window. The degree of change in the scale factor is determined by
how far the mouse is moved. Moving a small distance zooms out by one step
(equivalent to using the Reduce command). Moving most of the way across the window
is equivalent to doing a "Reduce to Fit".
6.3.4.2
Panning method
Another convenient method for moving around a design is to hold down the Ctrl key, click and
hold down the left mouse button while moving the mouse. This allows moving the design page in
any direction.
6.3.5
In EMTPWorks, each circuit page is displayed in a separate window that can be opened, closed,
scrolled and zoomed independently. The Pages command can be used to display any existing
page, as well as adding new pages and setting page order and title. The Pages command can be
found in the Drawing menu in the main menu bar, or in the circuit popup menu which is displayed
by right-clicking in an empty location in the diagram.
See more information on the Pages command in Adding, Deleting and Titling Circuit Pages.
6.3.6
The find tool allows you to locate any device, signal or pin by name or other parameter. It will
automatically open closed pages and adjust zoom and scrolling to highlight the located objects.
To use it:
Select Find in the Drawing menu.
Select the type of object you wish to search for, devices or signals.
Enter the name of the object to search for, or other search criteria.
The Find tool automatically displays the first item found. The list of found items can be used to
look at any other objects matching the search criteria. You can also use wildcards as explained in
the help menu "?" of the Find tool window. The command "Go To Selection" can be used to zoom
on the found object.
The Find tool is scriptable and can be customized to find objects or scan the design for many
different purposes. See Creating Scripts for the Find Tool.
6.3.7
The Browser tool is a convenient way of viewing all objects in the design in tabular format.
Clicking on any item in the Browsers spreadsheet area automatically displays the corresponding
item in the schematic. To display the Browser, select the Browser command in the View menu.
See also Browser for attributes.
37
6.3.8
Saving a Design
An open design can be saved to disk using the standard Save and "Save As" commands in the
File menu. Save saves the circuit back into the file that was most-recently opened. It will be
disabled if no file has been opened or if youve created a new design that has never been saved.
If you select "Save As", a standard file save box will be displayed requesting the name the new
file. The default name will be the current title of the circuit window, i.e. the name of the most
recently opened or saved file.
6.3.9
The Revert command in the File menu rereads the current design from the disk file it was last
saved to or read from. If any changes have been made since the last Save, you will be prompted
to confirm the choice before they are discarded.
DXF is a format developed by AutoDesk for use with their AutoCAD series of general
CAD packages. In addition to AutoCAD, most general drafting packages can read and
write DXF. Like WMF, a DXF file is strictly a graphical representation of a diagram and
does not contain all the information necessary to construct a logical schematic.
EMTPWorks has no ability to read DXF files. Note that Enhanced Metafile and bitmap
pictures that have been pasted onto a diagram (e.g. for a logo in a title block) are not
exported to DXF.
Select either "Export all Pages" or "Export Current Page Only", as appropriate.
If desired, click the Browse button to enter a different filename. The default will be the same
name as the design with the extension changed to "WMF".
Select the appropriate color option. If you choose the "Export Color Information" option,
EMTPWorks will choose the closest standard DXF color for each object on the schematic.
Choose whether you want to use Release 12 or Release 13 format. Release 13 provides
better representation of curves and ellipses, but is not compatible with all readers. You
Reference
should try a test run with the desired target application (making sure your test includes a
variety of symbols) before doing any major conversions.
Select either "Export all Pages" or "Export Current Page Only", as appropriate.
If desired, click the Browse button to enter a different filename. The default will be the same
name as the design with the extension changed to "WMF".
For some applications it is feasible to gain advanced editing capabilities by simply copying and
pasting an EMTPWorks circuit into a desired application window.
6.3.11 Printing
The Print command allows you to print all or part of your circuit diagram to any printer or other
output device that is selectable as a printing device.
39
If your design has multiple pages or hierarchy levels, you will be asked which of these you
want to modify, so make the appropriate selection, and click Next.
The Wizard will have filled in the sheet size setting with the current sheet size, which you
should not change, so just click Next.
Select the "Scale to Fit Printed Page" option and adjust the controls to print on 1 wide by 1
high.
Click Finish.
When the design is printed, each page will be scaled as needed to fit on a single sheet of paper
according to the current printer settings.
More information on sheet size settings is given in "Custom Sheet Size using Sheet Size
Wizard"Setting_Custom_Sheet_Size_using_Sheet_Wizard.
6.3.12 Backup Procedures
EMTPWorks has several backup features to allow you to fine-tune your backup strategy to suit
your requirements. These features are controlled by inserting keywords in the INI file, as
described in the following sections.
The design is saved to a new file with the original design name in the same directory.
Note that the "created date" of the new file is set to be the same as the old file so it will retain its
historical created date.
The auto-backup feature (on by default) is enabled by placing the following line in the INI
(EMTP.INI) file:
Backup = On
See [Drawing] section of INI file.
If a disk failure occurs (such as disk full) while the file is being saved, the existing file will already
have been renamed to "design.bak" and will not be automatically switched back to its original
name by the program.
Note that if you choose the last option, timed auto-save will be disabled until you quit and restart
the program.
Timed auto-save is an extension of the auto-backup feature and is enabled by placing the
following line in the EMTP.INI file:
AutoBackup = 30
Reference
where "30" can be replaced by any desired number of minutes.
See [Drawing] section of INI file for more information.
6.3.13 Closing a Design
The Close command in the File menu closes all the circuit windows associated with the current
design and removes all data from memory. If the design is hierarchical, all hierarchy levels will be
closed. If any changes have been made to your design since the last Open or Save, then you will
be asked if you wish to save those changes. The same effect is achieved by clicking the "X" box
in the upper left corner of the last circuit window.
6.4
General Editing
6.4.1
The Undo command undoes the last editing operation that was performed. The text of this menu
item will change based on the type of operation. Generally, only schematic editing operations can
be undone. Major structural changes, such as "Define Attribute Fields", adding pages, or any
menu commands involving a dialog box are usually not undoable. EMTPWorks stores up to 10
levels of Undo information.
Undo never changes the contents of the Clipboard. After a Cut operation, for example, Undo will
restore the schematic, but leave the Cut objects on the Clipboard.
The Redo command redoes the last Undo command. It will only be enabled immediately after an
Undo operation. Any other editing operation will disable this item.
Data entered into a device cannot be undone if you click OK.
6.4.2
6.4.2.1
Selection
Selecting Groups of Objects
The "Select All" command in the Edit menu selects all items on the current page except
background items.
41
The Shift key can be used in combination with any of the above methods to select
multiple items. When the Shift key is held, the previously selected items are not
deselected when a new item is clicked on. Thus you can add to the selected group until
the desired collection of items is selected.
See Background Objects for more information on background objects and how to
select them
6.4.2.2
All currently selected objects are deselected by clicking in an empty area of the schematic
window. A single item can be deselected by holding the Shift key while clicking on it.
6.4.2.3
Multi-page Selection
The EMTPWorks commands that operate on selected objects normally only affect objects on the
current page. However, some external tools, such as the Browser and Find, operate across
pages and can select objects on non-current pages. This is done to allow global operations to be
done without having to go to each page and perform separate editing operations. For example,
Find can be used to locate all devices of a particular type and select them, then the Browser can
be used to display and edit their attributes.
Note the following rules for multi-page selection:
Clicking in an empty part of a schematic window deselects all objects everywhere in the
design.
Switching from one schematic window to another does not change the status of any
objects that were selected on either page.
You can select objects on one page, switch to another page, and (using the normal
Shift key technique) add items on the new page to the selected group.
Editing commands like Cut, Copy and Clear will only affect selected items on the current page,
even if objects are selected on other pages.
6.4.3
Clipboard Commands
The standard clipboard commands Cut, Copy, Paste and Paste Special can be used to move or
copy circuit fragments, graphical and text information within a single circuit window, between
multiple windows, and between different programs (e.g. word processing or drafting).
EMTPWorks accepts pictures from the clipboard in either Bitmap or Enhanced Metafile
format. The Bitmap format is typically produced by "paint" programs, such as Windows
Paint, Corel Photo-Paint, Paint Shop Pro, and many others. Bitmap format is not
Reference
generally recommend as it does not scale evenly and gives relatively poor printing
results. Enhanced Metafile Format (EMF) is produced by object-oriented drawing
programs, such as the drawing tools in Microsoft Word, Corel Draw, etc. EMF is much
better suited for creating mechanical drawings or logos since it will reproduce much
better on a variety of output devices. In some cases, programs may place both types of
images on the clipboard. You can use the Paste Special command to select which type
of data is used.
Text Information on the Clipboard
Text information from a word processor or text editor can be pasted into a text block. See
Creating a Text Block for more information.
The EMTPWorks circuit info for the selected items. This data is in a format that only
EMTPWorks can understand and is discarded when you exit the program.
Circuit structural information on the clipboard is discarded when you quit the program. Only
picture and text data is retained. You cannot Copy and Paste circuit data between simultaneous
EMTPWorks sessions.
Cut and Copy work on the currently selected group of circuit objects and will be disabled if no
objects are selected. When items are copied onto the clipboard, their names are copied with
them, which may result in duplicate names. If duplicate signal names are pasted back into the
circuit page they were copied from, then logical connections will be made between the like-named
segments.
6.4.3.1
Cut
Cut removes the currently selected objects from the circuit and transfers them to the clipboard. It
is equivalent to doing a Copy and then a Clear. Cut will be disabled if no objects are selected
As well as the standard location in the Edit menu, there are also Cut, Copy, Paste, Clear and
Duplicate commands in the Device and Signal pop-up menus. These operate on the single object
that was clicked on to display the menu.
6.4.3.2
Copy
Copies the currently selected objects onto the clipboard without removing them. This can be used
to duplicate a circuit group, copy it from one file to another, or to copy a picture of the circuit
group to a drawing program. See the notes on clipboard data above. Copy will be disabled if no
objects are currently selected.
6.4.3.3
Paste
Paste replaces the cursor with an image of the contents of the Clipboard in the circuit window.
The data being pasted may be a circuit group copied from within EMTPWorks, or it may be text or
picture information created by another program. The image of the clipboard data can be dragged
around and positioned as desired. The item will be made a permanent part of your diagram when
the mouse button is pressed. Paste will be disabled if there is no information on the clipboard of a
recognized type.
6.4.4
EMTPWorks checks for signal connections only at "loose ends" in the signal lines being pasted,
i.e. ends of line segments which do not touch devices or other line segments.
43
Connection "hit testing" can be disabled by holding the Ctrl key on the keyboard depressed while
clicking the mouse button (this also applies to single device placing), or by using the Paste
Special command, described above. In this case, the copied circuit will be placed, but no
connections will be made to adjacent items. This allows the group to be selected again (by Ctrldouble-clicking on any device in the group) and moved without interactions with other objects in
the circuit.
The Ctrl key can be also depressed when moving circuit groups with the mouse or arrow keys.
6.4.5
Paste Special
The Paste Special command performs the same operation as the Paste command described
above, but it allows you to select a number of options for how the data is used. Here is a typical
box that will be displayed in response to this command:
Clipboard Format
The clipboard format selection provides a list of the data formats that are currently on the
clipboard and are acceptable to EMTPWorks. The following table summarizes the common
formats that you will see in this list.
Reference
Bitmap Picture
Enhanced
Metafile Picture
EMTPWorks
Picture
EMTPWorks
Circuit
Unformatted Text
Obviously, the exact contents of this list will depend on what Cut or Copy operations have
preceded the selection of the Paste Special command.
Assign new names to all signal. All signals will have a new name assigned except those
that have a hard connection to a pseudo-device such as a bundle breakout or ground
45
connector that forces a name. This guarantees that no connections by name are made
with the new elements.
Keep all existing signal names. This option guarantees that all names are pasted
exactly as they appear in the original. This option is dangerous since hidden signal
names may result in undesired virtual connections. This option is only recommended
when pasting visible signals and connectivity through these visible signals must be
maintained.
Connection Checking
This checkbox allows you to turn off the normal connection checking (see Signal Connection
Checking on Paste) that occurs when circuit elements are pasted.
This option can result in diagrams that look connected, but are not. It is the users responsibility
to make sure the diagram is cleaned up to produce appropriate connection information for Netlist
purposes.
Reference
6.4.6
The "Go To Selection" (from the Drawing menu) command causes the circuit position and scaling
to be adjusted so that the currently selected items are centered and just fit in the circuit window.
The scaling will be set to 100% maximum. This command works even if the selected objects are
on a page other than the current one.
6.4.7
If you wish to adjust all the objects on a page to make room for editing or to re-center an edited
drawing, you can:
Use the Select All command in the Edit menu to select all the objects on the page, then
click and drag inside any device symbol to move the entire group.
Use the "Center in Page" command in the Drawing menu. This command moves all
items on the current page (except text and picture objects marked as "border" items) so
that the circuit objects (taken as a group) are centered in the page. If the "Auto-Expand"
option is turned on in the "Sheet Size Wizard" box, then this command may result in the
number of pages required being reduced.
More information on the "Sheet Size Wizard" command can be found in Custom
Sheet Size using Sheet Size Wizard.
47
6.4.8
The Pages command (Drawing menu) is used to create a new page, display an existing page,
change page order, or set a page title. Executing this command will produce the following box:
Operations on pages are performed by selecting the pages in the scrolling list and clicking on one
of the operation buttons. More than one page can be selected at a time (for all operations except
setting the page title) by holding the Ctrl or Shift keys pressed while clicking in the list.
You can also right-click in an empty area of the circuit (i.e. not on a device or signal) and select
the Pages command as a shortcut to display this box.
Operations in this box cannot be undone.
Opening a Page
The "Open Page" button causes the pages selected in the list to be displayed in a window. If a
window is already open with the selected page, then it is brought to the front.
Deleting a Page
The "Delete Page" button causes the page selected in the list to be deleted from the circuit. Note
that the page must already be empty, i.e. all objects must have been removed from the page (for
example using the "Edit>Select All" and Delete commands) before this will be allowed. Higher
numbered pages will be renumbered when this page is removed.
Reference
The Promote and Demote buttons allow you to change the number order of the pages. Promote
causes all pages selected in the page list to be moved one step toward the front of the list, i.e.
their page number will be reduced by one. All non-selected pages will be renumbered as needed.
Demote similarly moves all selected pages toward the end of the list. Promote will be disabled if
the first page is selected and Demote will be disabled if the last page is selected.
The Duplicate command makes a copy of the selected circuit group which can be dragged and
positioned as desired. This is equivalent to selecting Copy and then Paste, except that the
selected circuit portion is not placed on the clipboard for future use. See the notes under Paste,
above, on how connections are made when a group is placed in the circuit. Note that the
duplicated objects can be rotated using the arrow keys on the keyboard. You can rotate objects
and entire circuits.
6.4.10 Rotation on Paste and Duplicate
Any group of objects being Pasted or Duplicated can be rotated using the same controls as when
placing a device:
The Orientation (Ctrl+Q) command in the Options menu.
Note that these controls are only effective while actually moving the flickering image of the object
being pasted. Each Paste or Duplicate always starts in the same orientation as the source.
The Orientation command cannot be used for Paste or Duplicate since selecting this menu
command will abort the paste operation.
6.4.11 Making a Circuit Read Only
You can make a circuit read-only to prevent accidental modification to it. This is done by following
these steps:
Click in an empty area of the schematic to ensure that no objects are selected.
Choose the Properties command in the Options menu. This will display the circuit info box
already described.
In this box, turn on the "Read Only" switch. Note that this switch is enabled only when the
"Current Circuit" button is selected since it only applies to one circuit level.
In a hierarchical design, the "Read Only" status applies only to the current circuit level in a
hierarchical design and to all levels below it. Note that "Read Only" is not the same as "Locked" in
that it allows you to view the circuit but not change it.
49
For more information on the usage of attributes, see Entering Design Attributes.
Reference
The buttons on the right hand side of this box allow you to choose the scope of the displayed
counts:
Current Page
Current Circuit
Unrestricted Circuits
Entire Design
The following items of information are shown for the selected scope:
nnn devices
nnn signals
51
6.5
6.5.1
Devices are the building blocks of a design. There are electrical (interconnected) devices and
other special devices for setting simulation options or documentation. This generic example
shows interconnected devices:
Signal
Device name
Device
Named signal
RL1
SOURCE
SW1
+
-1/4ms/0
1 /_90
10,100mH
AC1
0.57uF
C1
?vi
Description attribute
Value attribute
RLC1
SOURCE
+ RLC
10,100mH,0
virtual connection
0.57uF
C2
Devices are dragged in from the Parts Palette (can be turned on using "View>Part Palette"). Each
device has a default orientation in its library. The orientation can be changed after placement in
the circuit. Another technique is to double-click on the part name in the library and then drag into
the design. The device becomes stuck to the mouse pointer and the arrow keys can be used to
rotate before a single click for placement. Use the Spacebar or the Pointer tool to stop the
sticking. Instead of using the arrow keys, the user can also hit Ctrl+Q and select the orientation.
The orientation of the next dragged in device can be pre-selected or reset to default using Ctrl+Q.
Reference
Once a device is positioned in a circuit it can be moved around using the mouse key or the
keyboard arrow keys. When a device moves it tries to maintain existing connectivity, but this is a
complex task and the user may have to redo connectivity manually under some conditions.
A device may have no pins, one or more pins. A two-pin device is shown below. The left-pin or
the pin close to the "+" sign is also called a k-pin. The right-pin or the other pin, is also called an
m-pin. The plus "+" sign is used to provide polarity for power devices.
RLC1
left-pin
+ RLC
10,100mH,0
right-pin
The design may have network devices: electrical devices or simulated devices recognized in
EMTP. There are also various other types of devices. The options.clf library has devices for
selecting EMTP simulation options. The symbols.clf library has several devices for symbol
editing. Subcircuits are considered as black box devices.
A Symbol Editor function invoked through the device right-click menu "Edit Symbol", can be used
to edit (modify) a devices symbol (drawing).
Devices are objects appearing in a design drawing. Some devices are recognized by EMTP and
some other devices are used for manipulating data or only for drawing purposes. Although
generally speaking everything on the screen is a placed object, a distinction must be made
between devices, pins, signals and text or picture objects. The following diagram presents a
visual summary on the most important objects appearing in a circuit drawing:
53
Signal
Device name
Device
Named signal
RL1
SOURCE
SW1
+
-1/4ms/0
1 /_90
10,100mH
AC1
0.57uF
C1
?vi
Description attribute
Value attribute
RLC1
+ RLC
10,100mH,0
virtual connection
SOURCE
0.57uF
C2
Devices have attributes that can be made visible. Devices can be selected from built-in or userdefine libraries.
To select a device from a library for placement in the schematic:
Select the desired library using the pop-up menu at the top of the Parts palette. The palette
displays only the contents of only one library at a time. If the library file you need is not
open, you can open it using the "Open Lib" command in either the Libraries sub-menu of the
File menu, or in the Parts palette pop-up menu.
If necessary, use the scroll bar to scroll the list until the desired part name is in view.
Click on the desired part name in the list, hold down the left mouse button and drag it into
the current schematic window.
Or
The cursor will be replaced by an image of the selected device. While moving this image
around, you can use the arrow keys on the keyboard or the Orientation menu command
(Ctrl+Q) to rotate the symbol.
Clicking anywhere in the circuit diagram will make a permanent copy of the device at that
point.
Holding the Ctrl key while clicking will inhibit checking for pin connections. This allows you to
select the device again and drag it to a new position without affecting any existing connections.
6.5.2.1
Device symbols can be placed in any of 8 different orientations, that is, the 4 major compass
points, plus a 180 degree flip around each of those axes. The orientation that a symbol will be
placed in is determined by the current orientation setting. This can be controlled in any of the
following ways:
Reference
The Orientation command (Ctrl+Q) sets the orientation (up, down, left, right, mirrored)
that will be used next time a device is created. When this command is selected, the
following box is displayed:
The orientation can be set by clicking directly on the Orientation command in the
Options menu. This displays a pop-up list of orientation icons that you can choose from.
The orientation ca be set using the arrow keys on the keyboard. Press any arrow key
once to select that direction. Press the same key again to flip the symbol around that
axis.
You can also flip and rotate a device symbol after it has been placed in the schematic. See
Flipping and Rotating a Device.
55
6.5.3
Library contents are displayed in a floating palette window which looks like this:
Drag Bar
Device Symbol
preview
Close Box
Library Selector
Parts List
The Parts palette displays the contents of the selected library file and allows any item to be
selected for placement in the schematic.
Reference
6.5.4
Selecting a Device
To select a device, the cursor must be in the normal pointer mode. A single device is selected by
clicking the mouse button with the pointer positioned anywhere inside the device symbol or in any
displayed attribute value associated with the symbol.
6.5.5
Select a similar device in any other page of any open design and use the Copy
command. Return to the destination circuit and select the Paste command.
After either of these operations, the cursor will be replaced by an image of the selected device
which can be placed by clicking in the schematic, as discussed above.
6.5.6
Deleting a Device
6.5.7
Enter Zap mode by selecting the Zap command (Edit menu) or clicking on the zap tool,
then click on the device in question. You can use this tool to delete several devices. To
go back to the pointer mode, hit the Spacebar.
Moving a Device
Using the arrow cursor keys on the keyboard to "nudge" the selected items one grid
step at a time.
If more than one device is selected, all the devices, and all signals connecting between them
(whether or not selected) will be moved. Signal lines will be adjusted to maintain right angles at
points where moving signal lines intersect with non-moving ones.
6.5.8
A set of four commands for flipping and rotating an existing device symbol can be found in the
device pop-up menu, i.e. by right-clicking on the device. The Rotate Left/Right and Flip
Vertical/Horizontal commands are equivalent to deleting the selected device and replacing it in
the selected new orientation.
6.5.9
When a device is placed into a drawing it has in addition to its symbol several hotspots
(separately selectable sections).
57
Lnonl1
Some non-empty sections (attributes), such as the device name, are visible by default. Other
visible, but empty attributes, become visible by selecting (one click) the device:
Each visible attribute can be separately clicked, right-clicked and moved. You can also doubleclick on an attribute and modify its data if it is not a read-only attribute. Visible attributes are used
to provide visual information to the user on some device data. In the following example, the
Description attribute is given the data "!f?v" which means for this device that it has initial flux and
a voltage scope. For this device the Value attribute ("1" in this case) shows the initial flux data.
Lnonl1
!f?v
1
You can modify visible attribute position by first clicking on the device symbol and then clicking
and holding the attribute while moving the mouse. You can also right-click on a given visible
attribute to set other properties. In this version of EMTPWorks, empty attributes do not keep their
visibility bit, which is why they are given at least one space character to keep visibility status.
Attribute visibility is modifiable.
6.5.10 Pins
Devices may also have pins, which are also separately selectable by clicking. In this example
there are two pins. You can also right-click on a pin for pin data.
Reference
59
The "Device Data" function opens a data input system (web) for entering device model
data. It is the same as double-clicking on the device symbol. Each device data web has
its own Help section for providing information on the device data, model and/or other
functionalities in relation to EMTP or to basic drawing options.
Exclude/Include: will exclude the selected device from the Netlist, it will not be seen by
EMTP and will not be part of the simulation. It becomes an open circuit. Excluded
devices have a color code.
Another information box is opened by selecting the "Properties" command (see section
below on Device info).
Copy name to clipboard: copies the device name to the clipboard. It can be used at a
later stage for pasting (using Ctrl+V) into other name input boxes. It is practical to use
this function for creating name variations among devices using a root name. It can be
also used to name a signal with the name of a connected device.
If this device is a subcircuit it will have a separate menu item "Subcircuit Info".
Part: optional item that provides information on the device Part name. This item will be
used in a future version of EMTP-EMTPWorks.
Reference
Data entered in data fields is tested when the user unclicks the field. Data is also tested when
moving between tabs and clicking on the OK button. The blue color is for existing data. When a
data field is unclicked, the olive color indicates accepted data and the red color signals a
corrected problem.
The OK button registers all data changes.
Almost all data fields have default data. Data errors can revert to default data.
Tooltips and hyperlinks are provided everywhere in data tabs. To learn about a given device
model parameter (such as L) the user can move the mouse pointer over the parameters name:
61
More help is available through hyperlinks and/or in the Help tab or button. Each device is given a
Help tab or a Help button for informing on the device data and behavior.
The EMTP data fields have programming options. If the equality sign is the first character in a
data field, it can be followed by a mathematical expression. The JavaScript syntax is used. An
example is given by entering:
Reference
63
The following table lists the information and options available in this box.
Part Type
Primitive Type
Reference
type value is shown in parentheses. This is normally only
of interest in specialized applications and to the
programmer.
Token Number
Subcircuit Size
Show Pin
Numbers
Lock Opening
Subcircuit
Pin Info
This button displays the "Pin Info" box for the first pin on
the device. Buttons on the Pin Info box allow you to
sequence through the other pins on the same device.
Attributes
NOTE: Clicking Cancel on the Device Info box does not cancel changes that were made in
other boxes displayed using "Device Info" option buttons.
6.5.14 Entering Device Attributes
Device attributes are part of the open architecture feature of EMTPWorks. They can be
manipulated for advanced usage functions. Device attributes are normally maintained by highlevel data input functions available to the user. It could be however convenient to modify them
manually in some cases.
To enter device attributes, either:
Right-click on the device, then select the Attributes command in the pop-up menu, OR,
Select the device by clicking on it, then choose the Properties command in the Options
menu, then click the Attributes button.
This is a script based tool; the scripts are named in the initialization file EMTP.INI (see Attribute
Probe Scripts in [Drawing] section).
65
In this manual, we use the term "device name" to refer to the character string that
identifies a unique device in the circuit. Typical device names might be "U23", "C4",
"IC12A", etc. This is distinct from the "type name" or "part name" that is used to
distinguish the type definition that is read from a device library. Typical part names are
"RLC", "TLM", etc.
The name associated with an object can be placed anywhere on the diagram and will be removed
if the object is removed.
A default position can be specified for any attribute using the methods described in
Using Default Position Fields. If no position is specified, the program will calculate one.
If the name is not visible and if you wish to determine the starting position of the text
before you type it, press and hold the mouse button with the tip of the pencil positioned
inside a device symbol. As long as you hold the mouse button down an I-beam cursor
will track the mouse movements. The device name text will start at the position where
you release the button. Type the desired name and press Enter, or click the mouse
button anywhere. Note that if the device name is already visible this method will create
another copy of the name on the screen. You can hide the extra copy by right-clicking
on it and selecting Hide.
Reference
NOTE: The "Name" is actually an attribute field, so all attribute editing techniques can be used
on it. In particular, you can right-click on the name and the attribute pop-up menu will
appear, giving you a variety of editing commands, described in Attribute text right-click
menu.
67
Note that auto-packaging is not available in pure hierarchy mode. The following naming options
are available:
None
Auto Naming On
Make auto-assigned
names visible
the value set using the "Device Naming Options" menu command.
The numeric suffix is assigned sequentially for each different prefix found in the design. The
names names "U1", "U2", "U3", etc. will be assigned to devices with the value "U" in their prefix
field, and the names "Res1", "Res2", "Res3", etc. for devices having prefix "Res".
Reference
The default device prefix field is Name.Prefix. This can be changed by entering the name of any
other field in the design's PrefixField field (Design attributes). As an advanced option, you can
change the PrefixField field and used a different device prefix field when changing the design
type.
Names are assigned in order sorted first down the columns of the references grid, then
across the page, then through subsequent pages.
Names that have been edited by the user are no longer considered "default" names and
will not be changed.
Devices that are explicitly set to be Unnamed will also become named using the
$NONAME keyword (becomes used as a prefix) discussed in Specifying that a Device
Should be Unnamed When Placed.
69
Enter a dummy value in the value text box. This value will be overwritten by the packager in
any case, but a non-empty value must be placed here to force the attribute field settings to
be stored with the symbol.
Click OK.
The token number can be written out in Netlists or bills of materials whenever a
guaranteed-unique identifier is needed.
Each logical symbol on the diagram (including pseudo-devices) has its own token. In a
Netlist, several symbols may be combined into a single package, so there is not
necessarily a one-to-one correspondence between tokens and physical packages.
Reference
The date stamp is stored using the systems internal integer date format, that is, an unsigned
integer representing the number of seconds since January 1, 1970. When a device is created or
undergoes any major editing operation, the current time value is converted to a decimal string
and assigned to the DateStamp.Dev attribute field. To create a more human-readable date value,
the Export tool has date conversion functions available.
See more information on date conversions in report scripts, see the section Date
and Time References in Export Script Language
6.5.16.10 Disabling Date Stamping
The date stamping process incurs a small overhead in processing time and memory space. If
you are not using this feature and wish to disable all internal processing related to it, you can
place the following line in the initialization file EMTP.INI under the drawing section:
NODATESTAMP
This will take effect the next time you start the EMTPWorks program.
6.6
6.6.1
A design circuit can hold various device types. EMTP can recognize option devices, and
simulated devices. There are also model data function devices.
The primitive devices are recognized in EMTP using the Part device attribute. The primitive
devices can be of power type or control type. A power type device is for modeling an actual
physical electrical component. A primitive control type device is a block diagram device. It is a
higher level device that can be used to simulate actual control system behavior or for creating
electrical network models using function blocks.
Control type devices are devices with control pins. The control type devices are interfaced with
power type devices using sensors (meters) and actuators.
71
sig0
device1
sig4
device4
sig2
device2
sig3
device3
In a lot of designs it is preferable to present the control function in a procedural manner. This can
be achieved using the virtual connection method described in Connecting Signals by Name. This
design is functionally identical to the one above.
6.6.2
sig1
sig0
sig4
device1
sig1
sig3
device2
sig2
device3
sig3
sig3
device4
sig4
sig2
There are currently 3 pin types (also called Pin Functions): Power-pin, Input-pin and Output-pin.
The Power-pin is for power devices. A control device may have input pins and/or output pins.
Signals connected to control device pins are control signals and do not connect to power pins
directly, meter (sensor) functions are needed. An example of sensor taken from meters.clf library
is shown in the figure below. It has a power pin that allows connecting to a power signal. It also
has an output pin that allows connecting into a control device.
Power_side
p2
v(t)
Control_side
The control pins are most often shown with an arrow symbol for showing directionality. The
current version of EMTPWorks does not automatically provide this functionality when subcircuits
are used.
Reference
Some devices may have control and power pins. This is the case of the controlled thyristor found
in the switches.clf library:
Th1
It has two power pins and one control pin which is for the firing signal.
Subcircuits may have mixed pin types. Signals connected to output pins can only connect to input
pins.
Pins that can be interconnected are called compatible pins.
Device pin settings are made during the device creation using the Symbol Editor.
EMTPWorks performs automatic checking for compatible pin types when connecting pins through
signals. This checking is not available when virtual connections are used (see Connecting Signals
by Name).
6.6.3
6.6.3.1
Built-in libraries
Built-in EMTP Libraries
The available libraries are based on primitive devices and masked devices. The primitive devices
are those that are directly recognized in EMTP. The masked devices are based on subcircuits
created from primitive devices used as building blocks.
All primitive devices have a Help tab for detailed documentation on the model and model usage.
Most masked devices have documentation available in the mask; you can also access the
contents of a subcircuit for more documentation on its design and functionalities.
You may also use the Attribute Probe located on the Toolbar (or Edit>Attribute Probe) to get
quick functional information about a device.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
The built-in libraries are locked (the subcircuit file is read-only) to avoid corruption. If you want to
create your own libraries you should place them in your work folders and maintain them
separately. More information on libraries is available in Working with Symbol Libraries and Lib
Maintenance.
73
6.6.3.2
Pseudo Devices.clf
Built-in Library.
You may also use the Attribute Probe located on the Toolbar (or Edit>Attribute Probe) to get
quick functional information about a device.
Device Name
Function
Connects its input signal to its output signal. Useful for bundle
signals.
Control_IN
Control_OUT
Neutral
Node connector
Port_Bundle
Port_In
Port_Out
Port_Power east
Port_Power west
Reference
6.6.3.3
RLC branches.clf
Built-in Library
Help on each device is available from the Help tab of the device. Some devices can be 1-phase
or 3-phase and some other devices can be multiphase.
Device name
Function
C grounded
C non polarized
C polarized
FDB branch
Ground
L grounded
L-C
PI
PI 3-phase
PI line 3-phase
PI multiphase
PI small
PI small 3-phase
PQ load
R grounded
R-L
RL coupled
RL coupled 3-phase
RL coupled
multiphase
RLC
R-L-C
RLC_Load (PQ)
State-space
equations
75
6.6.3.4
Work.clf
This is an unlocked library that can be modified and maintained by the user. The user must
preserve this library between software updates. It is also allowed to maintain personal libraries in
other locations on users hard disk.
6.6.3.5
advanced.clf
Built-in library
Help on each device is available from the Help tab of the device. These models are based on
subcircuits that can be viewed and modified if needed.
Device name
Function
STATCOM
SVC_3TSC_1TCR
Variable Load
individual
Reference
6.6.3.6
control.clf
Built-in Library
Help on each device is available from the Help tab of the device.
Device name
Function
comparator
constant
delay
derivative
detector
f(1/z)
f(s)
f(u)
gain
hold
hold (t0)
input selector
integral
integral with
limits
limiter
loss
output selector
sampler
signal generator
State-Space
sum
sum (weighted)
table function
timer
tracker
truth table
function
6.6.3.7
Built-in Library
77
These devices are provided to imitate EMTP-V3 TACS (Transient Analysis of Controls) functions.
They are constructed using masked subcircuits. In addition to the mask (double-click on the
device), you can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
6.6.3.8
control functions.clf
Built-in Library
This library provides various standard control functions required in control diagrams. The devices
are constructed using masked subcircuits. In addition to the mask (double-click on the device),
you can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
PI controller, dynamic
PI controller, fixed
PID controller, dynamic
PID controller, fixed
PLL
PLL, ideal
PWM, ramp reference
PWM, triangular reference
delayed pulse on rising-edge
in-range detector
rising-instant detector
time-controlled pulse
6.6.3.9
control of machines.clf
Built-in Library
This library provides various standard control functions used for synchronous machines. The
devices are constructed using masked subcircuits. In addition to the mask (double-click on the
device), you can access the contents of each subcircuit for more documentation on its design and
functionalities.
Reference
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
exciter EXST1
exciter EXST1 pu
exciter EXST2
exciter EXST2 pu
exciter IEEET5
exciter IEEET5 pu
exciter IEEEX1
exciter IEEEX1 pu
exciter SEXS
exciter SEXS pu
governor/turbine IEEEG3
governor/turbine IEEEG3 pu
governor/turbine IEESGO
governor/turbine IEESGO pu
6.6.3.10 flip flops.clf
Built-in Library
This library provides various flip-flop functions that can be used in control diagrams. The devices
are constructed using masked subcircuits. In addition to the mask (double-click on the device),
you can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
D, falling clock
D, falling clock, full
D, rising clock
D, rising clock, full
79
D, unclocked
D, unclocked, full
J-K, falling clock
J-K, falling clock, full
J-K, rising clock
J-K, rising clock, full
J-K, unclocked
J-K, unclocked, full
S-R ideal, falling clock
S-R ideal, falling clock, full
S-R ideal, rising clock
S-R ideal, rising clock, full
S-R ideal, unclocked
S-R ideal, unclocked, full
S-R nand, falling clock
S-R nand, falling clock, full
S-R nand, rising clock
S-R nand, rising clock, full
S-R nand, unclocked
S-R nand, unclocked, full
S-R nor, falling clock
S-R nor, falling clock, full
S-R nor, rising clock
S-R nor, rising clock, full
S-R nor, unclocked
S-R nor, unclocked, full
T, falling clock
T, falling clock, full
T, rising clock
T, rising clock, full
T, unclocked
T, unclocked, full
universal
Reference
6.6.3.11 hvdc.clf
Built-in Library
This library provides various devices (building blocks) used in dc transmission studies. The
devices are constructed using masked subcircuits. In addition to the mask (double-click on the
device), you can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
12-pulse blocking
12-pulse commutation v
12-pulse doubling
12-pulse firing
12-pulse firing (double pulsing)
12-pulse generator
6-pulse blocking
6-pulse commutation v
6-pulse doubling
6-pulse firing
6-pulse firing (double pulsing)
6-pulse generator
Bridge 6 pulse
6.6.3.12 lines.clf
Built-in Library
Help on each device is available from the Help tab of the device. Some devices can be 1-phase
or 3-phase and some other devices can be multiphase.
Device name
Function
CP 1-phase
CP 3-phase
CP double
81
CP m-phase
Cable Data
Corona
FD m-phase
FDQ m-phase
Ground
Line Data
WB fitter
WB m-phase
Reference
6.6.3.13 machines.clf
Built-in Library
Help on each device is available from the Help tab of the device.
Device name
Function
asynchronous machine
ac machine, 3-phase
DC machine
dc machine, 1-phase
ac 1-phase machine
Permanent magnet
synchronous
ac machine, 3-phase
synchronous machines
ac machine, 3-phase
83
6.6.3.14 meters.clf
Built-in Library
Help on each device is available from the Help tab of the device. These devices provide various
metering functions.
Some devices are hard coded in EMTP and some others are created using subcircuits.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
The term probe is used to indicate an interface between power and control diagrams.
Device name
Function
Simulation probe
Current measurement
Current measurement
i(t) probe
Current measurement
p(t) probe
q(t) probe
v scope (1 pin)
Voltage scope
v scope (2 pins)
Voltage measurement
v(t) probe
Voltage measurement
Reference
This library provides various measurement functions based on periodic signals. The devices are
constructed using masked subcircuits. In addition to the mask (double-click on the device), you
can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
I rms
I rms (with ic)
I sequence positive
I sequence zero
I sequences
P 1-phase
P 1-phase (with ic)
P 3-phase
P 3-phase (with ic)
P and Q 1-phase
P and Q 1-phase (with ic)
P and Q 3-phase
P and Q 3-phase (with ic)
Q 1-phase
Q 1-phase (with ic)
Q 3-phase
Q 3-phase (with ic)
V rms
V rms (with ic)
V rms and I rms
V rms and I rms (with ic)
V sequence positive
85
V sequence zero
V sequences
Reference
6.6.3.16 nonlinear.clf
Built-in Library
Help on each device is available from the Help tab of the device.
Device name
Function
Ground
Hysteresis Fitter
Hysteretic reactor
L nonlinear
Nonlinear inductance
L nonlinear data
function
R nonlinear
Nonlinear resistance
R nonlinear controlled
R(t)
Time-varying resistance
R(t) staircase
Time-varying resistance
SiC
ZnO
ZnO grounded
87
6.6.3.17 options.clf
Built-in library
Help on each device is available from the Help tab of the device.
This library provides various devices for controlling EMTP simulations and extra functions for
EMTPWorks or data translation.
Device name
Function
Data converter
Extra Frequency
points
Input Impedance
Link
Allows placing a link (hyperlink) on the design page. Use rightclick menu Extras/Summary for setting the link and getting help.
MPLOT
Run a case
Runs existing EMTP Netlist files. Also has a translator function for
EMTP-V3.
ScopeView
Show Load-Flow
Simulation Options
Simultaneous
switching
Start EMTP
Stat Options
View Steady-State
Reference
6.6.3.18 phasors.clf
Built-in Library
This library provides various phasor functions for control diagrams. The devices are constructed
using masked subcircuits. In addition to the mask (double-click on the device), you can access
the contents of each subcircuit for more documentation on its design and functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
instantaneous to phasor
instantaneous to polar
instantaneous to xy
phasor add
phasor angle difference
phasor angle sum
phasor conjugate
phasor conjugate multiply
phasor divide
phasor magnitude product
phasor magnitude ratio
phasor multiply
phasor resize
phasor rotate
phasor subtract
phasor to frame
phasor to polar
phasor to x
phasor to xy
phasor to y
polar conjugate
89
Reference
6.6.3.19 sources.clf
Built-in library
Help on each device is available from the Help tab of the device.
This library provides source functions for power circuits. There are voltage and current sources.
The controlled sources are connectable to control diagrams.
Device name
Function
Ground
Ground connection
I ac
ac current source
I ac grounded
I CIGRE
Lightning source
I complex ramp
I controlled
I dc
dc current source
I dc grounded
I point-by-point
I ramp
I surge
Load-Flow Bus
Load-Flow device
V ac
ac voltage source
V ac grounded
V ac grounded 3-phase
V complex ramp
V controlled
V dc
dc voltage source
V dc grounded
V point-by-point
V ramp
V surge
V with Impedance
91
6.6.3.20 switches.clf
Built-in library
Help on each device is available from the Help tab of the device.
This library provides switch functions for power circuits. The controlled switches are connectable
to control diagrams.
Airgap
Controlled gap
Controlled switch
Diode (ideal)
Flashover switch
Ideal closed switch
Ideal switch
Thyristor (ideal)
Thyristor (ideal) with GTO
Reference
6.6.3.21 symbols.clf
Built-in library
This library presents a list of symbols for creating user-defined devices and annotations on the
design drawing. The symbols are excluded from the Netlist by setting the Exclude attribute to 2.
You can use these symbols for subcircuits through the Symbol Editor (drag and drop) or you can
attach subcircuits (see Attaching Subcircuit) by setting Exclude to blank.
93
6.6.3.22 transformations.clf
Built-in library
This library provides various transformation functions for control diagrams. The devices are
constructed using masked subcircuits. In addition to the mask (double-click on the device), you
can access the contents of each subcircuit for more documentation on its design and
functionalities.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
3-ph to dq0
3-ph to pos sequence (polar)
3-ph to pos sequence (xy)
3-ph to sequences (polar)
3-ph to sequences (xy)
3-ph to zero sequence (polar)
3-ph to zero sequence (xy)
average (period)
average (period, with ic)
dq0 to 3-ph
harmonic (xy)
harmonic (xy, polar, rms)
harmonic THD
ic for first period
ic for first period multiple
integral (period)
integral (period, with ic)
power P
power P (with ic)
power Q
power Q (with ic)
Reference
power S
power S (with ic)
power p(t)
power q(t)
rms
rms (with ic)
sequences to 3-ph (polar)
sequences to 3-ph (xy)
95
6.6.3.23 transformers.clf
Built-in library
Help on each device is available from the Help tab of the device.
Some subcircuits may be locked; you can unlock them using the method described in Locking
and Unlocking Subcircuits.
If you modify a device from this library after placing into the design, it will become different from
its original library version and its functionality will be altered. See also Subcircuit Uniqueness and
Encapsulation.
Device name
Function
DD nameplate input O
ideal unit
Nonideal unit
Reference
YY nameplate input O
ZigZag grounding
ZigZag grounding no g
6.7
6.7.1
In EMTPWorks, a signal represents the electrical connection between any number of device pins.
A signal can simply be represented on a schematic by a single line or a number of connected line
segments, or more complex structures such as connection by name, busses, bundles, phases or
cross-page connectors and hierarchy blocks can be used to simplify the representation of large
designs. In this chapter, we will look at simple signals and connection by name within a single
circuit page. Bundles and multipage signal interconnection schemes are covered in Bundles and
Inter-page Connections respectively.
6.7.2
Interconnecting Signals
If you draw a signal line such that the end of the line contacts a second signal line, then those two
signals will be interconnected. If both of the two signals being connected were named manually
and not automatically, then you will be prompted to choose the name of the resulting signal.
Whenever three or more line segments belonging to the same signal meet at a given point, an
intersection dot will be placed at that point automatically.
NOTE: For efficiency, signals are only checked for connections at their endpoints and only
signals actively being edited are checked.
In addition to connecting by drawing a signal, a device can be connected to a signal by moving
the device near the signal and touching the signal with its compatible pin. This is called connectby-proximity. Under some circumstances when entire circuit sections or devices are moved near
or over other circuit sections, the connect-by-proximity can become a nuisance, and can be
turned-off by holding down the Ctrl key after starting the move.
97
The Shift key constrains the movement to a single vertical or horizontal line. The Ctrl key inverts
the order of line drawing, and the Alt key switches to three line segments with a center break.
Holding the Ctrl key while clicking will inhibit checking for pin connections. This allows you to
select the signal again and drag it to a new position without affecting any existing connections.
Selecting a signal line (by clicking anywhere along its length) and hitting delete or
selecting the Clear command removes an entire signal trace.
Drawing backwards along the length of an existing line causes the line to be shortened
to end at the point where you let the button go.
Clicking and dragging the middle of a signal line segment with the pointer cursor allows
you to reposition the line. Vertical lines can be moved horizontally and vice versa.
The pointer cursor can be used to start drawing from the ends or corners of an existing
signal.
The Draw Signal cursor can be used to start drawing from anywhere along an existing
signal line. Double-clicking terminates drawing.
Reference
Checking connectivity
A single-click on a signal highlights the signal and shows its connectivity.
Double-clicking anywhere along a signal line will cause that signal segment and all logically
connected segments on the current page to be selected.
Holding the CTRL button and double-clicking on a device selects the entire interconnected circuit,
but not the virtually connected circuit (see Connecting Signals by Name). The selected circuit can
be moved around using the mouse pointer (hold down any device and move) or the keyboard
arrow keys.
You can also use the "Pin List" command in the signal pop-up menu (by right- clicking on the
signal) to view the list of pins attached to the signal and go to any of them. This command
displays a list of all device pin connections comprising the selected signal. Only pins in the
current circuit are listed; pin connections in other hierarchy levels are not shown.
Selecting any item in the pin list and clicking on the Go To button will cause the appropriate page
to be opened (if necessary) and that pin to be displayed in the center of the circuit window. If the
selected pin is invisible (e.g. a bundle internal pin) the window will be centered on the parent
bundle pin.
For convenience in navigating a schematic, connections to pseudo-devices such as bundle
breakouts and ground symbols are also shown in this list. In this sense, the list is not a logical
Netlist, but rather a method for checking connectivity and navigating the diagram.
Each item in the pin list is formatted as follows:
For normal devices: device-pin (page ref)
pin
If the pin has a pin number, this will be the pin number, otherwise
a "#" and the pin name.
page ref
99
6.7.3
To select an individual color for a single signal line, right-click on the line and select the Color
command in the popup menu. This setting will override the default signal color, which is
determined by settings in the initialization file, described in [Drawing] section. To return a signal to
the default color, select the Color command again and click the Default button.
6.7.4
Selecting a Signal
A single signal is selected by clicking anywhere along the signal line. This selects only the part of
the signal directly attached to the clicked line. Double-clicking the signal selects all parts of the
signal on the given page including logical connections by name or bundle.
6.7.5
Selecting a Pin
6.7.6
right-clicking on the pin close to the device symbol will display the pin menu.
Bundle Pin Info: For bundle pins (see Changing Bundle Pin Connections: Bundle Pin
Info).
6.7.7
Copy name to clipboard: Copies the signal name to the clipboard. It can be pasted at a
later stage using Ctrl+V. This option can be used for naming a device connected to the
signal.
Pin List: Shows the list of pins connected to the selected signal (see Interconnecting
Signals)
Line Type: Allows setting the signal lie type (see Signal Line Type)
Reference
6.7.8
Selecting the Properties command (right-click menu) with a signal selected causes the following
box to be displayed:
Pin List
This button displays a list of the real device and pseudodevice pins attached to this signal. Double-clicking on any
item in this list will display the selected pin.
Attributes
This button displays the general attribute data entry box for
the selected signal. More information on the functions
available in this box are given in Entering and Editing
Attribute Data - Basic Procedure
Every time a device or signal is created in a EMTPWorks circuit, it is assigned an integer value
known as its "token". The "Token Number" stays with the device or signal for its lifetime and
numbers are not re-used. This ensures that a given device or signal can always be recognized
despite duplicate names or name changes. The token is used for a number of internal operations
in EMTPWorks, but can also be seen by the user in the following circumstances:
The token number is used to generate default names for devices and signals, as
described elsewhere is this chapter.
The token number can be written out in Netlists or bills of materials whenever a
guaranteed-unique identifier is needed.
When two signals are joined, one of the two tokens is discarded at random.
Each logical symbol on the diagram (including pseudo-devices) has its own token.
6.7.9
Signal Parameters
This command from the right-click signal menu can be used to enter extra information for the
selected signal. Help is available in the help tab of this command data web.
101
The default signal is called a general signal. It is a 1-phase signal. It can be drawn by starting
from an existing signal or device pin or by using the "Draw signal tool" (see Toolbar). This circuit
is created using only the "General Signal" line type.
RL1
SOURCE
SW1
+
-1/4ms/0
1 /_90
10,100mH
AC1
0.57uF
C1
?vi
If any signal of the above circuit is selected and its "Line Type" is changed to "3-Phase Signal",
then EMTPWorks will propagate the new setting through the entire interconnected circuit.
Reference
RL1
SOURCE
SW1
+
-1/4ms/0
1 /_90
10,100mH
AC1
0.57uF
C1
?vi
This propagation is only acceptable if all interconnected devices accept the new phase setting, an
error message will result otherwise. The user can go back by selecting Undo (CTRL+Z), the 1phase devices will become otherwise disconnected in the Netlist and errors may occur.
Some power devices have pins that accept only 1-phase or 3-phase signals.
Devices that can become 3-phase will automatically adjust the data input functions to allow
entering 3-phase data.
A 3-phase signal internally carries 3 names, one for each phase. For the signal SOURCE shown
in the figure above, the internal names are SOURCEa, SOURCEb and SOURCEc. The same is
done for device names. A 3-phase device can be decoupled or internally coupled.
It is allowed to move back to the 1-phase version of a signal, again using the signal "Line Type"
option.
A control signal can only be a general signal. A power signal can be a: 3-Phase Signal, 3-Phase
Bus, Phase A signal, Phase B signal or Phase C signal.
The signal drawn from a pin takes its phase property. The user can also create separate signals
using the signal drawing tool "Draw 3-phase Bus". A 3-phase bus can only connect to 3-phase
signals. It is also allowed connecting to individual phases:
BUS1
a
b
c
Phase signals are drawn using the phase signal buttons ("Draw Phase" tools). Phase signals can
be also created by converting a 3-phase signal line type to "Phase A" (or B or C) type.
The 3-phase bus acts as a signal concentrator; it has only one name, but appends the phase
character to each phase signal, such BUS1a, BUS1b and BUS1c. If a phase name is changed
then the parent bus name is also changed.
Naming a phase signal or bus GND will ground all phase signals. The ground signal GND is not
replicated using phase characters.
103
If a phase signal is drawn separately in a design using the "Draw Phase" tool, then its name is
internally concatenated with the phase character. In this example:
BLUE
D2
More details on 3-phase and 1-phase signals are given in the design show_how_phases.ecf
found under the EMTPWorks directory Examples\show_how.
Reference
RL1
SOURCE
SW1
+
-1/4ms/0
1 /_90
10,100mH
0.57uF
AC1
C1
?vi
RLC1
+ RLC
10,100mH,0
SOURCE
0.57uF
C2
A signal name must be visible to keep its name. The current version of EMTPWorks has the
freedom to change user given signal names during rerouting if not visible. EMTPWorks maintains
a default signal naming system.
It is recommended to use distinctive names when showing a signal name. You must avoid using
default signal names used in EMTPWorks. The Signal Auto-Naming Options are used to set the
default naming methods. There are also Reserved signal names.
To undo connection by name it is not sufficient to hide a signal name. In the Example below the
two current sources have their positive pins connected by name.
105
za
za
AC1
1 /_0
AC2
1 /_0
If you hide the name za on the signal of AC2, the connection will still remain in the subsequently
generated Netlist. Two actions can be taken to ensure disconnection:
Hide the name and reroute the signal (see figure below).
Change the signal name to another name, a name that does not exist in your design.
For example, za can be renamed to za_. Then hide the name.
AC2
1 /_0
It is recommended to verify the signal name (Name edition panel) after hiding it, to make sure that
the disconnection has worked.
Generally speaking it is not very useful to name individual signals manually and to make them
visible, unless you need to create a special reference or apply connection by name. Most designs
can be carried on without naming any signal. The power system bus name is on by default since
in this case the name is a useful reference in the power network diagram.
You must clearly understand the rules and consequences on maintaining signal names
before heavy usage of such methods. The case of signal names in bundles is more
complex and it should be avoided when possible.
6.7.13 Naming Signals
The name associated with a signal can be placed anywhere on the diagram and will be removed
if the object is removed. You can click on the name to highlight the associated signal or click on
the signal to highlight the associated name. By default all signal names are invisible.
A signal name must be visible to keep its name. The current version of EMTPWorks has the
freedom to change user given signal names during rerouting if not visible. EMTPWorks maintains
a default signal naming system.
Generally speaking it is not very useful to name individual signals manually and to make them
visible, unless you need to create a special reference or apply connection by name. Most designs
can be carried on without naming any signal. The power system bus name is on by default since
in this case the name is a useful reference in the power network diagram.
Reference
You must clearly understand the rules and consequences on maintaining signal names
before heavy usage of such methods. The case of signal names in bundles is more
complex and it should be avoided when possible.
Scopes for simulation waveform visualization are based on device names and not signal names.
Signals connected to control (input or output) pins are control signals. Signals connected to
power pins are power signals. See Device pin types used for EMTP.
The "Ground" device has one pin and its signal name is GND:
GND
The GND name is an enforced signal name. It is the pin name of the "Ground" device which is
given the primitive Part type "Signal Connector" in the Symbol Editor. It is illegal to change the
name of such a signal manually.
The user can create other signal connector devices using the Symbol Editor. This is useful for
making connections by fixing a given signal name through the pin name. In this example the fixed
signal name is SOURCE:
SOURCE
SOURCE
6.7.13.3 Entering and editing a Signal Name
Enter "Naming" mode either by selecting the Name command in the Edit menu, or by clicking on
the Naming tool in the toolbar:
Once this command is selected, the cursor changes to a pencil icon.
107
Press and hold the mouse button with the tip of the pencil positioned anywhere along a signal line
except within 5 screen dots of a device. As long as you hold the mouse button down an I-beam
cursor will track the mouse movements. The signal name text will start at the position where you
release the button. Type the desired name and press Enter or click the mouse button anywhere.
When a signal name is visible, you can double-click on it to open the Name edition panel:
"Apply to all connected segments": This option allows you to choose whether the name
change applies only to the selected signal segment (i.e. thereby breaking its connection
with other like-named signals), or to all interconnected signal segments. You must
select this option if you have signals connected by name (virtual connection).
Important: If you make a signal name invisible you loose control over its name management in
EMTPWorks. EMTPWorks may change the name internally for reordering purposes. The signal
connection by name (virtual connection) will not work if the name of a signal is not visible.
In order to minimize the chance of creating an accidental short between two signals with the
same name, the EMTPWorks auto-naming feature will always assign a new, unique name to any
signal that has an invisible name that is copied, duplicated or otherwise edited on the schematic.
With the mouse button pressed, move to the desired position for the name
Reference
A new copy of the signals name will appear at this point followed by a flashing cursor. To accept
the name, simply click the mouse button once or press the Enter key. If you edit any occurrence
of a name along a signal segment, all other occurrences will be updated to reflect the new name.
Any occurrence of a signal name can be removed using the Zap cursor or Hide in the right-click
menu. If you remove the last visible name from a signal segment then the logical connectivity to
other like-named signals is removed.
Enabling Auto-Naming
Auto-Naming is enabled by selecting the Signal Naming Options command in the Naming submenu in the Options menu. This will display the following options box:
Checking the Auto-assign box causes all signals placed in the design subsequently to be given
a default name if they are not already named. This option is enable by default, but the user may
decide to disable this option. It is not recommended to disable Auto-Naming for EMTP
simulations, since this will result in signals given the name unnamed in the Netlist and
create dangerous situations.
109
If the Visible option is selected, the default name will be displayed on the signal.
The Default signal name prefix text box allows you to specify the characters to be used as a
basis for auto-generated names. Changing this value does not affect existing names.
Enabling signal auto-naming does not assign names to existing signals that do not already have
them. This must be done manually or using a script.
How Names are Generated
The auto-generated name consists of two parts, the fixed prefix and the numeric suffix. The
prefix portion is derived from the signal name prefix.
The numeric portion of the name is generated from the signal's token value. This value is
guaranteed to be unique within a circuit level, but no attempt is made to fill in unused values.
Thus, in a design that has been edited, sequential numbering is not guaranteed.
The program does not check names for uniqueness. If you have manually assigned a
name to another signal that matches the auto-assigned format, there is the possibility that
an auto-assigned name may already exist.
Reference
Auto name generation - If the Ctrl and Shift keys are held down while a signal is
selected, a new name is generated automatically for this item. The new name will be
the same as the last one entered, except that the numeric part of the name will have
been decremented.
The above method allows, for example, creating the sequential names for the device shown
below.
DEV1
s1 d1
s2 d2
s3 d3
s4 d4
s5 d5
s6 d6
d1
d2
d3
d4
d5
d6
pulse
doubling
6.7.14 Bundles
The bundle facility in EMTPWorks allows any combination of named signals to be represented by
a single line and any subset of these to be brought out through a "breakout" at any point along
the bundle line.
A bundle can be also called a signal bus, but such a bus is different from a 3-phase power
system bus. In some cases EMTPWorks messages and help section may mention the word "bus"
for bundle.
A bundle is treated by EMTPWorks as a signal with special properties. Thus, bundle lines can be
drawn and modified on the screen using all the same editing features available for signals. Note
these properties of bundles:
Only bundle pins on devices can be connected directly to a bundle. All other
connections must be made by using a breakout to access the desired internal signals.
A breakout is created using the "New Breakout" command in the Options menu.
You do not need to specify in advance what signals will be contained in a given bundle.
Any signals that are present in a breakout or bundle pin attached to a bundle will
become part of that bundle and can be brought out through another breakout anywhere
along the bundle.
Any two bundles can be joined together, regardless of their internal signals. When two
different bundles are merged, any signal in either bundle becomes available anywhere
along the combined bundle.
111
If you select a bundle line, then do a "Get Info" command from the Options menu the
displayed info box will show a list of the signals currently contained in the bundle.
A given signal can be present only in one bundle. If you attempt to connect together
two signals in different bundles, a warning box will be displayed and the connection will
be canceled.
A bundle can be created by drawing the bundle lines first, then creating the breakouts to
attach, or by creating a breakout and extending the bundle line starting at the bundle
pin. Bundle lines are drawn or extended using exactly the same techniques as for
signals, except that the "Draw Bundle" command or cursor is used instead of "Draw
Signal".
Create a breakout symbol using the "New Breakout" or Ctrl+B command discussed in
Using Bundle Breakouts: New Breakout. The bundle pin (backbone) of the breakout can
now be extended using the normal pointer or the Draw Bundle cursor. The bundle will
contain all signals specified in the breakout.
Connections points
D4
D3
D2
D1
Extend a line out from an existing bundle pin on a device using the normal pointer or the
Draw Bundle cursor. The bundle will contain all signals specified in the bundle pin on
the device. Connections between bundle internal pins and bundle internal signals can
be changed using the "Bundle Pin Info" command on the bundle pin's pop-up menu.
See Using Bundle Pins for more information on bundle pins.
Reference
BUND_
D4 D4
D3
D2
D1
The breakouts must be interconnected through bundles to interconnect signals. In this example,
there are two distinct sets of signals since the holding bundles do not have the same name,
BUND_
D4 D4
D3
D2
D1
s20
D4
D3
D2
D1
Attention: only alphanumeric (numbers are letters) characters are acceptable for bundle signal
names.
The signal name notation that appears on a breakout pin is actually a pin attribute. It can
therefore be edited by the usual attribute editing mechanisms. You can double-click on the name
and change it.
You must always remember that the signal connecting to a bundle pin automatically inherits the
bundle pin name prefixed by the bundle name. This is also true for existing signals. In the
example below, the bus named X existed before connecting to the bundle pin X. When it
113
connects to the pin, its name automatically changes to BUND_X. This is also true for the other
bus named X which was connected by name. The two buses remain connected. If you delete the
connection to the bundle pin, the bus name will revert back to X.
X
BUND_
TLM1
+
400
CP
X
X
TLM2
+
400
CP
The above example also demonstrates that contrary to a general signal, the 3-phase signal
automatically inherits the bundle prefix when connecting by name to a bus connected to a bundle
pin. This is only true when a power system bus is initially used to connect to a bundle pin.
In the case of a general signal it is still possible to achieve connectivity by name by manually
showing the signal name connected to the bundle pin. In this case the name is D1 and Lfar is
connected to the bundle signal D1 at its plus terminal.
D1
D1
D1
Lfar
D1
+
1mH
You must remember that the signal name coming out of a bundle pin must be the same as the
bundle pin name. If you manually change the signal name, as in the drawing below, then you will
create a new signal in the bundle. In this case a new pin name DNEW has appeared after
manually changing the name of D1 to DNEW.
Reference
D1
DNEW
DNEW
Even though the above options are available in EMTPWorks, connecting bundle signals by name
is not recommended and can be avoided in most cases by simply reusing the bundle at the
desired location. This is demonstrated below by simply naming the bundles and redrawing for
each connection to any one of its pins. Naming a new bundle with the same name as an existing
bundle automatically inherits the existing bundle pin list.
D1
BUN
BUN
Lfar
D1
+
1mH
115
Signal Info
Right click on any bundle pin attached to the bundle, then choose the signal in the
signal list and click the "Signal Info" button.
Reference
Creating a Breakout
To create a breakout, select "New Breakout" command in the Options menu, or right-click on the
bundle that the breakout is to connect to and select the Breakout command. If the new breakout
is to be similar to an existing one, first select the similar breakout or the bundle to which the new
breakout is to be connected. This dialog box will appear:
If a bundle or breakout was selected on the circuit diagram then the breakout info box will display
a list of the signals in that bundle or breakout, otherwise it will be empty. If this list already
matches the signals you want in the new breakout, then just click the "OK" button or hit Enter on
the keyboard. Otherwise, edit the signal list, noting these options:
blanks or commas can be used to separate individual names in this list, therefore
bussed signals cannot have names containing a blank or comma.
117
Note that the ".." format implies that bundle (bussed) signal names cannot contain periods.
the signals specified will always appear in the order given in this list from top to bottom
in standard orientation. We recommend always specifying numbered signals from
lowest numbered to highest, as in the first example above, since this matches the
standard library symbols.
there is no fixed limit on the number of signals in a bundle, but we recommend dividing
bundles up by function for ease of editing.
Once the list has been entered, click on the OK button or hit the Enter key. An image of the
breakout will now follow your mouse movements and can be placed and connected just like any
other type of device.
Attention: only alphanumeric (numbers are letters) characters are acceptable for bundle signal
names.
The internal pins represent physical device pins. Even though they do not appear on
the schematic, they can have all the same parameters as normal devices pins, including
pin numbers and attributes. These parameters can be accessed using the "Bundle Pin
Info" command in the pin pop-up menu.
When a device with a bundle pin is placed, it has a pre-created bundle attached to it by
default. This bundle will contain one signal for each internal pin, with the initial name of
the signal being the same as the name as the pin.
A "splicing" box can be displayed using the Bundle Pin Info command in the pin pop-up
menu. This box allows any internal pin to be connected to any signal in the attached
bundle.
In this example, the device has a bundle pin and contains two signals rad and mag. The bundle
name has been optionally turned on and changed to emphasize that the actual signal names are
C_OUTrad and C_OUTmag.
ph_1
in out
C_OUT
rad
mag
inst to phasor
Such devices are providing a fixed set of pin names that can be connected to signals. Any
number of such devices can exist in a given circuit, each using its own bundle name.
Reference
You can add other signals into the bundle, but only the existing initial signals will be recognized
by the device. The extra signals can use the C_OUT bundle for other channeling needs. You can
add signals into an existing bundle by right-clicking on the bundle and selecting the Breakout
command.
ph_1
in out
s20
C_OUT
inst to phasor
rad
mag
Xnew
You can also change a signal name connected to a bundle pin, but such an action (not
recommened) will miss the connection into the device and simply create a new signal in the
bundle. In this example the new signal radnew is simply channeling through the bundle and is not
connected to the device pin rad that exists in the bundle pin. Note also that Gain2 is actually
connected to BN_radnew and not radnew.
Gain2
radnew radnew
mag mag
BN_
in
ph_2
out_mag
out_rad
phasor to polar
It is not recommended to use manual signal names when connecting into bundle pins. This also
makes things more complex when duplicating and copying. It can be avoided in the majority of
cases.
For more information on creating device symbols with bundle pins, see Placing a Bundle Pin.
119
BUND
L1
L
1mH
L2
BUND
L
1mH
If L2 is made part of a subcircuit, then the signal BUNDL can be sent into the subcircuit by
naming the subcircuit bundle BUND:
Reference
121
In this case the NewPin is being added as Output (for control signal of output type) pin.
A list of pins can be typed into this box using the same format as the "New Breakout" command
described in Using Bundle Breakouts: New Breakout. A pin type can be selected and will apply to
all pins created using this operation. This is related to the application.
Inter-page connections are made using the "Page Conn" (Page Connector) devices from the
"Pseudo Devices.clf" library. When attached to a signal line, the Page Connector makes the
name of that signal known across all pages, i.e. any like-named signal on another page which
also has a page connector will be logically connected to this one. The Page Connector can be
placed anywhere along the signal line although it is normally convenient to place it at the edge of
the page. The Page Connector itself can be named (in order to take advantage of the automatic
page references mechanism described below), but it must have the same name as the attached
signal. Changing the name of the Page Connector (using the naming procedure for devices) will
also change the name of the attached signal. Likewise, changing the name of the signal will
rename any attached Page Connectors.
Reference
On Page 2
On Page 1
L1
P1
1mH
P1
Page P1
2-C3
Page P1
1-C3
When a name is applied to the Page Connector itself, the page reference will appear under the
name.
As long as automatic updating is enabled, these references will be updated automatically when
any Page Connectors or attached signals are added, deleted, moved or renamed.
The "Page Conn Power Signal" is used for power signals and the "Page Conn output signal" is
used for control signals.
You can place one or more Page Connectors on the same page. You can also place two page
connectors on the same page for connecting signals with the same name. This provides an extra
visual referencing method for virtually connected signals (see Connecting Signals by Name).
123
The "Max. Width" item controls the number of references that will appear on each line
before creating a new line. For signals with many connections, this prevents unwieldy
page reference strings.
The default format is "P-XY" which generates pages references like "2-C4" (i.e. page 2, grid
position C4). All characters other than the special ones above will be placed in the page
reference list verbatim.
Reference
The maximum length of a format string is 16 characters.
125
Page
BUND1
D2
D1
Page
2-C3
2-C3
The bundle page connector is used to show the connection between bundles. It is noticed that
you can also use page connectors for individual signals in a bundle. The signals in a bundle are
connected by name if they have the same name and the same bundle name.
6.7.15.3 Changing the Page Connector Symbol
Note that the symbol for the Page Connector device can be changed using the device symbol
editor tool just as with any other device. In order that the resulting symbol be recognized by the
program as a Page Connector, you must either start with an existing Page Connector symbol, or
set the primitive type setting appropriately.
See Creating a Page Connector for specific information on creating Page Connector symbols.
This is essentially the same box as is displayed for the signal "Pin List" command, except that
only Page Connectors are listed. Following on each item is the page number and grid reference
of the item.
Reference
To (jump to) display the selected page connector, either select the item in the list and click the
"Go To" button of double-click on the item in the list.
6.8
6.8.1
Text and picture objects are used only to enhance the graphical appearance of a schematic
diagram. They have no logical significance in the design.
Text objects are not associated with any particular device or signal on the screen and should not
be used to set a name or attributes for devices or signals. The text in these boxes is not
accessible in the EMTP Netlist. Use the naming and attribute features to attach text to devices
and signals.
6.8.2
If you click the pencil (Naming tool) cursor on the diagram not near a device or signal line a
blinking cursor will appear at that point and you will be able to type any desired text on the
diagram. The Return key can be used to enter multiple lines in a single text block. Text entry is
terminated by the Enter key. You can also enter text using the Text tool on the Toolbar. This is
the same as using the Naming tool but exclusively reserved to text only and not for device
attributes.
6.8.3
If you click the pencil cursor inside an existing text item the insertion point will be positioned at the
click point. You can then use normal Windows text editing techniques to modify the text. Note that
text on the clipboard can be pasted into an existing text box using the Ctrl+V key equivalent for
the Paste function. The Paste menu command will cause the current text entry to be terminated
and a new text box to be created. Similarly, the Ctrl key equivalents for Cut (X) and Copy (C) can
also be used while editing a text box.
Text boxes can be Zapped, Duplicated, Cut, Copied, Pasted and dragged just like any other item
on the screen. See the descriptions of these commands for more information.
6.8.4
Either text or picture blocks can be set to be "border" or "background" objects. These two options
will normally be used together, but can be enabled separately if desired. These two options are
enabled by selecting the object in question and using the right-click menu Properties command.
6.8.5
Border Objects
If a text or picture is marked as a "border" item, then it is considered to be part of the sheet border
information for the page it is on. This has the following effects:
if a new page is added to the circuit using the Pages command, this item will
automatically be copied to the same position on the new page.
if the page containing this item is used as the source for a "Drawing>Import Sheet Info"
operation, this item will be copied to the destination.
127
6.8.6
Background Objects
Text or picture items marked as "background" objects cannot be selected, modified or deleted
using normal circuit editing techniques. This is used to prevent custom sheet backgrounds or
border graphics from interfering with circuit editing operations. This is normally used in
combination with the "border" status discussed above.
To select a background object, hold the Ctrl and Shift keys pressed while clicking on it. The
Properties command (Ctrl+I or Options>Properties) can then be used to disable the background
status. You can also hold the Ctrl and Shift keys and double-click on the background object.
6.8.7
The text facility allows special entries called variables to be placed in text boxes. When the text is
displayed or printed, the appropriate system quantity or attribute field value is substituted for the
variable name. Any variable name that is not recognized will be displayed verbatim. This facility is
intended to assist in creating title blocks and similar additions to the schematic with information
such as the date, page number and title, revision level, engineer's name, etc. Using variables will
allow this information to be entered in one place so that changes are reflected automatically on all
schematic pages.
6.8.8
System Variables
$TIMENOW
$DATECREATED
$TIMECREATED
$DATEMODIFIED
$TIMEMODIFIED
$PAGENUM
$NUMPAGES
$PAGETITLE
$PRINTPAGENUM
$PRINTNUMPAGES
Reference
will be printed by the current Print command. This is
used to number pages within a hierarchical design.
NOTE: This is only valid for printed output. When it
is drawn on the screen, it will show the same value
as $NUMPAGES.
$FILENAME
$FILEPATH
$CIRCUITNAME
The format used to display date and time values is determined by the Regional Settings control
panel in Windows.
6.8.9
Attribute Variables
Attribute variables start with a "&" mark and are used to refer to fields stored in the attributes for
the design. These can be used to place information at multiple points on a diagram which will be
updated automatically when the design attributes are changed. For example, if the design
attribute field Revision was defined for the design with the following contents:
2.1A Mar 18, 2000
then the variable &Revision would appear as "2.1A Mar 18, 2000" on the diagram.
Data related to some EMTP simulation options is saved into the design attribute ParamsEMTP.
129
Reference
Select the Copy command in the Edit menu. This places a copy of the graphics item on the
clipboard.
Select the Paste command from the Edit menu. A flickering image of the graphics object will
follow the mouse movements until you click once in the desired position.
Make Background
131
6.9
Simulation options
Before simulating a design in EMTPWorks, the user must select simulation options. These
options are available through the EMTP>Simulation Options menu shown below.
Complete documentation is available in the document Simulation Options.
EMTP can simulate electrical networks (power networks or power circuits) and control systems.
The control systems are simulated at the bloc-diagram level. Control blocks can be also used to
model power devices and connect them to power networks.
EMTP has 4 distinct simulation options (see also tooltip for each option):
Load-Flow solution
The electrical network equations are solved using complex phasors. The active
(source) devices are only the Load-Flow devices (LF-devices). A load device is
used to enter PQ load constraint equations.
o Only single (fundamental) frequency solution is achievable in this version. The
solution frequency is specified by Default Power Frequency and used in passive
network lumped model calculations.
o Future EMTP versions will include a harmonic load-flow.
o The same network used for transient simulations can be used in load-flow
analysis. The EMTP Load-Flow solution can work with multiphase and
unbalanced networks.
o The control system devices are disconnected and not solved.
o This simulation option stops and creates a solution file (Load-Flow solution data
file). The solution file can be loaded for automatically initializing anyone of the
following solution methods.
o The Start from Load-Flow solution is used to restart the Load-Flow from a
previous solution or start a following solution method from initial operating
conditions found in the Load-Flow solution.
o To learn more about this option, click on its help link (Load-Flow options).
Steady-state solution
The electrical network equations are solved using complex phasors. All devices
are given a lumped circuit model. This option can be used in the stand-alone
mode or for initializing the time-domain solution.
o A harmonic steady-state solution can be achieved.
o The control system devices are disconnected and not solved.
o Some nonlinear devices are linearized or disconnected. All devices have a
specific steady-state model.
o The steady-state solution is performed if at least one power source device has a
start time (activation time) lower than 0.
Time-domain solution
o
o
o
The electrical network and control system equations are solved using a
numerical integration technique.
All nonlinear devices are solved simultaneously with network equations. A
Newton method is used when nonlinear devices exist.
The solution can optionally start from the steady-state solution for initializing the
network variables and achieving quick steady-state conditions in time-domain
waveforms.
Reference
The steady-state conditions provide the solution for the time-point t=0. The user
can also optionally manually initialize state-variables.
Frequency scan solution
o
This option is separate from the two previous options. All source frequencies are
varied using the given frequency range and the network steady-state solution is
found at each frequency.
133
7 Attributes
7.1
Attributes Overview
Attributes are arbitrary blocks of text that can be associated with any device, signal or pin in a
design, or with the design itself. Attributes have a wide variety of uses, including:
Displaying device name, part type, value, etc. on the schematic.
Storing data for the device model. Attributes are used to store and send data into
EMTP.
Storing various EMTPWorks related data on the object (device, signal, pin or design).
Storing any other user defined data for various tasks of design maintenance,
annotations or some other encapsulation tasks.
Attributes can be used in conjunction with the scripting and report generation features of
EMTPWorks to implement powerful interfacing, customizing and error checking features. You
can define as many attribute fields as you need to store the text data required for your
application.
In addition, many EMTPWorks features use attributes as temporary or permanent storage
locations for data relating to a device or signal. For example, each device in a design has the
name and location of the library it was read from stored in an attribute field. This allows the
library to be located easily for later updating.
Attribute based changes and programming are only for advanced usage. Illegal manipulations will
not be necessarily intercepted by EMTPWorks and you may corrupt device or design data and
even make a design impossible to repair. A clear understanding of attributes is needed before
making any changes.
Reference
7.2
Attribute Organization
7.2.1
Attributes are divided into named fields. The list of allowable field names is stored with each
design in the attribute definition table. For each field, the table contains:
the field name (up to 16 characters)
what types of objects that field can be used in (devices, signals, pins or design)
default settings, such as whether the field should be made visible on the diagram.
Once a field is defined in the table, its name is never typed again. When attribute data is entered
for a selected object, the field name is picked from a list of allowable fields. This eliminates any
chance of accidentally misspelling the field name in one object.
7.2.2
Predefined Fields
When a new design is created, a default attribute definition table is created with the standard,
predefined fields. Predefined fields cannot be deleted from the design since many of them have
specific internal functions in EMTPWorks.
See Predefined Attribute Fields for a complete listing of built-in fields.
7.2.3
User-defined Fields
You can add more fields to a design at any time using the "Define Attribute Fields" command in
the Options menu.
7.2.4
EMTPWorks has 50 or more predefined fields that are used for various program features and
more can be added by the user. Most of these fields never need to be viewed or set directly by
the user. To reduce clutter, attribute fields can be defined as being primary or secondary. When
entering attribute data, you can choose whether you wish to see "primary fields only" or "all
fields".
The primary/secondary setting is for viewing and editing convenience only and has no effect on
the meaning or internal usage of the field. This setting for individual fields can be changed at any
time using the "Define Attribute Fields" command in the Options menu.
7.2.5
Attribute Limitations
Maximum length of field data item: 32,000 characters. Note: In principle, binary data
could be pasted into an attribute field although this is not recommended since
EMTPWorks provides no mechanism for displaying or editing this data.
Like all other circuit data, the amount of attribute data that can be associated with a design is
limited by available memory.
135
7.3
To edit the attributes associated with a device, pin or signal, you can either:
Choose the object of interest on the schematic and right-click to select the command
Attributes.
The Attributes command is also available when you select the object and use Ctrl+I.
To edit design attributes, select the "Design Attributes" in the Options menu.
Any of these methods will display the general attribute editing box which is used to enter or edit
attribute data on a single object:
By default the field list at the left side of this box shows only the primary fields available for the
selected kind of object. You can click on the All fields button to view all available fields.
7.3.1
To edit the contents of a field, simply select the field name in the list. The current contents of the
field will be displayed in the editable text box. Edit this value using the usual text editing
techniques. Press the Done button or select another field when done. When you select another
field, data entered for the previous field is saved. If the data you typed exceeded the maximum
length for the field, or if it contained invalid characters for the field, then you will be asked to
correct the data.
You can view or edit as many fields as desired while in this box. No changes are made to the
actual design data until you click the Done button. Clicking Cancel will abandon all changes
made while in this box.
7.3.2
Clicking the Use Default Value button sets the value for the selected field to the default value
stored with the symbol. This is valid only for device and pin attributes for which a default value
Reference
was specified. If this button is inactive (grayed out) then the value is already the default value, or
no default value is present. Only devices and pins can have default values.
See Setting Part Attributes for more information on entering default attribute
values while editing a symbol.
7.3.3
If the selected field has an associated value list field, then a pop-up value menu will appear near
the "Use Default Value" button. An item selected out of this menu will cause the value text box to
be updated accordingly. This does not prevent the text data from being edited directly.
When an attribute field has more than one possible value, the list is displayed in one of these
menus. For example, if the sub-menu "Part" appears, this means there are multiple part
definitions available in this device type. Selecting one of the parts in the part sub-menu causes
the part attribute field to be changed for that device.
See more information on value list fields in Using Value List Fields.
7.3.4
When you click Done, the attribute text will now be displayed in a default position near the device,
pin or signal. It can be dragged to the desired location using the pointer cursor.
Design attributes can be displayed on the schematic using text variables. See Using
Text Variables
7.4
For information on setting the default position for an attribute on a symbol, see Using
Default Position Fields.
To view or set attributes associated with the design itself, select the "Design Attributes" command
in the Options menu. This command displays the standard attribute data entry box allowing you
to enter attribute data for the design itself. Design attributes can be used to create variables in
text blocks on the schematic and to insert global data in the Netlist output.
The Visible option is not available for design attributes, since there is no single object on the
schematic to associate them with. Design attributes can be made visible by using text variables,
described in Using Text Variables.
7.5
You can view or set pin attributes by right-clicking on the desired pin and selecting the Attributes
command.
The attribute editing box for pins is identical to the one for devices, signals and the design, except
that Next and Previous buttons appear at the bottom. These can be used to view and edit other
pins on the same device without having to return to the schematic and select them individually.
137
7.6
When you right-click on a visible attribute text you have access to several editing commands. In
this example the visible Name attribute is clicked:
7.7
To rotate an attribute text item that is already displayed on the schematic, right-click on the
attribute text and select the rotation related commands starting with Rotate.
7.8
If you wish to hide a device, pin or signal attribute value that is displayed on the schematic (that
is, remove the displayed text from the schematic, but keep the value associated with the object),
you can use any of these methods:
Right-click on the text and select the Hide command in the pop-up menu.
Right-click on the text and select the Edit command. In the text edit box that appears,
turn off the Visible switch.
Display the general attribute editing box for the object, using the methods described
earlier in this chapter. Select the field in question and turn off the Visible switch.
Click on the "Zap (delete)" tool in the tool palette, or select the Zap command in the Edit
menu and then click on the attribute text you wish to hide.
Any of these methods removes the displayed text from the schematic without modifying the value
that is stored with the object.
Reference
If the value you are hiding is a signal name, this operation may have side effects on the
connectivity represented by the signal. Hidden signal names are not controlled by the user and
this operation will break the virtual connection method (see Connecting Signals by Name).
7.9
There are two ways to set attribute text style globally for all attributes and separately for individual
attributes. When an attribute has a separate setting the global command will not affect it.
There is no way to set text style for an individual object attribute item.
Changing the attribute text style affects all visible attributes throughout the design for all attributes
that have the default setting. This may alter text alignment and position to accommodate a
different text size.
The attribute text style setting affects the following types of items:
Device and signal names.
Pin numbers
The text changes are applied when the OK button in the "Design Preferences" box is clicked. For
larger designs, there may be a substantial delay while new positions of all displayed attribute
items are calculated.
139
Select the Text tab and click on the "Attr Text Style" button. This will display the following
box:
This box allows you to select the text font, size and style used for all attributes displayed in the
design.
Depending on the size of the design, there may be some delay at this point. The program must
check all visible attribute items to see if there position and framing is affected by the text change.
Another method for setting text style for individual attributes is available through the definition of
attribute fields (see Defining Attribute Fields).
Reference
The selected point on the text is considered to be the reference point for the given attribute block.
This point will be kept fixed if any field value or text style changes cause the box to be resized.
The Justification command affects only the position of the text relative to the associated object. It
does not affect the alignment of text in multi-line text items on the schematic. EMTPWorks does
not provide any method of choosing center or right justification of multi-line text items.
The value string can contain any characters other than commas, but leading and trailing
blanks will be removed.
Normally, a default value for the "xxx.List" field should be defined with the symbol in the library
using the device symbol editor tool. In this way, the value list will always be available whenever
141
this device type is selected from the library. If the field is defined in only one device on the
diagram, the value list will only be available for that device.
Reference
The X and Y values are each decimal numbers representing an offset from the top-left
corner of the device measured in 1/1000". Negative values are allowed (negative is up
and left).
The X coordinate can be optionally followed by an upper case letter indicating horizontal
justification, as follows: "L" for left, "M" for middle, "R" for right. The given number
specifies the offset to the left, middle or right position of the displayed text. If no letter
appears, middle is assumed, i.e. the text will be centered at the given position.
The X coordinate can be optionally followed by a lower case letter indicating which point
on the symbols bounding box to use as the reference point, as follows: "l" for the left
edge, "m" for the midpoint, "r" for the right edge. The given number specifies the offset
from the left, middle or right position of the symbol. If no letter appears, left is assumed.
The Y coordinate can be optionally followed by an upper case letter indicating vertical
justification, as follows: "T" for top, "M" for middle, "B" for bottom. The given number
specifies the offset to the top, middle or bottom position of the displayed text. If no letter
appears, middle is assumed, i.e. the text will be centered at the given position.
The Y coordinate can be optionally followed by a lower case letter indicating where on
the symbol the position is to be measured from, as follows: "t" for top, "m" for middle,
"b" for bottom. The given number specifies the offset from the top, middle or bottom of
the symbols bounding box. If no letter appears, top is assumed.
0Mm,0Bt
150,-75
143
Normally, a default value for the "xxx.Pt" field should be defined with the symbol in the library
using the device symbol editor. In this way, the value will be available for setting the default
position of the associated field when the device is placed on the schematic.
You can place a symbol on a schematic, position all the displayed attributes in the locations you
want them, and then use the "Options>Part Type>Save to Lib" command to store the symbol
back into a library. The "Save to Lib" command automatically creates .Pt fields for any displayed
attributes and saves them with the new definition. See Saving Part Type to Library for more
information.
Reference
Click OK. The new field will now appear in the attribute data entry box for the selected
object types.
You should not modify already defined fields for the EMTP template as this may have dangerous
consequences and corrupt design data.
7.16.1 Setting Attribute Field Options
When a new field is created using the "Define Attribute Fields" command a number of options are
available which determine how that field will behave in your design. These options are described
in the following sections.
Changing any of the following options in a field that has already been used in the design has no
effect on items already displayed on the schematic.
To make a temporary change (e.g. to display a field that is not normally displayed) you can use
the Duplicate button in the Define Attribute Fields box to create a new field containing the same
data but with new display options. This field can be deleted again when no longer needed.
Note the following characteristics of these settings:
Changing the values of any of the option switches for an existing field do not affect any
values already in the design. Only new data will be affected. See Temporarily
Displaying Attributes for tips on using the Duplicate function to update the way existing
data is displayed.
The name and option settings for most predefined fields are fixed and will be disabled in
this box.
Regardless of changes made in this box, no design data is updated until you click the
OK button.
Field Name
The Field Name box allows you to enter the name of a new field or rename an existing userdefined one. If you rename a field so that it has the same name as another existing field, this
becomes a Merge operation described in Merging Two Existing Attribute Fields. You will be
prompted to confirm a merge before proceeding.
145
If this switch is checked, then the Return key may be used to enter Carriage Return characters
into this field.
Visible by Default
If this box is checked, whenever a value is entered for this field it will be displayed on the
schematic in a default position. If the field is found in the default attributes for a device, the field
will be displayed automatically on the diagram when the device is placed.
Changing this setting has no effect on values already in the circuit.
In Primary List
If this box is checked, the field will be considered a "primary" field and will be displayed in all
attribute entry boxes when "Primary Only" is selected.
Read only
This option makes the attribute read only. It cannot be modified by the user by selecting the
attribute in the design. This is typically used for setting data from scripts or saving data that
should not be touched by users.
Temporary
Creates a temporary attribute.
Maximum Length
Reference
You can specify a maximum length (in characters) for the field data. This value does not
determine how much storage is allocated internally for the data, it only affects checks that are
done when the user enters data. All attribute data stored with the design occupies only the space
required for its current value.
Duplicate
This button allows you to create a new field with the same settings and (optionally) data contents
as an existing one. You will be prompted to confirm the data duplication option before
proceeding. More information on this operation is given in the following section.
Delete
This button allows you to permanently remove a field definition and all associated data from the
design.
THIS CANNOT BE UNDONE!!!
More information on the delete operation is given in the following section.
147
Duplicate Data
One important feature of this Duplicate operation is that any attribute display options, such as
"Visible by Default" or "Show with Field Name", that are turned on before leaving the "Define
Attribute Fields" box will be applied to the duplicated data. This means that a field that was
formerly hidden can be duplicated and displayed throughout the entire design with just this one
operation.
Reference
There is no explicit button for the Merge operation. Merge is invoked whenever a field is
renamed so that its name matches another field's. The procedure is as follows:
Click on the field to be renamed in the field list. The data in this field will take precedence
when the design is updated.
Type the new name (i.e. the name of the field you wish to merge to) into the Field Name text
edit box.
Type the Tab key or click on any of the option switches to indicate that you have finished
typing.
A box will be displayed asking you to confirm the merge. Click the OK button:
The actual merging of design data does not take place until you click on the OK button in the
"Define Attribute Fields" box.
You can only merge fields that have similar "Allowed in Object Types" settings. It means that you
cannot merge a signal field into a device field.
Enable the "Visible by Default" and (if desired) the "Show Field Name" and "Primary"
options.
Click the OK button in the Define Attributes box to complete the operation.
The duplicate field will now be displayed on each object in the design. When the duplicate field is
no longer needed, it can be removed with the Delete function described above.
149
You will now have a copy of the original field: Make sure the newly-created field is selected
in the list, then rename it back to the name of the original field. If the original field was
"Name", the duplicate will be "Name1" and we now select "Name1" and rename it back to
"Name". Press the Tab key or select another field name when you are finished typing.
Click on the "Visible By Default" option and any other display options desired.
This operation in effect re-enters all the data into the selected field with the new display options.
Any field that doesn't exist in the design is put on a list to be added.
Any field that does exist in the design but is incompatible (i.e. different "object type" or
"keep with instance" settings) is renamed by adding an underscore "_" to the name.
A list of the new fields that will be added is displayed in a warning box. If any of these
fields are unexpected, or can be converted to standard fields, the names should be
noted at this point. Changes in field usage can be made using the Merge and Delete
operations mentioned elsewhere in this chapter.
Reference
More on the usage of these fields can be found in other documentation sections. The
documentation of individual devices also contains information on device data storage into
attributes.
Field Name
Used In
Description
ABELSrcName
Devices
AutoSym.Bottom
Devices
AutoSym.Left
Devices
The string used in the "left pins" box in the "Auto Create
Symbol" command in the device symbol editor. See Auto
Create Symbol.
AutoSym.Right
Devices
The string used in the "right pins" box in the "Auto Create
Symbol" command in the device symbol editor. See Auto
Create Symbol.
AutoSym.Top
Devices
The string used in the "top pins" box in the "Auto Create
Symbol" command in the device symbol editor. See Auto
Create Symbol.
Bname
Signals
Browse.DEV
Design
Brows.PIN
Design
Brows.SIG
Design
Bus3Prefix
Design
Category
Devices
CctName
Design
Design file name. Sets the window title and name of next
saved file. Normally only set by the Open and Save
commands.
CctOS
Design
CctPath
Design
The directory path name for the design file. Normally only
set by the Open and Save commands.
ColorCode
Devices
DateStamp.Cct
Design
151
Devices
DateStamp.Last
Design
DateStamp.OS
Design
DateStamp.Symbol Devices
Delay
Devices
Depth
Devices
Description
Devices
Designer
Design
DesignType
Design
DeviceDoc
Design
DevPrefix
Design
DrawingData
Devices
DWLSrcName
Devices
DWLSrcOS
Devices
DWLSrcPath
Devices
EMTPPhaseLabelA Signals
EMTPPhaseLabelB Signals
EMTPPhaseLabelC Signals
Exclude
Devices
Reference
value is used, for example, for devices that are setting
simulation options and should not appear as "parts" in the
Netlist.
Exclude.Script
Design
ExtCctDate
Devices
ExtCctLib
Devices
ExtCctName
Devices
ExtCctOS
Devices
ExtCctPath
Devices
FormData
Devices
Function
Devices
Ground
Devices
HideSBBRules
Devices
Design
InstName
Devices
Signals
LibDate
Devices
153
LibName
Devices
LibPath
Devices
LibOS
Devices
LibType
Devices
Mask.Dev
Devices
Mask.Dev.Script
Design
Devices
ModelData
Devices
ModelData1
Devices
ModelDataError
Devices
MPLevel
Devices
Name
Name.Prefix
Devices
Prefix used to create default Name value. Used by Autoname options. See Setting the Auto-Generated Name
Format.
Name.Spice
Device
OKErrors
Package
Devices
PageRef
Devices
PageRefFormat
Design
PageRefWidth
Design
ParamsA
Devices
ParamsB
Devices
ParamsC
Devices
Reference
design and sending into the Netlist file.
ParamsEMTP
Design
Part
Devices
Part.List
Devices
PartTemp
Devices
PatchLevel
Design
Permutable
Devices
Phase
Devices
PinSequence
Devices
PkgLevel
Devices
PkgPrefix
Design
Power
Devices
PrefixField
Design
Restrict
Devices
Revision
Design
Scope_A
Devices
Scope_B
Devices
Scope_C
Devices
Script.Copy.Dev
Design
Script.ExInc.Dev
Design
155
Script.Dev
Design
Script.Info.Dev
Devices
Script.Info.Sig
Design
Signals
Script.Mask.Dev
Devices
Script.Open
Design
Script.Open.Dev
Devices
Script.Paste.Dev
Design
Script.Pin
Design
Reserved
Script.Sig
Design
Reserved
SimModelInfo.Dev
Devices
SignalVoltage
Signals
SignalVoltage.List
Design
Signals
SignalVoltage.Script Design
Signals
SigPrefix
Design
simulation_type
Design
Sniffer
Devices
Spice
Devices
SteppedOut
Devices
SteppedOut.Script
Design
Devices
TestVectors.Dev
Devices
Timing.Save
Design
Unit
Devices
UnusedPins
Devices
user_fill_color
Devices
Reference
user_fill_color1
Devices
user_line_color
Devices
user_line_color1
Devices
Value
Devices
Value1
Devices
Value2
Devices
ValueDisplayOpt
Devices
Visual.Dev
Devices
7.27 Browser
7.27.1 Browser for attributes
The Browser is a tool used to view, edit and navigate schematic data in spreadsheet-style format.
Rows of the spreadsheet display objects in the schematic, either devices, signals, pins or nets. A
cell of the spreadsheet displays an attribute value for the object in that row and the attribute field
name in that column. The nets show all the pin connections on a signal.
Opening the Browser
To open the Browser, select the Browser item in the View menu. This opens a spreadsheet
window.
Close Box
File Menu
Edit Menu
Options Menu
157
Attribute Type
Selector
By default the Browser will initially display all devices in the current circuit. If any objects are
selected in the schematic, the Browser will display only selected devices or signals. Selected
devices have priority over selected signals. You can select what must be shown using
"Options>Object Type".
Closing the Browser
To close the Browser window, either click in the Close box (the small X button at the corner of the
window), or select the Browser item again in the View menu.
Updating the Browser Window
The Browser will update any time a change occurs in the schematic that effects the data
displayed in the spreadsheet, or when its scope is set to Circuit and the current circuit changes.
Selecting the Type of Objects Displayed
The Browser is controlled by the separate File, Edit and Options menus on the Browser panel
itself. The menus in the main application menu bar do not affect the Browser. Specifically, the
Cut, Copy and Paste edit menu items in the main menu bar will still operate on the selected
circuit items and not on the spreadsheet.
The "Object Type" submenu under Options allows you to change the type of object being
displayed. There are eight different types of objects that may be displayed Devices, Signals,
Pins, Nets, and selected Devices, Signals, Pins, and Nets.
If the "Selected" form of an object is chosen to be displayed, e.g. "Selected Devices", then only
items which are selected in the schematic will be displayed. Similarly, if "Selected Signals" is
chosen in the "Object Type" menu, then only signals that are selected in the schematic will be
listed in the spreadsheet.
Determining Where to Search for Objects
When looking for objects, the Browser will limit its search scope by using the selection made in
the scope menu pop-up. There are four different scopes:
Reference
Design
Circuit
Here Down
Page
This scope only looks for objects in the circuit with the
most active window and in addition only looks at the
page associated with that window.
Displaying Attributes
To add an attribute field to the spreadsheet, simply double-click its name in the attribute list.
The Nets and Selected Nets object types display a different format in the spreadsheet and do not
allow attributes to be added.
The attribute field names appearing in the list will change as the type of object selected for
display is changed. Only attributes that apply to a given object type are displayed. For example,
the attribute field "Part" is associated with Devices but will not be associated with Signals.
If an attribute name is checked in the attribute list then it will be added as a new column at the
end of the spreadsheet. Double-clicking a checked attribute name removes the associated
attribute from the spreadsheet. The sorting is based on the first column. You can change the
ordering by moving the columns.
159
Fill Right
Make Visible
Make Invisible
To select several cells you can click hold and drag. You can also select the first cell and use the
shift button to select a range of cells.
Disallowed Editing Changes
Any editing change that may cause a structural change to the connectivity of the schematic
(although legal under some conditions) will be disallowed and aborted by the Browser. There
are only a few special cases that will cause this to happen. For example:
Renaming a visible signal to the same name as another visible signal on the same page
would cause the two signals to become one signal.
Making a signal visible which has the same name as an already visible signal with the
same name would cause the two signals to become one signal.
Reference
7.27.4 Browser Clipboard Data Format
The Browser exports data in a tab-delimited text format commonly used by spreadsheet and
database programs. The following points summarize this format:
Items appearing on one line in the spreadsheet display appear on one text line.
Note that attribute items can themselves contain carriage returns and other control characters.
Such items will be enclosed in double-quotes in the clipboard text.
7.27.5 Showing Objects in the Schematic
When the Show in Schematic option in the Options menu is checked, the Browser will always
attempt to display the associated schematic object whenever a cell is selected in the
spreadsheet.
The Browser may sometimes not be able to show the object. The reason for this is generally that
the object was not in an open window, or does not have a visible representation, e.g. bus internal
signals.
7.27.6 Sorting Displayed Objects
Items are always displayed in the spreadsheet sorted in order by the first column. If the values in
the first column are the same, the second columns is used, etc. The sort order can be changed
by re-ordering the columns so that the primary sort value is in the first column. You can use
attributes to create a grouping function. If the Category (available to the user, see Predefined
Fields) attribute is selected for categorizing devices, then it can be made as the first column in the
spreadsheet to show devices sorted within this grouping.
7.27.7 Adjusting the Spreadsheet
Resizing Columns
Columns may be resized by moving the cursor into the column heading area and positioning it
over the vertical dividing line. The cursor when correctly positioned it will change shape. Press
the mouse button and drag the line to size the column to its desired size. Rows cannot be
resized.
Moving Columns
Columns are reordered by moving the cursor into the column heading area and positioning it over
the column heading to move. Click once on the column label to make the column become
selected, then hold and drag the label to its new position.
It can be useful to move columns so that the sorting mechanism will base the sort on the new
ordering of the columns
161
8.1.1
What is Hierarchy?
"Hierarchy" refers to the ability to have a "device" symbol in a schematic actually represent an
arbitrary circuit block. The "pins" on the device symbol represent connections to specific inputoutput points on the internal circuit. For clarity, a device symbol that represents an internal circuit
will be called a "hierarchical block".
Subcircuits (also called subnetworks) are the building blocks of hierarchy.
Hierarchical design provides a powerful way of representing complex designs in compact and
readable form. A top-level diagram of your system can show only major functional blocks. These
blocks can then be opened to show more and more design details.
Hierarchical design in effect adds a "third dimension" to a schematic diagram. It also raises some
complex issues that should be understood before embarking on a major design.
Please review this chapter carefully before making extensive use of the hierarchical
features of EMTPWorks and manipulating subcircuits.
FAULT_switch
RL2
SOURCE
P
+
10,100mH
0.57uF
AC1
1 /_90
C2
?vi
SW2
+
-1/40ms/0
The subcircuit is located in a parent circuit. It has a parent device (its symbol with optional pins).
The subcircuit contents are actually the contents of the parent device, but to simplify the
terminology, the subcircuit parent device is called "subcircuit" and its contents are also called
"subcircuit".
Reference
EMTPWorks offers several methods for creating subcircuits. Subcircuits can be created from any
location in a circuit. It is also possible to make a subcircuit from the entire circuit.
The subcircuit above is created from the switch device connected to ground. The
"Options>Subcircuit>Create Subcircuit Block" (CTRL+SHIFT+Q) menu is used to create a
subcircuit from parts of a circuit. If port connectors (the interface between the subcircuit contents
and the holding circuit) are not placed before using CTRL+SHIFT+Q, then EMTPWorks suggests
automatic port positions, such as "Add port connectors to all signals with visible names" or "Add
port connectors to all signals with loose ends".
A subcircuit may have zero, one or more pins. Any pin types can be used.
The top circuit can contain several subcircuits and each subcircuit can also contain subcircuits
with unlimited number of levels.
The default subcircuit symbol is a square box. The Symbol Editor can be used to modify the
subcircuit symbol.
After creating the subcircuit it can be opened in a separate circuit drawing by double-clicking on
its symbol. The available keyboard shortcuts are: "CTRL+SHIFT+I" (in) for getting into the
subcircuit and "CTRL+SHIFT+U" (up) for going up.
The first time a subcircuit is entered it is locked. It is needed to unlock the subcircuit for making
changes. There are two methods for unlocking: through the "Circuit Info" menu (CTRL+I) or by
moving a device and accepting to unlock from the subsequent panel popup.
Subcircuit creation and modification methods are illustrated in Tutorials 3 to 5 (See Tutorial 3:
Creating a Subcircuit Bottom Up as a starting point).
After the subcircuit is created, it may be required to modify its port interface by adding or deleting
pins. These procedures are explained in Tutorial 5: Advanced Subcircuit Topics.
8.2
The contents of a subcircuit are hidden (encapsulated) from the holding circuit or subcircuit. The
holding circuit is also called the parent circuit. The only connection between the parent and its
subcircuit is through the interfacing pins. This means that two signals may have the same name
in the parent circuit and in the subcircuit, but they are not connected. The global naming system
used in EMTP is based on concatenating a subcircuit path name to all its internal names. If the
device named SW2 is located in a subcircuit named FAULT_switch then its global name
becomes FAULT_switch/SW2. If there are more levels, then the path name changes to account
for all levels. In FAULT_switch/DEV1/XX1/power_line, the power_line signal is located in the
subcircuit XX1 which is located in the subcircuit DEV1 and which is located in the subcircuit
FAULT_switch.
The following options are available:
A subcircuit may have one or more pins. Standard pins and bundle pins may be used.
A subcircuit may hold (be parent to) one ore more subcircuits.
A subcircuit may be multipage (see Adding, Deleting and Titling Circuit Pages).
163
Subcircuits can be created from any point in a design and from any part of a circuit. The
subcircuit interface pins are fully controllable. It is also allowed to create subcircuits
from entire desifgns.
When a subcircuit is created and duplicated, EMTPWorks continues keeping only one copy of its
internal circuit. Which means that any changes inside one subcircuit are automatically
reflected into the other subcircuit instance (copy). EMTP also sees only one copy of the
circuit, but two separate calls. This is similar to programming using a given function from different
locations in the program. The two subcircuits of below are identical. They have the same Part
attribute and same Type name. This is a powerful feature for large designs. If a large number of
subcircuit devices of the same type are used in a design, then by changing only one device
allows changing all other devices automatically.
FAULT_switch
P
Part=FAULT_switch
DEV1
P
Part=FAULT_switch
The Type name of a device can be found by selecting the device and using the right-click
Properties command.
It is very important to understand the implications of the "Make Unique Type" command and the
notion of subcircuit uniqueness before making any changes to subcircuits. The user should
never modify a built-in EMTPWorks subcircuit based device before applying the "Make
Unique Type" command to the device. A built-in device may be used by other devices and thus
modify their contents if not made unique before changing.
8.2.1
If it desired to detach one subcircuit definition from the other, then the detached subcircuit must
be made unique. This is completed through the "Options>Part Type>Make Unique Type" menu.
Reference
FAULT_switch
P
Part=FAULT_switch
DEV1
P
Part=FAULT_switch
DEV2
P
Part=FAULT_switch_new
At this stage DEV2 is detached from DEV1 and FAULT_switch: it has its own copy of the original
subcircuit. This is similar to making a copy of a function and renaming it to allow new contents,
calling methods and usage.
If a subcircuit is available in a library and if it is dragged into the design and modified, then it
becomes automatically unique: detached from the library copy. The user should change the
165
symbol and make the new Part name visible to avoid confusion. Any new copy dragged in from
the original library remains detached from the one modified in the design.
Locking the contents of a subcircuit after its creation is used for reminding the user about the
potential repercussions of changes made in the subcircuit. See Locking and Unlocking
Subcircuits for more information on this option.
It is allowed to add and delete subnetwork pins after subnetwork creation. When a signal line type
is changed in a subnetwork it will not propagate to its parent circuit. Such changes must be
performed manually.
In the current version of EMTPWorks, subcircuit control input and output pins are not
automatically given an arrow tip. This is only achievable by modifying the subcircuit symbol using
the Symbol Editor.
If after exiting a subcircuit, the user receives an error message, it means that there is pin interface
corruption in the subcircuit and the resulting Netlist will also have problems. Error and warning
messages should not be ignored before continuing.
8.2.2
PartTemp attribute
As explained earlier, in addition to the Part attribute which is used to distinguish subcircuits,
EMTPWorks uses one more attribute: PartTemp. This attribute is used to verify uniqueness when
the user makes changes that may affect the uniqueness of a subcircuit. An example of change
that automatically creates a new copy of a subnetwork is shown below.
DEV3
pw
Part=FAULT_switch
PartTemp=FAULT_switch_9bd5c584
FAULT_switch
P
Part=FAULT_switch
PartTemp=FAULT_switch_98d96fa9
The original device FAULT_switch is copied and then its pin name is changed. It automatically
changes the internal port and makes DEV3 different from FAULT_switch. EMTPWorks modifies
the ParTemp to account for this condition. Notice that the PartTemp attribute is corrected only
after the first subsequent Netlist generation. The pin name can be changed by selecting the
subcircuit, opening the right-click menu "Subcircuit Info" and moving into the Pins tab.
Reference
As understood in the introduction to this section, a subcircuit may contain other subcircuits and
the contained subcircuits may contain subcircuits, which results into a tree of subcircuits.
The best way to understand multilevel designs and Unique property of a subcircuit, is to view a
subcircuit as a program function. A function is a program building block. A given function has only
one version and can be called from other functions. If it is desired to change a function, then its
name must be changed (made unique) in order to change its contents. A subcircuit level can be
viewed as the body of the function.
The best way to illustrate this concept is to create a simple example.
Two subcircuits FUN1 and FUN2 are contained in a subcircuit TOPSUB.
Name=DEV2
p1
p1
p2
p1
Part=FUN2
p2
Name=DEV1
Part=FUN1
L1
DEV3
p2
1mH
p2
p1
Part=TOPSUB
Initially there is only one copy of TOPSUB in the memory. There is also only one copy of FUN1
and one copy of FUN2. Making any changes in the TOPSUB level is automatically reflected into
all copies of TOPSUB. The same is true for FUN1 and FUN2.
If we make a copy of TOPSUB to create DEV4 it is like calling the same function tree from
another location in the main program (the top circuit).
167
p2
DEV4
p1
Part=TOPSUB
Making any changes in the DEV4 level is automatically reflected into DEV3 level. If it is desired to
modify FUN2 in DEV3 without modifying FUN2 in DEV4, DEV3 must be first converted to become
unique using the Make Unique Type procedure. Its level will then become separated in memory
from DEV4. Then DEV2 can be also set to a new type using again Make Unique Type. This last
action will detach DEV2 and allow modifying its level contents. Here is a visual representation of
the steps. First DEV3 and DEV4 are sharing the same body:
DEV4
DEV3
DEV1
DEV2
Then DEV3 becomes unique, holds its own body, but continues sharing DEV1 and DEV2:
DEV3
DEV1
DEV4
DEV2
DEV2
DEV1
DEV3
DEV1
DEV2
DEV1
DEV2
This means that if you want to modify a multilevel subcircuit to make it completely detached from
others in all its levels and used subcircuits, you must modify all hierarchical levels.
It is also feasible to propagate uniqueness from top down for a subcircuit device containing other
subcircuits by checking the option Apply to subcircuit contents on the Make Unique Type
command panel.
8.3
Subcircuit Properties
When a subcircuit is created and right-clicked, the "Subcircuit Info" menu becomes available:
Reference
The "New Type Name" input field allows changing the type name. This will change the Part
attribute of the subcircuit. The second radio button ("Make the selected") is similar to the "Make
Unique Type" command available from "Options>Part Type". If you select this option and keep
the same type name and if other subcircuits of the same type are available in the design, then
EMTPWorks will use the PartTemp attribute to distinguish this device.
The Mask tab allows masking the subcircuit and selecting a mask name. Masks are explained in
Masking.
169
If you select the Visual tab, you can specify a visual subcircuit. This is a special case that must be
used with extreme care. Contrary to the standard subcircuit, this option makes the entire
subcircuit contents, but not other non-visual internal subcircuits, appear at the level of its parent.
It means that signal names and device names inside a visual subcircuit are visible to its parent
and the visual subcircuit can access the signal names available to its parent. The parent can also
access the signal names of a visual subcircuit. This option is used for saving space on a design
page and not for hiding and encapsulation. It allows creating geographical view.
If you copy or duplicate a visual subcircuit you must remember that all its signals are visible and
thus parallel connections may result. It is recommended to visually distinguish visual subnetworks
by changing the subnetwork symbol or by showing the attribute Visual.Dev. This attribute
becomes 1 when the visual option is turned on.
Beside the attribute Visual.Dev there is no other indication in EMTPWorks for a subcircuit being
visual. It is actually in the EMTP code, that subcircuit signals are brought to the parent level, by
simply deleting the subcircuit path name. Only one path level is deleted, since the visual
subcircuit may be nested in another subcircuit.
When there are two subcircuit devices of the same type and one of them is made visual,
EMTPWorks keeps the same type, as shown in the example below.
Reference
DEV1
P
Part=NEWFAULTDVEV
PartTemp=NEWFAULTDVEV_a3b01c89
Visual.Dev=1
DEV2
P
Part=NEWFAULTDVEV
PartTemp=NEWFAULTDVEV_a3b01c89
DEV1 is visual, but has not been physically separated from DEV2, so that any changes in DEV2
are reflected back into DEV1 and vice-versa.
171
8.4
EMTPWorks offers a large number of methods for creating and maintaining subcircuits.
The
starting
point
is
the
"Options>Subcircuit>Create Subcircuit Block":
"Subcircuit
Wizard"
opened
from
The "Quick Subcircuit" option is activated only when a device or several interconnected devices
are selected in the design that will become the parent of the subcircuit.
Subcircuits can be created "top down" or "bottom up".
Working top down means creating the highest level of the design first and then working
downward to more detailed levels. In practice, this means that you create and place the symbol
for a hierarchy block first, before you necessarily even know what the internals of the block will
look like. Once you have completely created the higher-level circuit including the symbols for all
the hierarchy blocks it uses, you then proceed to define the internal circuits of the blocks.
The top down approach is illustrated in Tutorial 4: Creating a Subcircuit Top Down.
In the "bottom up" approach any part of an open design or entire designs can be made into the
subcircuit of a hierarchical block symbol. The block is automatically created by the program, but
can be modified using the Symbol Editor.
The bottom up approach is illustrated in Tutorial 3: Creating a Subcircuit Bottom Up.
Reference
8.5
After creating a subcircuit you can save it into a library for later usage or for sharing with other
users. To place a subcircuit into a library, simply select the subcircuit symbol and select the menu
"Options>Part Type>Save to Lib":
Since the subcircuit is a part with an internal circuit, you must select "Save internal circuit
definition". If this option is not checked the subcircuit contents will not saved with the symbol!
8.6
Attaching Subcircuit
The "Attach Subcircuit" command (from Options>Subcircuit) allows you to select an open design
to attach as a subcircuit to the selected device. When this command is selected, the following box
will appear:
173
The attribute definition table in the selected internal circuit is compared with the table in
the master design. If the Attach operation would result in new fields being defined in
the master design's table, then you will be prompted for confirmation. If you click OK,
then new fields are merged into the master design's table.
Attribute values associated with the internal circuit are merged into the master design.
If a given field already has a value in the master design, the value in the internal circuit
is discarded.
The logical linkage between the selected device and the new internal circuit is
completed. If any mismatch is detected between the port connectors defined in the
internal circuit and the pins on the parent device, you will be warned.
The title of the internal circuit is updated to reflect its hierarchical position in the master
design.
The newly-attached internal circuit's window is brought to the front. It is now considered
to be an internal circuit that has been opened for editing and modified. When you close
the internal circuit, you will be asked if you wish to update other devices of the same
type.
It is noticed that you can attach a subcircuit to any device, including predefined devices from builtin libraries. The RLC device, for example, can be dragged in and modified to become a
hierarchical block.
RLC1
+ RLC
1,0,0
When you attach a subcircuit to an existing device, it automatically inherits the device pins for the
underlying subcircuit. It is your responsibility to make the necessary connections and add the
necessary ports.
Reference
8.7
Detaching Subcircuit
The "Detach Subcircuit" command (from Options>Subcircuit) makes the currently displayed
subcircuit into a separate design and redefines the parent device as having no internal circuit.
This operation permanently removes the subcircuit from the selected device and all other devices
of the same type in the selected design. If you do not wish to update other devices in the design,
use the "Make Unique Type" command to isolate the selected device first.
The Detach operation cannot be Undone!!!
In particular, Detaching performs the following operations on the subcircuit displayed in the front
most window:
The circuit is unlinked from its parent device, making it into a separate design.
The internal circuits of all other devices of the same type in the design are removed.
8.8
Discarding a Subcircuit
The "Discard Subcircuit" command (from Options>Subcircuit) discards the subcircuit associated
with a parent device. To perform this action:
Locate and select the parent device in its circuit.
All data associated with the subcircuit is destroyed by this command. This cannot be undone!
The "Discard Subcircuit" command redefines the selected device (and all others of the same
type) as having no internal circuit.
8.9
A subcircuit can be locked to prevent accidental opening. This is intended for cases where the
subcircuit is derived from a library or is used only to implement a simulation model which should
not be edited as part of the parent design.
To lock and unlock a subcircuit from the schematic:
Locate the subcircuits parent device symbol in the schematic and select it.
Click OK
Subnetwork pathnames
Instance code
-999
Pathname
Substation_A/
175
-998
Substation_C/
-997
Substation_B/
-996
Ser_C_1/
-995
Ser_C_1/DEV1/
-994
Ser_C_2/
-993
Ser_C_2/DEV1/
-992
YgDD_np1/
-991
YgDD_np1/xfmrA/
-990
YgDD_np1/xfmrB/
-989
YgDD_np1/xfmrC/
-988
YgDD_np2/
-987
YgDD_np2/xfmrA/
-986
YgDD_np2/xfmrB/
-985
YgDD_np2/xfmrC/
-984
YgYgD_np1/
The instance code is an internal number. All subcircuit devices are tagged with this number. If, for
example, a device named RLC1 is located in the subcircuit Substation_A, it will be internally
given the name RLC1$-999.
Only the top level circuit devices and signals are not given an instance code.
The same method is applied to subcircuit signals, but signal decoding is more complex and the
user must be more careful to avoid illegal or undesirable connections. All signal names are visible
only within the scope of the subcircuit. A signal named BU1 appearing Substation_A is tagged as
BU1$-999 and is different from the signal BU1 appearing in Substation_B, in which case it is
tagged as BU1$-997. This is conformal to hierarchical building methods in EMTP.
The extra complexity rises from the fact that a subcircuit may have pins which allow propagating
signals between subcircuits. In this example, the signal (hidden name s37) connected to the pin
In1 propagates into Substation_A and keeps its name. Any signal in Substation_A connected to
the pin In1 automatically inherits the name s37. A signal can propagate down through pins from
the top circuit level or from a subcircuit containing one or more subcircuits.
Reference
In1
Out1
Substation_A
In2
Out2
Some signal names can become swapped (shorted) due to internal connections in the subcircuit.
Although most of these connections are perfectly legal, EMTP shows the Shorted (redundant)
signals in the Case Web. An example of listing is shown below.
Shorted (redundant) signals
Signal name
GND
Ground, 0 volts
Efd_pu_ic_2$-973
Efd_pu_ic$-974
Efd_pu_ic_2$-967
Efd_pu_ic$-968
Efd_pu_ic_2$-961
Efd_pu_ic$-962
Efd_pu_ic_2$-955
Efd_pu_ic$-956
The GND node is always listed to recall that any signal named GND is automatically connected to
ground. In this case it is indicated that the signals Efd_pu_ic_2$-973 and Efd_pu_ic$-974 are
connected together. The subcircuit $-974 is the top level subcircuit sexsExciter_1 shown below.
Efd_ic
Vmeas_rms
Vaux_pu
pu
Efd_pu_ic
Vm_rms_pu
Vaux_pu
1 #Efd_base#
1 #V_base#
Efd_pu
#Efd_base#
Efd
Efd_pu_ic
Vin_pu_ic
initialization
Vref_pu
Vm_rms_pu
Vaux_pu
+
+
Vin_pu
dynamics
Efd_pu
Efd_pu
dyn
177
in which the subcircuit ini (shown below) is connecting the input from Efd_pu_ic to the output top
pin.
Efd_pu_ic_out
1
#K#
Vin_pu_ic
Vm_rms_pu
Hold (t=0)
Vm_rms_pu_ic
Vaux_pu
Hold (t=0)
Vaux_pu_ic
Efd_pu_ic
Vin_pu_ic
Vref_pu
EMTP also messages floating signals found in subnetworks. A floating signal is a signal that
enters a subnetwork through a pin but does not connect anywhere (not directly and nor virtually).
Some floating signals can be used as variables in control blocks. This is the case of the subcircuit
dyn example:
Efd_pu_ic
Vin_pu_ic
Vin_pu
1 + sTa
1 + sTb
Vinf_pu
!h
K
1 + sTe
!h
Efd_pu
#Emin#
The print order would be: A, L, W, X, M, Y, Z. The order of printing of hierarchical blocks inside a
single circuit is determined only by internal storage order and cannot be controlled by the user.
W and X could be reversed above.
Reference
Print all unrestricted circuits in current design: With this setting, the design's master
circuit and all unlocked internal circuits will be printed. The "locked" setting is controlled
by a check box in the Properties command for the parent device.
Print all circuits in current design: Print the design's master circuit and all internal
circuits, regardless of "locked" status.
8.12 Masking
8.12.1 Masking
After creating the subcircuit the right-click device menu item "Subcricuit Info" becomes enabled.
The "Subcircuit Properties" has a Mask tab with a default mask:
179
The default mask becomes selected when you click on the checkbox "Mask this subnetwork". If
you select to specify another scripts "Specify a script to use" then you must use the Browse
button to locate and select that script. The available scripts listed below can be found in the
EMTPWorks program folder "Info Scripts" directory. This directory is on the script search path of
EMTPWorks and that is why scripts from this directory can be named without entering a path
name.
Masking is a powerful feature for data hiding and encapsulation. It provides a high-level access to
subcircuit contents and allows creating user defined models.
Help on masking methods is available after selecting this option and looking into the Help tab of
the default mask (see Mask Scripts).
The default mask script can be changed from the initialization file EMTP.INI (see [Drawing]
section).
Masking is based on scripting. The currently available generic mask scripts are:
black_box.dwj: generic mask, allows entering data in a textarea and sending it to
subcircuit devices. It is the default mask. It creates a simple and quick encapsulation
usable in a large variety of cases.
script_black_box.dwj: allows entering mask data and rules. This is a more sophisticated
script since it allows programming using JavaScript.
no_script_box.dwj: this is the simplest mask; it just provides the user the ability to create
a help panel for just documenting the subcircuit contents and functions.
Mask data sent to EMTP (using the Netlist) is saved into the device ModelData attribute. All
subcircuit data is completely resolved before saving into the ModelData attribute.
When a device is masked, its Mask.Dev attribute changes (becomes a code number) to reflect
this condition.
8.12.2 Unmasking
You can choose to cancel the Mask of a device which is called unmasking. This is achieved by
unclicking the "Mask this subnetwork" checkbox shown in the Mask tab in "Subcircuit Properties".
Unmasking is automatically detected by the device script specified in Mask.Dev.Script. This script
Reference
will clear the contents of ModelData to eliminate the mask data transmitted to the subcircuit
contents. You must be careful that this action does not result into undetermined data left in the
subcircuit.
If you just unmasked and decided to go back, then you can still recuperate the mask byy masking
again with the same previous mask script. This is because the available mask scripts also save
their basic data into the FormData attribute. This is no more applicable if you unmask and select
a new mask or change the mask.
It must be remembered that unmasking a subcircuit of a given type will not unmask all other
subcircuits of the same type. The subcircuit contents will however remain linked and the user
must create a new unique type if it is desired to unlink subcircuit contents.
Device symbols are an important resource in your design creation process. Whether you
primarily use the symbols provided with EMTPWorks, or you create special libraries for your own
use, the completeness and accuracy of this data has a major effect on your design flow. Library
files generally outlast any one design and are used for many years across many projects. In
addition, many EMTPWorks features rely on specific steps being taken while creating a symbol.
For these reasons, EMTPWorks provides a variety of features for creating and editing the symbols themselves and for maintaining symbol library files.
Creating a device symbol can involve much more than just drawing the graphics that represent
the device. Many EMTPWorks features rely on correct text attributes being associated with each
symbol.
9.2
Terminology Note
It is important to distinguish between the definition of a symbol that is stored in a library, and an
instance or usage of it in a schematic. In this manual we use several different terms to refer to
the definition of a device symbol in a library. If we use the term symbol, part, part type, or just
type, we are referring to the definition of a device symbol in a library. The term symbol is used
when we are primarily interested in the graphical representation of a device, but a symbol is
always stored with related pin definition information and text attributes.
181
9.3
The symbols and related parameters for EMTPWorks devices are stored in data files called
symbol libraries. For each device type in a library the following data is stored:
General information on the type, such as number of pins, number inputs, number of
outputs, type name, default attributes, position, orientation and type of each pin, etc.
9.4
A polygon outlining the symbol, used for highlighting and erasing the symbol.
Whenever select a device symbol from a library and use it in a design, all information needed to
display and edit that device is retained with the design. (Of course, only one copy is kept,
regardless of how many times you use the same symbol in one design.) No further access to the
library itself is required. This is done to ensure that a design file is always a complete entity and
that future changes to a library will not inadvertently render an old design incorrect.
However, there are frequently times when you would like to update a symbol in a library and then
copy the changes into one or several designs. Conversely, you may have edited a symbol or its
subcircuit on a single design and wish to save the changes back to a library for use elsewhere.
For these reasons, EMTPWorks does retain some information with each symbol about its "home"
library and provides a number of features to allow transfer and updating of symbols between
designs and libraries. Each time a new symbol is used in a design (i.e. one that hasnt been used
in this design before) the library name, file path and "last modified" date are stored in the attribute
fields LibName, LibPath and LibDate, respectively. These are used by the "Options>Part
Type>Update from Lib" command to locate the original library and determine if it has changed
since we used it.
In addition, whenever the definition of a device symbol is modified, a new "checksum" value is
calculated. This is also used as a check to verify the equivalence of two symbols whenever one
is loaded from a library. This checksum cannot be set by the user, but it can be dumped in report
using the $CHECKSUM script command (see Export_Script_Language). This can be used to tell
if inadvertent modifications have been made to a symbol, but not to another that appears similar.
The following sections deal with the creation and maintenance of library files. Later parts of this
chapter deal with editing the symbols themselves.
9.5
Select the "New Lib" command in the Libraries sub-menu of the File menu.
In either case, a standard file save box will appear. Enter the desired name for the library and
select a disk directory. The library is created and opened automatically so it appears in the Parts
palette.
If you wish to have the library opened automatically at startup when you enter EMTPWorks in the
future, see Automatically Opening Libraries at Startup.
Reference
9.6
9.7
Libraries can be opened automatically when the program starts. See Opening Libraries
Automatically for more information on this topic.
There are also initialization keywords in the initialization file (see [Libraries] section).
By default, when EMTPWorks is installed, a folder called Libs is created containing the initial
libraries.
9.8
or
Right-click anywhere in the Parts palette, in the pop-up menu that appears, select the
"Close Lib" command.
In either case, a list of the open library files will appear. You can use the Shift and Ctrl keys to
select multiple files to be closed in one operation and then press the Close Lib button.
Alternatively, you can simply double-click on the name of a single library.
Any information required for symbols used in any open designs will be automatically retained in
memory. Once you have used a symbol in a design, all information required has been copied
into the designs data. No further access to the library itself is required.
9.9
Lib Maintenance
The "Lib Maintenance" command is available from the right-click menu in the Parts palette.
183
Most of the commands appearing in this panel are self-explanatory. The Shift and Ctrl keys can
be used for selecting more than one symbols in some operations.
Delete: Deletes one or more symbols from the "Source Library". This operation cannot
be undone.
Duplicate: Duplicates symbols within the "Source Library". You will be prompted for
each selected item to enter a new name. Names must be unique within a library.
Promote: Causes the selected items in the "Source Library" to be moved up the list.
Denote: Causes the selected items in the "Source Library" to be moved down the list.
Copy: this button is used to copy one more symbols from one library to another.
Compact: When parts are deleted from a library, the free space in the file is not
automatically recovered. In most cases this is not a significant overhead. However, if a
large percentage of the parts in a library have been deleted then you may wish to
compact the file. You can compact into a new library and delete the previous library
after verifying the new library.
It is noticed that the items displayed in the Parts palette are always sorted alphabetically and the
Promote, Denote and Sort procedures will not affect this order. These procedures change the
order in which the symbols are indexed in the library file, which affects ordering in some internal
operations.
Reference
Depending upon the options selected, this command may replace the entire internal circuit of the
selected device. This cannot be undone!
Selecting the "Update from Lib" command in the "Part Type" sub-menu of the Options menu
causes the following box to be displayed:
The box that appears may be simpler than that shown above. Only options that are relevant to
the specific device selected are shown.
The first option pop-up menu allows you to select how the source library will be located:
Update from original library
Next, you need to select which devices on the schematic you wish to update. This is only when
two or more devices of the same type are available in the design. EMTPWorks will detect similar
devices through all hierarchy levels. The choices are:
Update
only
selected
devices
185
The "Attribute Options" dropdown menu allows you to choose how attribute values are updated in
the event that the new symbol definition has different values than the existing device instance:
Keep all old values
It is noted that the Name attribute is not modified by this operation. It is also recalled that all
device simulation data, as seen in EMTP side, is saved into attributes, so the user must be
careful with the updating process since it can affect previously entered data and change the
numerical behaviour of a device. The first attribute updating option is the less dangerous.
Two other options appear in the Attributes section:
Recalculate
attribute
positions
Update
attributes only symbol not
changed
Reference
In some cases the symbol of the updated device may significantly different from the one used for
its update. The distance between its pins may have changed. In such cases it can become very
difficult for EMTPWorks to readjust the signals to maintain correct signal paths and even
connectivity. That is why in some cases it is preferable to check the last option.
187
Extra Notes
The "Update from Lib" menu is disabled when the circuit is locked.
When updating devices located in subcircuits, there could be one or more copies of the parent
circuit. In these cases EMTPWorks is able to locate other devices through the parent circuits. You
must also remember that if the parent is not unique then changes to its contents will affect all
other instances of the parent.
When two parents are identical (of the same type), then updating an internal device and selecting
to update all devices of the same type, will find only the number of devices in one parent.
Reference
When two parents are not of the same type, then updating an internal device and selecting to
update all devices of the same type, will find the total number of devices from both parents.
definition
original
189
Part Name
Open Library
New Library
It is noticed that built-in libraries are normally locked and you can only save new devices into your
own libraries. The only built-in library that is not locked is Work.clf.
It is strongly recommended to create user libraries in a directory different from the default
EMTPWorks directory Libs (see Opening Libraries Automatically).
Ensure that the library you wish to write the symbols to is selected in the Parts palette. If it
is not, either select it from the library selection menu in the Parts palette, or use the "New
Lib" command to create one.
Select the "Circuit to Library" command in the "Part Type" submenu of the Options menu.
This command will proceed to write all the unique symbol definitions in the circuit to the selected
library. Here are some points to note on the operation of this tool:
In a hierarchical design, only symbols in the current circuit level are written.
Pseudo-devices (i.e. things like power and ground symbols and page connectors) are
included in the items written out. Depending on your requirements, you may wish to
delete these from the final library.
The symbol written out will include all attribute values defined in the first instance of the
symbol that is encountered, except for Name and InstName. The symbol that is written
out is not necessarily identical to the definition used in creating the circuit in the first
place.
One of the purposes of "Circuit to Library" is to allow you to use the attribute editing tools like the
Browser to work on large numbers of symbols at once. You can use "Library to Circuit" to create
a design containing one of each symbol in a library, then editing the resulting devices and write
the modified versions back out. This can be very convenient, for example, if you need to add or
edit the same attribute value to all the symbols in a whole library.
Reference
To perform mass modifications on part attributes using the schematic tools such as the
Browser.
Open or select the desired library so that it is the current one displayed in the Parts palette.
Select the "Library to Circuit" command in the "Part Type" submenu of the Options menu.
The Library to Circuit command will proceed to place symbols on the schematic in columns based
on the sizes of the symbols. If it runs out of room on the page, it automatically creates a new
circuit page. The naming of the devices and display of attributes are determined by the templates
settings in the same way as if you had placed the parts manually.
This process can require a large amount of memory. Because every device in the resulting
design has a unique symbol definition, a large amount of data is loaded into memory while the
design is open.
191
10 Symbol Editor
10.1 About the Symbol Editor
Symbols are created and edited using the device Symbol Editor tool. In addition to drawing
symbols, the device symbol editor can also be used for general graphics (e.g. title blocks or
simple mechanical drawings) for use on EMTPWorks schematics. It provides a complete, objectoriented drawing environment with standard drawing tools, as well as specific functions tailored
for symbol creation.
One of the most useful applications of the Symbol Editor is the customization of the subcircuit
symbols. When a subcircuit is created the first time, EMTPWorks uses a default rectangular
symbol. You can right click on the symbol and select "Edit Symbol" to open the Symbol Editor
window and modify the device drawing. A device that is originally given the default symbol
P1
P3
DEV4
P2
YD_1
1
2
315/120
The Symbol Editor has its own window in EMTPWorks. It also has its own tab showing the Part
name of the edited device.
Reference
In response to either of these operations, a copy of the symbol definition is loaded into a device
symbol editor window. No changes to the source library will be made until you save the symbol
back to its original library.
Editing a symbol in a library does not automatically update designs that have used that symbol.
You must use the Update from Lib command to perform updating actions on already placed
devices.
You can decide to save an edited part under a new name using the "File>Save As" command.
193
In addition to the main editor window, there are two new panels on the left. The top-left corner
panel is visible if you select "View>Symbol Gallery". It is used to maintain a list of readily
available general purpose symbols that can be dragged and placed into the editor window. See
Symbol Gallery.
The panel shown above at the bottom-left corner is for listing and editing device pins. It is turned
on by selecting "View>Pin List". See Working with Pins for more information on the usage of this
panel.
At the top of the window, the toolbar buttons provide a quick access to various functions. The
standard editing section is similar to the one used in the main design windows. Information about
each button is available in tooltips appearing when the mouse pointer is placed over a button.
The second set is for selecting various drawing tools, including the text tool. Simply click on a
tool, move the mouse to the desired position, click and start drawing. More on objects can be
found in Placing objects.
The last set is for adding standard pins and bundle pins. This pin placement tool set is also
available from the menu Pins.
Reference
Note that the crossbar portion of the T pin symbol is shown only for alignment purposes and
indicates where the pin attaches to the body of the symbol. It is not drawn when the symbol
appears in a schematic. See Working with Pins for more information on how to create pins and
modify settings.
The placed item can be rotated to a new orientation by right-clicking on the item and
choosing one of the Rotate or Flip commands.
If the placed item contains one or more pins, these will be added to the pin list or
matched with existing, unplaced items in the list. The program attempts to use the
name that was assigned to the pin when it was added to the element, but will add or
increment a numeric portion of the name in order to create a unique name.
In a default EMTPWorks installation, this file is called "symbol_gallery.clf" and is located inside a
folder called "Data Files" inside the EMTPWorks program folder. If the EMTPWorks initialization
file has been modified to specify a different file, you will have to locate that file.
You can click-hold and drag the handles to resize objects. You can click anywhere on an object,
hold and move the object.
It is in most cases preferable to increase the zoom level and change the Grid settings for
improved precision drawing. The Grid settings can be changed from "Options>Grids". The Snap
option can be reduced to one pixel.
Each object placed on the editor pane also has a right-click menu. The right-click menu for
drawing objects is shown below.
195
Most of the above right-click commands are self-explanatory. The "Bring to Front" and "Send to
Back" commands are for ordering overlapping objects to get the desired appearance.
The line and fill color settings are explained in Line and Fill color settings.
Using the "Save to Lib" command to save a part from a schematic to a library with the
"Use attributes in selected instance" option turned on. If this option is off, the date
stamp is not updated since the part is not being modified.
Operations that simply copy the symbol definition intact, such as the Copy button in the Library
Maintenance box, do not change the date stamp.
Reference
Visible (grid)
This check box determines whether visible grid lines are shown
in the drawing workspace of the symbol editor window. The
spacing between these grid lines is determined by the value in
the "Grid" field.
Snap on
Grid (Spacing)
Snap (Spacing)
Pin Grid
This number determines the snap-to grid for device pins. This
must be a multiple of 5 to meet the EMTPWorks pin grid
requirements. The units are in screen dots at the default zoom
level.
197
To change pin ordering in the pin list, click and drag the pin to the desired position. Most of builtin EMTP devices require that pins appear in a certain order in the output Netlist. Unless you
modify attributes or apply special scripts, this order is determined by the order in which the pins
are placed on the symbol.
You should never change settings, delete pins or modify pin ordering for built-in EMTP device
libraries unless the device documentation is explicitly allowing such actions.
To change the name of a pin:
Double-click on the pin item in the list
The actual names given to the pins are not critical. It is a good idea though to use meaningful
names for these reasons:
These names will be seen in the Schematic tool's (design page) pin info dialog.
They are used when binding pins to ports in subcircuits to visually recognize transmitted
signal functions.
In the case of bundle internal pins, they are used when connecting bundle pins.
Pins listed, but not attached to the device are shown in red.
You can also right click on a pin in the pin "Pin List" panel for more options.
Hit the Delete key on the keyboard. It will display a confirmation box before proceeding to
delete the pin entries.
Reference
problem, the "Add Pins" (Options menu) command allows you to enter a sequence of names in a
format similar to that used for bundle breakout creation and for the "Auto Create Symbol"
command. These pins are added to the pin list, but not placed on the symbol. After the pins
have been added to the pin list, you can place the pins sequentially on the graphic with no further
typing required.
You can also use the "Auto Create Symbol" command to specify the pin names and autogenerate a rectangular symbol in one operation.
Pin names may be entered into the "Add Pins" box. The pins are created and merged with the
contents of the pin list when the Enter key is pressed or when the Add button is clicked. The "Add
Pins" command does not create graphic pins, it only adds pins to the pin list.
The created pins are merged with the names in the pin list. If a like named pin already exists in
the list then it may be reordered to appear in the same order as in the "Add Pins" box.
Here are the rules for how a list of pin names is entered:
Pin names may be up to 16 characters long.
Normal pin names (that is, not bundle pins or bundle internal pins) may be specified as
individual names, e.g.: A B C D, or as sequences, e.g.: A0..3. After each pin name or
pin name sequence an optional pin number specification is allowed. The sequence
A0..3 defines pins A0, A1 and A3. It is allowed to enter several sequences by separated
sequences with a space.
Bundle pin names are denoted by a name followed by [...]. Bundle pins do not need to
have internal pin names defined and may not have pin numbers. Bundle internal pin
names must appear between a [ and a ]. They have the same format as normal pin
names and may have pin numbers. Internal pin names may be added without adding a
bundle name pin by not placing a bundle name in front of the []. For example, [A B C]
adds the internal pin names "A", "B", and "C" to the pin list.
The pin function (input, output, etc.) can be specified by placing a "|" character followed
by a letter denoting the type. All following pins will have the specified type until another
"|" specification is found. The allowable pin type characters are:
I
Input
Output
Power
For example:
|I CLK,,D0..7
|O Q0..7
To add a bundle pin to a symbol you need to use the "Add Pins" command to add the bundle pin
to the pin list and specify its bundle internal pins.
199
In this example:
BUN[Trig Reset]
the bundle pin BUN is added with internal pins Trig and Reset.
The bundle pin can be placed first and then you can right click on the pin in the "Pin List" panel
and add pins. Bundle pins are marked in the "Pin List" with a bolder pin icon and will be followed
by their internal pins.
The "Show Pin Name" command shows the pin name near the pin. The "Unlink Name" command
allows detaching the pin name from the pin and moving it to another location.
The Properties command is similar to double-clicking on a pin.
The Attributes command is explained in Setting Pin Attributes.
Reference
This is similar to entering pin attributes in the design drawing. It allows setting and saving
attributes with the device. Attributes defined while in the device symbol editor will be associated
with the part in the library if the part is edited from the library. These will become the default
attributes for the part when it is placed in a circuit.
When the Phase attribute is not set, it means that the connected signal does not have a forced
number of phases (see Signal Line Type).
If it is required to force a 1-phase (general) signal, then this attribute must be given the
value "=1"
If it is required to force a 3-phase signal, then this attribute must be given the value "=3"
The 1-phase setting forces a 1-phase pin and the 3-phase setting forces a 3-phase pin. The
control input and output pins can be only 1-phase (general signal).
201
Attributes defined while in the device symbol editor will be associated with the part in the library if
the part is edited from the library. These will become the default attributes for the part when it is
placed in a circuit.
Only attribute fields that have a value are stored with the symbol. When you save the symbol to a
library, any fields with null values are stripped off to save storage. This has the side effect that
you cannot create a "place holder" field definition in a symbol for future use without putting a
value in it.
Reference
Some visibility options appear in this version of the attributes box that are different from what you
will see on a device placed in a schematic:
Always Visible
Default Visibility
Never Visible
You can set the default visibility independently for each attribute field defined in a design. This is
done by selecting the "Define Attribute Fields" command in the Options menu and setting the
"Visible by default" option as desired for each field.
For more information on how to create and modify attributes see Entering and Editing Attribute
Data - Basic Procedure.
203
Create a subcircuit
symbol and select an
open circuit to attach to
it.
Reference
There are some subcircuit options in the lower part of the dialog:
Delete existing pins
before adding pins
defined in subcircuit
Lock subcircuit by
default so the subcircuit
can't be opened
205
A breakout is a special device that allows signals to be associated with a bundle. It consists of 1
Bundle pin, no internal pins, and N normal pins. Because the device type is breakout the normal
pins will be connected to like named signals in the bundle. Design breakouts are normally
created using the New Breakout command described in Using Bundle Breakouts: New Breakout.
This following device is created by placing the breakout pin B and adding the normal pins P1 and
P2.
it results into the following device in the design drawing. The pins P1 and P2 are separately
accessible.
P2
P1
B
P1 P1
P2 P2
Another way to split signals out of a bundle is to use a part with a subcircuit as a splitter, which
explicitly routes signals between pins. This has advantage of flexibility since signals do not have
to be explicitly broken out but may instead be split into bundles or any combination of bundles
and signals.
Reference
735kV
735kV
The pin is given the name 735kV and set to be a Power pin. When the device is placed in the
design, it is used for connecting to devices with the signal name 735kV:
AC3
735kV
+
L2
735kV /_0
L1
All devices are virtually connected through the signal name 735kV.
It is noticed that the Signal Connector pin type does not really count since it inherits the pin type
from the connected signal.
207
dly1
s7
Delay
C1
The port connector name is automatically given the name of the port connector device based on
its
Name.Prefix
attribute.
The
corresponding
design
subcircuit
(created
with
"Options>Subcircuit>Create Subcircuit Block") symbol is given the pin name C1:
DEV3
s12
C1
The port connector pin type is set to Output since it is connected to input pins in the subcircuit.
A port connector for a bundle must have a bundle pin which contains pins of the correct type. For
example, a bundle pin with three internal pins A (input), B (input), and C (output) would be correct
to connect to a parent part's bundle pin which contained pins A (output), B (output), C (input).
The name of the port connector bundle pin is not important, but the internal pins must have the
same names as the corresponding internal pins in the parent pin. Once the port connector is
placed in a circuit its name is important, it must be the same as the parent's pin name.
The easiest way to use bundle port connectors for creating subcircuits is to use the
"Options>Subcircuit>New Port connector" dialog. If it is still required to customize such a device,
then it can be created in the Symbol Editor as an ordinary pin port connector, only now you must
set its internal pins. A bundle port connector is also available in the "Pseudo Devices.clf" library.
For this example, assume that the following simple device has a bundle pin called CONTROL
containing internal pins SYNC, EN1 and EN2.
To create the corresponding Bundle Port Connector using the symbol editor, follow these steps:
Select the New command in the File menu and choose the Device Symbol document type.
Reference
For each bundle internal pin set the pin function as appropriate, i.e. the opposite of the
function of the parent pin. We will assume that the SYNC signal is an input to the block and
that EN1 and EN2 are outputs:
Select the first internal pin name from the symbol editor's pin list. In this example it is
SYNC.
Use the pin function pop-up menu at the top of the list to select Output for the pin function.
For the remaining pins EN1 and EN2 the value Input is correct since the parent pin is an
output. Check that the remaining pins are correct. You can also use power pins.
Place a bundle pin from the device symbol editor's tool palette.
Set the primitive type to "Port Connector" in "Subcircuit Part Type" dialog box described in
Subcircuit and Part Type command.
EN2
EN1
SYNC
Fm1
1
f(u)=0
Gain2
1
209
The pin name of the bundle pin itself (in this case "PORT") is not important. The association
between the "Bundle Port Connector" and the parent bundle pin is made by the name applied to
the "Bundle Port Connector" symbol itself. The same Bundle Port Connector symbol can be used
for any bundle with the same internal signal names.
The bundle internal pins do not have to be the same type. You can include any combination of
names and functions in one bundle pin.
Modification Password
When a device is given password protection then it becomes necessary to enter the password
when accessing the device from a library, accessing its contents or trying to edit its symbol. When
the user enters the password once on a given computer then EMTPWorks remembers the
unlocking of the device for the following sessions.
Reference
To remove password protection from a device it is necessary to access the above panel and
remove (Delete) all password characters manually.
211
11 Templates
11.1 Design Templates
A design template is intended to be used as the source for a "File>New" command. When a
design template is selected in the "New Design" box, the design template file is opened and all
the circuit data and settings it contains become the starting point for a new design.
The standard (default) EMTP design template is EMTP.ecf and it is located in the default
directory "EMTPWorks>Templates".
The design template can be also used to program sheet settings.
Generally speaking a design template is a design with predefined attributes for the design,
devices, signals and pins. It also has other settings, such as the sheet settings, and background
and/or border objects. Specific scripting methods are named in attributes and provided for the
targeted tasks.
It is important to specify the design attribute DesignType which is used for naming the template
and can be used in scripting techniques.
In the default EMTP template the DesignType is EMTP. The template has a specific set of
attributes designed for EMTP simulations.
The name of template file is any valid name. Once the template is created and saved, the user
can access it and create designs based on the provided automation.
11.2.1 Creating a Title Block
In addition to setting attributes, a more basic and typical usage of templates is to create a title
block. The title block is saved in the template and automatically appears in all designs based on
the template.
EMTPWorks has a number of features which can assist in creating title blocks which will contain
information that is automatically updated. A simple title block can be created simply using the
text feature by clicking the pencil cursor (Text Tool) in the desired location on the diagram. After
Reference
the text has been typed, go back to the standard pointer mode and click on the text block to
select it, then use Ctrl+I to open the Text Object Options box for setting various text options.
A more striking title block can be created using a graphic item imported from an external drawing
program, such as the following:
Project Title:
Drawn by:
Orig. Date:
Last Mod. Date:
Page Number:
of:
Page Title:
Rev. Level:
Mods:
Capilano
Computing
Attributes can be used for automatically updating the various stamp fields. See Attribute Variables
for learning how to show design attributes in text.
There is no reason why a design template cannot be set up with all the sheet settings you need
for your design. This eliminates the need to ever refer to a sheet template. However, sheet
templates can be used to apply different border styles and settings to different parts of a single
design. In addition, separating out the sheet functions can reduce the number of design
templates you need to have available. The design template can be used to select the application
type, attribute settings, script setup, etc. A sheet template can then be applied to customize the
sheet border as a separate operation.
Have the schematic border retain a fixed logical size and have the printer scaling adjust
automatically to fit the schematic on a single sheet.
213
Have the schematic border retain a fixed physical size and be broken into the required
number of printed sheets for output.
Whether or not the border size should be linked to the current printer page setup.
EMTPWorks allows sheet size and border layouts to be set by one of two methods:
Importing an existing layout using the "Import Sheet Info" command from the Drawing
menu. This is the simplest method of setting the sheet size for a new design or
template, but it assumes you have an existing design that has the desired settings.
Creating a custom layout using the "Drawing>Sheet Size Wizard" command. This
command, and the associated text and picture capabilities, allows all aspects of the
sheet size, drawing grid, border text style, title blocks and graphics to be set up to meet
your drawing standards.
Copies all text and picture objects marked as "Border" items in the source design or
page into the current design or page. The Border switch must be set individually for
each border text or picture item using the Properties command from the right-click
menu.
Copies the sheet and border settings (sheet width, grid settings, border text settings,
etc.) from the source design or page to the current design or page.
Optionally copies the printer page setup from the source design to the current design.
The import operation does not affect any circuit items or attribute settings in the
destination design.
Reference
Selecting Which Pages to Modify
If your design consists of only a single page and no hierarchy levels, the Wizard will immediately
display the first page of sheet settings and you can skip this section. If your design contains
multiple pages or circuit blocks, you will first see this panel:
Fixed border size Selecting this option causes fixed values to be used for the border
size and position (as it appears on the screen), regardless of printer page setup. The
advantage of this setting is that the sheet configuration will remain fixed regardless of
changing output devices. The disadvantages are that the border size may not fit exactly
to the aspect ratio of the printable area on your printer.
215
Auto-expand This setting also adjusts to match the printer page setup, but
automatically expands to use multiple pages if you draw outside the current border.
This will allow you to assemble larger drawings by piecing together a number of smaller
sheets.
Advanced The Advanced setting is similar to Auto-expand, but allows you to specify
exactly how many sheets high and wide you want the printed out put to appear on, plus
it allows an additional scale factor to be applied to shrink or expand the output.
Using these controls, you can either select one of the standard sheet sizes listed, or enter any
desired custom size.
These settings only determine the size that the sheet will appear on the screen and do not select
a corresponding paper size for your printer. Printer settings must be adjusted appropriately using
the "Print Setup" command from the File menu.
The standard sizes that are listed here are determined by settings in the initialization file emtp.ini.
These settings can be modified to suit your requirements.
Reference
The next step in the Wizard allows you to choose how the page will be adjusted for printing.
Since you have specified that you wish the drawing to appear a fixed size on the screen, the
program needs to know what to do if the visible page does not exactly match the printable area
available on the paper. You have two general options:
Scale to fit printed page In this case, EMTPWorks will scale the drawing to fit into the
available printed area for the selected printer. You can use the controls to specify that
you want the drawing to be stretched onto multiple pieces of paper.
Fixed scale factor With this setting active, the program will scale the drawing by a
fixed amount (default 100%) for printing. This guarantees that the drawing will be a
known size on paper, but may require that it be broken into multiple printed pages,
depending on the settings.
The layout of letter and numbers in the reference grid that is used to locate items on a
sheet.
This table summarizes the first page of Border Wizard controls and options:
Border Orientation
217
Border Font
Border Width
When you click Next, you will be presented options for the layout of the major grid lines that are
drawn in the background. The major grid lines are the darker lines drawn in the background. You
can select later how many minor (lighter) grid lines are drawn in between the major lines.
Even if you choose not to display the drawing grid, these settings affect how the letter/number
reference grid is calculated. This information is used and displayed by a number of reports and
commands.
Specify the number of grid If you choose this option, you can use the controls to
sections
specify exactly how many grid sections are
displayed. The size of the grid sections will be
adjusted automatically to match any changes in
sheet size.
Specify the size of the grid This setting forces the grid sections to be a fixed
sections
size, regardless of changes in overall sheet size. In
this case, the grid section width may not exactly
divide into the sheet width, so you must also specify
how to handle any leftover space.
Reference
choose the Properties command (or hit Ctrl+I) in the Options menu.
click OK.
219
The root folder can be specified using "Help>Root Folder". Normally, EMTPWorks looks for its INI
file and settings files in the folder where the program files are located. If you are running the
program from a read-only medium or protected server, it may be convenient to select a "root"
folder on your own hard disk.
Reference
12.2.1 Use Environment and Registry Variables
Most places in the INI file (as well as Export scripts) that allow you to specify a file or folder name,
also allow references to Windows environment variables and registry entries as sources of
information about file location. This is primarily intended for use in cases where references are
needed to other applications or data files that may not be installed with EMTPWorks and are not
in a fixed location.
It is beyond the scope of this section to discuss how environment or registry entries are set up.
Please refer to the appropriate Windows documentation.
The following example makes reference to an environment variable called "DataDir":
menu= XML, "Generate XML Netlist", "%DataDir%xml_netlist.rfm"
The value of the variable is placed in the resulting name strictly by text substitution without any
checking. It is the users responsibility to ensure that this results in a valid file name with
appropriate name separator characters (e.g. backslashes between directory names), etc. For
example, in the above case, the variable DataDir should contain a terminating backslash
character in order to create a valid file name when it is combined with the other text in the file
name. Also note that some commonly-used system environment variables such as PATH may
contain a list of alternate directories to search. When used in this context, EMTPWorks DOES
NOT automatically break out such lists and search all the specified directories.
Here is a sample that refers to a registry entry in order to locate an outside application to execute
in response to a custom menu (note that all of the following must be on one line):
menu= Simulate, "Run Simulator",
"%HKEY_LOCAL_MACHINE\SOFTWARE\JoesApps\SuperSim\AppPath%"
Since the Windows registry allows multiple values to be associated with a separate name for
each value, this format also allows a value name to be specified by appending a colon ":" and the
name, as follows:
Library =
"%HKEY_LOCAL_MACHINE\SOFTWARE\HQ\EMTPWorks:InstallPath%\Libs\thing.clf"
Default Font
Font = "font_name" font_size [BOLD ITALIC]
This statement specifies the default font for text items appearing in a device symbol editor
document. "font_name" is the name of a TrueType font, only TrueType fonts are supported.
"font_size" is the point size to use. There are two optional style keywords which may be applied,
"BOLD" and "ITALIC".
Grid Settings
GridColor =
RED,
GREEN,
BLUE,
CYAN,
BLACK, DKGRAY, GRAY, LTGRAY, or WHITE
MAGENTA,
YELLOW
221
GridSize = grid
SnapSize = snap
PinSnapSize = pinsnap
The GridColor statement specifies what color to use when drawing the symbol editors Grid.
GridSize, SnapSize and PinSnapSize are all expressed as a 5 pixel multiplier. GridSize specifies
the number of 5 pixel spaces between displayed grid lines. SnapSize sets the grid snap for all
graphical objects, except pins, and PinSnapSize sets the snap used when positioning pins.
Font Settings
XXX_Font = font_name font_size [BOLD ITALIC]
This statement specifies the font for text items appearing in a schematic document. "font_name"
is the name of a TrueType font, only TrueType fonts are supported. "font_size" is the point size
to use. There are two optional style keywords which may be applied, "BOLD" and "ITALIC". The
possible items which may have there font specified are:
Default_Font,
Attribute_Font,
PrintPage_Font
Border_Font,
MiscText_Font,
Pin_Font,
Symbol_Font,
Color Settings
XXX_Col =
ColorName
This statement specifies the color for items appearing in a schematic document. All items in a
schematic, except the page background, default to black. The page background defaults to white.
The possible values for XXX_Col are:
Reference
Default_Col
AttrProbeText_Col
AttrProbeBackground_col
Page_Col
Boundary_Col
GridMajor_Col
GridMinor_Col
RandowText_Col
RandowTextFrame_Col
BorderText_col
DeviceAttrs_Col
SignalAttrs_Col
BusAttr_Col
Signal_Col
Signal_Selected_Col
Bus_Col
Bus_Selected_Col
BusPin_Col
BusPin_Selected_Col
Pin_Col
Pin_Selected_Col
PinNumber_Col
PinNumber_Selected_Col
Device_Col
EMTPBus3_Selected_Col
EMTPBus3_Col=DkRed
EMTPConn3_Selected_Col
EMTPConn3_Col
EMTPPhaseA_Selected_Col
Phase A signal
EMTPPhaseA_Col
EMTPPhaseB_Selected_Col
Phase B signal
EMTPPhaseB_Col=Blue
EMTPPhaseC_Selected_Col
Phase C signal
EMTPPhaseC_Col=Green
EMTP_BUS3_WIDTH = 3
EMTP_SIG3_WIDTH = 2
EMTP_PHASE_WIDTH = 1
223
BlobScale
EMTP_BUS3_BLOBS
The available colors are (letter case is not significant in color names):
Red
Green
Blue
Cyan
Magenta
Yellow
Black
DkGray
Gray
LtGray
White
VLtGray
LtBlue
LtGreen
LtRed
DkBlue
DkGreen
DkRed
Violet
Orange
Templates
Templates = folder
The Templates keyword specifies the location of the design template files that will be displayed in
the New Design box. This keyword can be specified multiple times to point to multiple template
folders, if desired. See Design Templates for more information on the usage of templates.
Examples
Examples = folder
The Examples keyword specifies the location of the example files that will be displayed when the
Examples button in the New Design box is clicked. This keyword can be specified multiple times
to point to multiple example folders, if desired.
Reference
Default Mask Script
DEFAULT_MASK_SCRIPT = black_box.dwj
This is default subcircuit mask script. See Masking.
Popup menus
Allows specifying parameter menu items in the object specific popup menus for devices, signals,
pins and circuits. See Creating Custom Menus.
Backup
Backup = On
This statement specifies that you want an automatic backup created each time an existing circuit
file is resaved. The default is On.
AutoSave = 15
This statement specifies that you want to be prompted to save your work whenever the specified
number of minutes has passed without a save. The default is 0, i.e. no auto save.
See also Backup Procedures.
= "i"
225
SubcctPortPrefixOut = "o"
SubcctPortPrefixPower = "p"
Sheet sizes
The SheetSize keyword is used to specify the standard sheet sizes that are available in the Sheet
Size Wizard command using the following format:
SheetSize = name width height
Where:
name is the text that you want to appear in the sheet size list. This should be surrounded by
double quotes if it contains any non-alphanumeric characters.
width and height are decimal numbers expressed in internal units:
1 inch = 1008
1 cm = 397
For example:
SheetSize = "ANSI A Portrait - 8-1/2W x 11H" 8568 11088
SheetSize = "ANSI A Landscape - 11W x 8-1/2H" 11088 8568
SheetSize = "ANSI B - 17W x 11H" 17136 11088
SheetSize = "ANSI C - 22W x 17H" 22176 17136
SheetSize = "ANSI D - 34W x 22H" 34272 22176
SheetSize = "ANSI E - 44W x 34H" 44352 34272
Scales
SCALES=n1..n11
NORMALSCALE = index
The SCALES statement is used to specify the magnification levels used by the Reduce and
Enlarge commands. The keyword is followed by 11 decimal integers separated by blanks and
sorted in ascending order. The 1:1 scale level (at which externally created pictures appear in
their original size) is 14. Enlargements are specified by smaller numbers (e.g. 7 gives 200%) and
reductions by larger numbers. The default values are:
SCALES = 4 7 10 14 18 24 28 42 63 98 140
NORMALSCALE = 3
The NORMALSCALE statement is used to specify which of the scale steps specified in the
SCALES line will be used as the "Normal Size" setting. The index must have a value in the range
of 1 to 11.
Pin spacing
PINSPACE = n;
Reference
The PINSPACE keyword is used to specify the spacing between adjacent pins when breakout
symbols are created. This can also serve as the default for symbols created by other tools. The
value must be a single decimal integer which is used as a multiple of the standard grid space of 5
dots. The default value is 2.
Breakout
BREAKOUT = dth dtv;
The BREAKOUT keyword lets you control the creation of bundle breakout symbols generated by
the program. This does not affect any breakouts in existing files as these symbols are already
created and stored with the file.
The BREAKOUT keyword is followed by two numbers for the following parameters:
dth
dtv
Undo Levels
The UNDO keyword indicates the number of levels of undo which should be maintained. A value
of zero means that there is no undo. The default value is 10.
UNDO = n
Undo data is held in memory during program operation. A higher value here will increase the
memory space occupied by the program.
227
value is any text. If the value contains any non-alphnumeric characters, the value
should be enclosed in double quotes.
Reference
the Find tools list. This keyword can be specified multiple times (one per line) if desired, to add
more directories.
Panel folder
This keyword is used to specify the location of the panel folder. The panel is a web page called by
the EMTP computational engine during the design simulation process. This is reserved for
advancing programming and should not be modified by users.
229
Default Font
Font = "font_name" font_size [BOLD ITALIC]
This statement specifies the default font which the EMTPWorks system will use when no other
font has been specified. Certain program modules may by default display text using this default
font. If no font is specified an attempt is made to use a Courier type face. If no font size is
specified then 10 point is used.
"font_name" is the name of a TrueType font, only TrueType fonts are supported. "font_size" is
the point size to use. There are two optional style keywords which may be applied, "BOLD" and
"ITALIC".
Example:
Font = "Courier New" 10 Bold
Reference
This is used to control translation of colors to black and white when placing an image on the
clipboard. If ClipboardColors=ToBlack is specified then all non-white colors are translated to
black. If this keyword is missing or an invalid option has been specified then no translation of
colors will occur.
The second section provides the name that will be used to show the file type in the New
document type list. If this is omitted, then it will not be possible to create this file type
using the File>New command.
The third section provides the string that appears in the "Files of type" selection list in
the Open file box. If not specified, this type will not appear in File>Open.
The last section specifies the default file extension applied when a Save As is done on
this file type.
formFile is the name of the script file or other function to run. This can be given in full
path or relative to the program folder.
231
message is the text to display in the status bar when this menu item is highlighted
arg1, arg2, etc. are optional arguments strings that will be passed to the called function.
If you are using a report generator (or Netlist generator), for example, these allow you to
use one report script for different purposes by passing different arguments. In Export
type scripts, the value of arg1 is accessible as &ARG1.
The Design and EMTP menus are programmed in the INI file using this method. You can use
them as examples for creating your own menus.
The right-click (popup) menu items are created in the [Drawing] section.
This is used to specify parameter menu items in the object specific popup menus, for devices,
signals, pins and circuits.
The first field is a keyword for indicated the target object: PopupScriptDev,
PopupScriptSig, PopupScriptPin or PopupScriptCct.
The following item on each line is the menu text. This can contain the "|" character to
indicate submenus or "-" to indicate a separator.
The third item is either the name of an attribute field or the actual name (full or relative
path) of the script to run. If the string given here ends in ".dwj" or ".rfm" it is taken as
JavaScript or Export script respectively. Otherwise it is the name of an attribute field. If
an attribute field is given, the program looks first in the object itself for a field with the
given name. If no value is found, it then looks into the design for the same field.
Any value containing blanks or commas must be enclosed in single or double quotes.
The named scripts are also search in the folders named in [Jscript] section.
This is currently used to provide extra menu items for devices, signals and pins. You can start
from the existing examples in the INI file and modify to accommodate other needs.
Reference
13 Keyboard Shortcuts
13.1 Keyboard Shortcuts
The following table lists key combinations used in the schematic drawing and symbol editor
windows.
The "+" or "-" character appearing between keys is to indicate that the keys must be pressed
simultaneously.
Command
Schematic
Symbol Editor
AddPins
Ctrl+E
Ctrl+J
Bring to Front
Ctrl+B
Close
Ctrl+W
Ctrl+W
Copy
Ctrl+C
Ctrl+C
Ctrl+Shift+Q
Cut
Ctrl+X
Design Attributes
Shift+D
Ctrl+X
Design Preferences
Ctrl+J
Draw Bundle
Ctrl+Shift+B
Draw Signal
Ctrl+Shift+S
Duplicate
Ctrl+D
Ctrl+D
Ctrl+E
Enlarge
Ctrl+Shift+E
Ctrl+Shift+E
Alt+PgUp
Export
F2
Export Again
Ctrl+F2
Find
Ctrl+F
Go to selected
Ctrl+G
Properties
Ctrl+I
Group
Ctrl+G
Magnify
Ctrl+Shift+M
Move to Grid
Ctrl+Shift+G
New
Ctrl+N
Ctrl+N
New Breakout
Ctrl+B
Normal Size
Ctrl+Shift+N
Ctrl+Shift+N
Home
Open
Ctrl+O
Ctrl+O
Ctrl+Q
Part Attributes
Ctrl+I
Paste
Ctrl+V
Ctrl+V
Paste Special
Ctrl+Shift+V
Pin Attributes
Ctrl+Shift+I
233
Ctrl+Shift+U
Ctrl+P
Ctrl+Shift+I
Redo
Ctrl+Shift+Z
Redraw
End
Reduce
Ctrl+Shift+R
Ctrl+Shift+R
Alt+PgDn
Ctrl+Shift+F
Ctrl+Shift+F
Reduce to Fit
Ctrl+Home
Revert
Ctrl+M
Rotate Left
Ctrl+R
Rotate Right
Ctrl+Alt+R
Save
Ctrl+S
Ctrl+S
Save As
Ctrl+Shift+A
Select All
Ctrl+A
Ctrl+A
Send to Back
Ctrl+Shift+B
Ctrl+Q
Undo
Ctrl+Z
Ctrl+Z
Text Font
Ctrl+T
Ungroup
Ctrl+U
Zap
Ctrl+H
Reference
Function
Delete
Arrow Keys
Arrow Keys
Path controls over signal lines while drawing signals. Press these keys
after starting to draw with the mouse pointer.
Ctrl+Shift
Control device alignment while placing devices. Press these keys while
a device is stuck to the mouse pointer.
Ctrl+Shift+Tab
Page Up (PgUP)
Scroll Up
Ctrl+PgUp
Scroll Left
Page Down
(PgDn)
Scroll Down
Ctrl+PgDn
Scroll Right
Spacebar or Esc
Exits and moves back to the normal pointer when a signal pointer is
active. Also stops the sticky action of placed or duplicated objects. If
you are working with the text tool pointer, then you must first exit the
text and then click the Spacebar. To exit the text, click on an empty
space in the design.
If you hold down the Ctrl button while holding down and moving the mouse pointer, you get a
quick way for navigating around a drawing.
235
The default version is the last version. It is the version appearing in Windows
"Start>Programs" menu. It is also the automatically launched version when a design file
is double-clicked to be opened.
To access previous version you need to start the related program file,
"C:\Program Files\EMTPWorks\EMTPWorks.exe", for example. You can also create a
shortcut to each version executable file.
If you decide to uninstall EMTPWorks, using its "Remove EMTPWorks" menu from
"Start>Programs", then only the last version will be uninstalled. The same is applicable
if you uninstall using Windows "Ad or Remove Programs" method. To uninstall the
previous versions, you can simply delete the corresponding folder under the
"C:\Program Files" directory.
It is important to verify that device simulation data supports adding pins. In several
cases this may result into a data error.
Modifying the device definition in this way makes it different from the symbol definition
that is stored in the original library. If you use the "Update from Lib" command or any
other mechanism that causes the device to revert back to its original definition, these
changes will be lost.
If this is a subcircuit device, the bundle pin must correspond to the bundle port
connector in the subcircuit. The "Bundle Pin Info" command attempts to make
corresponding modifications to the port connector, but it is up to you to verify these
changes and make sure the new internal pins connect to an appropriate signal in the
internal circuit.
237
To set the color of a device on a diagram, simply right-click on the device and select the "Fill
Colour" or "Line Colour" command. The "Fill Colour" command sets the color used for the interior
of closed objects like rectangles, ovals, etc. The "Line Colour" command sets the color for lines
and for the line border part of filled objects.
Note the following points regarding these settings:
Device symbols can be arbitrarily complicated with any number of graphic elements and
different colors. Applying a single color setting using one of these commands may not
always give the desired result. For this reason, the color settings applied when creating
a symbol have an "overridable" tag associated with them, allowing you to select which
elements will change color in response to settings on the device. Most color settings
are overridable by default. This means that when the "Fill Colour" or "Line Colour"
commands are used to apply a new color, those settings will be changed to the new
color. In the symbol editor, any color setting can be made "not overridable". This
means that the "Fill Colour" and "Line Colour" commands will have no effect on these
specific graphic elements. It is therefore possible to create a device symbol that will be
immune from these override commands and the color settings will appear to have no
effect on these devices.
The "Fill Colour" and "Line Colour" commands do not change the symbol definition and
affect only the single device selected when the command is applied. These settings are
stored with the device instance and are applied "on the fly" as the device is drawn.
14.2.3 Attributes
14.2.3.1 Making an Attribute Field Visible on All Devices
How do I show or hide the value of an attribute field on all the devices in a circuit at once, without
having to click on each one?
The easiest way to change the visibility of attributes on a large collection of devices (or signals or
pins) at once is to use the Browser tool. Follow these steps:
If you want to change a specific group of devices, select them in the schematic first. If you
want to change all devices, make sure nothing is selected by clicking in an empty area of
the diagram.
Display the Browser panel by using the Browser command in the View menu.
If the attribute field that you want to modify is not already showing in the Browsers
spreadsheet area, display it by double-clicking on it in the field list.
Click on the column heading for the desired field to select all rows of that field.
Go to the Browsers Edit menu (not the programs main Edit menu) and select the "Make Visible"
or "Make Invisible" command, as desired.
14.2.3.2 Preventing a Name from Being Made Visible
I have created a special purpose device symbol and I dont want the name to be made visible
when I place it on a diagram, even though the Auto-assign setting for the design is "visible". How
to I do this?
To prevent the auto-assigned name from being made visible on a specific symbol, you can set
the visibility options on the "Name" attribute while you are editing the symbol. To do this:
Open the symbol in the symbol editor.
Enter any text (e.g. "X") for the value of the "Name" field.
IMPORTANT: You must enter a value for the "Name" field even if it is going to be changed as
soon as the symbol is placed in the schematic. If you do not enter a value, the field is not saved
with the symbol and the visibility setting will be lost.
You can however delete some attribute fields from the design which will also eliminate them from
all devices appearing in the design. This is could be a dangerous action if devices need a given
attribute to transmit data. To delete attribute fields from a design go to the "Options>Define
Attribute Fields" menu.
NOTE: For convenience, the symbol editor remembers all attribute field names used during a
session in any symbols it encounters and displays these names whenever you set a
value in any symbol. When you follow the above instructions to delete a field, the field
name will still appear in the list even if it is not stored with the symbol.
There is no explicit command in the symbol editor to delete an attribute field from a symbol. If
you have defined a value for a field and now wish to remove it, simply use the "Part Attributes" or
"Pin Attributes" command to set the value to empty, i.e. delete the value completely from the text
box. When the symbol is saved, any field that has no value is discarded.
239
You can however delete some attribute fields from the design which will also eliminate them from
all devices appearing in the design. This is could be a dangerous action if devices need a given
attribute to transmit data. To delete attribute fields from a design go to the "Options>Define
Attribute Fields" menu.
NOTE: For convenience, the symbol editor remembers all attribute field names used during a
session in any symbols it encounters and displays these names whenever you set a
value in any symbol. When you follow the above instructions to delete a field, the field
name will still appear in the list even if it is not stored with the symbol.
14.3.2 Adding Internal Pins to a Bundle Pin
I have an existing bundle pin on a symbol and I want to add more internal pins in the same
bundle. How do I do this?
Note: This topic describes how to modify a bundle pin on a symbol using the symbol editor. To
modify a device that is already placed in a schematic without using the symbol editor,
see Modifying a Bundle Pin.
You can add more internal pins to an existing bundle pin using the "Add Pins" command. The
association of internal pins with a bundle pin is simply by order, so you have to be careful to move
the new items to the correct position in the pin list.
For example, supposing you have a symbol open in the symbol editor with the following list of
pins:
To add two more pins (say X1A an X2A) to the bundle B1, follow these steps:
Select the Add Pins command in the Options menu.
[X1A X2A]
The square brackets around the list of names is important as this signifies bundle internal pins. If
you dont include these, you will get normal visible pins and they will not be associated with the
parent bundle.
IMPORTANT: This order is invalid because you have bundle internal pins following a non-bundle
pin. The symbol editor allows this while you are working but will not save the symbol in this state.
Click and drag the items X1A and X2A into the position immediately after D2 (or you can
position them anywhere between B1 and m, if you prefer a different order).
You should now have the following list, which has a valid pin order:
Modify the EMTPWorks initialization file to specifically locate your file or folder.
241
Well give a quick rundown on the first two options here. For information on the third option,
please refer to [Libraries] section.
14.3.4 Placing Libraries in the standard "Libs" Folder
When EMTPWorks is installed, a folder called "Libs" is created in the same folder that contains
the program. All libraries inside this folder will be opened automatically when the program starts
up. The only disadvantage to placing items in this folder is that they may become mixed up with
the standard libraries provided and it becomes more difficult to track and backup your work.
14.3.5 Placing a Shortcut in the "Libs" Folder
An extension to the above method is to place a Windows shortcut in the "Libs" folder, rather than
the file itself. This has the advantage that you can leave your own files in a separate location
where they wont get accidentally deleted when updating or de-installing the software. The
methods for creating shortcuts vary with different versions of Windows, but the simplest method is
to right-click on the file in the Windows Explorer and select the "Make Shortcut" command. Then,
drag the shortcut file to the "Libs" folder. It can be renamed if desired.
The "Symbol Gallery" file is not normally open by default, so it must be explicitly opened before
you can save items to it or edit it. To open this file, right- click in the parts list and select the
"Open Lib" command. Use the file open box to select the "Symbol Gallery" file.
In a default EMTPWorks installation, this file is called "symbol gallery.clf" and is located inside a
folder called "Data Files" inside the EMTPWorks program folder. If the EMTPWorks initialization
file has been modified to specify a different file, you will have to locate that file.
14.3.7 Creating a Fixed-Phase Pin on a Symbol
How do I add a pin to a symbol that is fixed as a single-phase (3-phase) connection and cannot
connect to a 1-phase (single phase) line?
Normally, when you add a pin to a symbol and set the pin function to Power, that pin can be
connected to either a 1-phase or a 3-phase power signal. In some case the user may decide to
force the phase setting to maintain a given set of data or for making a device readily available in
the library. In some cases, models or subcircuit blocks only make sense with a certain fixed pin
configuration.
To force a fixed phase setting on a pin, follow these steps:
Open or create the symbol in the symbol editor.
In the pin list, select the pin that you wish to set.
Enter the text "=1" (that is, an equals sign followed by the single digit 1) for a force 1-phase
pin, or "=3" to force a 3-phase pin.
R1
+
1
L1
+
1mH
10 /_0
AC1
R2
To create the simplest possible report format script from scratch, follow these steps:
Select the New command in the File menu
Type (or Copy and Paste) the following text into the script:
$DEVICES$DEVNAME
Save the script file in any convenient location and close the script file. The file must have
the ".RFM" extension. Use "Report_Script_1.rfm", for example.
With the circuit you are interest in open and active, select the Export command.
Use the Browse button to locate the script file we just saved.
Turn on the "Open Finished Report on Completion" switch, if it is not already on.
243
Click Finish. You will be prompted for a location to save the finished report. Save it in any
convenient location.
Once the file is saved, you will see a report like the following (obviously, the exact list will depend
on the circuit):
AC1
R2
L1
R1
The script we created indicates that we wish to create a list of devices ($DEVICES) with the
device name ($DEVNAME) given on each line.
Well now create a somewhat more sophisticated script that illustrates most of the features you
need to create useful reports.
Enter or copy the following script into the script (.RFM) file (Report_Script_2.rfm):
$CREATEREPORT($DESIGNNAME_Report.txt)
This is the device report:
$SORT $DEVICES &Part &Value
$DEVICES$DEVNAME$COL(30)&Part$COL(45)&Value
This will generate a report like the following:
This is the device report:
R2
RLC
R1
RLC
L1
RLC
AC1
Vsine
1
1
1mH
10 /_0
There are a few basic points about the operation of the script language:
Any item starting with a $ is a command to the report generator, for example
$CREATEREPORT.
Any item starting with & is a reference to an attribute field. For example &Part means
"output the contents of the Part attribute field". You can easily change this format to
output your own attribute fields by adding &fieldName on the $DEVICES line.
Anything that is not part of a command is passed through directly to the output file. For
example, the "This is" line appears directly in the output without modification.
$CREATEREPORT($DESIGNNAME Report.txt)
This line asks to create a report output file using the name of the design followed by "_Report.txt"
as the file name. The file will be created automatically without prompting the user for a name. If
there is an existing file with that name, it will be overwritten with no comment. If you want the
system to prompt for a new name before proceeding, you can add $PROMPT to the end of the
line.
$DEVICES$DEVNAME$COL(30)&Part$COL(45)&Value
This is the heart of this script and causes the actual listing to be generated.
commands one at a time:
To take the
$DEVICES generate a device listing. This will cause one line to be generated for each device,
with the format of each line determined by the following commands.
$DEVNAME puts out the names of all devices referred to by this line, in this case, all devices
having the same Part and Value attributes.
$COL specifies a fixed column to advance to, i.e. put out blanks until we reach the given
column. Another alternative would be to insert a tab character here.
&Part means to put out the value of the Part attribute field for the device(s) in question.
$COL and &Value are similar to above.
The object's locator string. This is used to uniquely locate the object in the schematic,
even in hierarchical designs. If this is not provided, the "show in schematic" function will
not operate.
A text message to be displayed in the "item info" box when this item is selected in the
list. This will normally indicate to the user the type of error found and any other relevant
information specific to this item.
An error bit number that can be set to mask out this error. This is used to implement the "Mark as
OK" function on the Find control panel. If the user clicks this button, the given error bit will be set
in the OKErrors attribute field. It is the script writer's responsibility to check this bit when looking
for errors and to skip over this object if it comes up. More information on the Mark as OK function
can be found in the EMTPWorks Report Script Language Reference (Export Tool).
In addition to the information provided per object, the file can also contain a title line that places a
title in the Find results box. This will normally indicate the type of error check done, the number of
errors found, and other status information.
Script developers should note that if you use the "Mark as OK" function in your scripts, you
should provide a "Clear OK Errors" script to clear these settings in all marked objects. There is no
user interface provided in Find for clearing these flags.
245
Example
The following text illustrates a simple Find data file.
Although the format of the command keywords is similar to a Export command script, a Find data
file is not a script file. The Export tool will normally be used to generate the data file, as described
below.
$TITLE Found 2 devices matching C
$OBJECT DD5
$OBJTITLE C1
$MESSAGE Name: C1 - Type: C grounded - Page: 1
$OBJECT DD25
$OBJTITLE C2
$MESSAGE Name: C2 - Type: C grounded - Page: 1
This table describes the keywords used in the data file:
$TITLE
$OBJTITLE
This sets the short title string used to display the item
in the results list. The text follows the keyword on the
line.
$OBJECT
$MESSAGE
$ERRBIT
This sets the bit number used to mask this error using
the "Mark as OK" function. If this is not supplied, the
"Mark as OK" button will be disabled. This must be a
decimal integer between 0 and 31.
Note that all keywords must start at the beginning of a new line and must appear with all upper
case letters, exactly as shown.
Export executes the script, which must generate a data file in the format described
earlier in some known disk location and must pass the full name of the file, including
directory path name, back to Find.
Find opens the data file and displays the title and the list of results.
The execution of the Export tool in this mode is a bit different than operating it directly from the
File menu. In this case, when the script starts executing, there is already a "report output file"
open which is actually a memory buffer in Find. Any output generated by the script will be
interpreted by Find as the file name. The script must contain an explicit $CREATEREPORT
command to generate the disk data file, followed by a $CLOSEREPORT, followed by commands
to generate the name of the file to pass back.
Here is a simple example to look for devices with a given name:
$NOTES
Find Devices by Name
Enter the desired device name in the text box and click Search.
All device symbols having a name starting with the given characters
will be located. You can use wildcards * (any number of
characters),
? (any single character), and # (any numeric characters)
$ENDNOTES
247
$TEMPPATH\find.output
$CREATEREPORT($TEMPPATH\find.output)
$FIND $DEVICES $DEVNAME(&ARG1\*)
$SORT $DEVICES $DEVNAME
$TITLE Found $DEVCOUNT devices matching &ARG1
$DEVICES\$OBJECT $DEVLOC$NEWLINE\$OBJTITLE
$DEVNAME$NEWLINE\$MESSAGE Name: $DEVNAME - Type: $TYPENAME - Page:
$PAGE
$CLOSEREPORT
Note these points:
The $ keywords required by Find in the output file should always be prefixed with an
escape character "\" so that Export does not attempt to interpret them as commands.
You must be careful to ensure that only a single line containing the file name is
generated outside the $CREATEREPORT/$CLOSEREPORT pair.
It is best to specify a complete directory path name when creating the data file and
describing its location to Find. This will ensure that the file does not end up in an
unexpected location due to the setting of the system's "current directory". You can use
the script keywords $DESIGNPATH, $SCRIPTPATH, $TEMPPATH and $PROGPATH
to generate complete path names to known locations without specifying the absolute
name of your disk. Note that $DESIGNPATH will be null if the design has not been
saved.
The "$TEMPPATH\find.output" line is passed to the Find tool so it knows where to find
the data file to open.
When the user clicks the Script Help ("?") button on the Find panel, the contents of the
$NOTES section (i.e. anything between the $NOTES and $ENDNOTES keywords) are
displayed in a Help box. This should always be included to describe the function of the
script, how it uses the text input box, and any other relevant information.
As long as you keep these points in mind you can use any of the Export capabilities outlined in
the EMTPWorks Report Script Language Reference (Export Tool) to produce the data file.
14.6 Printing
14.6.1 Fitting a Printout to a Single Sheet
How do I get my circuit to print out on a single sheet instead of being broken into multiple sheets
when printing?
EMTPWorks allows you to create a "virtual" drawing area on the screen that can be of any size,
independent of the size your printer can actually handle. If this on-screen sheet size is bigger
than the printable area, then the diagram must be either reduced to fit on one piece of paper, or
broken into multiple sheets for printing.
To change these settings:
Select the "Sheet Size Wizard" command in the Drawing menu.
Depending on the other settings in your design, you may see a warning page about
applying settings to multiple pages. If so, make the appropriate choice and click Next until
you see the Border Scaling selection page.
If the Border scaling option is set to "Scale border to match printer setup", then follow these
steps, otherwise skip to the next section:
Click Next. You should see the "Printer Page Mapping" options.
The Advanced page allows you to select how many pages your circuit prints on. Set the size
to 1 x 1 printed pages to force the circuit to print on a single page. If this creates a drawing
area that is too small, you can adjust the scale factor to a smaller number to create a larger
on-screen drawing area.
If the Border scaling option is set to "Fixed border size", then proceed with these steps:
Click Next to view the sheet size. Unless you have some reason to want to change this
setting, click Next again.
On the Printed Output page, select the "scale to fit printed page" option and set the size to 1
x 1 pages. This forces the program to scale the drawing to fit on one printed piece of paper,
regardless of the on-screen size.
Click Finish. This change should have no visible effect on the drawing area displayed on
the screen.
249
option and are still getting black and white output, check the "Print Setup" options for your
selected printer.
PrinterColors=ToBlack
If PrinterColors=ToBlack is specified then all non-white colors are translated to black when
printing.
If the "PrinterColors" keyword is missing or an invalid option has been specified then "Yes" is
assumed.
14.7 Copying
14.7.1 Copying into Word
Copying a circuit into Word is simple. You need to select the desired circuit or any part of the
circuit or any part of a design page, copy it using CTRL-C or Edit>Copy and pasting into a Word
document. The highest resolution results are achieved when copying from EMTPWorks at the
highest zoom level. The copied circuit can be resized afterwards in the Word document.
If the selection in EMTPWorks has text objects, then you must select "Edit>Paste Special" in
Word and then select "Picture (Enhanced Metafile)".
251