057-175 PLC Soft
057-175 PLC Soft
057-175 PLC Soft
E-mail: sales@deepseaplc.com
Website: www.deepseaplc.com
Any reference to trademarked product names used within this publication is owned by their respective
companies.
Deep Sea Electronics Plc reserves the right to change the contents of this document without prior
notice.
Typeface : The typeface used in this document is Arial. Care must be taken not to mistake the upper
case letter I with the numeral 1. The numeral 1 has a top serif to avoid this confusion.
2
PLC Programming Guide for DSE Controllers
Table of Contents
1 BIBLIOGRAPHY .................................................................................................. 4
2 INTERNAL PLC DESCRIPTION .......................................................................... 4
2.1 DSE CONTROLLER COMPATIBILITY ............................................................................... 5
2.1.1.1 DSEXXXX MKI MODULES .................................................................................................... 5
2.1.1.2 DSEXXXX MKII MODULES ................................................................................................... 6
2.2 FUNCTIONS, FLAGS AND MATHS.................................................................................... 7
2.2.1 PLC FUNCTIONS......................................................................................................... 7
2.2.2 FLAGS ......................................................................................................................... 7
2.2.3 PLC MATHEMATICS.................................................................................................... 7
2.2.3.1 USER REGISTERS ............................................................................................................... 7
2.2.3.2 USER STORES..................................................................................................................... 7
3
Bibliography
1 BIBLIOGRAPHY
This document refers to and is referred to by the following DSE publications, obtained from the DSE
website www.deepseaplc.com.
The main point to remember with the PLC is that the designer is not changing existing functions within
the DSE controller, rather they are using them in differing ways to help ensure that DSEs high level of
protection and safety cannot be bypassed with the PLC. However, great care must still be taken to
ensure the PLC program operates as required by the designer.
For example, the DSE8610 controller contains synchronising and load sharing functions, with
protections provided by the MultiSet Communications (MSC) link. It would be inappropriate to allow
designers to bypass these protections. However to allow customisation, DSE have provided digital
input functions to alter the process while maintaining all necessary protections. These input functions
are also accessible via PLC Functions, described in the section entitled PLC functions elsewhere in
this document.
NOTE: It is the responsibility of the PLC programmer to ensure that the PLC program
operates exactly as intended. DSE cannot be held responsible for any issues arising from
unintended actions of the PLC program.
4
Internal PLC Description
Feature DSE335 DSE72xx DSE73xx DSE74xx DSE7450 DSEE800 DSE86xx DSE87xx DSE88xx
Number Of Nodes 50 100 100 200 400 400 400 200 200
Counters 10 10 10 10 20 20 20 10 10
Timers 10 10 10 10 20 20 20 10 10
Plc Functions 20 20 20 20 20 20 20 20 20
User Plc Flags 20 20 20 40 40 40 40 40 40
Flag Test
Flag Set, Reset, Drive, Toggle
Calendar Test
Instrumentation Test
Button Press Test
Import / Export Rungs
Alarm Reset
Label Space 1024 2048 2048 2048 2048 2048 2048
Editable Timer And Counter Names
PLC SCADA
Override Gencomm
Registers 20 20
Stores 8 8
Module Display of Counters & Timers
Module Display of Register & Stores
Front Panel Editing of Counter and
Timer Set Points
Front Panel Editing of Registers
Front Panel Editing of Stores
Maths Functions
Clock Adjust (+/- 1hr)
5
Internal PLC Description
6
Internal PLC Description
PLC functions can be considered as Virtual Inputs. For example, a PLC Function is configured in
exactly the same way as a Digital Input. The difference is that the PLC Function is activated by the
PLC and does not require hard wiring. In addition it does not use up one of the modules hardware
inputs.
2.2.2 FLAGS
Flags can be considered as Status Items within the DSE controller. Any operating state or alarm that
occurs can be detected by the PLC program. Decisions can then be made as to what action to
perform upon particular conditions.
It is also possible to create user flags to store the result of a condition or set of conditions. These are
known as PLC Output Flags.
Module outputs can then be set to operate upon the PLC Output Flags or upon the modules inbuilt
Flags.
PLC mathematics allows the user to manipulate instrumentation values with mathematical functions,
placing values and results into the modules Registers or Stores for access later either by the PLC
itself or via the controllers display.
Values placed in the User Registers are lost when the module DC power is removed and after
configuration upload from the DSE Configuration Suite PC Software.
User Registers are able to be viewed in the module instrumentation screens after selection using the
DSE Configuration Suite PC Software. Refer to the section entitled Module Display elsewhere in this
document for further details.
Values placed in the User Stores are maintained, even when the module DC power is removed.
The values are stored in Non-Volatile (N.V.) memory. To minimise the number of writes to the N.V.
memory (extending its life), the values are stored at intervals of one minute since the last write to the
N.V. memory and then only if the value has changed.
User Stores are able to be viewed and edited in the module instrumentation screens after selection
using the DSE Configuration Suite PC Software. Refer to the section entitled Module Display
elsewhere in this document for further details.
7
Accessing the PLC Editor
8
Accessing the PLC Editor
To create a program, click and drag the icons from the Condition and Actions toolbar onto the
program area.
The PLC program is evaluated every 100 ms (10 times per second).
The evaluation time of each rung is indeterminate as each rung consists of a variety of functions,
each one with a variable execution time.
Actions are queued by the PLC during the evaluation of the rungs, then executed in order at the
completion of the program, before the cycle begins again.
This means that the order of the items in the PLC may change the way the program operates.
9
Accessing the PLC Editor
3.1.1 CONDITIONS
Items on the Conditions toolbar allow for a variety of conditions to be tested (checked). Not all items
are available with all controllers.
Test
Instrumentation
Test Test Date and
Value
Counter Time
A Flag is an internal state of the controller. Some examples of flags include operating mode and
current alarm conditions. The list of testable flags varies depending upon the controller being
configured and is the same list for configuring the modules output relays. A full list along with
descriptions is contained within the relevant DSE Configuration Suite PC Software Manual.
The list of testable flags varies depending upon the controller. A full list of module instrumentation is
contained within the relevant Operator Manual.
Not all instrumentation can be read from all controllers. These include :
Instruments that are not supported by the controller. For example Mains Voltage is only
available in controllers with Mains Sensing.
Instruments not configured in the controller. For example the Fuel Level Input may be
configured to be not used.
Instruments that are under range or over range. For example if the Coolant Temperature is
below the measurable range of the temperature sensor being used.
Instruments that are in a fault condition. For example the Oil Pressure Sensor may be open
circuit.
Instruments whose condition cannot be determined. For example Power Factor is not
measurable when there is no load applied to the generator.
In these circumstances the module returns a sentinel value as listed overleaf. The actual value
returned for a given state varies depending upon the size and type of instrument being read.
NOTE: It is the responsibility of the PLC programmer to ensure that the PLC program
operates exactly as intended. DSE cannot be held responsible for any issues arising from
unintended actions of the PLC program.
10
Accessing the PLC Editor
11
Accessing the PLC Editor
NOTE: On some controllers, Calculated Values are available in the Test Instrumention
section.
Calculated values are predefined by DSE and are included to provide additional ways of testing of the
controllers instrumentation.
Selection Description
Average An average of the instrumentation
Difference The difference between the maximum and the minimum
Maximum The highest instrumentation value
Minimum The lowest instrumentation value
Minimum Index Indicates the lowest of the three phases (L1=1, L2=2, L3=3)
Maximum Index Indicates the highest of the three phases (L1=1, L2=2, L3=3)
Example:
L1 = 230 V AC
L2 = 233 V AC
L3 = 224 V AC
12
Accessing the PLC Editor
Test Time and Date are a collection of tests that allows an action based upon a specific time, date or
time and date.
It is also possible to combine two or more of these tests to make a more specific test.
For example:
+ + allows a test for a specifc time, day and month, for instance 10:32am on any Tuesday in
September.
13
Accessing the PLC Editor
Allows the PLC program to check if any of the control buttons are being pressed on the controller.
Depending upon controller type this allows testing for the following button presses:
This example drives PLC Flag 1 when the Test button OR Start button is pressed:
This example drives PLC Flag 1 when the Test button AND Start button is pressed:
14
Accessing the PLC Editor
3.1.2 ACTIONS
The action toolbar contains the icons that allow the PLC to perform certain actions. These are
described in the following sections.
Some Actions are edge triggered. This means the action takes place when the preceeding
Condition(s) change. If a Condition remains unchanged, the Action is not repeated.
Some Actions are level triggered. This means the action takes place if the Condition(s) are true and
continues to be actioned until the Condition(s) become false.
15
Accessing the PLC Editor
Four different ways of controlling the User Settable PLC Flags are possible.
16
Accessing the PLC Editor
3.1.3.3 MATHEMATICAL
Actions to allow mathematical functions to be performed and the results placed in a Register or Store.
Item Description
Operation Addition: Value1 + Value 2
Value 1 Subtraction: Value 1 Value 2
Value 2 Multiply: Value 1 * Value 2
Divide: Value 1 / Value 2 (remainder is lost)
Remainder: The remainder of Value 1 / Value 2
Magnitude: The value with its sign removed. For example both 6 and -6 give a
value of 6.
Minimum: The lowest of Value 1 and Value 2. For example Value 1 = 5, Value
2 = 7. The Minimum is 5.
Maximum: The highest of Value 1 and Value 2. For example Value 1=5, Value
2 = 7. The Maximum is 7.
Target The location where the result of the mathematical operation is to be placed.
Register: Values placed in the User Registers are lost when the module DC
power is removed.
Store: Values placed in the User Stores are maintained, even when the module
DC power is removed.
For further details of Registers and Stores, see the section entitled PLC Maths
elsewhere in this document.
3.1.3.4 COPY
Item Description
Value Fixed Value: Enter the value manually.
Calculated Value: Select the calculated instrumentation value from a list of
prefined options.
Instrumentation Value: Select one of the modules instrumentation items.
Register: Select one of the Registers.
Store: Select one of the Stores.
Target The location where the Value is to be placed.
Register: Values placed in the Registers are lost when the module DC power is
removed.
Store: Values placed in the Stores are maintained, even when the module DC
power is removed.
For further details of Registers and Stores, see the section entitled PLC Maths
elsewhere in this document.
17
Accessing the PLC Editor
Included to ease Daylight Saving adjustments, this allows one hour to be added to or subtracted from
the modules internal clock.
Example:
Showing the addition of one hour on the fourth Sunday in March at 1 am. Addtionally this is setting a
User Store to the value of 1. This allows us to check in the PLC SCADA or in the module
instrumention if DST is active:
Example:
Showing the subtraction of one hour on the fourth Sunday in October at 2 am. We additionally check
the status of DST (Store 1) to ensure the clock is not continually adjusted one hour later!
3.1.3.6 TIMER
If it is required to restart a timer, its condition must be made false, then true again in order to re-
enable the timer. This restarts the timer from zero.
18
Accessing the PLC Editor
3.1.3.7 FUNCTION
PLC functions can be considered as Virtual Inputs. For example a PLC Function is configured in
exactly the same way and has the same selections as a Module Digital Input. The difference is that
the PLC Function is activated by the PLC and does not require hard wiring.
Item Description
Function User Configured: Allows the user to configure the Function to perform
an alarm or status indication.
Digital Input Selection List: Allows the user to select from a predefined
selection list. Refer to the DSE Configuration Suite PC Software Manual
for the host controller in use for a full description of possible selections.
Polarity Close to Activate: The Function is normally inactive and must be
driven in the PLC in order to activate it.
Open to Activate: The Function is normally active and must driven in
the PLC in order to de-activate it.
Action Electrical Trip: When activated, an electrical trip alarm is generated, the
(Only applicable when load switch is opened (if closed) and the generator placed into the
function is set to User cooling run before stopping.
Configured) Indication: No alarm condition is generated and the set continues to
run. This is often used to create status indications or be monitored by the
users PLC logic.
Warning: When activated, a warning alarm is generated but the set
remains running.
Shutdown: When activated, a shutdown alarm is generated, the load
switch (if closed) is immediately opened and the set is immediately
stopped.
Example using a function to prevent starting the generator upon a mains failure during the whole of
Sunday. This uses PLC Function 1, configured to Auto Start Inhibit.
19
Accessing the PLC Editor
Using an external PLC that has a Modbus master serial port, it is possible to write values to the DSE
controllers to change certain parameters. The protocol used for this is called Gencomm.
Using the DSE internal PLC, it is possible to change these same values using the Override Gencomm
action.
Depending upon controller type, the parameters that can be changed vary. Some controllers have no
adjustable parameters using this function.
Example 1: Using Override Gencomm, the Run Priority of the set can be changed.
Example 2: Using Override Gencomm, the amount of power the generator is producing can be
changed.
This action allows individual alarms to be reset. An alarm can only be reset if the condition that
generated the alarm is no longer present.
To perform an action that resets ALL alarms, its more appropriate to drive a PLC Function that has
been configured to Alarm Reset.
20
Accessing the PLC Editor
3.1.4 TOOLS
Setup Import PLC Search for Counter /
Timers Rung(s) Timer usage
Setup
Counters
Setup Setup
Registers Stores Add a Label
3.1.4.1 COUNTERS
Scroll down
to access all
the counters.
3.1.4.2 TIMERS
Scroll down
to access all
the timers.
21
Accessing the PLC Editor
3.1.4.3 REGISTERS
Allows the user registers to be named for easier referencing and display on the module screen.
Click to
rename the
Register
3.1.4.4 STORES
Allows the user stores to be named for easier referencing and display on the module screen.
Click to
Rename the
Stores
Clicking Add Label generates a blank label in the PLC Ladder. This allows the designer to place notes
in the PLC Ladder.
Delete the Click and drag to move the Type the Label here
Label Label to another location in
the ladder.
22
Accessing the PLC Editor
Allows the designer to import a PLC program containing one or more rungs into the current program.
This is useful for reusing functions created in other configurations.
Care must be taken when using this function as Flags, Registers, Stores, Counters, Timers and PLC
Functions may be called that are already in use in the current program.
Shows a list of currently used Functions, Counters, Timers, Registers and Stores. This makes it
easier when adding additional counters and timers by allowing the designer to see which ones are
already in use.
The PLC memory status is contained at the bottom of the PLC Logic page. The amount of available
memory differs between controller ranges.
The amount of memory blocks used in The amount of labels used by Counters,
the ladder program. Timers, Registers, Stores and user placed
Labels.
23
Module Display
4 MODULE DISPLAY
NOTE: This section is not available on all controllers. See the section entitled DSE
Controller Compatibility elsewhere in this document.
This section allows the user to select up to eight items from the complete list of Counters, Timers,
Registers or Stores for display on the host modules instrumentation display.
After selection for display on the host controller, Counters, Timers, Registers and Stores are able to
be viewed and/or edited as below on the controller display.
NOTE: All Stores are able to be edited in the SCADA | PLC | PLC Stores section of the
DSE Configuration Suite PC Software regardless of their selection in the Module Display |
Displayed Pages section of the configuration. For details of this, refer to the relevant control
DSE Configuration Suite PC Software Manual as listed in the Bibliography section of this
manual.
24
How To Create a PLC Program
Looking through the list of Flags we find Audible Alarm. This flag is set whenever the controllers
internal audible alarm is active.
Therefore, in the PLC Logic screen we can drag the (Flag Test) icon to the Program Area. The
following options box appears:
Parameter Description
Condition Type The type of condition to check for. This is automatically set when the icon is
dragged from the Condition toolbar but can be changed if the wrong one is
inadvertently selected.
Polarity Normally Open: Tests if the condition is True.
Normally Closed: Tests if the condition is False.
Source Contains the list of available Flags.
This list differs between controller types. A full list of sources is included in the
relevant controllers Configuration Suite manual.
OK Click to add the condition to the PLC program.
Cancel Click to cancel and return to the editor without adding the condition.
In our example we select Flag Test, Normally Open, Audible Alarm and click .
Our example program is now as below. If it isnt, then go back and check what went wrong.
25
How To Create a PLC Program
The next thing we need to do is set a timer that expires in 30 seconds after the audible alarm begins.
Drag the (Delay) icon from the Action Toolbar and drop it just to the right of the black line to the
right of the Audible Alarm symbol that has just been placed.
Parameter Description
Action Type The type of action to perform. This is automatically set when the icon is dragged
from the Action toolbar but can be changed if the wrong one is inadvertently
selected.
Timer # The number of the timer to be operated.
This program now checks for an audible alarm and start a timer that runs for 30 seconds (so long as
the audible alarm remains active). Next we need to configure what happens when the timer expires.
We need a new Condition: (Timer Test). Drag this from the Condition Toolbar into the empty
space below the first PLC rung. The details window appears. Make selections as shown below. This
checks to see if Timer # 1 has expired.
26
How To Create a PLC Program
We have now just one more item to add to the PLC Ladder.
When the 30 second timer expires, we want it to silence the audible alarm. This is achieved using a
PLC Function. Drag the (Trigger Function) icon and drop it to the right of the Timer Limit 1 condition.
Parameter Description
Action Type The type of action to perform. This is automatically set when the icon is dragged
from the Action toolbar but can be changed if the wrong one is inadvertently
selected.
Function # The number of the Function to be operated.
This program now checks for an audible alarm and start a timer that runs for 30 seconds (so long as
the audible alarm remains active).
When the timer expires, Function 1 is triggered.
27
How To Create a PLC Program
For our example PLC program, we need to select Alarm Mute, a predefined function that silences the
alarm:
Function. The possible
As this example selections differ with
shows a predefined each controller range.
function, these These are listed in the
parameters are relevant Configuration
greyed out as they Suite Software
are not applicable manual.
This now results in a program that checks for an audible alarm and starts a timer that runs for 30
seconds (so long as the audible alarm remains active).
When the timer expires, Alarm Mute (Function 1) is triggered silencing the alarm. If another alarm
occurs, the audible alarm restarts, starting our 30 second timer again.
Remember to click (Save) to save a copy of the configuration file. The PLC program is contained
within the configuration file.
Also remember to click (Write to module) to upload the configuration file to the connected controller.
28
Testing and Diagnosing the PLC Program
29
This Page is Intentionally Blank
30