Download as pdf or txt
Download as pdf or txt
You are on page 1of 78

Rockwell Automation

Branch of
Rockwell International GmbH
GTS Engineering
Düsselberger Straße 15
D-42781 Haan
Germany
Tel. +49 (0)2104-960249
Fax. +49 (0)2104-960255

Software Documentation

DCP
Diagnostic Control Program
Part 1 DCP Specification
Part 2 DCP Standard Control Functions
Part 3 DCP Support
Part 4 OEM Tools

CMU
Control and Monitoring Unit

DCU
Diagnostic Control Unit

Project
Ford using ControlLogix
Rockwell Automation
Branch of
Rockwell International GmbH
GTS Engineering
Düsselberger Straße 15
D-42781 Haan
Germany
Tel. +49 (0)2104-960249
Fax. +49 (0)2104-960255

Software Documentation

Part 1

DCP Specification
Release 1.1 (April 2005)

Project
Ford using ControlLogix
Part 1 – Foreword

FOREWORD

About this manual

The production of this manual is to assist users of the Rockwell Automation ControlLogix 556x processor
family to create Diagnostics Control programs (programming software RSLogix 5000).

Ford ControlLogix - DCP-Specification 1


Part 1 – Foreword

Important User Information

Because of the variety of uses for the products described in this publication, those responsible for the
application and use of this control equipment must satisfy themselves that all necessary steps have been
taken to assure that each application and use meets all performance and safety requirements, including any
applicable laws, regulations, codes and standards.

The illustrations, charts, sample programs and layout examples shown in this guide are intended solely for
purposes of example. Since there are many variables and requirements associated with any particular
installation, Ford Motor Company and Rockwell Automation does not assume responsibility or liability (to
include intellectual property liability) for actual use based upon the examples shown in this publication.

Reproduction of the contents of this copyrighted manual, in whole or in part, without the written permission of
Ford Motor Company and Rockwell Automation, is prohibited.

Ford ControlLogix - DCP-Specification 2


Part 1 – Modifications

Modifications of DCP Specification Release 1.1

No Modification Date (DMY) Signature


1 Updates created through C307 project in Valencia 05th April 2005 Dgree116@ford.com

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

Ford ControlLogix - DCP-Specification 3


Part 1 - Contents

CONTENTS

1. Introduction

This chapter gives a description of DCP and its diagnostics.

1.1 The Concept


1.2 The DCP Approach

2. Design of the DCP Program

This chapter describes the general approach to create DCP programs and the preliminary work to be
carried out.

2.1 Software Design


2.2 Design of the Sequence
2.3 Planning the Fault Table Layout
2.4 Displaying the Diagnostics
2.5 Design of Machine Actions

3. DCP Organisation

This chapter describes the program structure of the DCP Standard. Detailed descriptions you will find
in the DCP program which shows the function of each rung.

3.1 Project Structure Rules


3.2 Structure of Routine Calls
3.3 The Program Global
3.4 The Program User
3.5 The Program(s) Sequence
3.6 Multiple Sequences

4. Operating Modes

This chapter describes the different operating modes used in DCP programming.

4.1 Operating Modes


4.2 Automatic/Semi Modes
4.3 Manual Operations

5. Standard Control Functions (M_Fct…)

This chapter describes in detail the standard logic used in Control Function Block.

5.1 Control Functions


5.2 Using the LIM Instruction to Mark Step Ranges
5.3 Dry Run & Clear Line

Ford ControlLogix - DCP-Specification 4


Part 1 - Contents

6. Sequence Co-ordination and Type Variants

This chapter shows how multiple sequences are interlinked and methods used to control type
variations.

6.1 Sequence Co ordination


6.2 Type Variations
6.3 Jumping within a Sequence

7. Standard Actuators (Mechanisms)

This chapter shows frequently used types of control functions needed to cater for different types of
actuators. The principles of control functions were covered in the chapter 5, so this chapter does not
go into detail, other than changes from one actuator to another. The different standard function blocks
(standard zones) are described as function diagram in Part 2 of this specification. They are saved as a
library at the end of the DCP Standard Program (without the function blocks delivered by the OEMs).

7.1 Conventions
7.2 Standard Control Functions

Appendix

A. DCP Standard (Ladder)


(see printout of delivered standard software DCP)

Ford ControlLogix - DCP-Specification 5


Part 1 - Chapter 1

CONTENTS CHAPTER 1

1. Introduction

This chapter gives a description of DCP and its diagnostics.

Section Page Topic

1.1 1 The Concept

1.2 1 The DCP Approach


1.2.1 1 Steps and Control Functions
1.2.2 2 Sequence and Interlock Checks
1.2.3 3 Constantly Monitored Zone
1.2.4 4 Start Conditions

Ford ControlLogix - DCP-Specification 1-0


Part 1 - Chapter 1

1. Introduction

1.1 The Concept

Development of this specification was to ensure different vendor's software is of a similar standard. It is then
easier for maintenance personnel to understand (once they have learned the rules) as they do not have to
learn the programmer's technique before being able to diagnose machine faults.
One of the main considerations is to diagnose faults without resorting to looking through the program, but
should this be necessary the structure and the program should be easy to understand.

The objectives of this specification are as follows:

– Standard to the control of sequential treatment-processes with integrated dynamic machine error
diagnosis and preparation of all information necessary for the operator.

– Tags of machine inputs are entered only within it’s own program file and therefore addition and deletion
of an input does not produce inaccurate diagnostics.

– The diagnostics are dynamic and show the true operation of the machine not only in the error case.

– It should be structured, well documented and logical making it easy to understand.

– The program should allow unequivocal fault finding and allow the machine to restart easily after a fault
condition.

– Simple layout to ensure clear structure and continuity of interpretation for every vendor.

– Standard interfaces to external systems e. g. human machine interface (HMI).

– Software is applied as well to control the electric monorail system EMS.

1.2 The DCP Approach

In DCP each reaction signal (e. g. limit switch) is assigned a position in a diagnostic fault table, which is
stored in the PLC memory. If the signal is in a wrong state during the periods it is required, either as a
sequence check or as an interlock check, then the corresponding bit is set in the fault table.
An empty table therefore indicates that there are no sequence or interlock faults present and that the
machine may continue further in it’s operation.

1.2.1 Steps and Control Functions

With this form of programming there has always been a certain amount of confusion as to the difference
between steps and zones. A zone has always consisted of the logic necessary to perform and monitor a
machine action. This zone was then implemented on a certain step or steps. However it has been possible to
have multiple zones operating on one step or a zone that operates on multiple steps. Also the term zone
referred to many areas of the program, e. g. constantly monitored zone, sequence zone, interlock zone, etc.

To try and remove the confusion the term zone previously used for the main sequence of the program has
been replaced by control function which consist of the appropriate actions of a mechanism.
These control functions are enabled in a step or steps and their reaction signals monitored. All the
programming for one mechanism is therefore contained within a single function and is easy to understand.

Ford ControlLogix - DCP-Specification 1-1


Part 1 - Chapter 1
To assist in determining when actions should occur, a DCP function chart is proposed to plan a program.
This is discussed in detail in chapter 2 of this manual.

A step is the moment in time at which an action occurs and its reactions are monitored.
A sequence therefore consists of a number of steps or actions which together perform the function of the
machine (machine cycle).

An advantage of the DCP is to offer all used control functions of this project as a function block library
(different types of actuators, robots and so on). The requested control function blocks (FBs) are copied out of
the library into the sequence depending on the function type and number used at the machine. The FBs only
have to be configured (step, manual pushbutton and lamp, control output, limit switches and fault bits).
Therefore the DCP is organized according to control functions of actuators and not according to steps.

1.2.2 Sequence and Interlock Checks

Interlock and sequence checks form the basis of how a DCP program is structured and controlled.

A SEQUENCE CHECK occurs in the active step(s) during a machine movement and monitors the
successful finish of the step function
AN INTERLOCK CHECK occurs in passive step(s) after the movement is completed to ensure that this
mechanisms position does not change.

When the machine is working in automatic, the machine will wait for an action to complete no matter how
long it takes. If an interlock fault should occur the machine will stop the automatic mode immediately. Both
checks use the code in different ways to achieve the required result.

Fig 1.3.2 shows a timing diagram of two solenoids and their limit switches.

The black arrows represent a sequence check. The solenoid is energised and the signal from the limit is
required to show that the action has completed.
The hatched arrows show where interlock checks are applied, e. g. the action has occurred and the limit is
checked now to ensure the machine has remained in position.

Ford ControlLogix - DCP-Specification 1-2


Part 1 - Chapter 1
Fig 1.2.2 Sequence and Interlock Checks

Each input controls a bit in the fault table which is monitored as a sequence check or interlock fault. The
difference between the two is that an interlock fault will stop the machine operation and a sequence check
will not.

An interlock fault is caused by not allowed machine status (e. g. a clamp moves off its limit switch because of
an unexpected movement in a step, that controls another action (passive step)), and will stop the machine
immediately.

A sequence fault (sequence message) is only regarded as a fault because the action initiated has not
completed (active step), this could be due to a clamp sticking so the machine will not move onto the next
step.

1.2.3 Constantly Monitored Zone

Sequence and interlock checks monitor signals that relate to certain steps in the sequence. They report a
wrong condition of the machine dependent on the in each case active step. There is another set of signals in
the constantly monitored area, however, which is independently from the sequence run. These include:

– Emergency stop signals


– Pressure/air/water switches
– Motor contactors etc.

Ford ControlLogix - DCP-Specification 1-3


Part 1 - Chapter 1
Health and safety regulations stipulate that some of these features must be realised externally (Hardware),
but they should still be used to stop the sequence. The relevant signals directly control bits in particular
areas of the fault table.
These areas are known as :

– CONSTANTLY MONITORED INTERLOCK (CMI) ZONE


– CONSTANTLY MONITORED ZONE (CM).

CM FAULTS must remove the start signal without any delay, there should be no further movement in any
possible mode until these faults are cleared.
CMI FAULTS act in the same way but allow manual operation.

1.2.4 Start Conditions

A further section of the fault table is an area reserved to display signals that, if missing, will prevent the
sequence from starting.
In many cases they represent conditions that indicate simply that pressing the start button will restart the
sequence. These signals are entered directly into this specific area of the fault table, without reference to
step numbers.
Once the sequence is running they act in the same way as normal sequence faults. When the start condition
goes off step change is enabled.

Ford ControlLogix - DCP-Specification 1-4


Part 1 - Chapter 2

CONTENTS CHAPTER 2

2. Design of a DCP Program

This chapter gives the requirements for a DCP program design and how it could be realised.

Section Page Topic

2.1 1 Software Design


2.1.1 1 Machine Build

2.2 2 Design of the Sequence


2.2.1 2 Sequence Overview Diagram

2.3 4 Planning the Fault Table Layout

2.4 6 Displaying the Diagnostics

2.5 7 Design of Machine Actions


2.5.1 7 Programming Chart
2.5.2 9 Push Button Table
2.5.3 12 Worked Example

Ford ControlLogix - DCP-Specification 2-0


Part 1 - Chapter 2

2. Design of a DCP Program

2.1 Software Design

In order to design the software the following documents are required :-.

– DCP sequence/step overview diagram


– DCP sequence and interlock diagram
– DCP fault diagnostic table.
– DCP Pushbutton table.

The required software design documents are described in this chapter.

2.1.1 Machine Build

Configuration and design is an interactive process between the software designer and the machine designer.

1. The machine designer supplies machine operation details. This will involve drawings and written
descriptions.

2. The machine designer supplies machine hardware details including proposals on the types of
mechanism and sensors required for each action.

3. The software designer verifies the electrical hardware proposed.

4. The software designer should verify that the design includes all signals necessary to control the
machine safely as it is important to take into account the software requirements when designing a
machine.

5. Having completed the next two design phases the software designer defines the programmable
controller configuration and machine control panel requirements and returns them to the machine
designer.

6. Following action is to design the controller program.

Items (1) and (2) will include a timing diagram of the machine, an example of which is shown on the next
page.

In most instances the program is usually the last part of the machine to be developed. To assure the
execution of the pre-defined machine sequence it is necessary that every action has at least two position
reaction devices, one at each end of travel. Some actions could have three position switches one at each
end of travel plus over-travel. The position switch is used to drive the fault table flag and the over-travel is fed
directly into the constantly monitored interlock zone.

In all cases it is important that every input should have a corresponding diagnostic message. It is essential
that every mechanism has a sensor to detect work and home positions and other intermediate work
positions.

The most useful summary of all this information, required to generate the software program is documented in
the sequence and interlock chart and the programming chart. See figs 2.5.1 and 2.5.2.

Ford ControlLogix - DCP-Specification 2-1


Part 1 - Chapter 2

2.2 Design of the Sequence

Using the information from the timing diagram and other relevant information from the designer the design of
the sequence is carried out as follows.

2.2.1 Sequence Overview Diagram

All the sequences used to control a machine are to be described using the example sheet fig. 2.2.1 which
provides a complete overview of how the machine is controlled.
The number of steps in each independent sequence and the relationships between sequences can be
shown.

Descriptions should be as simple as practical and indicate the actions initiated in that step. Some actions
may continue over several steps and it is worth while including such information in the chart.
At times a step has no action to initiate, if for instance it is waiting for a feedback signal, it is described as
"waiting for...".

If the sequence is complex it may be advisable to leave blank steps at different points in the cycle to allow for
later expansion. The description ‘Reserved’ should then be applied.

All the addresses (tags) related to the sequence begin with zzSeq[x]. … (x = sequence number), and
SEQUENCE_DATA are the user defined data type of the structured tags.

Ford ControlLogix - DCP-Specification 2-2


Part 1 - Chapter 2

Fig 2.2.1 Sequence Overview Diagram

Ford ControlLogix - DCP-Specification 2-3


Part 1 - Chapter 2

2.3 Planning the Fault Table Layout

To each sequence, a fault table belongs to the diagnosis of the machine errors and messages. It is divided
into 5 fault areas, the mixed feedback of the sequence evokes. The area limits and the number of fault bits
(default = 3200) are to be defined freely per PLC for all sequences from the user together.
The order of bits within each fault table stretches from bit 1 for the fault bit of topmost priority up to bit with
lowest priority (highest bit number). Bit 0 is reserved and it is not allowed to use it. The data type of the fault
table is DINT (e. g. Bit 747 in sequence 2 = zzSeq[2].Fault[23] .13).

At this stage it is possible to plan the layout of the fault table, e. g. which bit will represent which signal or
condition. Messages should be written so that they start with Waiting for ...., followed by a description of the
relevant signal.

Constantly monitored signals (CM/CMI)


These signals are sequence-encroaching in principle and from topmost priority, that is lowest bit
numbers in the fault table.

Sequence/Interlock zone (SIZ)


The sequence/interlock zone is the step-dependent area and earns experience-in accordance with
the biggest place in the fault table. The zone follows the constantly monitored area, normally start
with the lowest bit address having the highest priority, and extend for as many bits as are necessary
to accommodate all the messages and the recommended free space.

Start conditions
This zone follows the SIZ. Each message tells the operator what he must do to start the machine in
Auto or Semi-auto. For example, that he must press a particular start pushbutton, depending on the
operating mode selected. When the machine is in manual it indicates no automatic start possible if
there are interlock faults present. Waiting for the operator to complete a manual load or unload
operation is not a start condition. It is a part of the sequence, so should be entered in the
Sequence/Interlock zone (SIZ).

General Messages
These messages are located in the highest bit zone (lowest priority). They have no influence on the
machine operation and are free available by the user.
The messages are used to display user dependent conditions very easily. For instance the user can
display different set up conditions, states, faults or states of other stations.

For the clearness of the fault table it is recommended, for example an actuator, to provide an interrelated
table-area, like 1 word. As it is advisable with step numbers, do not cover five to six bits per 32 bits in order
to be able to plan late alterations. As thumb-rule approximately 20% of the bits should serve as reserve.
Although the DCP per PLC-scan reports all current faults of the fault table, depending on the used human
machine interface (HMI) only a limited number of simultaneously fault messages can be shown. The fault
causing a machine breakdown should always be assigned a fault bit with a higher priority than the fault bits
of any resulting faults. The priority rule is especially important for the CM and CMI zones of the fault table.

The figure below shows an example of a bit table and location of bits to be used within the fault table.

Ford ControlLogix - DCP-Specification 2-4


Part 1 - Chapter 2

Bit 001 CM
([0].1)
Constantly monitored zone (highest priority):
In accordance with the security-regulations, these hardware-wired signals stop the
machine immediately. CM faults break off the machine cycle at once and in manual
mode also close each movement for the protection of human and machine equipment.
In general these faults are global faults and independent of sequence.
Example: emergency stop, loss of air pressure.
Bit 639
([19].31)
Bit 640 CMI
([20].0)
Constantly monitored interlock zone:
CMI faults immediately break off the machine cycle for the protection of the machine
equipment, still admits the manual operation however. Partially these faults can be
global faults and independent of sequence.
Example: motor-protection
Bit 927
([29].31)
Bit 928 SIZ
([30].0)
Sequence and interlock zone:
Sequence faults: in the automatic operating modes the running machine waits on the
end of an action during the active step, independently on the duration of the action.
Interlock faults: After the action is finished, the reached position will be monitored
now (passive steps). In case of this fault, the sequence reacts as the CMI fault. The
machine-cycle immediately breaks off when the DOSA time is exceeded, manual
operation is still possible.
Example: Waiting on closed clamp.
Bit 1535
([47].31)
Bit 3104 SSZ
([97].0)
Zone of start conditions:
Usually these conditions report, that the sequence starts again if start pushbutton will
be pressed. As soon as the sequence runs, this condition acts as a sequence fault and
will be switched off to make possible the step change.
Example: Waiting on central start.
Bit 3135
([97].31)
Bit 3136 GMSG
([98].0)
Zone of general messages (lowest priority):
These messages are only used to display user states (except quickstop message, see
Part 3) and have no influence on sequence operation. They are freely available by the
user (e. g. for maintenance and test).
Bit 3199
([99].31)

NOTE: The values putting in parentheses relate to the data type DINT
NOTE: Prepared fault table see Ford specification

Ford ControlLogix - DCP-Specification 2-5


Part 1 - Chapter 2
In the fault table it is usual for the text and numeric information relating to a bit to be unique, with a few
exceptions:

– Different fault bits may have the same output address. For example an output controlling a valve may
actually control a number of air cylinders that each have their own end limit sensor. Or a movement of a
function operates with an intermediate position.
– Single-solenoid valves use only one PLC output, but still control movements in two directions. The output
designation for the reverse direction (usually home) is shown logically inverted, e. g. with a line in the
description above the tag name.

Some control functions may not have a control output. An example of this is part detection.

To ensure that the correct fault bit is shown the need to assign priorities is essential.

In the SIZ the fault bits are related to the actuators and it is usual to use adjacent fault bits to represent the
work and home positions of a function. For the configuration of a function block it is important to place
always the fault bit A (start position) before fault bit B (target position) for any particular mechanism to ensure
the detection of a failed sensor rather than the non arrival of a mechanism (see 2.5.2 programming chart).

2.4 Displaying the Diagnostics

The method to display data in the fault table varies from machine to machine.
For a small machine an alpha numeric display could be used whilst for a large machine a PC based system
may be more appropriate.
Data displayed should be as explicit as possible, giving as much useful information as is practical.

For example:

LOCAL:3.I.DATA[3] : * : [23].13 : 1Y011B : 214/0 : WAIT FOR Y3 INDEX UP

The information above consists of the following data:


1. LOCAL:3:I.DATA[0]: Tag of the limit switch that has caused the fault
2. * : Negated input described as * (if necessary)
3. [23].13: Fault bit zzSeq[2].Fault[23].13
4. 1Y011B: Control output of the accessory actuator
5. 214/0: E-Plan page/column
6. WAIT FOR Y3 INDEX UP: Text of fault message.
Although typical text is shown, local plant and project requirements will determine the information and format
required

Ford ControlLogix - DCP-Specification 2-6


Part 1 - Chapter 2

2.5 Design of Machine Actions

The charts defining functions, steps, interlocks, fault table addresses etc. can now be planned as shown
below and should be read with reference to the worked example 2.5.3

– Identify all the actions and related data e. g. inputs, outputs etc.:
Programming Chart
– Identify start conditions, constantly monitored signals and all of the function diagnostics:
Fault Diagnostic Table.
– Identify push button positions
Push Button Table

Ford ControlLogix - DCP-Specification 2-7


Part 1 - Chapter 2

2.5.1 Programming Chart

This chart (Fig. 2.5.1) groups together all information required for the program for both automatic and manual
operation allowing the control functions to be programmed directly from the chart.
According to the Sequence and Interlock Chart this table splits the machine into mechanisms that will carry
out the machine actions. For each mechanism two lines exist for each movement of an action. The chart is
completed for every separate mechanism including steps that have no action to take. For instance a step
could be waiting for a feedback from an external device or another sequence.

The first eight columns of this chart are completed using the data previously entered on the Sequence and
Interlock chart and the following steps should be followed in order to complete these columns:

1. Function, Mechanism, Position


Enter the control functions, mechanisms and position information as it appears on the Sequence and
Interlock Chart.

2. Active Steps
Read along the automatic line ('A') for each function and note any steps where an 'A' or 'S' is present.
The step number or numbers where these are found are entered in the 'Active steps' field.

3. Sequence Check
Repeat step 2 this time looking for sequence checks indicated by an 'S' and enter the step number or
numbers where they are found in the 'SeqCheck steps' field.

4. Backward Steps
In the column marked 'Backward steps' enter the value(s) found in the 'SeqCheck steps' column of the
opposite motion for this function. If no opposite motion exists as in the case of part present the entry
should be the same as that in 'SeqCheck steps'. If a function is active over a number of steps before
being sequence checked the step number of the first ‘A’ should be entered as well as that for the
sequence check step.

5. Manual Interlock Check


Look down the column for each manual operation for an occurrence of an 'M'. The function number of
the row it appears in is now recorded in the 'ManCheckReq./ManDiag' field together with it’s required
position e. g. work, rest etc. Repeat this operation for any further occurrences of 'M' for this manual
operation.

6. Interlock Check
Repeat step 2 but this time enter the step number or numbers where an 'I' appears in the ‘IntCheck
steps’ field.

NOTE:
– Where more than one step requires representing, e. g. steps 4 and 7 it should be indicate thus 4,7.
Where a range of values requires representing, e. g. steps 3 to 10 it should be indicate thus 3-10.
– The step numbers in the columns ‘Active steps’, ‘SeqCheck steps’ and ‘IntCheck steps’ must be
programmed as follows, e. g. for sequence number 3, a 2 in any of these columns would represent
zzSeq[3].Step.Flag[2].
– The characters in the column ''ManCheckReq./ManDiag' represent the tag of manual interlock check, e.
g. for sequence number 1, function block M_Fct050, work position: zzSeq[1].ManDiag[50].1 – Bit 1 =
work position, Bit 0 = home position. (see chapter 5.1.1 and 5.1.4).

Ford ControlLogix - DCP-Specification 2-8


Part 1 - Chapter 2

The remaining columns in the chart are completed with the following information:

7. Action Output
The output used to control the action e. g. the tagname of the output should be entered.

8. Limit Switch Input


The input used to monitor completion of the action, the tagname should be entered. Each reaction input
uses a separate line.

9. Fault Bit A & B


The bit in the fault diagnostic table used to store any faults of reaction signals. See section 2.3, how to
assign fault bits. Fault bit A is the feed back signal to be cleared and fault bit B is the feed back signal to
be achieve, e. g.:
A = 'Waiting for head to leave back position'.
B = 'Waiting for head to reach forward position'

10. Pushbutton Input and Output


The tag names of pushbutton input and signal lamp output used for the manual operation are entered if
the line is used for a movement (see chapter 5.1.4, 5.1.6, CMU specification).

11. Dry Run


This column is sub-divided into Active and Interlock. To indicate how Dry Run influences the control of a
function an 'X' is used to enable and 'NX' is used to disable the active and or interlock fields. The 'Act’
field shows how the ‘FctActive’ and ‘SeqCheck’ (sequence check) are influenced. The 'Int' field shows
how the ‘IntCheck’ (interlock check) is influenced. A detailed description is given in chapter 5.3.

12. Clear Line


This column is sub-divided into Active and Interlock. To indicate how Clear Line influences the control of
a function an 'X' is used to enable and 'NX' is used to disable the active and or interlock fields. The 'Act’
field shows how the ‘FctActive’ and ‘SeqCheck’ (sequence check) are influenced. The 'Int' field shows
how the ‘IntCheck’ (interlock check) is influenced. A detailed description is given in chapter 5.3.

NOTE: Fault diagnostic of both of feedback signals (start and target position) in a machine function
represents a restricted pair check of limit switches.

Ford ControlLogix - DCP-Specification 2-9


Part 1 - Chapter 2

Fig 2.5.1 Programming Chart

Ford ControlLogix - DCP-Specification 2 - 10


Part 1 - Chapter 2
2.5.2 Push Button Table
k

Ford ControlLogix - DCP-Specification 2 - 11


Part 1 - Chapter 2
2.5.3 Worked example for function 74B (shuttle right)

This typical control function shows how the information entered in the program chart is used to complete a
function.

The control functions of the different actuators or mechanisms are described in Part 2 of the specification
(Standard Function Blocks) except the function blocks delivered by the OEMs (e. g. robot, security function).
Each actuator with its functions is saved in a function block library M_Fct... of the DCP Standard Program.
This typical control function shows how the information entered in the program charts is used to complete a function.

Ford ControlLogix - DCP-Specification 2 - 12


Part 1 - Chapter 2

The control functions of the different actuators or mechanisms are described in part 2 of the specification (Standard
Funtion Blocks) except the function blocks delivered by the OEMs. Each actuator with its functions is saved in a
function block library M_Fct… of the DCP Standard Program.

Ford ControlLogix - DCP-Specification 2 - 13


Part 1 - Chapter 3

CONTENTS CHAPTER 3

3. DCP Organisation

This chapter describes the program structure of the DCP Standard. Detailed descriptions you will
find in the DCP program which shows the function of each rung.

Section Page Topic

3.1 1 Project Structure Rules

3.2 2 Structure of Routine Calls

3.3 6 The Program Global


3.3.1 6 Central Functions
3.3.2 7 Safety Area
3.3.3 7 Quickstop Function
3.3.4 7 Global (Central) Faults

3.4 8 The Program User

3.5 9 The Program(s) Sequence


3.5.1 9 S_SequenceMain
3.5.1.1 10 Fault Diagnostics
3.5.1.2 10 Timeout
3.5.2 10 P_SequenceParameters
3.5.3 11 M_Fct...
3.5.4 11 U_SequenceFunctions
3.5.5 11 U_SequenceFaults
3.5.6 12 U_SequenceStepConditions

3.6 13 Multiple Sequences

Ford ControlLogix - DCP-Specification 3-0


Part 1 - Chapter 3

3. DCP Organisation

3.1 Project Structure Rules

The following sections describe an overview over the project structure of the DCP standard. Each rung of the
standard logic is sufficiently documented in its function, and part 3 of this specification documents the
different configurations and adaptations of the software to change by the user. The structure of the DCP
must be followed although some areas may not be used.
All program parts already exist as program modules or function components (blocks) in the standard
necessary to control a machine. The standard software DcpCxcar_10_Release[version] supplied with this
specification includes all global functions, the communication interfaces, a complete sequence, and all
control function blocks used in the project (see chapter 5, appendix A (standard software), and part 2 of the
specification).

The scheduled part of the DCP consists of a Task Continuous structured into 3 program areas:
– Program Global
– Program User
– Program(s) Sequence x (x = sequence-number), number depends on controlled machine and is a copy
of the progam Sequence00 modificated to the specific machine by the user.

The unscheduled part contains the program Sequence00, a complete standard sequence with a component-
library of all control functions..

Ford ControlLogix - DCP-Specification 3-1


Part 1 - Chapter 3

The individual routines are marked with a code in its name:


– ...Main = Main routine of the respective program (routine jump distributor)
– M_... = Motion routine (control functions of the function block library)
– P_... = Parameter routine, that is to be configured by the user after solid rules
– S_... = System routine (programming changes only by the software developer, not allowed
by the user)
– U_... = User routine, freely available for the user; these DCP routines partially contains
programming suggestions, that the user can apply.
• SR_ = Sub Routine (programming changes only by the software developer,not allowed by
the user

Beside the structure, the syntax of tag names and program/routine/rung descriptions used in the standard is
obligatory to keep. If any routine is changed the revision and date must being updated in rung 0 (w.xxyyzz: w
= revision, xx = year, yy = month, zz = day).
The DCP uses only controller tags, NO program tags. The DCP standard tags begin with zz. These tags and
especially the user defined structures of the standard should not be altered by the user. The user has to
exchange the tags Example(s) and the user defined data structure User by tags and/or structure of the
application.

3.2 Structure of Routine Calls


The individual routines of the standard are executed in accordance with following scheme.

NOTE: It is not allowed to change the order of calls of the standard-routines.

Ford ControlLogix - DCP-Specification 3-2


Part 1 - Chapter 3

Project Structure of all Routines

Program S_GlobalMain S_System P_SystemParameters


Global:

S_EtherNet P_EtherNetParameters

S_Fieldbus P_FieldbusParameters

P_InterbusParameters

U_StartUp
S_Interbus

S_Dcu U_Dcu

S_Versaview P_VersaviewParameters
Agenda:
P_UserScreenVersaview
1st Letter:
S: System routine
P: Parameter routine
U_Screen…..
M: Motion routine (function block)
U: User routine
S_Central P_CentralParameters

U_GlobalFaults

Ford ControlLogix - DCP-Specification 3-3


Part 1 - Chapter 3

Program U_GateBoxes SR_GateBox


S_UserMain
User:
.
.
.

SR_GateBox

U_GlobalOutputs

U_TypeInfo

U_Statistics

P_POSMON_Main P_POSMON_WARNINGS

P_POSMON_PCM

SR_POSMON
.
.
.

SR_POSMON

P_POSMON_Line

C_DIAG_POSMSGERRLOG C_POSMSG C_POS_BLOCK

Ford ControlLogix - DCP-Specification 3-4


Part 1 - Chapter 3

Program
S_SequenceMain P_SequenceParameters
Sequence 01:
(tag zzSeq[1]. ...)
U_SequenceStepConditions

U_SequenceFaults

U_SequenceFunctions M_Function01

M_Function02

M_Function n

Program U_OneHandStart
S_SequenceMain
Sequence 02, ...: (tag zzSeq[2]. ...) JSR
JSR
. .
. ...
.
.
.
SR_OneHandStart
Program
S_SequenceMain
Sequence nn, ...:
(tag zzSeq[n]. ...)

Ford ControlLogix - DCP-Specification 3-5


Part 1 - Chapter 3

3.3 The Program Global

All sequence higher functions are processed in the program Global.

Program Global contains:


– Routine-organisation with jump distributor (S_GlobalMain)
– System-agreements (P_SystemParameters, S_System, tags: zzSystem, zzGeneral)
– Central-functions (P_CentralParameters, S_Central, tags: zzCentral)
– PLC-PLC communication via EtherNet (S_EtherNet, tags: zzPlcRemoteIn/Out)
– Interface to the I/O bus system Interbus-S (P_FieldbusParameters, S_Fieldbus, tags: zzIbs),
– Interface to the HMI called Control and Monitoring Unit CMU (Rockwell VersaView CE)
(P_VersaviewParameters, S_Versaview, P_UserScreenVersaview, tags: zzVv, zzVvI…)
– Interface to the line PC named DCU, DCU = Diagnostic Control Unit (S_Dcu, tags: zzDcu…)
– User routines (no standard):
o U_Dcu to control user-own screens on the DCU
o U_Screen… to control user-own screens on the CMU
o U_GlobalFaults to control global fault bits (Cm/Cmi faults for all sequences of the PLC)
o U_Startup to the programming of user-own startup order, for example simulations of input
signals.

Routines and data of:


– Interface Interbus-S (P_FieldbusParameters, S_Fieldbus)
– User routines
are user dependent and should be described in part 4 of the specification.

Central functions and global faults are described as follows.

3.3.1 Central Functions

Some applications consist of a number of individual stations which although controlled by independent
sequences, are still normally started and stopped together, an example being a large automatic transfer line.
The individual stations each require their own display and control panels to enable local testing in the event
of a fault, but central functions are also necessary to control the entire machine or line under normal
circumstances.

Central functions are:


– Central start: Starts the whole production line (Kkey 13 on CMU, push button on gate box)
– Central end of cycle (CEOC): All sequences of the line stop at end of cycle (user predefined step(s) of
each sequence)
– Clear line / dry run
– Lamp test
– Reset.

The routine S_EtherNet transfers the central-functions (tags: zzPlcRemoteIn/Out).


Central functions are configured in routine P_CentralParameters (see part 3 of the specification).

Central functions used in the EMS system do not spread to other PLCs.

Ford ControlLogix - DCP-Specification 3-6


Part 1 - Chapter 3

3.3.2 Safety Area

A safety area appropriates to a machine field restricted by safety doors. It consists of one or more stations
(sequences). The manual and automatic mode are assigned to a safety area (Kkey 11 and 12 on CMU). The
Kkeys control the safety area, whose sequence is displayed on Online screen of CMU at present. All other
operating modes are assigned to the displayed sequence (CMU Online screen, page 30).

Following functions can be selected per safety area:


- Manual mode (see chapter 4.3.1)
- Automatic mode (see chapter 4.2.1)
- Start (see chapter 4.2.1)
- Halt end of cycle (see chapter 4.2.1)
- Quickstop (see chapter 3.3.3).

Corresponding push buttons and lamps see part 3 of specification.

NOTE:
A sequence is assigned to one safety area only
One safety area can contain 1 … 30 sequences of the plc
A plc controls up to 30 safety areas
A plc controls up to 30 sequences
A safety area belongs to one plc. It cannot be used in more than one plc

3.3.3 Quickstop Function

If requested the sequences of a safety area stop at the end of current defined step(s).
Quickstop request is possible via pushbutton at gate boxes in auto/semi mode (Configuration by user see
routine U_GateBoxes in program User and part 4 of specification). External pushbutton can used
alternatively.
Quickstop has to be enabled by user (e. g. steps of the sequence to allow this function)
The condition of status "At quickstop" is displayed on HMI.
Quickstop function is reset when
- Quickstop pushbutton is pressed once more (1 sec. delay for debounce)
- Mode change
- Central start
- Start safety area
- CM / CMI fault.

3.3.4 Global (Central) Faults

Constantly monitored signals are checked in the CM/CMI area of the fault table in general (see chapter 2.3).
These are PLC inputs which must immediately stop the machine if they ever have the wrong state. Examples
are Emergency Stop or loss of control voltage. Other signals, such as hydraulic or air pressure levels, may or
may not need to be entered into the CM or CMI, depending on the application. The simple rule is, if there is
any chance that loss of the signal could result in danger to man or machine, then it must be entered in the
CM/CMI area. If there is no risk or danger, it is possible to program it in the SIZ.
If the constantly monitored signals effect all sequences of the PLC, it is global (central) fault.
Global constantly monitored signals have to be configured in routine U_GlobalFaults (tags:
zzCentral.Fault...).

Ford ControlLogix - DCP-Specification 3-7


Part 1 - Chapter 3

3.4 The Program User

This program is ready for user-own routines and can be supplemented on further routines according to the
requirements of the application. The routines are freely available under consideration of standard syntax
(see chapter 3.1). Same is valid for U_… routines located in other programs.
As recommendation, proposals are already programmed. It is the decision of user to implement these
suggestions:

– U_UserMain: Routine distributor (Main routine)


– U_GlobalOutputs: E. g. Control of lamps that not belong to sequence
– …POS…: Interface for POS monitoring system (standard of Ford company)
– U_Statistics: Interface to control user own statistics screens on HMI
– U_TypeInfo: Shift registers for type information.

All user routines should be described in part 4 of the specification.

Ford ControlLogix - DCP-Specification 3-8


Part 1 - Chapter 3

3.5 The Program(s) Sequence

The standard program Sequence00 comprises a complete sequence with all control operations being
necessary. It contains following routines, that are described in the following nearly:

– S_SequenceMain
– P_SequenceParameters
– U_SequenceFunctions
– M_Fct...
– U_SequenceFaults
– U_SequenceStepConditions.

3.5.1 S_SequenceMain

This system routine forms the basis of the program sequence. Programming is not allowed by the user. As
Main-routine it takes care of all required assignments for perfect operation of the sequence.

The routine contains:

– Initializing of data
– Calculation of areas for step times and cycles per sequence and production type
– Control of the operating modes (see chapter 4)
– Quickstop function of sequence
– Dry run and clear line function of sequence
– Sequence end of cycle
– Evaluation of the DOSA time e. g. shimmy switches (DOSA = Drop Out Start Automatic)
– Automatic cycle (ready state and start automatic cycle)
– Manual release of movements (to ensure safety in manual operation)
– Automatic release of movements (to ensure safety during auto/semi operations)
– No pushbuttons pressed (to control interlock checking in manual mode)
– Manual lead thru release of movements (to ensure safety while in manual lead thru forward and
backwards mode)
– HMI priority
– Manual faults
– Start conditions in the fault table
– Fault detection (see. chapter 3.5.1.1)
– Control of the step counter:
o Forms a step bit for each step to the simple programming (Step.Flag[xx]; xx = step number
1...99)
o Increment/decrement step
o To run sequence backwards (available in manual lead thru and step by step mode)
o Fixture / weld reset mode (to set all to home level)
o Sequence reset (step 1)
o Re-sequence (Find again the correct step which corresponds to the actual machine state). If
the machine position is chaotically (re-sequence finds no correct step state), the conditions
are reported in order to move the machine in manual mode into the real state of the current
step.

After the repair of displayed faults by the operator the start condition is shown as highest-priority fault, and
the sequence is ready to start with the displayed step. It is not necessary to set the machine to home
position. After the start of the sequence with start pushbutton in automatic mode, the sequence begins
running with the current step and displays the sequence fault of this step. When the step is finished, the
sequence fault disappears. If no fault (incl. start and sequence fault) occurs in the fault table, the step
counter changes to the next step, a new sequence fault is set, and so on. After the last step is finished, the
sequence begins a new cycle with step 1.

This routine especially prepares the control flags used in the control function blocks M_Fct….

Ford ControlLogix - DCP-Specification 3-9


Part 1 - Chapter 3

3.5.1.1 Fault Diagnosis

The entire fault table (default = 3200 fault bits per sequence) is checked on faults continuously at each PLC
scan in all operating modes (see chapter 2.3). The step timeout fault caused the break-down of the running
sequence is saved with fault bit, fault type and step to display it later as first fault, if the operator wants to see
it. The cycle timeout fault is saved as well for further user application.
When the machine state does not correspond to the current or selected step (sequence in stop), the
diagnosis reports CM, CMI and / or interlock fault according to priority (see chapter 2.3). After the repair of
displayed faults by the operator the start condition is shown as highest-priority fault, and the sequence is
ready to start with the displayed step.
All active faults and their fault types can be shown simultaneously dependent on the display system sorted
by priority. The highest priority fault causes a suitable reaction of the sequence..
General message is shown at a separate line. If more than one message occurs, the messages scroll.

3.5.1.2 Timeout

When the sequence is running in automatic mode, the step time of each current step is measured. The
diagnosis compares the time of current step with accessory reference step time and the overall cycle time
with its reference cycle time. If the current step / cycle time exceeds the reference step / cycle time (plus a
percent value configured by the operator), a step / cycle timeout fault occurs. The timeout fault does not
influence the running sequence. It only informs the operator, that for instance a motor bearing becomes worn
(the destination of the motor drive is reached, but not in the allowed step time).
Last appeared step timeout fault is saved to display it with step and fault bit, if desired.
The sequence handles times of each step and cycle (current and referenced) of up to ten production types.
A self teach function calculates the reference times automatically. If the operator selects the Teach In
function in automatic mode and running sequence, the time of each step is measured during a complete
sequence cycle and saved together with the overall cycle time as reference for current type. The operator
can change the reference times any time.

3.5.2 P_SequenceParameters

The user has to configure all parameters related to the sequence:

– Enter number of steps


– Adjust the DOSA (de-bounce and interlock fault timer)
– Enable conditions for specific operating modes
– Selection of production type
– Modify of particular manual functions that are active in more than one sequence
– Control of different hardwired switches like safety key and reset pushbutton
– Parameter of status information (sequence empty, cycle end reached)
– Conditions to pause the timeout detection of the current step of the sequence (for instance: Waiting of
ready-signal of a second sequence).

Ford ControlLogix - DCP-Specification 3 - 10


Part 1 - Chapter 3

3.5.3 M_Fct...

A machine is controlled by a number of actuators or mechanisms. Depending on kind and function of this
machine different actuators/mechanisms are used. For each type of actuator exists a control function block
(FB) with its complete control logic, normally consisting of forward and backward action (moving to work and
home position).
In Part 2 of the specification the standard function blocks used in the plant – in the past named zones – are
described graphically (most of used Rockwell-FBs with qualitative description see chapter 7). These are
saved as a function block library in sequence 00 of the DCP standard software together with the function
blocks delivered by the OEMs, e. g. robot, security functions (each actuator/mechanism in a single routine).
This library is to be updated continuously in co-operation with the OEM.

The name of the routine contains:

– Function number Fct… specified in the WEI-guidelines of Ford Motor Company


– Function text
– Responsible OEM.

The sequential program consists of a number of successive function blocks copied from the library of
sequence 00 according to the number and type of actuator. Each function block is only configured depending
on the requirements of the machine.

Part of this is:

– Step(s) to check sequence and interlock faults


– Step generate active function
– Manual pushbutton of the HMI with accessory position lamp
– Output to control the function
– Fault bits and limit switches.

3.5.4 U_SequenceFunctions

The user determines the order to call each function block M_Fct...in the sequence (JSR instructions).

3.5.5 U_SequenceFaults

This routine serves the configuration of sequence-related faults which are monitored continuously but not
step dependent (CM, CMI, start faults, general messages and certain interlock faults (see also chapter
3.3.2).
The start conditions (faults) are tags prepared in S_SequenceMain. The user has to select its fault bits in the
DCP fault table. All entries in the SSZ area of the fault table correspond to conditions that make possible the
sequence start if correct programmed, or they inform the operator what pushbutton must be pressed.
Additionally general messages are specified. These bits are located in the highest bit zone of the fault table
(lowest priority). They have no influence at the machine operation and are free available by the user (see
chapter 2.3).

Ford ControlLogix - DCP-Specification 3 - 11


Part 1 - Chapter 3

3.5.6 U_SequenceStepConditions

The user determines the steps for

– Start clear line mode


– Stop if end of cycle is selected
– Enable quickstop function
– Stop single cycle mode
– Start/Stop fixture/weld reset
– Jump forward and backwards within the sequence.

Ford ControlLogix - DCP-Specification 3 - 12


Part 1 - Chapter 3

3.6 Multiple Sequences

When a production system requires more than one sequence, part of the program structure has to be
repeated.
The main job of the machine-programmer is to

- Copy the sequence 00 according to required sequences into the task Continuous behind the
program User
- Duplicate the control function blocks M_Fct… as required
- Delete the unused control function blocks
- Increase tag ranges
- Adjust the routines to the machine application.

All used data of the program Sequence is combined in the tag zzSeq[x] of user-defined data type
SEQUENCE_DATA (x = sequence-number).

For the electric monorail system (EMS) whole sequences are completely prepared to control EMS
components as lifter, switches and so on. Normally the user only has to configure waiting function blocks to
combine neighbouring sequences (components) communication of a plant application (see chapter 6).

Ford ControlLogix - DCP-Specification 3 - 13


Part 1 - Chapter 4

CONTENTS CHAPTER 4

4. Operating Modes

This chapter describes the operating modes of a DCP Standard.

Section Page Topic

4.1 1 Operating Modes

4.2 1 Automatic/Semi Modes


4.2.1 1 Automatic Mode
4.2.2 2 Single Cycle
4.2.3 2 Step by Step Forward (StepByStepFwd)
4.2.4 2 Step by Step Backwards (StepByStepBwd)
4.2.5 2 Manual Lead Thru Forward (MLeadFwd)
4.2.6 2 Manual Lead Thru Backwards (Backwards)
4.2.7 3 Dry Run
4.2.8 3 Clear Line
4.2.9 3 Step Search (Resequence)

4.3 4 Manual Operations


4.3.1 4 Manual
4.3.2 4 Increment / Decrement Counter
4.3.3 4 Reset Counter
4.3.4 4 Fixture Reset (FixReset)
4.3.5 4 Weld Reset (WeldReset)

Ford ControlLogix - DCP-Specification 4-0


Part 1 - Chapter 4

4. Operating Modes

4.1 Operating Modes

The Manual mode allows each machine motion to be manually controlled by pushbuttons.
Manual mode relates to a safety area (see chapter 3.3.2).

The DCP program supports six automatic specific (semi automatic) modes:
- Automatic
- Single Cycle
- Step by Step Forward
- Step by Step Backwards
- Manual Lead Thru Forwards
- Manual Lead Thru Backwards.
Only one of these auto/semi modes can be active simultaneously. Automatic mode relates to a safety area
(see chapter 3.3.2).. Other modes are sequence (station) related.

There are six special modes:


- Clear Line (used in automatic mode)
- Dry Run (request and reset in manual mode)
- Fixture Reset (used in manual mode)
- Weld Reset (used in manual mode)
- Halt End of Cycle (used in automatic mode)
- Quickstop (used in semi automatic modes). See chapter 3.3.3).

4.2 Automatic / Semi Modes

All six modes are true automatic modes although the name of two Manual Lead Thru Forward and Manual
Lead Thru Backwards suggests they could be manual modes. The machine actions are executed on the
basis of the active steps as defined in the sequence and interlock chart. Whenever a restart for the selected
mode is required it is indicated by a flashing start lamp. Depending on the machine the sequence can be
started in each step in all auto/semi modes except the clear line mode (start step is user defined).

4.2.1 Automatic Mode

In Automatic Mode pressing the start pushbutton will, assuming no faults are present to prevent it, start the
machine running. At the end of one machine cycle the program immediately starts the next. This continues
until the operator intervenes, or a fault occurs.
A production line may used to control automatic operation by central start pushbutton and central stop (halt
end of cycle) pushbutton (see chapter 3.3.1). The local control of an individual subordinated station
(sequence) is possible with station start pushbutton and station stop (halt end of cycle) pushbutton., e. g. to
stop the station in case of fault and to restart after fault is removed.
The user can stop the sequence at step(s) configured by the user.
It is possible that the machine must stop at one or more points in the cycle, for instance for a manual loading
operation. In such a case the operator will not press start pushbutton to restart after he has finished, but
another pushbutton, e. g. a two-handed safety start. As far as the program is concerned, the machine is still
continuously cycling, the sequence is running. Waiting for the operator to indicate completion is essentially
no different from waiting for any other feedback signal.

Ford ControlLogix - DCP-Specification 4-1


Part 1 - Chapter 4

4.2.2 Single Cycle

In Single Cycle, pressing start pushbutton will cause the station to run through one cycle, at the end of which
it will stop until start pushbutton is pressed again.
The last step of a machine cycle can be one or more steps of the sequence configured by the user.
Single cycle mode can be started at each step.

4.2.3 Step by Step Forward (StepByStepFwd)

This is a form of operating guiding. With this mode selected the operator can take the machine or station
through its sequence one step at a time.
The start pushbutton flashes and when the operator pushes the button, the action or actions of next
individual step are executed. During an action the start pushbutton lamp remains illuminated and flashes
again at the end of the step to signal the action has completed and that it is ready to execute the next step.

4.2.4 Step by Step Backwards (StepByStepBwd)

This is identical to the previous mode (StepByStepFwd) except the machine runs backwards through it’s
normal cycle (see chapter 2.5.2).

4.2.5 Manual Lead Thru Forward (MLeadFwd)

This is a form of operator guiding where the operator is prompted using flashing pushbutton lamps to execute
each movement required in a complete cycle.
With this mode selected, the program follows the normal machine sequence as if in Automatic but, instead of
energising the outputs to the machine actuators, the program causes lights to flash in the pushbuttons which
would produce the corresponding movements. The operator then can enable these movements (and only
these) by pressing the buttons, even though the machine is effectively in automatic.
This feature is particularly useful for commissioning, for setting the positions of end limits, to get to know the
machine process, etc., because the step function is displayed with its sequence fault before the step and
function will be executed The operator has full control about the movement. The action is only executed,
when the operator presses the corresponding pushbutton.

4.2.6 Manual Lead Thru Backwards (MLeadBwd)

This is identical to the previous mode (MLeadFwd) except the machine runs backwards through it’s normal
cycle (see chapter 2.5.2).

Ford ControlLogix - DCP-Specification 4-2


Part 1 - Chapter 4

4.2.7 Dry Run

This sub-mode allows the machine to run without a part present (see chapter 5.3). Some steps in the
sequence may have to be ignored or modified to cope with this situation, as in the following examples:
– Sealant or gluing - these operations must not be performed without a part present, otherwise the
machine may be damaged.
– Welding - this operation shall be performed at a lower welding current.
– Sensing of positions or pressures - some feedback signals, such as sensing the position or depth of a
hole, may need to be ignored. Other signals may have to be monitored for the opposite state to that
expected when a part is present.
This may be initiated locally or passed down the line via the shift register.

4.2.8 Clear Line

This sub-mode is used to clear a multi-station line of parts (see chapter 5.3). The first station will accept no
new parts once the current part is finished, but subsequent stations will continue as normal until they in turn
have processed this last component. Eventually the line is empty, e. g. ready for maintenance work.

NOTE: The need for this feature, and the means of achieving it, depend very much on the machine
configuration. Therefore this mode is partly programmed in the DCP Standard.

4.2.9 Step Search (Resequence)

When the machine state does not correspond to the displayed step in auto/semi mode, the correct step can
be searched with the help of Re-sequence function (Step Search). Re-sequence may be selected in any
automatic mode providing that sequence does not run. When re-sequence pushbutton is pressed the
machine will automatically increment the counter through each possible step, checking to find if any interlock
faults exist in the current step. If a step is found where no interlock faults exist the process stops allowing the
machine to be started in the selected automatic mode. If no step can be found without interlock faults the
initial step number on pressing the re-sequence button is restored to the counter (see chapter 3.5.1.1).

Ford ControlLogix - DCP-Specification 4-3


Part 1 - Chapter 4

4.3 Manual Operations

4.3.1 Manual

Each motion on the machine can be operated using a unique manual pushbutton. This can be used for
maintenance and test purposes, or to re-synchronise the machine state to match the current step number
after a fault. The machine action is executed and displayed as text message when the manual request
pushbutton is on and the corresponding interlock checks defined in the manual cross interlock chart are OK
(see chapter 2.5.1). If the interlock is not ok the action is locked and the caused interlock fault is displayed as
fault message.
The DCP diagnostic display remains active when in manual mode, and shows the CM, CMI, and interlock
faults of the current step according to priority when no pushbutton is pressed.
If the machine position is chaotic (resequence finds no correct step state), the conditions are reported in
order to move the machine into the real state of the current step. If manual movements are now made to
eliminate any fault and afterwards this fault is gone, the display will show only a start condition: "Manual
mode - no start possible". On switching back to Automatic and restarting the sequence it is possible that
some sequence faults may remain, but it is usual for sequence faults to be present until the end of a step.
They are a normal part of the sequence steps, and do not prevent the machine from running.

NOTE. In manual mode all movements are generally allowed so long as they do not cause any mechanical
or personal damage.

4.3.2 Increment / Decrement Counter

Whilst in the manual mode the counter value may be incremented or decremented using pushbuttons
thereby enabling the operator to adjust the counter value matching the current position of the machine.

4.3.3 Reset Counter

In the manual mode the counter may be reset to step 1 by pressing the reset button for more than three
seconds.

4.3.4 Fixture Reset (FixReset)

When the Fixture Reset pushbutton is pressed together with the safety key switch and held on the machine
will automatically return to its initial starting position (datum) providing the function is enabled in the control
function of the actuator (see chapter 5.1.4). The order of Fixture Reset actions corresponds to rising steps.
When the datum position is reached the machine movements stop and the Fixture Reset pushbutton lamp is
illuminated. This function can be started and stopped at user defined step(s).

4.3.5 Weld Reset (WeldReset)

When the Weld Reset pushbutton is pressed together with the safety key switch and held on the machine will
automatically return to a user predefined position prior to the welding operation providing the function is
enabled in the control function of the actuator (see chapter 5.1.4). The order of Weld Reset actions

Ford ControlLogix - DCP-Specification 4-4


Part 1 - Chapter 4
corresponds to rising steps. When the predefined position is reached the machine movements stop and the
Weld Reset pushbutton lamp is illuminated. This function can be started and stopped at user defined step(s).

NOTE: Weld Reset is the same function as Fixture Reset, this means two applications with independent
datum cycle are possible.

Ford ControlLogix - DCP-Specification 4-5


Part 1 - Chapter 5

CONTENTS CHAPTER 5

5. Standard Control Functions (M_Fct…)

This chapter describes in detail the standard logic used in control function block.

Section Page Topic

5.1 1 Control Functions


5.1.1 1 Interlock Check (IntCheck)
5.1.2 2 Sequence Check (SeqCheck)
5.1.3 2 Function Active (FctActive)
5.1.4 3 Manual Request (ManReq)
5.1.5 4 Function Output
5.1.6 5 Displaying Movements
5.1.7 5 Fault Detection

5.2 7 Using the LIM Instruction to Mark Step Ranges

5.3 8 Dry Run & Clear Line

Ford ControlLogix - DCP-Specification 5-0


Part 1 - Chapter 5

5 Standard Control Functions (M_Fct…)

This section looks at the real sequence part and shows the requirements and structure of this functions.

5.1 Control Functions

The sequential part of the program SequenceXX (XX = sequence-number) consists of a user selected list of
function-blocks M_Fct... to control the machine. In the routine U_SequenceFunctions the user determines the
order to call these routines per PLC cycle with JSR instructions.
The single functions of the respective control function block control outputs step dependently, monitor the
corresponding inputs and activate the resulting data in the fault table. Data required for a function will have
been decided when planning the software and will be available on the programming (see chapters 2 and
3.5.3).
There is a list of standard control functions that is recommended to the use with a certain type of actuator.
The principle of the control functions are essentially the same. The differences into the rung list are small so
that only the most usual variation is explained here (impulse valve). Actuators not described in the part 2 of
the specification, have to be programmed according to the development rules of the standard control
function.

The structure of a function found below is typically:


– Interlock check (check in passive steps and check in manual movement)
– Sequence check (check in active step)
– Manual request (pushbutton)
– Control of output (activation of the function)
– Position feedback (lamp display)
– Fault diagnosis of this function.

The function builds a complete closed unit.


All rungs in the function should be programmed even when not required to provide continuity and make the
program easier to follow. For further examples see chapter 7.

NOTE: If an interlock fault occurs all M_Fct… routines are scanned again before the I/O update. The
programmer should take this into account with the development of his machine-program.

NOTE: The tag names used in the rung drawings of the following chapters begin with zzSeq[1].. Perhaps the
name is not shown because of too narrow page format.

5.1.1 Interlock Check (IntCheck)

The interlock check rung serves three purposes:


- Auto/semi run: Check step conditioned interlocks (upper branch)
- Each mode without run: Show position faults machine mechanisms (upper branch)
- Manual mode: When a pushbutton of another function is pressed, it checks the machine position is
acceptable for the movement to complete (lower branch).
The step conditioned interlock check (auto/semi) is independent to interlock check in manual mode (see
chapter 2.5).
The first branch contains passive step(s) to check the interlock in automatic/semi modes and shows machine
out of position diagnostics in manual related to displayed step. More successive passive steps are
programmed with a LIM instruction. The closed contact NoPb is required to prevent this branch having any
effect when a manual movement is requested.

Ford ControlLogix - DCP-Specification 5-1


Part 1 - Chapter 5
The second branch is used to check interlocks for manual movements with the manual check contact
ManDiag[xx].yy (xx = M_Fct number of this function, yy = 1 if work function, yy = 0 if rest function) energised
in another function with manual pushbutton (see chapter 5.1.4).
When the manual pushbutton of the other control function is pressed, contact ManDiag[50].1 closes and
activates the interlock check of this control function. If an interlock fault occurs, the fault is displayed and the
manual movement of the other control function is blocked.

NOTE: The step flag(s) and the manual interlock check flag have to be configured.

5.1.2 Sequence Check (SeqCheck)

This rung determines the step or steps in which a sequence check is to be performed on the relevant
reaction signals. A sequence check is a step where the output controlled by this function is checked to
ensure that it has reached the position requested by the function.
The sequence check is carried out on different steps depending on which direction the sequence is moving
(backward in manual lead thru or step by step mode).
The timeout detection is active during the sequence check. In some cases the diagnosis should be prevented
for instance waiting of a part from another station (waiting function). In order to close the timeout detection
rung pause step time has to be configured in routine P_SequenceParameters (step flag contact).

NOTE: The step shown here have to be replaced by the step or steps actually required.

5.1.3 Function Active (FctActive)

Ford ControlLogix - DCP-Specification 5-2


Part 1 - Chapter 5

This rung determines the step or steps in which the output is to be active .e. g. energised.
In this example the function is active during steps 3 and 6 in forward automatic modes and in steps 4 and 11
in manual lead thru or step by step backwards mode.

Functions which are required to be active for more than one step are described in chapter 5.2.

NOTE: The step shown here have to be replaced by the step or steps actually required.

5.1.4 Manual Request (ManReq)

The standard manual request for a forward motion consists of the pushbutton (zzSeq[1].Button[xx].yy: xx =
manual pushbutton page 1...29 of HMI, yy = Fkey bit 1...10, 11...20) to action a movement (see HMI
specification).
The manual check latches zzSeq[1].ManDiag shown in these branches are used to manually check the
interlocks of reaction signals of other control functions (see chapter 5.1.1). When the other functions
(M_Fct051, work position; M_Fct055, home position) indicate an interlock fault, the fault is displayed and this
movement stops.

If this movement shall carry out in fixture reset mode the contacts FixReset and SeqCheck have to be added
in a second branch. If weld reset functionality is required a parallel branch should be supplemented in the
same way as the fixture reset branch.

NOTE: The P/B flag, the manual check flags, and if necessary the branch of datum has to be configured.

Ford ControlLogix - DCP-Specification 5-3


Part 1 - Chapter 5

5.1.5 Function Output

The control functions output may be energised in three ways, in automatic via the step counter, in manual via
a push button request or in the manual lead thru mode.

a) In automatic (1st branch): The sequence runs in automatic and function is active via step.
b) In manual (2nd branch): From the manual request via pushbutton, together with interlock ok and
manual release of movements.
c) In manual lead thru (3rd branch): From the manual request for this function together with manual lead
thru release of movements and function active.

The output is energized in the above three modes provided that no interlock faults have occurred. In the
automatic and manual lead thru modes the interlocks ok check is achieved via sequence ready to start
(Ready) which controls running in automatic (Start) and subsequently both automatic and manual lead thru
release of movements.
In the manual mode branch the interlock ok contact would be dropped out if a manual cross interlock check
of another control function detects a wrong state.

NOTE: The control output shown here has to be configured.

Ford ControlLogix - DCP-Specification 5-4


Part 1 - Chapter 5

5.1.6 Displaying Movements

Each push button associated with a manual operation also incorporates a lamp which is used to display
information about machine actions in each mode (zzSeq[1].Lamp[xx].yy: xx = manual pushbutton page 1...29
of HMI, yy = Fkey bit 1...10, 11...20). See HMI specification.

When the output is active the pushbutton lamp flashes to indicate the movement is active.
Whenever all Signals are active the lamp illuminates indicating the position of the machine, in addition the tag
zzSeq[1].InPos[aa].bb will be active. (aa = Function number, bb = same bit used as per the ManDiag bit for
this operation).

NOTE: The signals used to indicate the position of this function should not appear any where outside of this
FB. When they are required (for interlocking between sequences) then the tag ‘zzSeq[1].InPos[aa].bb should
be used.

In manual lead thru: When a step is active the lamp flashes indicating this is the next button to press.

NOTE: The position input(s), the control output contact, and the lamp output shown here have to be
configured.

5.1.7 Fault Detection

The 1st rung enables the fault diagnosis depending on the operating modes. The 2nd rung detects the fault
states and controls fault bits.

The diagnosis is enabled with 3 kinds of check:


– Sequence check
– Manual diagnosis
– Interlock check.

1st rung:

Automatic modes:
– The function is enabled for the sequence check in the relevant step or steps.(1st branch) and for interlock
check in passive step(s) (3rd branch). See chapter 5.1.1.
Manual mode:
– The 3rd branch checks interlocks of step(s) like automatic modes if no pushbutton pressed (see chapter
5.1.1). The relevant message is shown if state of machine actuators does not confirm with the current
step. If confirm, a start condition reports that the machine can be switched in the automatic mode to start
with the current step.
– If the manual-pushbutton of this control function is pressed, and there is no manual interlock fault, the 2nd
branch activates the diagnosis and reports the current state of the start and target feedback signals via
two fault bits.

Ford ControlLogix - DCP-Specification 5-5


Part 1 - Chapter 5
– If the manual check flag of this function is set by a manual pushbutton of another function the manual
interlock check is enabled. This ensures that clash conditions do not occur when performing manual
operations (see chapter 5.1.1, 5.1.4).

2nd rung:

– To control 2 fault bits


o Start position not leaved (higher fault priority)
o Target position not reached (lower fault priority)
with both of limit switches of the function both switches are monitored (restricted pair checking
of limit switches, no replacement of usual pair checking).
– During the sequence check messages of this function are reported until the movement is completed.
– If the limit switch is leaved during interlock check (flag IntOk) a fault bit is set as interlock fault. This
causes the machine to drop out of start automatic after a short delay of DOSA (3rd branch). The fault
message is displayed.

NOTE: The start and end position inputs and the SIZ fault bits shown here have to be configured.

The diagnosis is distributed on 2 rungs in order to simplify the monitoring of several feedback signals of a
control function. In this case only the 2nd rung has to be copied dependent on the number of the signals.
Pair checking should be carried out on critical movements by using both the forward and return limits in
series to control a fault bit in the CMI area of the program.

Ford ControlLogix - DCP-Specification 5-6


Part 1 - Chapter 5

5.2 Using the LIM Instruction to Mark Step Ranges

In some applications it may be necessary to activate a function, interlock check etc. for more than one step.
Rather than use numerous step contacts in parallel it is more convenient to use the LIM instruction as shown
below.

The LIM instruction is circular and will be true whenever the test value is greater than or equal to the low limit
but less than or equal to the high limit. This feature may be used when an interlock requires checking from
step 12 to the end of the sequence and from step 1 to 2 as in the example below.

The following rung shows a control function which is active for the steps 9 to 15.

Ford ControlLogix - DCP-Specification 5-7


Part 1 - Chapter 5

5.3 Dry Run & Clear Line

The Programming Chart has four columns to indicate how the configuration for the modes Dry Run and Clear
Line are to be made. These are labelled 'ACT' and 'INT'. An X under Active indicates that Dry Run or Clear
Line will enable the flags SeqCheck and FctActive, a NX that these flags will be disabled. Similarly, X and NX
in the Interlock column indicate how the flag IntCheck is to be influenced.
A case where an actuator is to remain in its home position can be taken as an example. The function chart
entries would be:

Zone Active Seq Check Int Check Dry Run or Clear Line
description
ACT INT
Head Work 5 5 1,6 NX NX
Head Home 2 2 3,4 NX X

Depending on the type of actuator involved, it may not always be necessary to disable FctActive, particularly
if Dry Run or Clear Line is interlocked so that it can only be entered at a defined point in the cycle. In such a
case the lower left 'NX' (ACT for Home) could be omitted. Even if there is no output programmed in the
control function, both columns may be used. When the FctActive flag is not present, the column "ACT" is still
used to signify changes in the control of SeqCheck. The following rungs show the changes made to the Head
Home and Head Work control function for DryRun.

NOTE: The SeqCheck and FctActive rung have been simplified for clarity.

Ford ControlLogix - DCP-Specification 5-8


Part 1 - Chapter 5

___________________________________________________________________________________

Ford ControlLogix - DCP-Specification 5-9


Part 1 - Chapter 6

CONTENTS CHAPTER 6

6. Sequence Co ordination and Type Variants

This chapter shows how control functions in different sequences are interlinked and how
the program should be modified to accommodate production of different parts

Section Page Topic

6.1 1 Sequence Co ordination

6.2 2 Type Variations


6.2.1 2 Minor Differences.
6.2.2 3 Major Differences.

6.3 4 Jumping within a Sequence

Ford ControlLogix - DCP-Specification 6-0


Part 1 - Chapter 6

6. Sequence Co ordination and Type Variants

6.1 Sequence Co ordination

On large and complex machines there is often the requirement to subdivide the program into smaller
sections each controlled by a separate sequence. It will be necessary on these machines to interlock the
different sequences to ensure that machine movements do not collide. A typical example may be considered
below, consisting of four stations and interlinked by a transport mechanism.

TRANSPORT

STATION STATION STATION STATION

The program to interlink the transport and a station is shown below.

NOTE: The output from the transport function is monitored as an input in the station and visa versa and the
release ready (REL_RDY) contacts are controlled directly by inputs.

TRANSPORT

Ford ControlLogix - DCP-Specification 6-1


Part 1 - Chapter 6

STATION

Ford ControlLogix - DCP-Specification 6-2


Part 1 - Chapter 6

6.2 Type Variations

On modern production lines it is often necessary for machines to have the capability of producing different
parts.
This may be carried out in the simplest form by the exclusion of a weld or in more complex cases by a
completely different sequence. The methods of achieving these variations are explained below.

6.2.1 Minor Differences

In the simplest case this type of change would allow the production of part A or part B and is achieved by
disabling certain outputs together with their associated sequence and interlock checks. A bit known as
variant is controlled by the part selection and used to disable the required items as shown below.

Ford ControlLogix - DCP-Specification 6-2


Part 1 - Chapter 6

6.2.2 Major Differences

Where big type variations are required major changes in a sequence may result. In order to accommodate
these changes the sequence is split into sub sections.
This arrangement is shown below for three options A, B, and C.

STEP 1

6 6 6

A B C

10 10 10

11

STEP 17

All required actuators/mechanisms are programmed as function blocks M_Fct... in the sequence. The three
options A, B, and C are co-ordinated in Routine U_SequenceFunctions.
The calls of the FBs of steps 1 to 5 and 11 to 17 are realised by unconditioned JSR instructions. The FBs of
steps 6 to 10 (type A, B, C) are called conditionally depending on chosen variation.
According to machine course it is possible that the same actuator again must be used in another variation
with similar conditions. Either, the affiliated FB exists in this case twice; dependent on the variation the one
then as well as the other FB is called, or the same FB is called twice at both of variants, and the difference is
programmed in the FB itself.

NOTE: The output signals of the FB of variant processed finally must be reset before the start of another
variation after requirement, because of JSR condition is false and the FB is not scanned.

Ford ControlLogix - DCP-Specification 6-3


Part 1 - Chapter 6

6.3 Jumping within a Sequence

In some sequences it is necessary to jump over a number of steps. This is achieved by moving the number
of the destination step to the variable JumpToStep and enabling the bit JumpEnable as shown below.
This rung has to be configure at the Routine U_SequenceStepConditions.

Depending on input flag Example the sequence will jump to step 8 after step 2 is finished.

Following example: Depending on the input flag Example the sequence jumps to step 10 unconditionally
(see routine U_SequenceStepConditions).

Ford ControlLogix - DCP-Specification 6-4


Part 1 - Chapter 7

CONTENTS CHAPTER 7

7. Standard Actuators (Mechanisms)

This chapter shows the most used control functions needed to cater for different types of
actuators. The principles of control functions was covered in chapter 5, so this chapter does
not go into detail, other than the changes from one to another.

The function diagram of control functions as shown in PART 2 of the specification is


fully described in the DCP control function reference and is programmed in
Sequence00 of the DCP Standard (M_Fct...).

Section Page Topic

7.1 1 Conventions

7.2 4 Standard Control Functions


7.2.1 4 Double-Solenoid Valve (Pulse Valve)
7.2.2 6 Single-Solenoid Valve
7.2.3 8 Three-Position Solenoid Valve
7.2.4 10 Single-Speed Motor
7.2.5 12 Two-Speed Motor
7.2.6 14 Wait for an Input

Ford ControlLogix - DCP-Specification 7-0


Part 1 - Chapter 7

7. Standard Actuators (Mechanisms)

7.1 Conventions

The rung diagrams are taken over from the project V184 (PLC5 controller). The descriptions of the
addresses are a little bit different to the tag names of DCP Ccar:

- S1_STEP.ACC zzSeq[x] .StepCounter.ACC


- INT_CHK zzSeq[x] .IntCheck
- SEQ_CHK zzSeq[x] .eqCheck
- ACTIVE zzSeq[x] .SeqActive
- STEP X zzSeq[x] .Step.Flag[x]
- MLB zzSeq[x] .Backward
- MAN_REQ zzSeq[x] .ManReq
- MAN_REL zzSeq[x] .ManRelease
- MNCHK zzSeq[x] .ManDiag[yy] .z
- SEQ_MON zzSeq[x] .SeqMonitor
- FLASH zzGeneral.Flash1Hz
- LP_TEST zzSeq[x] .LampTest, is used in the function-components no longer.
- INT_OK zzSeq[x] .IntOk

x = Sequence number
yy = M_Fct number
z = Position, 1 = work position, 0 = home position,

Certain conventions are adopted in this chapter to allow the standard control functions to be shown with
minimal confusion. To show all the range of possible variations, such as with/without Interlock Checks, for all
the functions would be confusing rather than helpful. For this reason:

1) All the control functions are shown with Interlock Checks. If any function does not require these, simply
substitute an AFI instruction for the step flags controlling INT_CHK. This is the usual case when a movement
lasts for only one step, retracting immediately when it has reached its work position.

2) In all cases where ACTIVE, SEQ_CHK or INT_CHK are to be on for more than one step, the step flags
are shown in parallel. An explanation of the most economical ways of programming various combinations of
steps was given in Section 5.3. In practice it is to be expected that a mixture of all these techniques would
appear in a program.

3) All control functions show Sequence Checks taking place in the step in which the output is first energised.
Movements which take place over several steps are simply arranged by programming the flags ACTIVE and
SEQ_CHK in separate segments, using the appropriate step numbers.

4) All control functions include the manual lead thru mode, but this is an option and is not necessarily used in
all programs.

5) None of the functions include the optional dry run sub-mode. Section 5.4 explains typical programming
techniques for this option.

6) Most zones show only one feedback signal being monitored, but in some cases two or more signals may
be used to indicate an action being completed. One example of this appears in this chapter, namely the two-
speed motor, and this provides a good example of the correct method to use for multiple feedback signals.

7) Section 5.1.7 discussed the need for pairs checking feedback signals from opposite ends of the same
movement, and how this should be programmed in the CMI. Section 5.1.7 shows standard checks in the SIZ
with the appropriate pairs check in the CMI, which can be relevant to virtually all types of actuator.

Ford ControlLogix - DCP-Specification 7-1


Part 1 - Chapter 7

Timing diagrams similar to the one below are included in the descriptions. The Steps line only indicates
whether an activity or status lasts for one step or for several. For the feedback signal, a dotted line shows the
duration of the Sequence Check, a heavy line being shown for the Interlock Check (ITLK CHK = interlock
check).
In the rung MAN_REQ of shown control functions the manual P/B is interlocked with the opposite P/B to
prevent switching on the control output, if both of P/Bs are pressed. Depending on the operator terminal and
the interface software the interlock contact can be cancelled (e. g. DCU, PanelView 550 / 900). This is also
relevant for the flag LP_TEST in the rung of lamp control.

Actions over more than one step are named long or protracted moves in the examples.

The functions shown in the examples are guide lines only. It is up to the software writer to satisfy himself as
to the exact functionality of the functions he programs. He must be fully aware of the hardware design and
equipment used to achieve each movement.

Ford ControlLogix - DCP-Specification 7-2


Part 1 - Chapter 7
Fig 7.1 Typical Control Function

¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦
¦ ¦ F??? NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦

¦ STEP B MLB ACTIVE ¦


¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦
¦ +--] [-------] [------+ ¦

¦ STEP B MLB SEQ_CHK ¦


¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦
¦ +--] [-------] [------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦
¦ ¦ F??? ¦ ¦
¦ +----(L)---+ ¦
¦ ¦

¦ ACTIVE AUT_REL O/P_WK ¦


¦---] [------] [----------------------------( )-----¦
¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦
¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦
¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦


¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦
¦ +---] [----------------+ +--] [-----(U)-+ ¦

Ford ControlLogix - DCP-Specification 7-3


Part 1 - Chapter 7
7.2 Standard Control Functions

7.2.1 Double-Solenoid Valve (Pulse Valve)


Double-solenoid valves have a coil for forward motion and one for reverse. The spool stays in its last position
when de-energised. Movements controlled by valves and cylinders frequently run up to mechanical stops,
and maintaining pressure even after position is reached ensures that the position is maintained without the
need for clamps or lock pins. These valves are ideal for this type of application, as they maintain pressure in
either direction even when no longer energised.

Because double-solenoid valves latch mechanically in either of their two positions, they only need to be
energised for one step in each direction, with the intervening steps being used for Interlock Checks. Two
standard control functions are thus required, one for WORK DIRECTION, one for HOME.

Protracted Moves: In the case where ACTIVE is separated from SEQ CHK, in order to program a so-called
Protracted or long move, it is advisable to ensure that ACTIVE is on during all steps between the point where
the motion starts and the point where Sequence Checks start. This is explained in detail in Section 2.5.1.

Programming ACTIVE over several steps for long moves duplicates what happens in the normal case shown
opposite the output is maintained until the feedback signal is received, and can then be switched off. This
makes calculation of load factors for output cards easier, because the outputs are usually both off for the
greater part of the machine cycle. Connecting both coils to the same output card ensures that the loading
factor cannot in any case be greater than 50%.

Ford ControlLogix - DCP-Specification 7-4


Part 1 - Chapter 7

Fig. 7.2.1 Double Solenoid Valve


¦ +LIM---------------+ NO_PB INT_CHK ¦ ¦ +LIM---------------+ NO_PB INT_CHK ¦
¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦ ¦ ¦¦Low limit Z ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦ ¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦ ¦ +---] [--------]/[--------------+ ¦

¦ STEP B MLB ACTIVE ¦ ¦ STEP Y MLB ACTIVE ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ STEP B MLB SEQ_CHK ¦ ¦ STEP Y MLB SEQ_CHK ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦ ¦ HOME_PB WORK_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦ ¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MNCHK? ¦ ¦ ¦ ¦ DATUM SEQ_CHK ¦ ¦ MNCHK? ¦ ¦
¦ +----(L)---+ ¦ ¦ +--] [--------] [-----+ +----(L)---+ ¦
¦ ¦ ¦ ¦

¦ ACTIVE AUT_REL O/P_WK ¦ ¦ ACTIVE AUT_REL O/P_HM ¦


¦---] [------] [----------------------------( )-----¦ ¦---] [------] [----------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦ ¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦ ¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦ ¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦ ¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦ ¦ ACTIVE MLT FLASH HM_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦ ¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦ ¦ ¦¦ O/P_HM ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦ ¦ ¦+---] [---------------+ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦ ¦ ¦ I/P_HM ¦ ¦
¦ +---] [---------------------------¦ ¦ ¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦ ¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦ ¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦ ¦ SEQ_CHK SEQ_MON I/P_WK FLT_BITC ¦


¦----] [-----] [--------------] [-----------( )-----¦ ¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦ ¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_HM FLT_BITD ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦ ¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦ ¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦
¦ +---] [----------------+ +--] [-----(U)-+ ¦ ¦ +---] [----------------+ +--] [-----(U)-+ ¦

Ford ControlLogix - DCP-Specification 7-5


Part 1 - Chapter 7

7.2.2 Single-Solenoid Valve


Single-solenoid valves have a single coil, which must remain energised for as long as pressure is to be
maintained in the work direction. When it is de-energised a spring returns the spool to its rest position.

NOTE that, although the above picture shows a single-acting valve which applies pressure in one direction
only (needing a spring-return cylinder), it is also possible to get double-acting SSVs which automatically
apply pressure in the reverse (e. g. Home) direction when the coil is de-energised. The difference is in no
way connected with the number of solenoids, but depends on the design of the spool.

The control function used for single-solenoid valves, shown opposite, looks almost identical to that used for
double-solenoid valves. The only difference is that, instead of having different outputs for Work and Home,
the coils are LATCHED and UNLATCHED coils for the same output. Using this method the program makes a
single-solenoid valve mimic the action of a double-solenoid type. Pressure is maintained by electrically
latching the coil. The comments regarding long moves for the DSV apply equally to the SSV if this method of
control is used.

Despite the similarity so produced, single-solenoid valves should not be regarded as a cheaper alternative to
double-solenoid types. If the PLC loses power or goes into stop, or if the output fails, a DSV will still maintain
its position. SSVs, in contrast, could under the same conditions attempt to reverse their action. If the source
of pressure is still available, e. g. main air supply, the action could reverse due to loss of electrical supply to
the coil. This is totally dependant on the electrical hardware design. Care should be taken in these cases
with the programming of interlock checks such that no check is made when the valve is in its operating
position.

Ford ControlLogix - DCP-Specification 7-6


Part 1 - Chapter 7

Fig. 7.2.2 Single Solenoid Valve

¦ +LIM---------------+ NO_PB INT_CHK ¦ ¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦ ¦ ¦¦Low limit Z ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦ ¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦ ¦ +---] [--------]/[--------------+ ¦

¦ STEP B MLB ACTIVE ¦ ¦ STEP Y MLB ACTIVE ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ STEP B MLB SEQ_CHK ¦ ¦ STEP Y MLB SEQ_CHK ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦ ¦ HOME_PB WORK_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦ ¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MNCHK? ¦ ¦ ¦ ¦ DATUM SEQ_CHK ¦ ¦ MNCHK? ¦ ¦
¦ +----(L)---+ ¦ ¦ +--] [--------] [-----+ +----(L)---+ ¦
¦ ¦ ¦ ¦

¦ ACTIVE AUT_REL O/P_WK ¦ ¦ ACTIVE AUT_REL O/P_HM ¦


¦---] [------] [----------------------------(L)-----¦ ¦---] [------] [----------------------------(U)-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦ ¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦ ¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦ ¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦ ¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦ ¦ ACTIVE MLT FLASH HM_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦ ¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦ ¦ ¦¦ O/P_WK ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦ ¦ ¦+---]/[---------------+ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦ ¦ ¦ I/P_HM ¦ ¦
¦ +---] [---------------------------¦ ¦ ¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦ ¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦ ¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦ ¦ SEQ_CHK SEQ_MON I/P_WK FLT_BITC ¦


¦----] [-----] [--------------] [-----------( )-----¦ ¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦ ¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_HM FLT_BITD ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦ ¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦ ¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦
¦ +---] [----------------+ +--] [-----(U)-+ ¦ ¦ +---] [----------------+ +--] [-----(U)-+ ¦

Ford ControlLogix - DCP-Specification 7-7


Part 1 - Chapter 7

7.2.3 Three Position Solenoid Valve


Three-position valves can be energised in either direction but the spool spring-returns to a central position
when de-energised, with no pressure applied to the cylinder in either direction. The valve below is shown as
a four position valve to demonstrate both open and closed options but in practice only three positions are
used with one of the options.

Three position valves can therefore, like double-solenoid valves, apply pressure in two directions, but they
return to a neutral position when de-energised. If pressure is to be maintained over several steps (e. g.
clamping, lifting etc.) the relevant coil must remain energised. This is the most common mode of use, shown
in the example opposite. The only difference between this type of function and the double-solenoid example
is that ACTIVE is maintained until the last step in which an Interlock Check is required.
In other cases where the pressure need not be maintained (e. g. left-right motion held by shot pin) the
program can be the same as for the double-solenoid valve. Note that it is not practical to assume that this
type of valve will maintain a position without being energised. Even if this is the case when first
commissioned, wear and tear will eventually lead to the spool seals leaking, allowing the controlled cylinder
to creep in one direction or the other if the relevant slide is not clamped.
From the above descriptions it may seem that the three-position valve does nothing which cannot be done
by the cheaper double- or single-solenoid valves. The important difference is, however, that three-position
valves can stop cylinders (ignoring creepage) between the two ends of their traverse. This is useful for slides
which have one or more mid-positions to be catered for, but is also particularly important for safety reasons.

If a cylinder controls a movement which could be dangerous to an operator, and if that movement is
protected only by guard which can be physically violated (e. g. light curtain), then the movement must stop
instantly if the barrier is broken. DSVs and SSVs will either continue the movement or reverse it if the
sequence stops due to removal of the AUTO REL signal. In this case the three-position valve is the only type
which will fulfil the safety requirements. There would not be an Interlock check used in this case. Three-
position valves should never be controlled by LATCH and UNLATCH commands if they are being used for
safety purposes as described above.

Ford ControlLogix - DCP-Specification 7-8


Part 1 - Chapter 7

Fig. 7.2.3 Three Position Solenoid Valve

¦ +LIM---------------+ NO_PB INT_CHK ¦ ¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦ ¦ ¦¦Low limit Z ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦ ¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦ ¦ +---] [--------]/[--------------+ ¦

¦ +LIM---------------+ MLB ACTIVE ¦ ¦ +LIM---------------+ MLB ACTIVE ¦


¦--¦LIMIT TEST (CIRC) +----]/[--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----]/[--------------( )-----¦
¦ ¦¦Low limit B ¦ ¦ ¦ ¦ ¦ ¦ ¦¦Low limit Y ¦ ¦ ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ SEQ_CHK ¦ ¦ ¦ ¦¦ ¦ ¦ ¦ SEQ_CHK ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ +----( )---+ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ +----( )---+ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦+LIM---------------+ MLB ¦ ¦ ¦ ¦+LIM---------------+ MLB ¦ ¦
¦ +¦LIMIT TEST (CIRC) +----] [----+ ¦ ¦ +¦LIMIT TEST (CIRC) +----] [----+ ¦
¦ ¦Low limit Y ¦ ¦ ¦ ¦Low limit B ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦Test S1_STEP.ACC¦ ¦ ¦ ¦Test S1_STEP.ACC¦ ¦
¦ ¦ 0¦ ¦ ¦ ¦ 0¦ ¦
¦ ¦High limit A ¦ ¦ ¦ ¦High limit X ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ +------------------+ ¦ ¦ +------------------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦ ¦ HOME_PB WORK_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦ ¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MNCHK? ¦ ¦ ¦ ¦ DATUM SEQ_CHK ¦ ¦ MNCHK? ¦ ¦
¦ +----(L)---+ ¦ ¦ +--] [--------] [-----+ +----(L)---+ ¦
¦ ¦ ¦ ¦

¦ ACTIVE AUT_REL O/P_WK ¦ ¦ ACTIVE AUT_REL O/P_HM ¦


¦---] [------] [----------------------------( )-----¦ ¦---] [------] [----------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦ ¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦ ¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦ ¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦ ¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦ ¦ ACTIVE MLT FLASH HM_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦ ¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦ ¦ ¦¦ O/P_HM ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦ ¦ ¦+---] [---------------+ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦ ¦ ¦ I/P_HM ¦ ¦
¦ +---] [---------------------------¦ ¦ ¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦ ¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦ ¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦ ¦ SEQ_CHK SEQ_MON I/P_WK FLT_BITC ¦


¦----] [-----] [--------------] [-----------( )-----¦ ¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦ ¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_HM FLT_BITD ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦ ¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦ ¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦
¦ +---] [----------------+ +--] [-----(U)-+ ¦ ¦ +---] [----------------+ +--] [-----(U)-+ ¦

Ford ControlLogix - DCP-Specification 7-9


Part 1 - Chapter 7

7.2.4 Single-Speed Motor

The principal difference between the control of valves and of motors is that, whereas cylinders can be
allowed to stall at the end of their stroke, motors must stop as soon as the feedback sensor trips. For this
reason a contact of the REACTION signal is inserted in the rung controlling the ACTION (output).

For a single-speed motor, the program is identical to that for a double-solenoid valve, apart from the contact
of I/P WK in series with O/P WK (similarly for Home). The effect of using a motor is there is no permanent
pressure attempting to maintain the end position once it is reached. Movements controlled by motors often
need to be clamped when in position, and can also stop at mid-positions.
In some cases contacts of the limits I/P WK and I/P HM may also be externally connected in series with O/P
WK and O/P HM (the corresponding outputs), to ensure positioning is as accurate as possible. With long
PLC cycle times the difference between seeing a limit the instant it trips and not seeing it until almost a cycle
later can produce a significant error in the final position. Connecting a contact of the limit directly in series
with the output means that the motor always sees it immediately.

The limit switches I/P WK and I/P HM have normally-open contacts because, in most cases, it is undesirable
to have the movement terminate too early in the event of a wiring failure. Separate over-travel limits, which
should have normally-closed contacts, are used to protect against mechanical damage if a fault causes the
normal end limit to fail. These and other protective devices such as overload trips are Constantly Monitored
signals, but may additionally be hard-wired externally to ensure full protection even if the PLC fails to
respond to them.

Ford ControlLogix - DCP-Specification 7 - 10


Part 1 - Chapter 7

Fig. 7.2.4 Single Speed Motor

¦ +LIM---------------+ NO_PB INT_CHK ¦ ¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦ ¦ ¦¦Low limit Z ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦ ¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦ ¦ +---] [--------]/[--------------+ ¦

¦ STEP B MLB ACTIVE ¦ ¦ STEP Y MLB ACTIVE ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ STEP B MLB SEQ_CHK ¦ ¦ STEP Y MLB SEQ_CHK ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦ ¦ HOME_PB WORK_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦ ¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MNCHK? ¦ ¦ ¦ ¦ DATUM SEQ_CHK ¦ ¦ MNCHK? ¦ ¦
¦ +----(L)---+ ¦ ¦ +--] [--------] [-----+ +----(L)---+ ¦
¦ ¦ ¦ ¦

¦ ACTIVE AUT_REL I/P_WK O/P_WK ¦ ¦ ACTIVE AUT_REL I/P_HM O/P_HM ¦


¦---] [------] [-------------------]/[------( )-----¦ ¦---] [------] [-------------------]/[------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦ ¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦ ¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦ ¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦ ¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦ ¦ ACTIVE MLT FLASH HM_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦ ¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦ ¦ ¦¦ O/P_HM ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦ ¦ ¦+---] [---------------+ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦ ¦ ¦ I/P_HM ¦ ¦
¦ +---] [---------------------------¦ ¦ ¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦ ¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦ ¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦ ¦ SEQ_CHK SEQ_MON I/P_WK FLT_BITC ¦


¦----] [-----] [--------------] [-----------( )-----¦ ¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦ ¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_HM FLT_BITD ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦ ¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦ ¦ ¦ INT_CHK ¦ ¦INT_CHK INT_OK¦ ¦
¦ +---] [----------------+ +--] [-----(U)-+ ¦ ¦ +---] [----------------+ +--] [-----(U)-+ ¦

Ford ControlLogix - DCP-Specification 7 - 11


Part 1 - Chapter 7

7.2.5 Two-Speed Motor


The type of motor illustrated below is the piggy-back type in which both sections are energised for rapid and
just one section for slow. There is only one contactor required for rapid, as phase reversal is achieved by the
contactors for slow traverse.

The output O/P RP, for rapid traverse, is controlled without any reference to step numbers, since it can only
be on during steps in which one of the slow outputs is energised. This segment must appear at the end of
the control function.
The limits for rapid have N.C. contacts, so the motor defaults to slow in the event of an open-circuit fault,
reducing the risk of overshooting. The programmed contacts monitored for the fault table bit are therefore
normally-open for the rapid limits, in contrast to the usual N.C. arrangement for final position limits. All four
feedback signals are individually monitored by the fault table, to ensure that both the rapid and the slow
limits have been tripped before the sequence can step on. This reduces the chances of overshooting in the
event of a short-circuit fault in the rapid limit circuit.
The timing Diagram. below only shows action in one direction. Home is similar to work direction

Ford ControlLogix - DCP-Specification 7 - 12


Part 1 - Chapter 7
Fig. 7.2.5 Two Speed Motor

¦ +LIM---------------+ NO_PB INT_CHK ¦ ¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦ ¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦ ¦ ¦¦Low limit Z ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦ ¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦ ¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦ ¦ ¦¦High limit A ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦ ¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦ ¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦ ¦ +---] [--------]/[--------------+ ¦

¦ STEP B MLB ACTIVE ¦ ¦ STEP Y MLB ACTIVE ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ STEP B MLB SEQ_CHK ¦ ¦ STEP Y MLB SEQ_CHK ¦


¦-----] [-------]/[-------------------------( )-----¦ ¦-----] [-------]/[-------------------------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ STEP Y MLB ¦ ¦ ¦ ¦ STEP B MLB ¦ ¦
¦ +--] [-------] [------+ ¦ ¦ +--] [-------] [------+ ¦

¦ WORK_PB HOME_PB MAN_REQ ¦ ¦ HOME_PB WORK_PB MAN_REQ ¦


¦----] [--------]/[------------------------( )------¦ ¦----] [--------]/[------------------------( )------¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MNCHK? ¦ ¦ ¦ ¦ DATUM SEQ_CHK ¦ ¦ MNCHK? ¦ ¦
¦ +----(L)---+ ¦ ¦ +--] [--------] [-----+ +----(L)---+ ¦
¦ ¦ ¦ ¦

¦ ACTIVE AUT_REL I/P_WK O/P_WK ¦ ¦ ACTIVE AUT_REL I/P_HM O/P_HM ¦


¦---] [------] [-------------------]/[------( )-----¦ ¦---] [------] [-------------------]/[------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦ ¦ ¦MAN_REQ INT_OK MAN_REL ¦ ¦
¦ +-] [------] [-------] [-----+ ¦ ¦ +-] [------] [-------] [-----+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ MLT_REL ACTIVE ¦ ¦ ¦ ¦ MLT_REL ACTIVE ¦ ¦
¦ +----] [-------] [----+ ¦ ¦ +----] [-------] [----+ ¦

¦ ACTIVE MLT FLASH WK_PB_LP ¦ ¦ ACTIVE MLT FLASH HM_PB_LP ¦


¦------] [--------] [--------] [------------( )-----¦ ¦------] [--------] [--------] [------------( )-----¦
¦ ¦¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦
¦ ¦¦ O/P_WK ¦ ¦ ¦ ¦ ¦¦ O/P_HM ¦ ¦ ¦
¦ ¦+---] [---------------+ ¦ ¦ ¦ ¦+---] [---------------+ ¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ I/P_WK ¦ ¦ ¦ ¦ I/P_HM ¦ ¦
¦ +---] [---------------------------¦ ¦ ¦ +---] [---------------------------¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦ LP_TEST ¦ ¦ ¦ ¦ LP_TEST ¦ ¦
¦ +---] [---------------------------+ ¦ ¦ +---] [---------------------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_HM FLT_BITA ¦ ¦ SEQ_CHK SEQ_MON I/P_WK FLT_BITD ¦


¦----] [-----] [--------------] [-----------( )-----¦ ¦----] [-----] [--------------] [-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_WK FLT_BITB ¦ ¦ ¦ ¦MAN_REQ MAN_REL INT_OK¦ ¦I/P_HM FLT_BITE ¦ ¦
¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---¦ ¦ ¦ +--] [-----] [-----] [-¦ +--]/[-----------( )---¦ ¦
¦ ¦ ¦ ¦ ¦ ¦¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦¦ ¦
¦ ¦ INT_CHK ¦ ¦ ¦INT_CHK INT_OK¦¦ ¦ ¦ ¦ INT_CHK ¦ ¦ ¦INT_CHK INT_OK¦¦ ¦
¦ +---] [----------------+ ¦ +--] [-----(U)-+¦ ¦ ¦ +---] [----------------+ ¦ +--] [-----(U)-+¦ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦I/P_WK_RP FLT_BITC ¦ ¦ ¦ ¦I/P_HM_RP FLT_BITF ¦ ¦
¦ +--] [-----------( )---+ ¦ ¦ +--] [-----------( )---+ ¦
¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦
¦ ¦INT_CHK INT_OK¦ ¦ ¦ ¦INT_CHK INT_OK¦ ¦
¦ +--] [-----(U)-+ ¦ ¦ +--] [-----(U)-+ ¦
¦ O/P_WK I/P_WK_RP O/P_RP ¦
¦----] [--------] [------------------------( )------¦
¦ ¦ ¦ ¦
¦ ¦O/P_HM I/P_HM_RP ¦ ¦
¦ +--] [--------] [-----+ ¦
¦ ¦

Ford ControlLogix - DCP-Specification 7 - 13


Part 1 - Chapter 7

7.2.6 Wait for an Input


In some circumstances it is necessary to monitor an input even though there is no corresponding output to
be controlled. Cases such as signals from other machines either before or after this one in a linked
production line are examples, but operator push-buttons indicating completion of loading may also be treated
this way. Although the term input is used, the operand being monitored could well be a special step flag from
another sequence within the same PLC. Many other applications can be found in practice.

As there is no output for this control function, there is no need to control the ACTIVE flag. The segments for
Manual Request, Control Output and Push-button Lamp are also omitted.

Despite the lack of an output, however, the segment for Manual Diagnostics is still included. It is possible
that the operand being monitored could inhibit some other movement in Manual, and the fault table bit for
this signal must then be turned on if the other move is attempted. The need for the MNCHK is determined on
the planning charts the same as any standard zone.

Unlike normal position sensors, it is not possible to make a general statement as to whether a normally-open
contact would provide safer arrangement than a normally-closed. The decision rests on what happens in the
next step of the program. This means that the contact programmed in rung 3 may be either N.O. or N.C.,
depending on the application.

As with all other control functions, the AFI instruction can be used to control INT_CHK if no Interlock Checks
are required.

Fig. 7.2.6 Wait for an Input

¦ STEP B SEQ_CHK ¦
¦-----] [-----------------------------------( )-----¦

¦ +LIM---------------+ NO_PB INT_CHK ¦


¦--¦LIMIT TEST (CIRC) +----] [--------------( )-----¦
¦ ¦¦Low limit C ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦
¦ ¦¦Test S1_STEP.ACC¦ ¦ ¦
¦ ¦¦ 0¦ ¦ ¦
¦ ¦¦High limit X ¦ ¦ ¦
¦ ¦¦ ¦ ¦ ¦
¦ ¦+------------------+ ¦ ¦
¦ ¦ MNCHK NO_PB ¦ ¦
¦ +---] [--------]/[--------------+ ¦

¦ SEQ_CHK SEQ_MON I/P_WT FLT_BITA ¦


¦----] [-----] [--------------]/[-----------( )-----¦
¦ ¦ ¦ ¦ ¦ ¦
¦ ¦INT_CHK ¦ ¦INT_CHK INT_OK ¦ ¦
¦ +--] [------------+ +--] [----(U)---+ ¦

Ford ControlLogix - DCP-Specification 7 - 14


Part 1 - Appendix

APPENDIX

A DCP Standard (Ladder)

Routine Listing
Tag Listing
Listing of Cross Reference Table
Listing of Data Types

see disk of DCP Standard delivered with this specification.

Ford ControlLogix - DCP-Specification A-1

You might also like