DL305 User Manual
DL305 User Manual
Automationdirect.com
WARNING
Thank you for purchasing automation equipment from Automationdirect.com. We want your new DirectLOGIC
automation equipment to operate safely. Anyone who installs or uses this equipment should read this publication (and
any other relevant publications) before installing or operating the equipment.
To minimize the risk of potential safety problems, you should follow all applicable local and national codes that regulate
the installation and operation of your equipment. These codes vary from area to area and usually change with time. It is
your responsibility to determine which codes should be followed, and to verify that the equipment, installation, and
operation are in compliance with the latest revision of these codes.
At a minimum, you should follow all applicable sections of the National Fire Code, National Electrical Code, and the
codes of the National Electrical Manufacturer’s Association (NEMA). There may be local regulatory or government
offices that can also help determine which codes and standards are necessary for safe installation and operation.
Equipment damage or serious injury to personnel can result from the failure to follow all applicable codes and
standards. We do not guarantee the products described in this publication are suitable for your particular application,
nor do we assume any responsibility for your product design, installation, or operation.
Our products are not fault–tolerant and are not designed, manufactured or intended for use or resale as on–line control
equipment in hazardous environments requiring fail–safe performance, such as in the operation of nuclear facilities,
aircraft navigation or communication systems, air traffic control, direct life support machines, or weapons systems, in
which the failure of the product could lead directly to death, personal injury, or severe physical or environmental
damage (”High Risk Activities”). Automationdirect.com specifically disclaims any expressed or implied warranty of
fitness for High Risk Activities.
For additional warranty and safety information, see the Terms and Conditions section of our Desk Reference. If you
have any questions concerning the installation or operation of this equipment, or if you need additional information,
please call us at 770–844–4200.
This publication is based on information that was available at the time it was printed. At Automationdirect.com we
constantly strive to improve our products and services, so we reserve the right to make changes to the products and/or
publications at any time without notice and without any obligation. This publication may also discuss features that may
not be available in certain revisions of the product.
Trademarks
This publication may contain references to products produced and/or offered by other companies. The product and
company names may be trademarked and are the sole property of their respective owners. Automationdirect.com
disclaims any proprietary interest in the marks and names of others.
Copyright 2002, Automationdirect.com Incorporated
All Rights Reserved
No part of this manual shall be copied, reproduced, or transmitted in any way without the prior, written consent of
Automationdirect.com Incorporated. Automationdirect.com retains the exclusive rights to all information
included in this document.
AVERTISSEMENT
Nous vous remercions d’avoir acheté l’équipement d’automatisation de Automationdirect.comE. Nous tenons à ce que
votre nouvel équipement d’automatisation DirectLOGIC fonctionne en toute sécurité. Toute personne qui installe ou
utilise cet équipement doit lire la présente publication (et toutes les autres publications pertinentes) avant de l’installer ou de
l’utiliser.
Afin de réduire au minimum le risque d’éventuels problèmes de sécurité, vous devez respecter tous les codes locaux et
nationaux applicables régissant l’installation et le fonctionnement de votre équipement. Ces codes diffèrent d’une région à
l’autre et, habituellement, évoluent au fil du temps. Il vous incombe de déterminer les codes à respecter et de vous assurer
que l’équipement, l’installation et le fonctionnement sont conformes aux exigences de la version la plus récente de ces
codes.
Vous devez, à tout le moins, respecter toutes les sections applicables du Code national de prévention des incendies, du
Code national de l’électricité et des codes de la National Electrical Manufacturer’s Association (NEMA). Des organismes de
réglementation ou des services gouvernementaux locaux peuvent également vous aider à déterminer les codes ainsi que
les normes à respecter pour assurer une installation et un fonctionnement sûrs.
L’omission de respecter la totalité des codes et des normes applicables peut entraîner des dommages à l’équipement ou
causer de graves blessures au personnel. Nous ne garantissons pas que les produits décrits dans cette publication
conviennent à votre application particulière et nous n’assumons aucune responsabilité à l’égard de la conception, de
l’installation ou du fonctionnement de votre produit.
Nos produits ne sont pas insensibles aux défaillances et ne sont ni conçus ni fabriqués pour l’utilisation ou la revente en tant
qu’équipement de commande en ligne dans des environnements dangereux nécessitant une sécurité absolue, par
exemple, l’exploitation d’installations nucléaires, les systèmes de navigation aérienne ou de communication, le contrôle de
la circulation aérienne, les équipements de survie ou les systèmes d’armes, pour lesquels la défaillance du produit peut
provoquer la mort, des blessures corporelles ou de graves dommages matériels ou environnementaux (”activités à risque
élevé”). La société Automationdirect.comE nie toute garantie expresse ou implicite d’aptitude à l’emploi en ce qui a trait
aux activités à risque élevé.
Pour des renseignements additionnels touchant la garantie et la sécurité, veuillez consulter la section Modalités et
conditions de notre documentation. Si vous avez des questions au sujet de l’installation ou du fonctionnement de cet
équipement, ou encore si vous avez besoin de renseignements supplémentaires, n’hésitez pas à nous téléphoner au
770–844–4200.
Cette publication s’appuie sur l’information qui était disponible au moment de l’impression. À la société
Automationdirect.comE, nous nous efforçons constamment d’améliorer nos produits et services. C’est pourquoi nous
nous réservons le droit d’apporter des modifications aux produits ou aux publications en tout temps, sans préavis ni quelque
obligation que ce soit. La présente publication peut aussi porter sur des caractéristiques susceptibles de ne pas être offertes
dans certaines versions révisées du produit.
Marques de commerce
La présente publication peut contenir des références à des produits fabriqués ou offerts par d’autres entreprises. Les
désignations des produits et des entreprises peuvent être des marques de commerce et appartiennent exclusivement à
leurs propriétaires respectifs. Automationdirect.comE nie tout intérêt dans les autres marques et désignations.
Copyright 2002, Automationdirect.comE Incorporated
Tous droits réservés
Nulle partie de ce manuel ne doit être copiée, reproduite ou transmise de quelque façon que ce soit sans le consentement
préalable écrit de la société Automationdirect.comE Incorporated. Automationdirect.comE conserve les droits
exclusifs à l’égard de tous les renseignements contenus dans le présent document.
1
Manual History
Refer to this history in all correspondence and/or discussion about this manual.
Title: DL305 User Manual
Manual Number: D3–USER–M
Issue
Date
Description of Changes
Original
1/94
Original Issue
Rev A
8/95
Made corrections throughout
Rev A–1
10/96
Manual resized, update of selected pages
issued in Rev A
Rev B
5/98
Made minor revisions before reprinting
Rev C
8/02
Replaced F3–16TA–1 with F3–16TA–2
1
Table of Contents
i
Chapter 1: Getting Started
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The Purpose of this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Who Should Read this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Where to Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Supplemental Manuals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
How this Manual is Organized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Technical Assistance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1–2
1–2
1–2
1–2
1–2
1–3
1–3
DL305 System Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DirectSOFT Programming for Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Handheld Programmer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL305 System Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1–4
1–4
1–4
1–4
DirectLOGIC Part Numbering System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1–8
DirectLOGIC Part Numbering System (cont.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1–9
A Few Steps to a Successful System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step1: Review the Installation Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 2: Understand the CPU Setup Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 3: Understand the I/O System Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 4: Review the I/O Selection Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 5: Determine the I/O Module Specifications and Wiring Characteristics . . . . . . . . . . . . . . .
Step 6: Understand the System Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 7: Review the Programming Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 8: Choose the Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 9: Understand the Maintenance and Troubleshooting Procedures . . . . . . . . . . . . . . . . . . . .
1–10
1–10
1–10
1–10
1–10
1–10
1–11
1–11
1–11
1–11
Chapter 2: Installation and Safety Guidelines
Safety Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Plan for Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Safety Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Orderly System Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
System Power Disconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2–2
2–2
2–2
2–3
2–3
Panel Design Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Environmental Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Agency Approvals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enclosures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2–4
2–6
2–6
2–7
2–7
Component Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Component Dimensions Part 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2–7
2–9
Base Mounting Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–10
ii
Table of Contents
Installing Components in the Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–10
Base Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–11
Expansion Base Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–11
I/O Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–12
I/O Wiring Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–12
Wiring the Different Module Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–13
Chapter 3: DL330/DL330P/DL340 CPU Specifications
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330 CPU Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330P CPU Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 CPU Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–2
3–2
3–2
3–2
CPU Hardware Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–2
CPU Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–3
Selecting CPU Memory Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Internal Retentive Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Program Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Volatile and Non-volatile Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Program Storage Memory Types (Internal) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Storing Programs on UVPROMs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting up the PROM Writer Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying a Program From the CPU RAM to a UVPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying a Program From the UVPROM to the CPU RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparing a Program From the UVPROM to the CPU RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Erasing a UVPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–4
3–4
3–4
3–4
3–5
3–6
3–7
3–7
3–8
3–8
3–8
DL330/DL330P CPU Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing the UVPROM Option in the DL330 / DL330P CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Retentive Memory for the DL330 / DL330P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330/DL330P Networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–9
3–9
3–9
3–9
DL340 CPU Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–10
Installing the optional UVPROM or EEPROM in the DL340 CPU . . . . . . . . . . . . . . . . . . . . . . . . . 3–10
Selecting Retentive Memory for the DL340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–11
DL340 Port Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Baud Rate Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Network Address Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 RS232C Port (1 and 2) Pin Outs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Station Type Selection and Address Ranges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Selecting the Response Delay Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Selecting Data Format (ASCII/HEX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–12
3–12
3–12
3–13
3–13
3–13
3–13
Battery Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Memory Battery Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
DL330, DL330P, DL340 CPU Battery Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Installing the CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–15
iii
Table of Contents
CPU Setup and System Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A Few Things to Know . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
What are Auxiliary Functions? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Connecting the Programming Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the CPU Mode of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clearing the CPU Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CPU Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3–16
3–16
3–17
3–18
3–20
3–21
3–21
Chapter 4: Bases, Expansion Bases, and I/O Configuration
Understanding I/O Numbering and Module Placement Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL305 I/O Configuration History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Octal Numbering System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fixed I/O Numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Numbering Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Number of I/O Points Required for Each Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Module Placement Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330/DL330P Rules for 16 Point Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Rules for 16 Point Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–2
4–2
4–2
4–2
4–3
4–3
4–4
4–5
4–6
Base Specifications and Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Three Sizes of Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bases and Maximum I/O Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Mounting Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Connecting the Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Expansion Base Power Supply Wiring Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Auxiliary 24VDC Output at Base Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Supply Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Run Relay on the Base Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Installing CPUs and I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–7
4–7
4–8
4–8
4–9
4–9
4–10
4–10
4–11
4–12
4–13
Using Bases for Local or Expansion I/O Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Uses Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Local/Expansion Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Connecting Expansion Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–14
4–14
4–14
4–15
Setting the Base Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–16
5 Slot Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–16
10 Slot Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–16
Example I/O Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–17
16 Point I/O Allocation Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–17
Examples Show Maximum I/O Points Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–17
I/O Configurations with a 5 Slot Local CPU Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Switch settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base and 5 Slot Expansion Base with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base and 5 Slot Expansion Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base and Two 5 Slot Expansion Bases with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Slot Base and Two 5 Slot Expansion Bases with 16 and 8 Point I/O . . . . . . . . . . . . . . . . . . . . .
4–18
4–18
4–18
4–18
4–19
4–19
4–20
4–20
iv
Table of Contents
I/O Configurations with an 8 Slot Local CPU Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Slot Base with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Slot Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Slot Base and 5 Slot Expansion Base with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Slot Base and 5 Slot Expansion Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–21
4–21
4–21
4–21
4–21
I/O Configurations with a 10 Slot Local CPU Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Switch settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Last Slot Address Range 100 to 107 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Last Slot Address Range 700 to 707 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 Slot Expansion Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 Slot Base and 5 Slot Expansion Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Expansion Addresses Depend on Local CPU Base Configuration. . . . . . . . . . . . . . . . . . . . . . . . .
10 Slot Base and 10 Slot Expansion Base with 8 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 Slot Base and 10 Slot Expansion Base with 16 Point I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–22
4–22
4–22
4–22
4–23
4–23
4–23
4–24
4–25
4–25
4–25
Calculating the Power Budget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Managing your Power Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Auxiliary Base Power Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Power Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Module Power Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Budget Calculation Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Budget Calculation Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4–26
4–26
4–26
4–26
4–27
4–30
4–31
Chapter 5: I/O Module Selection & Wiring Guidelines
I/O Selection Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Module Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–2
5–2
Sinking and Sourcing Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–2
DL305 Input Module Configuration Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–3
DL305 Output Module Configuration Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–3
Configuration #1 DL305 DC Current Sourcing Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–4
Configuration #2 DL305 DC Current Sinking/Sourcing Input Module . . . . . . . . . . . . . . . . . . . . .
5–4
Configuration #3 DL305 DC Current Sinking Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–5
Configuration #4 DL305 AC/DC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–5
Configuration #5 DL305 AC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–6
Configuration #6 DL305 DC Current Sinking Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–7
Configuration #7 DL305 DC Current Sourcing Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–7
Configuration #8 DL305 AC/DC Current Sink/Source (Relay) Output Module . . . . . . . . . . . . . .
5–8
Configuration #9 DL305 AC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–8
Solid State Field Device Wiring to DC Input Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
NPN Field Device Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PNP Field Device Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5–9
5–9
5–9
v
Table of Contents
Derating Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–10
I/O Wiring Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–11
General Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–11
Wiring the Different Module Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–11
Fuse Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–12
External Fuse Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–12
Chapter 6: Discrete Input Modules
Discrete Input Module Identification and Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Discrete Input Module Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Color Coding of I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Module Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Inputs Per Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Commons Per Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Voltage Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peak Voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AC Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ON Voltage Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OFF Voltage Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Impedance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Minimum ON Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum OFF Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Power Required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OFF to ON Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ON to OFF Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terminal Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–2
6–2
6–2
6–2
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
6–3
D3–08ND2, 24 VDC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–4
D3–16ND2–1, 24 VDC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–5
D3–16ND2–2, 24 VDC Input Module Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–6
D3–16ND2F, 24 VDC Fast Response Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–7
F3–16ND3F, TTL/24 VDC Fast Response Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6–8
D3–08NA–1, 110 VAC Fast Response Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–10
D3–08NA–2, 220 VAC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–11
D3–16NA, 110 VAC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–12
D3–08NE3, 24 VAC/DC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–13
D3–16NE3, 24 VAC/DC Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–14
D3–08SIM, Input Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–15
vi
Table of Contents
Chapter 7: Discrete Output Modules
Discrete Output Module Identification and Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Discrete Output Module Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Color Coding of I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Modules Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Outputs Per Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Commons Per Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Operating Voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peak Voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AC Frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ON Voltage Drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Current (Resistive) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Leakage Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Maximum Inrush Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Minimum Load . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Base Power Required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OFF to ON Response Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ON to OFF Response Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terminal Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Fuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Relay Life . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–2
7–2
7–2
7–2
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
7–3
Relay Arc Suppression – DC and AC Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FL305 High Current Relay Output Module Arc Suppression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resistor and Capacitor Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resistor Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peak Voltage and Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding Contact Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resistor and Capacitor Nomogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–4
7–4
7–4
7–4
7–4
7–4
7–5
D3–08TD1, 24 VDC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–6
D3–08TD2, 24 VDC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–7
D3–16TD1–1, 24 VDC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–8
D3–16TD1–2, 24 VDC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7–9
D3–16TD2, 24 VDC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–10
D3–04TAS, 110–220 VAC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–11
F3–08TAS, 250 VAC Isolated Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–12
D3–08TA–1, 110–220 VAC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–13
D3–08TA–2, 110–220 VAC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–14
F3–16TA–2, 20–125 VAC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–15
D3–16TA–2, 110–220 VAC Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–16
D3–08TR, Relay Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–17
vii
Table of Contents
F3–08TRS–1, Relay Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–18
F3–08TRS–2, Relay Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–19
D3–16TR, Relay Output Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–20
Chapter 8: System Operation
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–2
CPU Operating System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL305 CPU Operational Flow Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–3
8–3
Initial Mode Setting and Memory Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flow Chart for Initial Mode Setting (#1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–4
8–4
8–5
Program Mode Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–6
Run Mode Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–7
Update I/O Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–8
Service Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–9
Service for Monitoring and Forcing Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–10
Solve Application Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–12
I/O Response Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Is Timing Important for Your Application? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Normal Minimum I/O Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Normal Maximum I/O Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Improving Response Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–14
8–14
8–14
8–15
8–15
CPU Scan Time Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330 / DL330P Scan Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Scan Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Application Program Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–16
8–16
8–17
8–18
Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Octal Numbering System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Two Basic Memory Types: Discrete and Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
R Memory Locations for Discrete Memory Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Control Relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timers and Timer Status Bits (T Data type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Counters and Counter Status Bits (CT Data type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer/Counter Current Values (R Data Type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Registers (R Data Type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stages (S Data type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shift Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Special Relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Special Registers (R Data Type) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330P Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL340 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8–19
8–19
8–19
8–20
8–20
8–21
8–22
8–22
8–22
8–23
8–23
8–24
8–24
8–24
8–25
8–26
8–27
viii
Table of Contents
I/O Point Bit Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–28
Control Relay Bit Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–29
Special Relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–31
Timer / Counter Registers and Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–32
External Timer/Counter Setpoint Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–32
Data Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–33
Stage Control / Status Bit Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–35
Shift Register Bit Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–36
Special Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–37
Chapter 9: Programming Basics
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9–2
Using Boolean Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
END Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Simple Rungs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Normally Closed Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Contacts in Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Midline Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Parallel Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joining Series Branches in Parallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joining Parallel Branches in Series . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparative Boolean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Combination Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Boolean Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9–3
9–3
9–3
9–3
9–4
9–4
9–4
9–5
9–5
9–5
9–6
9–6
Using Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9–8
Using Counters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9–9
Using the Accumulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Copying Data to and from the Accumulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Changing the Accumulator Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Accumulator Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9–10
9–10
9–11
9–12
Chapter 10: RLL PLUS Programming Basics
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–2
An Example Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–3
Machine Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–3
Machine Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–3
An RLL Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–4
An RLL PLUS Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–5
Stage Instruction Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–6
Stage Instruction Numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–6
A Few Simple Rules for Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–7
ix
Table of Contents
Activating Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Initial Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Jump Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Set Instructions with Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Flow Transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10–8
10–8
10–9
10–10
10–11
Using Outputs in Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting Outputs with the SET Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the OUT Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Latching Outputs with Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10–12
10–12
10–13
10–14
Using Timers and Counters in Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–15
Time Based Transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–15
Using Counters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–16
Using Data Instructions in Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–17
Using Comparative Contacts in Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–18
Parallel Branching Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Branching Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Joining Parallel Branches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Stage Bits as Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stage Contact Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10–19
10–19
10–20
10–22
10–23
Unusual Operations in Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Same Output Multiple Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using a Set Out Reset (SET OUT RST) Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10–24
10–24
10–25
10–25
Two Ways to View RLL PLUS Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–26
DirectSOFT Stage View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–26
DirectSOFT Ladder View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–26
Designing a Program Using RLL PLUS Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Use DirectSOFT to Save Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 1: Design a Top-level Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 2: Add Flowchart Transitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 3: Add Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 4: Add Conditions for Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 5: Add Alarm or Monitoring Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 6: Determine Stage Numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 7: Assign I/O Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Step 8: Enter the Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10–27
10–27
10–28
10–29
10–30
10–31
10–32
10–33
10–35
10–36
x
Table of Contents
Chapter 11: Instruction Set
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store (STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not (STR NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Timer (STR TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not Timer (STR NOT TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Counter (STR CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not Counter (STR NOT CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or (OR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not (OR NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Timer (OR TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not Timer (OR NOT TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Counter (OR CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not Counter (OR NOT CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And (AND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not (AND NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Timer (AND TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not Timer (AND NOT TMR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Counter (AND CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not Counter (AND NOT CNT) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Store (AND STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Store (OR STR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Out (OUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set (SET) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset (RST) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Out (SET OUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Out Reset (SET OUT RST) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store If Equal (STR) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not If Equal (STR NOT) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or If Equal (OR) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not If Equal (OR NOT) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And If Equal (AND) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not If Equal (AND NOT) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer (TMR) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Counter (CNT) DL330/DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shift Register (SR) DL330/340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Store DSTR (F50) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Out DOUT (F60) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Store 1 DSTR (F51) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Out 1 DOUT (F61) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Store 2 DSTR (F52) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Out 2 DOUT (F62) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Store 3 DSTR (F53) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Out 3 DOUT (F63) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Store 5 DSTR (F55) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Out 5 DOUT (F65) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data And DAND (F75) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Or DOR (F76) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Compare CMP (F70) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Add ADD (F71) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11–2
11–4
11–4
11–5
11–5
11–6
11–6
11–7
11–7
11–8
11–8
11–9
11–9
11–10
11–10
11–11
11–11
11–12
11–12
11–13
11–13
11–15
11–16
11–16
11–17
11–18
11–19
11–19
11–20
11–20
11–21
11–21
11–22
11–23
11–24
11–25
11–25
11–26
11–26
11–27
11–27
11–28
11–28
11–29
11–29
11–30
11–31
11–32
11–34
xi
Table of Contents
Add Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Subtract SUB (F72) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Subtract Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multiply MUL (F73) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multiply Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide DIV (F74) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shift Left SHFL (F80) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shift Right SHFR (F81) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11–35
11–36
11–37
11–38
11–39
11–40
11–41
11–42
11–43
Number Conversion Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Encode ENCOD (F83) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Decode DECOD (F82) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Binary BIN (F85) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Binary Coded Decimal BCD (F86) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Invert INV (F84) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11–44
11–44
11–46
11–47
11–48
11–49
Program Control Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Master Control Set (MCS) and Master Control Reset (MCR)
DL330/DL340 only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Master Control Relays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MCS/MCR Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11–50
11–50
11–50
11–51
Network Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–52
Read from Network RX (F952) DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–52
Write to Network WX (F593) DL340 Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–54
Message Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–56
Fault FAULT (F20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–56
Chapter 12: RLL PLUS Instruction Set
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Initial Stage (ISG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stage (SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jump (JMP) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Not Jump (NOT JMP) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Stage (STR SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not Stage (STR NOT SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Stage (OR SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not Stage (OR NOT SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Stage (AND Stage) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not Stage (AND NOT SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set (SET) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset (RST) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Set Stage (SET SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset Stage (RST SG) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12–2
12–3
12–3
12–5
12–5
12–7
12–7
12–8
12–8
12–9
12–9
12–10
12–10
12–11
12–11
xii
Table of Contents
Comparative Boolean Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store If Greater Than Timer (STR TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not IF Greater Than Timer (STR NOT TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . .
Store If Greater Than Counter (STR CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Store Not If Greater Than Counter (STR NOT CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . .
Or If Greater Than Timer (OR TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not If Greater Than Timer (OR NOT TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or If Greater Than Counter (OR CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Or Not If Greater Than Counter (OR NOT CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . .
And If Greater Than Timer (AND TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not If Greater Than Timer (AND NOT TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . .
And If Greater Than Counter (AND CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
And Not If Greater Than Counter (AND NOT CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . .
12–12
12–12
12–12
12–13
12–13
12–14
12–14
12–15
12–15
12–16
12–16
12–17
12–17
Timer, Counter, and Shift Register Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer (TMR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Counter (CNT) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset Counter (RST) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shift Register (SR) DL330P Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12–18
12–18
12–19
12–20
12–21
Chapter 13: Maintenance and Troubleshooting
Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Air Quality Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CPU Battery Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DL330, DL330P, DL340 CPU Battery Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13–2
13–2
13–2
13–2
CPU Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–3
Power Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Incorrect Base Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Supply Blown Fuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Faulty Base Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Device or Module Causing the Power Supply to Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power Budget Exceeded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13–4
13–4
13–4
13–5
13–5
13–5
RUN Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–6
CPU Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–6
BATT Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–6
Expansion Base Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–7
Testing Output Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–8
Testing Output Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–8
I/O Module Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–10
Important Notes About I/O Module Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–10
Noise Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–11
Electrical Noise Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–11
Reducing Electrical Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–11
xiii
Table of Contents
Machine Startup and Program Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Syntax Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Pause Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
END Instruction Placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13–12
13–12
13–13
13–13
Appendix A: Quick Start Example
Step 1: Unpack the DL305 Equipment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–2
Step 2: Configure the 5-slot Base as the Local CPU Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–3
Step 3: Install the CPU and I/O Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–3
Step 4: Wire the I/O Modules to the Field Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–4
Step 5: Remove the Terminal Strip Access Cover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–4
Step 6: Connect the Power Wiring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–5
Step 8: Connect the Handheld Programmer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–6
Step 9: Connect the Power Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–7
Step 10: Enter the Example Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A–7
Appendix B: DL305 Error Codes
Appendix C: Instruction Execution Times
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Data Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
How to Read the Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C–2
C–2
C–2
C–3
DL330 Instruction Execution Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Input Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Type Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer, Counters, and Shift Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C–4
C–4
C–4
C–5
C–5
DL330P Instruction Execution Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Input Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Type Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer, Counters, and Shift Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stage Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Operation Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C–6
C–6
C–6
C–6
C–7
C–7
DL340 Instruction Execution Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Input Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparative Contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Type Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Timer, Counters, and Shift Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Operation Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C–8
C–8
C–8
C–8
C–9
C–9
xiv
Table of Contents
Appendix D: DL305 Product Weight Tables
Index . . . . . . . . . . . . . . . . . . . . . . . . . . Index–1
Getting Started
In This Chapter. . . .
Ċ Introduction
Ċ DL305 System Components
Ċ DirectāLOGIC Part Numbering System
Ċ A Few Steps to a Successful System
11
1–2
Getting Started
Getting Started
Introduction
The Purpose of
this Manual
Thank you for purchasing our DL305 family of automation products. This manual
shows you how to install the equipment, and it also helps you understand the system
operation characteristics.
Since we constantly try to improve our product line, we occasionally issue addenda
that document new features and changes to the products. If an addendum is
included with this manual, please read it to see which areas of the manual or product
have changed.
Who Should Read
this Manual
If you understand PLC systems our manuals will provide all the information you need
to get and keep your system up and running. We will use examples and explanations
to clarify our meaning and perhaps help you brush up on specific features used in the
DL305 system. This manual is not intended to be a generic PLC training manual, but
rather a user reference manual for the DL305 system.
Where to Begin
If you are in a hurry and already understand the DL305 system please read Chapter
2, Installation and Safety Guidelines, and proceed on to the chapter pertaining to
your needs. Be sure to keep this manual handy for reference when you run into
questions. If you are a new DL305 customer, we suggest you read this manual
completely so you can understand the wide variety of products, configurations, and
procedures used with the DL305 family of products. We believe you will be
pleasantly surprised with how much you can accomplish with PLCDirect products.
If you’re really in a hurry, check out Appendix A. This appendix has a quick start that
will show you how to quickly connect and program a very simple system.
Supplemental
Manuals
Depending on the products you have purchased, there may be other manuals that
are necessary for your application. If you have purchased analog I/O, specialty
modules, or DirectSOFT, or you will be using remote I/O or networking, you will want
to supplement this manual with the manuals written for these products.
1–3
Getting Started
Getting Started
How this Manual is Ch 1: Getting Started – provides an overview of all the components that can be
used to make up one or many DL305 systems. This chapter shows the basic
Organized
concepts of how the pieces fit together. It also explains the DL305 part numbering
system, which will help you quickly identify the various types of modules.
Ch 2: Installation and Safety Guidelines – shows you how to prepare for system
installation, and gives you guidelines for providing a safe environment for your
personnel and process. Be sure to read this chapter so potential safety problems
can be avoided. In this chapter you will find topics you must consider when installing
a system, the environmental specifications, component dimensions, safety
guidelines, installation guidelines, etc.
Ch 3: DL330/DL330P/DL340 CPU Specifications – provides details of each of the
DL305 CPUs. This chapter contains the operating specifications for the CPUs,
detailed information on the different types of program storage media available, and
some basic procedures needed to get the CPU ready for programming.
Ch 4: System Configuration, Bases and Expansion Bases – provides selection
and installation criteria for Local I/O and Local Expansion I/O. This chapter also
discusses the system power budget, which is an important part of the planning and
installation process.
Ch 5: I/O Module Selection Criteria – contains specific considerations which affect
I/O selection such as sinking, sourcing, and temperature derating characteristics.
Ch 6: Discrete Input Modules – explains each term you will find on our specification
sheets, provides specifications, wiring diagrams and derating curves (where
applicable) for the DL305 Discrete Input Modules.
Ch 7: Discrete Output Modules – explains each term you will find on our
specification sheets, provides specifications, wiring diagrams and derating curves
(where applicable) for the DL305 Discrete Output Modules.
Ch 8: System Operation – explains how the DL305 CPUs control the system
operation. This includes information on I/O updates, application program execution
and memory structure.
Ch 9 : RLL Programming Concepts – explains the basic concepts used in RLL
programming.
Ch 10: RLL PLUS Programming Concepts – explains the basic concepts used in
the RLL PLUS programming. This programming method greatly reduces program
design time and simplifies machine startup and troubleshooting.
Ch 11: Instruction Set – explains how each individual instruction operates.
Ch 12: RLL PLUS Instruction Set – explains the instructions used with the DL330P
CPU. It also shows some instructions that operate differently with this CPU.
Ch 13: Maintenance and Troubleshooting – is a guide designed to aid you in
diagnosing, repairing and avoiding system problems.
Appendices A – D – there are several appendices referred to throughout the
manual. These include things such as a quick start, error code listing, instruction
execution times, etc.
We realize even though we strive to be the best, we may have arranged our
Technical
information in such a way you cannot find what you are looking for. If you need
Assistance
assistance, please, call us at 1–800–633–0405. Our technical support group is glad
to work with you in answering your questions. They are available weekdays from
8:00 a.m. to 6:00 p.m. eastern standard time. If you find a problem with any of our
products, services or manuals, please fill out and return the Suggestions card
included with this manual.
1–4
Getting Started
Getting Started
DL305 System Components
The DL305 product family is one of the most versatile and widely accepted PLCs
used for small control applications. These CPUs are small yet powerful. Their
modular design and expansion capability blend well with todays fast moving
industry. The following is a summary of the major DL305 system components.
CPUs
There are three CPUs in this product line, the DL330, the DL330P and the new
DL340. Details of these CPU are covered in Chapter 3, DL330/DL330P/DL340 CPU
Specifications.
Bases
Three base sizes are available in the system: 5 slot, 8 slot and 10 slot.
I/O Configuration
The DL330 and DL330P CPUs support up to 128 local I/O and 176 local expansion
I/O. The DL340 supports 136 local I/O and 184 local expansion I/O. Each of these
I/O configurations is explained in Chapter 4, Bases and Expansion Bases and I/O
Configuration.
I/O Modules
The DL305 has one of the most diverse I/O module selections in the industry. A
complete range of discrete modules which support 24 VDC, 125 VDC, 110/220 VAC
and up to 10A relay outputs are offered. The analog modules provide 12 bit
resolution and several selections of input and output signal ranges (including
bipolar). The specialty modules include 10KHz high speed input, thermocouple,
general purpose communication, and more.
Programming
Methods
There are two programming methods available, RLL (Relay Ladder Logic) and
RLL PLUS. RLL PLUS combines the added feature of flow chart programming (stages)
to the standard RLL language. RLL PLUS is only available for the DL330P CPU. All of
the DL305 CPUs support RLL programming. DirectSOFT supports both RLL and
RLL PLUS programming. Two handheld programmers are available, the D3–HPP
which supports RLL PLUS and the D3–HP which only supports RLL programming.
The key pads for each handheld programmer differ, so it is recommended the
handheld programmer that directly supports your CPU be used for programming.
DirectSOFT
Programming for
Windows
The DL305 can be programmed with one of the most advanced programming
packages in the industry — DirectSOFT. DirectSOFT runs under Windows and
supports many of the windows based features you are already familiar with such as
cut and paste between applications, point and click editing, viewing and editing
multiple application programs at the same time, browsers, etc. DirectSOFT
universally supports the DirectLOGIC CPU families. This means you can use the
same DirectSOFT package to program DL205, DL305, DL405 or any new CPUs we
add to our product line. There is a separate manual that discusses DirectSOFT
programming software.
Handheld
Programmer
All DL305 CPUs have a built-in programming port for use with the handheld
programmers (D3–HPP and D3–HP). Handheld programmers can be used to
create, modify and store programs to cassette tape, as well as debug your
application program. There is also a separate manual that discusses the DL305
Handheld Programmers.
DL305 System
Diagrams
The next page shows a generic example highlighting the major components and
configurations of the DL305 system. The following two pages highlight the specific
components which can be used to build your system.
1–5
Getting Started
Computer Controlled I/O
Packaging
Conveyors
Elevators
Industry Standard Computer I/O Protocol
OPTOMUX (Serial RS422/485)
PAMUX (Parallel)
Handheld Programmer
DL305
1.5ft
(.05m)
Getting Started
Machine Control
DL305
1.5ft
(.05m)
RS232C
(max.50ft/16.2m)
RS422/485
DL305
DL305
Programming or
Computer Interface
Computer Interface
with OPTOMUX Driver
Networking
DCM
Programming or
Computer
Interface
Operator Interface
DL405
Handheld Programmer
RS422
RS232C
(max.50ft/16.2m)
DL305
RS232C/422
Convertor
(max. 4.6ft / 1.5m)
DL305
RS232C/422
Convertor
RS232C
(max.50ft/16.2m)
DL305
RS232C/422
Convertor
1–6
Getting Started
Getting Started
DirectLOGIC
DC INPUT
8pt
16pt
16pt
16pt
DL305 Family
AC INPUT
24 VDC
24 VDC
5-24 VDC
12-24 VDC
AC/DC INPUT
8pt 110 VAC
16pt 110 VAC
8pt 24 VAC/DC
16pt 24 VAC/DC
PROGRAMMING
Handheld Programmer for RLL CPUs
Handheld Programmer for RLL PLUS CPUs
DirectSOFT Programming for Windows
CPUs
ASCII BASIC Modules
RS232C / RS422 / RS485
Built-in Radio Modem
Built-in Telephone Modem
Program Memory 64K/128K
DL330
3.7K RAM RLL Programming
DL330P
3.7K RAM RLL PLUS Programming
DL340
3.7K RAM RLL Programming
and 2 Built-in RS232C Ports
DL330/DL330P/DL340 EPROM
Memory Chips
BASES
5 Slot Base w/Expansion Capability,
110/220 VAC P/S
5 Slot Base w/Expansion Capability,
24 VDC Supply
8 Slot Base w/Expansion Capability,
110/220 VAC P/S
10 Slot Base w/Expansion Capability,
110/220 VAC P/S
1–7
Getting Started
Getting Started
DC OUTPUT
RELAY OUTPUT
AC OUTPUT
8pt 5–24 VDC
16pt 5–24 VDC
4 pt
8pt
16pt
16pt
8pt
8pt
8pt
16pt
110–220 VAC
110–220 VAC
12–220VAC
15–220VAC
4A/pt
5A/pt
10A/pt
2A/pt
ANALOG
4ch
8ch
16ch
2ch
4ch
8ch
INPUT
INPUT
INPUT
OUTPUT
OUTPUT
TEMPERATURE
TRANSDUCER INPUT
8ch THERMOCOUPLE
INPUT
SPECIALTY CPUs
Bridge CPU to connect
to host w/OPTOMUX Driver
Bridge CPU w/FACTS
Extended Basic Programming
Bridge CPU to connect to
High-speed PAMUX
compatible host
SPECIALTY
MODULES / UNITS
8pt INPUT Simulator
1pt High Speed Counter
PROM Writer Unit
Filler Module
NETWORKING
RS232C Data Communication Unit
RS422 Data Communication Unit
MODBUS Slave Module
MODBUS Slave Module
w/Radio Modem
Universal connector:
RS232C / RS422/485 Convertor
1–8
Getting Started
Getting Started
DirectLOGIC Part Numbering System
As you examine this manual, you’ll notice there are many different products available. Sometimes it is
difficult to remember the specifications for any given product. However, If you take a few minutes to
understand the numbering system, it may save you some time and confusion. The charts below show how
the part numbering systems work for each product category. Part numbers for accessory items such as
cables, batteries, memory cartridges etc. are typically an abbreviation of the description for the item.
CPUs
Specialty CPUs
Product family
D4-
440DC
-1
D3-
05B
D4-
16
N
D
2
D3-
16
N
D
2
D2/F2
D3/F3
D4/F4
Class of CPU / Abbreviation
230...,330...,430...
Denotes a differentiation between
Similar modules
–1, –2, –3, –4
Bases
Product family
DC
D2/F2
D3/F3
D4/F4
Number of slots
Type of Base
##B
DC or empty
Discrete I/O
DL205 Product family
D2/F2
DL305 Product family
D3/F3
DL405 Product family
D4/F4
Number of points
04/08/12/16/32
Input
N
Output
T
Combination
AC
C
A
DC
D
Either
E
Relay
Current Sinking
R
1
Current Sourcing
2
Current Sinking/Sourcing
High Current
3
H
Isolation
S
Fast I/O
Denotes a differentiation between
Similar modules
F
–1, –2, –3, –4
F
-1
1–9
Getting Started
DirectLOGIC Part Numbering System (cont.)
F3-
DL205 Product family
D2/F2
DL305 Product family
D3/F3
DL405 Product family
D4/F4
Number of channels
02/04/08/16
Input (Analog to Digital)
AD
Output (Digital to Analog)
DA
Combination
Isolated
AND
S
Denotes a differentiation between
Similar modules
–1, –2, –3, –4
04
AD
S
Getting Started
Analog I/O
-1
Altermate example of Analog I/O
using abbreviations
F3-
08
THM
Communication and Networking,
D4-
DCM
DCM (Data Communication Module)
Special I/O and Devices
D3-
HSC
HSC (High Speed Counter)
D3-
HPP
HPP (RLL PLUS Handheld Programmer)
F4-
CP
Programming
DL205 Product family
D2/F2
DL305 Product family
D3/F3
DL405 Product family
D4/F4
Name Abbreviation
see example
CoProcessors and ASCII BASIC Modules
DL205 Product family
D2/F2
DL305 Product family
D3/F3
DL405 Product family
D4/F4
CoProcessor
CP
ASCII BASIC
AB
64K memory
64
128K memory
128
512K memory
Radio modem
512
R
Telephone modem
T
-n
note: -n indicates thermocouple type
such as: J, K, T, R, S or E
128
- R
1–10
Getting Started
Getting Started
A Few Steps to a Successful System
Step1:
Review the
Installation
Guidelines
You should always make safety your first
priority in any system application.
Chapter 2 provides several guidelines
that will help provide a safer, more
reliable system. This chapter also
includes wiring guidelines for the various
system components.
Step 2:
Understand the
CPU Setup
Procedures
The CPU is the heart of your automation
system. Make sure you take the time to
understand the various features and
setup requirements.
Step 3:
Understand the
I/O System
Configurations
It is important to understand how the I/O
system can be configured. You have two
different types of systems.
S Local System
S Local Expansion System
It is also important to understand how the
system Power Budget is calculated. This
can affect your I/O placement and/or
configuration options.
Step 4:
Review the I/O
Selection Criteria
There are many considerations involved
when you select your I/O modules. Take
time to understand how the various types
of electrical connections can affect your
choice of I/O modules.
Step 5:
Determine the I/O
Module
Specifications and
Wiring
Characteristics
There are many different I/O modules
available with the DL305 system.
Chapters 6 and 7 provide the
specifications and wiring diagrams for
the discrete I/O modules.
NOTE: Specialty modules have their
own manuals and are not included in this
manual
Emergency
Stop
030 020 010 000
to
to
to
to
037 027 017 007
130 120
to
to
137 127
110 100
to
to
117 107
C
P
U
060 050 040
to
to
to
067 057 047
160 150 140
to
to
to
167 157 147
DL305
DL305
1–11
Getting Started
Step 7:
Review the
Programming
Concepts
Step 8:
Choose the
Instructions
Before you begin to enter a program, it is
very helpful to understand how the
DL305 system processes information.
This involves not only program execution
steps, but also involves the various
modes of operation and memory layout
characteristics.
All control systems differ in some areas.
The DL305 CPUs offer two different
types
of
programming.
RLL
programming available for all the DL305
CPUs, uses conventional ladder
diagram type solutions for many
application problems.
RLL PLUS is available for the DL330P
CPU. This method of programming
greatly reduces the program design time
and makes program troubleshooting and
machine startup considerably easier.
Once you have installed the system and
understand the theory of operation, you
can choose from a diverse instruction set
to implement your application.
Power up
Getting Started
Step 6:
Understand the
System Operation
Initial Mode Setting
Initialize memory
RLL Programming
output
010
input
000
RLL PLUS (flowchart) Programming
ISG
S0
SG
S1
J
TMR
T1
K 30
CNT
CT3
K10
Step 9:
Understand the
Maintenance and
Troubleshooting
Procedures
Many things can happen on the factory
floor. Switches fail, batteries need to be
replaced, etc. In most cases, the majority
of the troubleshooting and maintenance
time is spent trying to locate the problem.
Chapter 13 provides some information
that will help you quickly identify
problems, so you can look like a hero if
you take time to understand them.
Installation and Safety
Guidelines
In This Chapter. . . .
Ċ Safety Guidelines
Ċ Panel Design Specifications
Ċ Component Dimensions
Ċ Base Mounting Dimensions
Ċ Installing Components in the Base
Ċ I/O Wiring
12
2–2
Installation and Safety Guidelines
WARNING: Providing a safe operating environment for personnel and equipment is
your responsibility and should be your primary goal during system planning and
installation. Automation systems can fail and may result in situations that can cause
serious injury to personnel or damage to equipment. Do not rely on the automation
system alone to provide a safe operating environment. You should use external
electromechanical devices, such as relays or limit switches, that are independent of the
PLC system to provide protection for any part of the system that may cause personal
injury or damage.
Every automation application is different, so there may be special requirements for
your particular application. Make sure you follow all National, State, and local
government requirements for the proper installation and use of your equipment.
Plan for Safety
The best way to provide a safe operating environment is to make personnel and
equipment safety part of the planning process. You should examine every aspect of
the system to determine which areas are critical to operator or machine safety.
If you are not familiar with PLC system installation practices, or your company does
not have established installation guidelines, you should obtain additional
information from the following sources.
• NEMA — The National Electrical Manufacturers Association, located in
Washington, D.C., publishes many different documents that discuss
standards for industrial control systems. You can order these
publications directly from NEMA. Some of these include:
ICS 1, General Standards for Industrial Control and Systems
ICS 3, Industrial Systems
ICS 6, Enclosures for Industrial Control Systems
• NEC — The National Electrical Code provides regulations concerning
the installation and use of various types of electrical equipment. Copies
of the NEC Handbook can often be obtained from your local electrical
equipment distributor or your local library.
S Local and State Agencies — many local governments and state
governments have additional requirements above and beyond those
described in the NEC Handbook. Check with your local Electrical
Inspector or Fire Marshall office for information.
Safety Techniques
The publications mentioned provide many ideas and requirements for system
safety. At a minimum, you should follow these regulations. Also, you should use the
following techniques, which may help reduce the risk of safety concerns.
• Orderly system shutdown sequence in the PLC control program.
• System power disconnects (guard limits, emergency stop switches, etc.)
Installation and
Safety Guidelines
Installation and
Safety Guidelines
Installation and Safety
Guidelines
Safety Guidelines
2–3
Installation and Safety Guidelines
Orderly System
Shutdown
The first level of protection should be
included in the PLC control program,
which can be used to identify machine
problems. You should analyze your
application and identify any shutdown
sequences that must be performed.
These types of problems are usually
things such as jammed parts, etc. that do
not pose a risk of personal injury or
equipment damage.
Turn off
Saw
Jam
Detect
System Power
Disconnect
RST
Retract
Arm
Use E-Stop and Master Relay
E STOP
Guard Limit Switch
Power On
Emergency
Stop
Guard
Limit
Master
Relay
Master Relay Contacts
Master
Relay
Contacts
To disconnect PLC Power
Master
Relay
Contacts
Output
Module
Saw
Arbor
To disconnect output
module power
After an Emergency shutdown or any other type of power interruption, there may be
requirements that must be met before the PLC control program can be restarted. For
example, there may be specific register values that must be established (or
maintained from the state prior to the shutdown) before operations can resume. In
this case, you may want to use retentive memory locations, or include constants in
the control program to ensure a known starting point.
Installation and
Safety Guidelines
You should also use electromechanical devices, such as master control relays
and/or limit switches, to prevent accidental equipment startup at an unexpected
time. These devices should be installed in such a manner to prevent any machine
operations from occurring.
For example, if the machine has a jammed part the PLC control program can turn off
the saw blade and retract the arbor. However, since the operator must open the
guard to remove the part, you should also include a bypass switch that disconnects
all system power any time the guard is opened.
You should also provide a quick method of manually disconnecting all system power.
This should be accomplished with a mechanical device that is clearly labeled as an
Emergency switch.
Installation and Safety
Guidelines
RST
WARNING: The control program should
not be the only form of protection for any
problems that may result in a risk of
personal injury or equipment damage.
2–4
Installation and Safety Guidelines
Installation and
Safety Guidelines
Installation and
Safety Guidelines
Installation and Safety
Guidelines
Panel Design Specifications
It is important to design your panel properly to help ensure the DL305 products
operate within their environmental and electrical limits. Proper installation of your
DL305 system requires an in-depth understanding of electrical control systems. The
system installation should comply with the appropriate electrical codes and
standards for your area. It is important that your system also conforms to the
operating standards for the application to insure proper performance. The DL305
equipment should only be installed by personnel familiar with electrical/industrial
applications. The DL305 installation should provide proper ventilation, spacing, and
grounding to ensure the equipment will operate as specified. The diagram on the
next page references the items in the following list.
1. The bases should be mounted horizontally to provide proper ventilation.
2. There should be a minimum of 7.2” (183mm) and a maximum of 13.75”
(350mm) between bases.
3. A minimum clearance of 2” (50mm) between the base and the top, bottom
and right side of the cabinet should be provided.
4. A minimum clearance of 3” (75mm) between the base and the left side of
the cabinet should be provided.
5. There must be a minimum of 2” clearance between the panel door and the
nearest DL305 component.
6. The ground terminal on the DL305 base must be connected to a single
point ground. Copper stranded wire should be used for this connection to
achieve a low impedance. Copper eye lugs should be crimped and
soldered to the ends of the stranded wire to assure good surface contact.
You should also remove anodized finishes and use copper lugs and star
washers at termination points. A rule of thumb is to achieve a 0.1 ohm of DC
resistance between the DL305 base and the single point of ground.
7. There must be a single point of ground (i.e. copper bus bar) for all devices in
the panel requiring an earth ground return. The single point of ground must
be connected to the panel ground termination.
The panel ground termination must be connected to earth ground. For this
connection you should use #12 AWG stranded copper wire as a minimum.
Minimum wire sizes, color coding, and general safety practices should
comply with appropriate electrical codes and standards for your area.
A good common ground reference (Earth ground) is essential for proper
operation of the DL305. The DL305 system and components are designed
to operate with a common ground reference. There are several methods of
providing an adequate common ground reference. These methods
include:
a) Installing a ground rod as close to the panel as possible.
b) Connection to the incoming power system ground.
8. Installations where the ambient temperature may approach the lower or
upper limits of the specifications should be evaluated properly. To do this
place a temperature probe in the panel, close the door and operate the
system until the ambient temperature has stabilized. If the ambient
temperature is not within the operating specification for the DL305 system,
measures such as installing a cooling/heating source must be taken to get
the ambient temperature within the DL305 operating specifications.
2–5
Installation and Safety Guidelines
9. Device mounting bolts and ground braid termination bolts should be #10
copper bolts or equivalent. Tapped holes instead of nut–bolt arrangements
should be used whenever possible. To assure good contact on termination
areas impediments such as paint, coating or corrosion should be removed
in the area of contact.
10. The DL305 systems are designed to be powered by 110 VAC , 220 VAC, or
24 VDC normally available throughout an industrial environment. Isolation
transformers and noise suppression devices are not normally necessary,
but may be helpful in eliminating/reducing suspected power problems.
2"
50mm
min.
DL305 CPU Base
Ã
Â
Ç
Â
2"
50mm
min.
À
Temperature
Probe
Power
Source
Installation and Safety
Guidelines
3"
75mm
min.
É
7.2" - 13.75"
183 - 350mm
Installation and
Safety Guidelines
DL305 Local Expasion Base
Á
À
2"
50mm
min.
Â
Å
BUS Bar
Æ
Ä
Earth Ground
Note: there is a minimum of 2” (50mm)
clearance between the panel door
and the nearest DL305 component.
Panel Ground
Terminal
Panel
Component
Chassis
´
Star Washers
Ground Braid
Copper Lugs
´
Star Washers
Panel or
Single Point
Ground
2–6
Installation and Safety Guidelines
Environmental
Specifications
Environmental Specifications
•
Power Supply Specifications
•
Agency Approvals
S
Enclosure Selection and Component Dimensions
Specification
Rating
Storage temperature –4° F to 158° F (–20° C to 70° C)
Power
Installation and
Safety Guidelines
•
The following table lists the environmental specifications that generally apply to the
DL305 system (CPU, Bases I/O modules). I/O module operation may fluctuate
depending on the ambient temperature and your application. Please refer to the
appropriate I/O module chapters for the temperature derating curves applying to
specific modules.
Installation and
Safety Guidelines
Installation and Safety
Guidelines
In addition to the panel layout guidelines, there are other specifications that can
affect the definition and installation of a PLC system. You should always consider the
following areas whenever you install any PLC system.
Ambient operating
temperature
32° F to 140° F (0° C to 60° C)
Ambient humidity
5% to 95% relative humidity (non–condensing)
Vibration resistance
MIL STD 810C, Method 514.2
Shock resistance
MIL STD 810C, Method 516.2
Noise immunity
NEMA (ICS3–304) 1 uS width rectangular wave
Atmosphere
No corrosive gases
The power source must be capable of suppling voltage and current complying with
the base power supply specifications.
Specifications
D3–05B
D3–05BDC
D3–08B
D3–10B
Input Voltage Range
100–240 VAC
+10% / –15%
47–63Hz
20.5–30 VDC <10%
ripple
100–240 VAC
+10% / –15%
47–63Hz
100–240 VAC
+10% / –15%
47–63Hz
Base Power
70 VA max (46W)
48 Watts
70 VA max (57W)
70 VA max (57W)
Inrush Current max.
30A
30A
30A
30A
Dielectric Strength
1500VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
1500VAC for 1 minute
between 24VDC input
terminals and Run
output
1500VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
2000VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
Insulation Resistance
>10MW at 500VDC
>10MW at 500VDC
>10MW at 500VDC
>10MW at 500VDC
Power Supply Output
(Voltage Ranges and
Ripple)
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(9VDC) 8.5–13.5V
less than 0.2 V p–p
(9VDC) 8.5–13.5V
less than 0.2 V p–p
(9VDC) 8.0–12.0V
less than 0.2 V p–p
(9VDC) 8.0–12.0V
less than 0.2 V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
Consumption
2–7
Installation and Safety Guidelines
Some applications require agency approvals. Typical agency approvals which your
application may require are:
• UL (Underwriters’ Laboratories, Inc.)
• CSA (Canadian Standards Association)
• FM (Factory Mutual Research Corporation)
S CUL (Canadian Underwriters’ Laboratories, Inc.)
Enclosures
Your selection of a proper enclosure is important to ensure safe and proper
operation of your DL305 system. Applications of DL305 systems vary and may
require additional features. The minimum considerations for enclosures include:
• Conformance to electrical standards
• Protection from the elements in an industrial environment
• Common ground reference
• Maintenance of specified ambient temperature
• Access to equipment
• Security or restricted access
S Sufficient space for proper installation and maintenance of equipment
Before installing your PLC system you will need to know the dimensions for the
components in your system. The diagrams on the following pages provide the
component dimensions and should be used to define your enclosure specifications.
Remember to leave room for potential expansion. Appendix D provides the weights
for each component.
Installation and
Safety Guidelines
Component Dimensions
Installation and Safety
Guidelines
Agency Approvals
2–8
Installation and Safety Guidelines
11.41”
290mm
5 slot base
.94”
24mm
10.63”
270mm
Handheld Programer
on side view of
Base
3.54”
90mm
4.84”
123mm
4.41”
112mm
15.55”
395mm
8 slot base
5.35”
136mm
Installation and Safety
Guidelines
14.76”
375mm
3.54”
90mm
4.84”
123mm
18.30”
465mm
10 slot base
17.51”
445mm
3.54”
90mm
Installation and
Safety Guidelines
Installation and
Safety Guidelines
4.84”
123mm
Handheld programmer cable
I/O Expander cable
4.92’
1.5m
1.6’
0.5m
1.15”
29.9 mm
1.37”
34.8mm
Handheld programmer
CPU
4.33”
110mm
3.86”
96mm
4.67”
118.6mm
4.65”
118mm
.94”
24mm
2–9
Installation and Safety Guidelines
Component
Dimensions Part 2
1.37”
34.8mm
4.65”/118nn – 8 I/O Pts
4.86”/123mm – 16 I/O Pts
I/O modules
3.86”
98mm
4.67”
118.6mm
Installation and Safety
Guidelines
.55”
14mm
I/O module w/24 pin connector
1.37”
34.8mm
24 pin connector
3.86”
98mm
2.00”
51mm
4.84”
123mm
1.85”
47mm
0.51”
13mm
0.4”
10.3mm
Data communication units
(Prom Writer Unit has the same dimensions)
4.33”
110mm
4.65”
118mm
1.5”
38mm
Installation and
Safety Guidelines
2.06”
52.4mm
2–10
Installation and Safety Guidelines
Base Mounting Dimensions
Below are the mounting dimensions which should be used when mounting DL305
bases. Make sure you have followed the installation guidelines for proper spacing.
5 slot base
11.41”
290mm
.94”
24mm
10.63”
270mm
Handheld Programer
on side view of
Base
3.54”
90mm
Installation and
Safety Guidelines
Installation and
Safety Guidelines
Installation and Safety
Guidelines
4.84”
123mm
8 slot base
4.41”
112mm
5.35”
136mm
15.55”
395mm
14.76”
375mm
3.54”
90mm
4.84”
123mm
18.30”
465mm
10 slot base
17.51”
445mm
3.54”
90mm
4.84”
123mm
Installing Components in the Base
When inserting components into the base, align the PC board(s) of the module with
the grooves on the top and bottom of the base. Push the module straight into the
base until it is firmly seated in the backplane connector.
Align module to
slots in base and slide in
2–11
Installation and Safety Guidelines
Base Wiring
The following diagram shows the terminal connections located on the power supply
of the DL305 bases.
WARNING: Damage will occur to the base power supply if 220 VAC is connected to
the 115 VAC terminal connections. Once the power wiring is connected, install the
protective cover. When the cover is removed there is a risk of electrical shock if you
accidentally touch the connection terminals.
24 VDC
Terminal Strip
110/220 VAC
Terminal Strip
Installation and Safety
Guidelines
Line
Neutral
This is an example of how to connect power when using local CPU and Expansion
bases.
110VAC
Line
220VAC
24VDC
+ –
Neutral
110VAC
220VAC
24VDC +
–
Local CPU
Local CPU
Local CPU
110VAC
220VAC
24VDC +
–
Expansion
Base 1
Expansion
Base 1
Expansion
Base 1
110VAC
220VAC
24VDC +
–
Expansion
Base 2
Expansion
Base 2
Expansion
Base 2
Installation and
Safety Guidelines
Expansion Base
Wiring
2–12
Installation and Safety Guidelines
I/O Wiring
This information provides a general idea on how to wire the different types of
modules in the DL305 system. For specific information on wiring a particular module
refer to the specification sheet in the appropriate I/O chapter or manual.
Installation and
Safety Guidelines
Installation and
Safety Guidelines
Installation and Safety
Guidelines
I/O Wiring
Guidelines
You should consider these guidelines when wiring your system.
1. There is a limit to the size of wire the modules can accept. The table below
lists the maximum AWG for each module type. Smaller AWG is acceptable
to use for each of the modules.
Module type
Maximum AWG
8 point
12
16 point
16
2. Always use a continuous length of wire, do not combine wires to attain a
needed length.
3. Use the shortest possible cable length.
4. Use wire trays for routing where possible
5. Avoid running wires near high energy wiring.
6. Avoid running input wiring in close proximity to output wiring where
possible.
7. To minimize voltage drops when wires must run a long distance , consider
using multiple wires for the return line.
8. Avoid running DC wiring in close proximity to AC wiring where possible.
9. Avoid creating sharp bends in the wires.
2–13
Installation and Safety Guidelines
Wiring the Different There are three main types of module faces for the DL305 I/O. These module faces
are: lift covers over terminal blocks, flip covers over terminal blocks and D–shell
Module Types
compatible sockets. If the module you are using has a cover you can remove the
cover either by lifting from the bottom or by flipping the door open. Some of the
modules have removable terminal blocks. These modules can be recognized by the
squeeze tabs on the top and bottom of the terminal block. To remove the terminal
block, press the squeeze tabs and pull the terminal block away from the module.
WARNING: For some modules, field device power may still be present on the
terminal block even though the PLC system is turned off. To minimize the risk of
electrical shock, check all field device power before you remove the connector.
D–shell
Connector
Removable Cover
Removable
Terminal Block
Installation and
Safety Guidelines
Squeeze Tab
Installation and Safety
Guidelines
Squeeze Tab
DL330/DL330P/DL340
CPU Specifications
In This Chapter. . . .
Ċ Overview
Ċ CPU Hardware Features
Ċ CPU Specifications
Ċ Selecting CPU Memory Options
Ċ DL330/DL330P CPU Setup
Ċ DL340 CPU Setup
Ċ DL340 Port Setup
Ċ Battery Backup
Ċ Installing the CPU
Ċ CPU Setup and System Functions
13
3–2
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Overview
The CPU is the heart of the control system. Almost all system operations are
controlled by the CPU, so it is important that it is set-up and installed correctly. This
chapter provides the information needed to understand:
S the differences between the different models of CPUs
S the different memory options
S the steps required to setup and install the CPU.
The DL330 modular CPU is capable of controlling 176 I/O points and has 3.7K words
of program storage. This CPU supports the RLL programing language and can save
programs internally to RAM or UVPROM. There is a built-in programming port that
directly supports the handheld programmer.
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330 CPU
Features
DL330P CPU
Features
The DL330P modular CPU is capable of controlling 176 I/O points and has 3.7K
words program storage. This CPU supports the RLL PLUS programing language and
can save programs internally to RAM or UVPROM. RLL PLUS provides a structured
programming environment for Relay Ladder Logic through the addition of stage
logic. There is a built-in port that directly supports the handheld programmer.
DL340 CPU
Features
The DL340 modular CPU is capable of controlling 184 I/O points and has 3.7K words
program storage. This CPU supports the RLL programming language and can save
programs internally to RAM, UVPROM or EEPROM. There is a handheld
programming port and two built-in RS232C ports for PC programming, operator
interfaces, or networking. If you are using the DL340 in a DirectNET network, you
can use either port as a slave port and the bottom port as a master. The bottom port
has the additional capability of being configured as a slave on a Modbus network.
CPU Hardware Features
CPU Status Indicators
RUN
ON
OFF
CPU is in RUN mode
CPU is in Program mode
BATT
ON
OFF
Memory backup voltage low
Memory backup voltage good
ON
OFF
CPU failure (Error detected when the
watchdog timer is not processed within
100ms. The run output from the power
supply will be turned off.)
CPU good
PWR
ON
OFF
CPU power good
CPU power failure
RX
ON
CPU communication port
receiving data
CPU communication port
not receiving data
CPU Slot
CPU
OFF
TX
ON
OFF
CPU communication port
transmitting data
CPU communication port
not transmitting data
DL330
DL330P
RUN
RUN
BATT
BATT
CPU
CPU
LED
Indicators
Peripheral
Port
(HP, HPP, DCU,
UVPROM
Writer)
Network
Address
Mode
Switch
POWER
POWER
RS232C
Communication
Ports
–DirectSOFT
–DirectNET
–Operator
Interfaces
–Modbus
DL340
PWR
RUN
PORT1
TX/RX
BATT
PORT2
TX/RX
CPU
3–3
DL330/DL330P/DL340 CPU Specifications
Feature
DL330
DL330P
DL340
Program memory (words)
3.7K
3.7K
3.7K
Scan time/K ladder (boolean)
8 ms
20 ms
.87 ms
RLL (Relay Ladder Logic) Programming
Yes
Yes
Yes
RLL PLUS
No
Yes
No
Handheld programmer with cassette tape interface
Yes
Yes
Yes
DirectSOFT programming for Windowst
Yes
Yes
Yes
Built-in communication ports (RS232C / DirectNET)
No
No
Yes
CMOS RAM
Yes
Yes
Yes
UVPROM
Optional
Optional
Optional
EEPROM
No
No
Optional
ASCII Basic modules
Yes
Yes
Yes
Networking modules
Yes
Yes
Yes
RS232C Data Communications Unit
Yes
Yes
Yes
RS422 Data Communications Unit
Yes
Yes
Yes
110/220 VAC
Yes
Yes
Yes
24 VDC (5 slot base only)
Yes
Yes
Yes
Local I/O
128
128
136
Local expansion I/O
176
176
184
Remote I/O
NA
NA
NA
Number of instructions available
61
65
61
Control relays
140
77
196
Shift register bits
128
uses CRs
128
Special relays (system defined)
12
11
20
Stages (RLL PLUS only)
None
128
None
Timer/Counters
64
64
64
Data registers
128
128
192
Analog input channels max.
112
112
128
Analog output channels max.
28
28
32
Internal diagnostics
Yes
Yes
Yes
Password security
Yes
Yes
Yes
Battery backup
Yes
Yes
Yes
Programming
DL330/DL330P/DL340
Specifications
CPU Specifications
Compatible with:
Total I/O points using;
DL330/DL330P/DL340
CPU Specifications
Base Power Supply Available
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
3–4
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Selecting CPU Memory Options
Internal Retentive
Memory
In addition to different choices for program storage, you can also select some
memory areas to be retentive. Retentive memory retains its state after a power cycle
or a program to run transition occurs, as long as the memory backup battery is
functional. Non–retentive memory resets to a logical “0” after a power cycle or a
program to run transition occurs. You have to use dipswitch to select the retentive
memory options (the switches are discussed in the next section.)
The following table shows the how the types of memory are defined. Some types of
memory are automatically defined as retentive and other memory types can be
defined as retentive as necessary for your application. The types of memory
available depend on the type of CPU selected for your application.
Retentive Memory
Pre–defined
Application program
Yes
User defined
Stages (DL330P only)
Yes
Internal relays
Yes
Current count values
Yes (full range)
Shift register bits
Yes (full range)
Data registers
Yes (full range)
Password
Yes
External Program
Storage
All DL305 CPUs allow for program storage to be captured on external media such as
cassette tape, floppy disk and hard disk. Refer to the DL305 Handheld Programmer
manual for details on storing the CPU program to cassette tape. The DirectSOFT
manual provides details on storing the CPU program to floppy or hard disk.
Volatile and
Non-volatile
Memory
There are two types of memory storage available, volatile and non-volatile. Volatile
memory will retain your data as long as proper voltage is maintained to the storage
media. Non-volatile memory does not require power to retain data. The DL305
CPUs maintain the proper voltage either through the base power supply or the use of
the memory backup battery.
3–5
DL330/DL330P/DL340 CPU Specifications
The type of program storage memory available to you depends on the CPU you are
using. All DL305 CPUs support application program storage to either CMOS RAM or
the optional UVPROM. The DL340 has the added option of supporting program
storage in EEPROM. The application program can be up to 3.7K words.
S CMOS RAM memory (Random Access Memory) is standard on all the
DL305 CPUs. It is a volatile memory which can be modified or changed
easily with a handheld programmer or PC programming software.
S UVPROM (Ultraviolet Programmable Read Only Memory) is optional for
all the DL305 CPUs. This type of memory is non–volatile and can only
be erased with an ultraviolet light source. The PROM Writer Unit
(D3–PWU) is used to copy your application program from the CPU’s
RAM to a UVPROM. If the UVPROM has a program to be changed, it
must be removed from the CPU and erased before another program can
be copied on the UVPROM.
S EEPROM (Electrically Erasable Programmable Read Only Memory) is
an option only on the DL340 CPU. This type of memory is non–volatile,
but can be electrically erased. The EEPROM can be electrically
reprogrammed without being removed from the CPU, and without the
use of a special external programming device.
DL330/DL330P/DL340
CPU Specifications
WARNING: Be sure to use proper grounding techniques when touching UVPROMS
and EEPROMS. A static discharge from you may cause damage to the PROM. If you
do not have a ground strap, then ground yourself by touching the controller chassis
before you make contact with the PROM. Also ensure that the surface where you
place the PROM is properly grounded.
DL330/DL330P/DL340
Specifications
Program Storage
Memory Types
(Internal)
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
3–6
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Storing Programs
on UVPROMs
The PROM Writer Unit is only compatible with DL305 CPUs and UVPROMs. It can
perform the following three functions:
S
Copy a program from the CPU’s RAM to a UVPROM
S
Copy a program from the UVPROM to the CPU’s RAM
S
Compare the program in the UVPROM with the CPU’s RAM
Operation
Selection Buttons
UVPROM
Socket
UVPROM
BLANK
WRITE
VERIFY
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
ERR
Socket Lever used to lock
down and release UVPROM
during write procedure
The LED for the selected function will turn off when completed (except for the error
reset function). If any error is encountered, one of the LEDs in the following table will
be on and the execution of the selected function will be stopped.
Function
Key
Operation
LED
Display
Remarks
Errors Flagged
Copies the content of
the CPU RAM into the
UVPROM
WRITE
~WRITE
Automatic comparison Constant on indicates
is made after
a write failure.
checking and writing.
Copies the content of
the UVPROM into the
CPU RAM
WRITE
VERIFY
~WRITE
~VERIFY
Depress two keys at
the same time.
Comparison is made
after transferring.
To verify the content
of the UVPROM with
the CPU RAM
VERIFY
~VERIFY
Constant on indicates
an unmatched
address.
To check if the
UVPROM is blank.
BLANK
~BLANK
Constant on indicates
a non-blank address
is found.
Error reset
ERR
~ERR
Return to the initial
condition by pressing
this key if an error
condition is noted.
On indicates an error.
~CPU
Red
On indicates failure.
~PWR
Green
On indicates DC
power is within
tolerance.
Off indicates DC
power not within
tolerance.
3–7
DL330/DL330P/DL340 CPU Specifications
The PROM Writer Unit connects directly to either a DL330, DL330P or DL340 CPU.
Use the following steps to connect the PROM Writer Unit:
1. Set the power supply source switch (on the back of the unit) to the
appropriate power source setting, (INT for using base power and EXT for
an external power source). The PROM Writer Unit can either use the local
CPU base power or use an external power source.
NOTE: If you are using the local CPU base power you will need to include
the Prom Writer Unit power consumption in your power budget. The power
budget is covered in Chapter 4.
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
2. If using an external power source attach the supplied cable to the power
source socket on the back of the unit. The white wire should be connected
to +5VDC and the black wire should be connected to DC ground.
3. Turn off the power source to the base before attaching the PROM Writer
Unit.
4. Attach the PROM Writer Unit to the CPU. The connector on the back of the
unit will mate with the programming port (PRG) of the CPU. Tighten the
fixture screw to secure the two units together.
5. Apply power to the local CPU base and if necessary to the PROM Writer
Unit. Once the PWR LED is on it will take approximately 10 seconds for the
unit to initialize. During this time keystrokes will not be recognized.
Copying a Program The following steps explain how to copy a program from the CPU RAM to a
From the CPU RAM UVPROM:
1. Turn power on.
to a UVPROM
2. Raise the UVPROM socket lever.
3. Insert the UVPROM (notch up) in the socket and lower the lever.
4. Press the “WRITE” button. The following sequence of events will take
place:
S The WRITE LED will turn on then off.
S The BLANK LED will come on. (This notes the checking sequence to
ensure that the UVPROM is blank has started.)
S The BLANK LED will turn off and the WRITE LED will turn on.
S The WRITE LED will turn off and the VERIFY LED will turn on. (This
indicates that the write is complete. While the VERIFY LED is on, a
comparison between the UVPROM and the CPU RAM is being
made.)
S The VERIFY LED will turn off. (This indicates the end of the copying
function.)
S If an error has been detected, the ERR LED will come on. If this
happens press the “ERR” key to clear the error and the “WRITE” key
to repeat the procedure. If this does not correct the problem, repeat
the procedure using a different UVPROM.
5. Turn power off, raise the UVPROM socket lever and remove UVPROM.
DL330/DL330P/DL340
Specifications
Setting up the
PROM Writer Unit
3–8
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Copying a Program The following steps explain how to copy a program from the UVPROM to the CPU
From the UVPROM RAM:
1. Turn power on.
to the CPU RAM
2. Raise the UVPROM socket lever.
3. Insert the UVPROM (notch up) in the socket and lower the lever.
4. Simultaneously press “WRITE” and “VERIFY” buttons. The following
sequence of events will take place:
S The BLANK, WRITE and VERIFY LEDs will all come on
momentarily.
S The WRITE LED turns off.
S The VERIFY LED will stay on till the operation is completed.
S If an error has been detected, the ERR LED will come on. If this
happens, press the “ERR” key to clear the error and repeat step 4.
5. Turn power off, raise the UVPROM socket lever and remove UVPROM.
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
Comparing a
Program From the
UVPROM to the
CPU RAM
The following steps show how to compare a UVPROM program to the CPU RAM:
1. Turn power on.
2. Raise the UVPROM socket lever.
3. Insert the UVPROM (notch up) in the socket and lower the lever.
4. Press the “VERIFY” button. The following sequence of events will take
place:
S The VERIFY LED indicator will come on.
S If verification is successful, the VERIFY LED will go off.
S If there is an error in the comparison the VERIFY LED will remain
on.
5. Turn power off, raise the UVPROM socket lever and remove UVPROM.
Erasing a UVPROM UVPROMS can be erased through exposure to an ultraviolet light source. Make sure
that the window to the UVPROM is not covered so that it may receive full exposure to
the light source. A typical exposure would be: 12,000m w/cm2 lamp @ 2.5 cm for
15–20 minutes.
3–9
DL330/DL330P/DL340 CPU Specifications
Installing the
S
UVPROM Option in
the DL330 / DL330P
CPU
S
S
S
S
S
S
Disconnect the power from the base and
allow approximately 60 seconds for the
capacitor to discharge before removing
the CPU.
Disconnect the battery wires from the
CPU.
Remove the RAM chip from IC socket.
Align the UVPROM notch with the IC
socket notch on the CPU card.
Carefully insert the UVPROM in the IC
socket.
Set dip switch 2 and Jumpers 1 – 3 for
UVPROM (ROM).
Reconnect the battery wires to CPU.
Memory
Type
Switch
RAM
UVPROM
(ROM)
JUMPER 1
DL330/DL330P/DL340
Specifications
DL330/DL330P CPU Setup
JUMPER 2
JUMPER 3
DIPSWITCH 2
(on)
(off)
ON
2
Dipswitch 1
(ON selects
power failure Dipswitch 2
(ON – RAM
retention)
OFF – UVPROM)
BATTERY
ROM
Jumper 1
RAM/UVPROM
Jumper 2
RAM
RAM
Jumper 3
Selecting Retentive The DL330 and DL330P have a dipswitch which can be used to turn on or off power
failure retention for specific relays and stages. (Some memory types are
Memory for the
automatically retentive.) The following diagram lists the range of retentive memory
DL330 / DL330P
for the memory types that are covered by the selection switch.
ON
BATTERY
ROM
RAM/UVPROM
ROM
DL330/DL330P
Networking
RAM
1 2
RAM
Internal relays in the DL330P range from
160 – 277, only 200 – 277 can be set retentive
or non–retentive.
Stages in the DL330P range from
SG000 to SG177, only SG000 to SG137 can
be set retentive or non–retentive.
Networking for the DL330 and DL330P is accomplished by using a DCU, (Data
Communications Unit, RS232C part number D3-232-DCU, RS422 part number
D3-422-DCU).
DL330/DL330P/DL340
Specifications
Dipswitch 1 Internal relays in the DL330 range from
(on selects
160 – 373, only 340 – 373 can be set
power failure retentive or non–retentive.
retention)
DL330/DL330P/DL340
CPU Specifications
ROM
DL330/DL330P/DL340
CPU Specifications
1
3–10
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
DL340 CPU Setup
Installing the
optional UVPROM
or EEPROM in the
DL340 CPU
Complete the following steps to install the optional memory.
1. Disconnect the power from the base and allow approximately 60 seconds
for the capacitor to discharge before removing the CPU.
2. Disconnect the battery wires from the CPU.
3. Align the UVPROM/EEPROM notch with the IC socket notch on the CPU.
4. Carefully insert the UVPROM/EEPROM into the IC socket.
5. Set dipswitch SW1, bit 1 and the short Jumpers N/C – 4 for the option you
have installed.
6. Reconnect the battery wires to the CPU.
Memory
Type
Switch
RAM
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
SHORT PIN
JUMPERS
UVPROM
(ROM)
EEPROM
(WRITE PROTECTED)
1
DIPSWITCH
SW1 - Bit 1
EEPROM
2
3
4
...
1
2
3
4
...
1
2
3
4
...
1
ON
ON
ON
ON
OFF
OFF
OFF
OFF
N/C 2 3 4
N/C 2 3 4
N/C 2 3 4
2
3
4
N/C 2 3 4
N/C 2
3
4
...
3–11
DL330/DL330P/DL340 CPU Specifications
Retentive
Memory
Switch
ON
DIPSWITCH
SW1 - Bit 2
OFF
1 2 3 4 5 6 7 8
Non–Retentive
Memory
ON
1 2 3 4 5 6 7 8
DL330/DL330P/DL340
Specifications
Selecting Retentive The DL340 uses the same dipswitch for selecting memory retention as was used for
memory type selection. Dipswitch SW1, bit 2 is used to set memory retention for the
Memory for the
ranges of internal relays shown in the following diagram.
DL340
OFF
Internal relays in the DL340 range from 160 to
373 and 1000 to 1067, only 340 - 373 can be set
retentive or non-retentive.
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
3–12
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
DL340 Port Setup
DL340 Baud Rate
Selection
The following chart shows how to configure the baud rate for Port 1 (RS232C) of the
DL340 using dipswitch SW1, switches 3, 4 and 5. Port 2 baud rate is set by using a
programming device to enter the baud rate in address R773 (in BCD or HEX).
Port 2
Port 1
Sample Setup Ladder Logic
Port 1 300 Baud
Port 1 4800 Baud
ON 1 2 3 4 5 6 7 8
ON 1 2 3 4 5 6 7 8
Baud
R773
C374
DSTR
300
1
OFF
OFF
K006
Port 1 600 Baud
Port 1 9600 Baud
600
2
1st scan only.
ON 1 2 3 4 5 6 7 8
ON 1 2 3 4 5 6 7 8
Set baud rate to 9600
1200
3
DOUT1
SW1
2400
4
OFF
OFF
R773
Port 1 1200 Baud
Port 1 19200 Baud
4800
5
1st scan only.
ON 1 2 3 4 5 6 7 8
ON 1 2 3 4 5 6 7 8
C374
9600
6
DSTR
K500
19200
7
OFF
OFF
Port 1 2400 Baud
Port 1 38400 Baud
Set network address to 5
38400
8
ON 1 2 3 4 5 6 7 8
ON 1 2 3 4 5 6 7 8
9600
0, 9 to FF
DOUT
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
OFF
R771
OFF
DL340 Network
Address Selection
Network
Addressing
RAM/UVPROM
DL340
PWR
RUN
PORT1
TX/RX
BATT
PORT2
TX/RX
CPU
Fixed Station
Switch
Network
Address
Mode
Switch
Selectable
Address
Station
Address
FIXED
FIXED
USER
USER
(Network Address (Network Address set to
is set to 01)
3 by rotary switches)
SW4
SW3
Port 1
Port 2
Most
Significant
Digit
Least
Significant
Digit
Port 1 (RS232C): Network address selection is accomplished with the Network Address
Mode Switch and the two rotary switches 3 and 4. The address is set in BCD.
Network Address Mode Switch sets fixed or selectable network address.
Rotary Switch 3 sets the least significant decimal digit of the network address.
Rotary Switch 4 sets the most significant decimal digit of the network address.
In the example above, when the Network mode switch is set to FIXED the network
address will default to 01, when the Network mode switch is set to USER the network
address (set with the rotary switches) is 03. Note, if the rotary switches are set to 00, the
network address will default to 01.
Port 2 (RS232C): Network address selection is set by using a programming device to
enter the value for the most significant digit and least significant digit in addresses R771
and R772 respectively. The address is set in BCD.
If you’re using MODBUS RTU protocol on Port 2, the MODBUS address is set in
decimal, not BCD. Load the lower two digits in R771 and the upper two digit(s) in R772.
3–13
DL330/DL330P/DL340 CPU Specifications
PIN
NumberSignal
1
RXD
2
TXD
3
RTS
4
GND
RS232C Communication Port Specifications
Connector
Network Address
Baud Rate
Parity
Transfer Mode
GND
Data bits
Start bits
Stop bits
Turn Around Delay
CTS
RTS
TXD
RXD
DL340
Station Type
Selection and
Address Ranges
RJ11 (handset connector)
01 to 90
38400, 19200, 9600, 4800, 2400,
1200, 600, 300
None / Odd
Hex / ASCII
HalfĆduplex
Asynchronous
8
1
1
0 to 1980 in 20 ms intervals
(preset with R777)
The station type for Port 1 is fixed as a Slave and cannot be changed. The station
type for Port 2 can be selected by setting the appropriate switch positions (6 and 7)
on the SW1 switch bank.
Bit 6
Bit 7
Protocol
Address
Range
1
N/A
N/A
Slave
1 – 90
2
Off
Off
On
On
Off
On
Off
On
Slave/DirectNET
Master/DirectNET
Peer/DirectNET
Modbus/RTU
1 – 90
1 – 90
1 – 90
1 – 247
RS232C
Request
to Send
Port
On Delay
Off Delay
Port 1
R776
R777
Port 2
R774
R775
400
ms
100
ms
On delay
Off delay
RS232C
Transmit
Data
R776 = 20, 20 x 20ms intervals = 400ms on delay
R777 = 5, 5 x 20ms intervals = 100ms off delay
A special propose control relay is used to select between ASCII and HEX
transmission modes on the DirectNET network. When this relay is off, HEX mode is
used. When this relay is turned on, ASCII mode is used. Off is the default state.
S Port 1
C1077
S Port 2
C1076
DL340 Selecting
Parity for Port 2
DL340 CPUs with firmware V2.7 or later allow you to select the parity for Port 2. The
default setting is none. A special propose control relay (C1072) is used to select
between odd parity (relay is on) and no parity (relay is off).
S Port 2
C1072
DL330/DL330P/DL340
Specifications
DL340 Selecting
Data Format
(ASCII/HEX)
DL330/DL330P/DL340
CPU Specifications
You can use the Handheld Programmer or DirectSOFT to select an on and off
response delay time of up to 1980 ms. The time delay is calculated based on a preset
number that is loaded into two memory locations. These presets indicate the number
of 20 ms intervals that will be used as the delay. For example, an entry of 2 would
result in a 40 ms response delay time.
DL330/DL330P/DL340
CPU Specifications
Port
SW1
DL340 Selecting
the Response
Delay Time
DL330/DL330P/DL340
Specifications
DL340 RS232C
Port (1 and 2)
Pin Outs
3–14
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Battery Backup
Memory Battery
Backup
The DL305 CPUs have a lithium battery to retain the application program and
retentive memory when the system is not receiving power from the power supply.
Typical battery life is five years. This time period includes PLC runtime and normal
shutdown periods such as preventative maintenance and power outages.
The CPU has indicators which tell when it is necessary to change the battery.
However, if your battery has been in your system for an extended period of time, you
may wish to take added precautions to ensure that the system memory will be
retained by installing a new battery when shutting the system down for a period of
more than ten days.
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
WARNING: If the battery connector is not connected to the PC board or the battery is
not installed, the indicator will not notify you of the error. Be sure the battery is in
place and the connector is firmly seated before you install the CPU into the base.
2) Unplug
connector
1) Push back
retaining clip
2) Unplug
connector
1) Push back
retaining clip
DL330
3) Remove battery
Part #D3–04–BATT
3) Remove battery
Part #D3–04–BATT
RAM/UVPROM
DL330/DL330P/DL340
CPU Specifications
NOTE: Before replacing your CPU battery, you should back-up your application
program. This can be done by saving the program to hard/floppy disk on a personal
computer or using the handheld programmer along with a cassette tape recorder.
The CPU has a built-in capacitor to retain the memory for several minutes while the
battery is being replaced.
To replace the CPU battery:
DL330, DL330P,
DL340 CPU Battery
1. Turn power off to the system.
Replacement
2. Wait 60 seconds then remove the CPU. Do not short any connectors or
components on the CPU since it may alter the program memory.
3. Unlatch and tilt the clip covering the battery.
4. Pull the two wire battery connector from the PC board and remove the battery.
WARNING: Do not attempt to recharge the battery or dispose of it by fire. The battery
may explode or release hazardous materials.
To install the CPU battery:
1. Plug the (keyed) two wire battery connector on the battery into the
connector on the PC board.
2. Push gently till the connector snaps closed
3. Slide the battery under the battery retaining clip till the battery is positioned
in the socket.
4. Push the retaining clip down over the battery snapping the clip over the
edge of the PC board.
5. Note the date the battery was changed.
3–15
DL330/DL330P/DL340 CPU Specifications
Before you complete these steps, make sure you have set the dipswitches and/or
jumpers needed to support your application.
WARNING: To minimize the risk of electrical shock, personal injury, or equipment
damage, always disconnect the system power before installing or removing any
system component.
DL330/DL330P/DL340
Specifications
Installing the CPU
When inserting the CPU into the base, align the PC board with the grooves on the top
and bottom of the base. Push the CPU straight into the base until it is firmly seated in
the backplane connector.
DL330/DL330P/DL340
CPU Specifications
Align module to
slots in base and slide in
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
3–16
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
CPU Setup and System Functions
A Few Things to
Know
Even if you have years of experience using PLCs, there are a few things you need to
do before you can start entering programs. This section includes some basic things,
such as changing the CPU mode and connecting a programming device. Here is a
list of the items that are discussed.
S Auxiliary Functions
S Connecting a Programming Device
S Changing the CPU Modes
S Clearing the CPU memory
The following paragraphs provide the setup information necessary to get the CPU
ready for programming. The actual setup information depends on the type of
programming device you are using. For example, the DL305 Handheld Programmer
manual provides the Handheld keystrokes required to perform all of these
operations. The DirectSOFT manual provides a description of the menus and
keystrokes required to perform the setup procedures via DirectSOFT.
3–17
DL330/DL330P/DL340 CPU Specifications
Many CPU tasks involve the use of predefined functions. These are often called
Auxiliary (AUX) Functions. The AUX Functions perform many different operations,
ranging from simple operating mode changes to determining the firmware revision
number.
You can access all of the AUX Functions from DirectSOFT menu options, but not
from the DL305 Handheld Programmer. You can still perform some of the operations
with the Handheld Programmer, but they are accomplished by using a certain series
of keystrokes rather than by entering a specific AUX function.
DL330/DL330P/DL340
Specifications
What are Auxiliary
Functions?
NOTE: Neither DirectSOFT or the Handheld Programmer utilize the numbers
shown for the AUX functions. These numbers have been included because many of
you may already have existing software packages that can be used with these
CPUs. If you do already have an existing software package, remember that any
additional features (such as added I/O, CRs, etc. available with the DL340 CPU)
may not be accessible.
AUX Function and Description
DL330, DL330P, DL340
AUX 1* — Diagnostics and PLC Modes
Software
HP
Program Syntax Check (Grammar check)
11
Compare PLC to Disk
12
PLC Operational Mode
13
Revision Number
Software
HP
AUX 3* — Clear PLC Memory
31
Ladders
32
Data Registers
33
Timer / Counter Accumulators
Software
HP
AUX 6* — Save Data from PLC
Ladders
62
Data Registers
AUX 9* — Load Data to PLC
91
Ladders
92
Data Registers
Password Operations
None
Password
— Function or keystrokes available
X — Not available
DL330/DL330P/DL340
CPU Specifications
61
DL330/DL330P/DL340
CPU Specifications
10
DL330/DL330P/DL340
Specifications
3–18
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Connecting the
Programming
Devices
You can mount the Handheld directly to the port of the CPU, or you can use a cable.
The cable, part number D3–HPCBL, is approximately 4.5 feet (1.5m) in length and
provides more flexibility. There are two different handheld programmers for the
DL305 CPUs. The D3–HP can be used with either the DL330 or the DL340. The
D3–HPP can only be used with the DL330P. The D3–HPP supports the RLL PLUS
features.
If you’re using a Personal Computer with the DirectSOFT programming package, a
Data Communications Unit (either RS232C or RS422) must be used to interface to
the DL330/DL330P CPUs. DCUs may also be used to establish a connection
between the DL305 and an operator interface or a network.
The DL340 CPU provides two built-in RS232C ports which can be used to directly
connect to a personal computer, operator interface or network. The DCU may also
be used with the DL340 if the built-in ports are otherwise occupied.
3–19
DL330/DL330P/DL340 CPU Specifications
Handheld
Programmer
DL340 CPU with 2
Built-in RS232C
Communication Ports
DL330/DL330P/DL340
Specifications
Programming the DL340 CPU with
either the Handheld programmer or the PC
RS232C
Connect to either port
DL330 or
DL330P
DCU
RS232C or RS422
Handheld
Programmer
DL330/DL330P/DL340
CPU Specifications
RS232C or
RS422
DL330/DL330P/DL340
CPU Specifications
Programming the DL330 CPU with
either the Handheld programmer or the PC
(using a Data Communication Unit)
DL330/DL330P/DL340
Specifications
3–20
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
CPU Specifications
DL330/DL330P/DL340
Specifications
DL330/DL330P/DL340 CPU Specifications
Changing the CPU There are two modes of operation for the DL305 CPUs:
Mode of Operation
S RUN — executes the application program and updates I/O modules
S PGM — allows program entry, does not execute the application program
or update I/O modules
The CPU modes for all DL305 CPUs can be changed by using either a Handheld
Programmer or DirectSOFT. The DL330 and DL330P require a Data
Communications Unit when using DirectSOFT. This is discussed later in this
chapter.
Since the DL340 has the possibility of being accessed through multiple ports at the
same time, the Handheld Programmer and DCU have priority over the built-in
RS232C ports during mode change operations. If no Handheld Programmer or DCU
is online, DirectSOFT can perform mode changes through either of the built-in
ports. When the Handheld Programmer or DCU is online and a mode change is
attempted with DirectSOFT, the Handheld Programmer or DCU will immediately
change the mode back to the original mode. This forces the CPU mode to always
correspond with the keyswitch position on the Handheld Programmer.
WARNING: The CPU will automatically change modes when you connect the
Handheld Programmer if the keyswitch is set for a different mode of operation. For
example, if the CPU is in Run mode and the Handheld Programmer keyswitch is set
to the PRG (Program) position, the CPU will automatically enter Program mode
when the Handheld is connected.
RUN PRG LOAD TAPE
The LOAD position is used for uploading a
program from CPU memory to a cassette
tape, or downloading a program from
cassette tape to CPU memory.
3–21
DL330/DL330P/DL340 CPU Specifications
Before you enter a new program, you should always clear the CPU memory. Only a
few keystrokes are required. The next few steps show how to clear the CPU memory
using the handheld programmer.
Put the handheld programmer’s key switch in the PRG position. Attach the handheld
programmer directly to the front of the CPU making sure that the port on the back of
the programmer aligns properly with the port on the CPU and the programmer’s
latches connect with the slots in the base power supply. Apply power to the base.
LED’s on the programmer will display indicating a good connection.
Handheld
Programmer
You can clear the memory by using the PLC/Clear PLC sub-menu from within
DirectSOFT, or you can use the following Handheld Programmer keystrokes.
CLR
ADDRESS/DATA
ON/OFF
RUN BATT
CLR
SHF
3
4
8
4
OUT
5
TMR
6
CNT
7
SR
DEL
0
MCS
1
MCR
2
SET
3
RST
NXT
4
ADR
5
SHF
6
DATA
7
REG
(Clears the CPU memory)
NOTE: This Handheld Programmer operation only clears the program memory. Any
values stored in data registers are not cleared. You do have an additional menu
option within DirectSOFT that allows you to clear the data registers.
CPU Checklist
DL330/DL330P/DL340
Specifications
Before you proceed with the I/O configuration or programming information, make
sure you have:
S set the CPU dipswitches
S selected and installed the EEPROM/UVPROM (if chosen.)
S a good understanding of the various system functions needed to setup
the CPU.
DL330/DL330P/DL340
CPU Specifications
PWR CPU
0
AND
1
OR
2
STR
3
NOT
DL330/DL330P/DL340
CPU Specifications
Key switch in PRG mode
DL330/DL330P/DL340
Specifications
Clearing the CPU
Memory
Bases,
Expansion Bases, and
I/O Configuration
In This Chapter. . . .
14
Ċ Understanding I/O Numbering and Module Placement Rules
Ċ Base Specifications and Wiring
Ċ Using Bases for Local or Expansion I/O Systems
Ċ Setting the Base Switches
Ċ Example I/O Configurations
Ċ I/O Configurations with a 5 Slot Local CPU Base
Ċ I/O Configurations with an 8 Slot Local CPU Base
Ċ I/O Configurations with a 10 Slot Local CPU Base
Ċ Calculating the Power Budget
4–2
Understanding I/O Numbering and Module Placement Rules
Before you install any I/O modules or begin installing or using the bases, it is very
helpful to understand how the DL305 I/O numbering and module placement
restrictions can sometimes dictate how your system is put together.
DL305 I/O
Configuration
History
The DL305 product family has had several enhancements over the years. Each time
the product family has grown or has been enhanced, compatibility with the earlier
products has been of the utmost concern. Some of these enhancements such as
increasing the I/O count and supporting 16 point modules have impacted the
numbering system. To help you understand our numbering scheme we have
provided the following account of how the numbering system has been affected.
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
S
When the 16 point I/O modules were introduced to the standard line of 8
point modules, the I/O numbering system was not modified to count in
16 consecutive units. This was done to maintain compatibility with the 8
point systems. This means each 16 point module uses two groups of
eight consecutive numbers such as 000 through 007 and 100 through
107.
When the I/O count was increased from the original 112 maximum to
176 maximum (for the DL330/DL330P CPU) and 184 maximum (for the
DL340 CPU), most of the new I/O addresses were not set up to be
consecutive with the the original 112 I/O. This means you will see a
large jump in the I/O number ranges.
S
Bases, Expansion Bases
and I/O Configuration
Octal Numbering
System
The DL305 I/O points are numbered in octal (base 8.) The octal numbering system
does not include the numbers 8 and 9. The following table lists the first few octal
numbers with the equivalent decimal numbers so you can see the numbering
pattern.
Octal
Numbers
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
...
Decimal
Numbers
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
...
Fixed
I/O Numbering
The DL305 base I/O numbering is fixed, you cannot choose the I/O address of
specific points since the system allocates the addresses for each slot. The I/O
number ranges are 0–177 and 700–767. The I/O numbering for each slot in the base
depends on two things:
1. The base configuration, which is determined by the size of the base and
whether you are using an expansion base.
2. The number of I/O points per module and the location of the I/O modules in
the base.
4–3
Bases, Expansion Bases, and I/O Configuration
I/O numbering begins with address “000” which is the slot adjacent to the CPU. Each
module uses increments of eight I/O points. For 8 point modules the I/O addresses
are made up of eight contiguous points for each module. For 16 point modules the
I/O addresses are made up of two groups of eight contiguous points, the first group
follows the same scheme as the 8 point module and the second group adds 100 to
the values of the first group.
The examples below show the I/O numbering for a 5 slot local CPU base with 8 point
I/O and a 5 slot local CPU base with 16 point I/O.
5 Slot Base Using 8 Point I/O Modules
5 Slot Base Using 16 Point I/O Modules
020
to
027
Slot Number: 3 2
010
to
017
000
to
007
C
P
U
DL305
1 0
030
to
037
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
Slot Number: 3 2
C
P
U
Bases and
Expansion Bases
030
to
037
Bases and
Expansion Bases
I/O Numbering
Guidelines
DL305
1 0
Number of I/O
Points Required for
Each Module
DC Input Modules
Relay Output Modules
DC Output Modules
D3–08ND2
D3–16ND2–1
D3–16ND2–2
D3–16ND2F
8
16
16
16
D3–08TD1
D3–08TD2
D3–16TD1–1
D3–16TD1–2
8
8
16
16
D3–08TR
F3–08TRS–1
F3–08TRS–2
D3–16TR
F3–16ND3
16
D3–16TD2
16
Analog Modules
AC Input Modules
AC Output Modules
8
D3–08NA–2
D3–16NA
8
16
AC/DC Input Modules
D3–08NE3
8
D3–16NE3
16
F3–04DA–1
F3–04DA–2
F3–04DAS
16
16
16
ASCII BASIC Modules
F3–AB128–R
16
D3–04AD
16
F3–AB128–T
16
16
16
D3–04TAS
F3–08TAS
8*
8
F3–04ADS
F3–08AD
16
16
F3–AB128
F3–AB64
D3–08TA–1
8
F3–08TEMP
16
Specialty Modules
D3–08TA–2
8
F3–08THM–n
16
F3–16TA–1
D3–16TA–2
16
16
F3–16AD
D3–02DA
16
16
D3–08SIM
D3–HSC
* This is a 4-point module, but each slot is assigned a minimum of 8 I/O points.
8
16
Bases, Expansion Bases
and I/O Configuration
D3–08NA–1
8
8
8
16
Analog Modules (cont.)
4–4
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
I/O Module
Placement Rules
There are some limitations that determine where you can place certain types of
modules. Some modules require certain locations and may limit the number or
placement of other modules. We have tried to give clearly written explanations of the
rules governing module placement, but we realize a picture can sometimes be worth
a thousand words. If you have difficulty with some of our explanations, please look
ahead to the illustrations in this chapter. They should clear up any gray areas in the
explanation and you will probably find the configuration you intend to use in your
installation.
In all of the configurations mentioned the number of slots from the CPU that are to be
used can roll over into an expansion base if necessary. For example if a rule states a
module must reside in one of the six slots adjacent to the CPU, and the system
configuration is comprised of two 5 slot bases, slots 1 and 2 of the expansion base
are valid locations.
The following table provides the general placement rules for the DL305
components.
Module
CPU
Bases, Expansion Bases
and I/O Configuration
16 Point I/O
Modules
Analog Modules
ASCII Basic
Modules
High Speed
Counter
Restriction
The CPU must reside in the first slot of the local CPU
base. The first slot is the closest slot to the power supply.
There can be a maximum of eight 16 point modules
installed in a system depending on the CPU type and I/O
modules used. The 16 point modules must be in the first 8
slots adjacent to the CPU rolling over into an expansion
base if necessary. If any of the eight slots adjacent to the
CPU are not used for 16 point modules, they can be used
for 8 point modules.
Analog modules must reside in any valid 16 point I/O slot.
ASCII Basic modules must reside in any valid 16 point I/O
slot.
High Speed Counters may be used in one of the first 4
slots in the local CPU base.
4–5
Bases, Expansion Bases, and I/O Configuration
The DL330 CPU can address up to seven 16 point modules as long as they reside in
the seven slots adjacent to the CPU, however; there is one circumstance where the
number of 16 point modules can be limited.
S Only six 16 point modules can be used if High Speed Counter modules
are installed in the system. The 16 point modules must reside in the six
slots adjacent to the CPU.
Bases and
Expansion Bases
DL330/DL330P
Rules for
16 Point Modules
NOTE: The High Speed Counter module is considered to be a 16 point module.
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
060
to
067
050
to
057
040
to
047
160
to
167
150
to
157
140
to
147
C
P
U
DL305
Bases and
Expansion Bases
030
to
037
DL305
Addresses 160 - 167 are not available as I/O if
High Speed Counter modules are used in the system
NOTE: Addresses 160–167 are normally used as CRs, but they can also be used as
I/O for 16 point modules. You cannot use the points as both CRs and I/O. Also, when
you use these as I/O points, you still enter them as C160–C167 in DirectSOFT.
Bases, Expansion Bases
and I/O Configuration
4–6
Bases, Expansion Bases
and I/O Configuration
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
DL340 Rules for
16 Point Modules
The DL340 CPU can address up to eight 16 point modules as long as they reside in
the eight slots adjacent to the CPU, however; there are circumstances where the
number of 16 point modules can be limited.
1. Only seven 16 point modules can be used if a Thumbwheel Interface
module is installed in the system. The 16 point modules must reside in the
seven slots adjacent to the CPU.
2. Only seven 16 point modules can be used if High Speed Counter modules
are installed in the system. The 16 point modules must reside in the six slots
adjacent to the CPU, skipping one slot, and using the 8th slot from the CPU
for the last of the 16 point modules.
3. Only six 16 point modules can be used if a High Speed Counter and a
Thumbwheel Interface module are installed in the system. The 16 point
modules must reside in in the six slots adjacent to the CPU .
NOTE: Both High Speed Counter and Thumbwheel Interface modules are
considered to be 16 point modules.
030
to
037
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
170
to
177
160
to
167
150
to
157
140
to
147
C
P
U
DL305
DL305
Addresses 170 – 177 are not available as I/O if a
Thumbwheel Interface module is used in the system
Addresses 160 – 167 are not available as I/O if
High Speed Counter modules are used in the system
Addresses 160 – 167 and 170 – 177 are not available as I/O if
both High Speed Counters and a Thumbwheel interface module
are used in the system.
NOTE: Addresses 160 – 177 are normally used as CRs, but they can also be used as
I/O points if you are using 16 point modules. Remember, if you use these locations
as I/O points you cannot use them as CRs. Also, when you use these as I/O points,
you still enter them as C160–C177 in DirectSOFT.
4–7
Bases, Expansion Bases, and I/O Configuration
Three Sizes of
Bases
There are three base sizes available to hold your I/O modules: 5, 8 and 10 slot. The 5
and 10 slot bases can be used as either a local CPU base or an expansion base. The
8 slot base can only be used as a local CPU base. The 5, 8, and 10 slot bases are
available with a built-in 110/220 VAC power supply. The 5 slot base is also available
with a built-in 24 VDC power supply.
Remote I/O is not offered in the DL305 product family. All DL305 products, with the
exception of the DL340 CPU, are compatible with remote I/O systems previously
offered by GE FANUC and TEXAS INSTRUMENTS
AC
Neutral
Bases and
Expansion Bases
AC Line
Bases and
Expansion Bases
Base Specifications and Wiring
5 Slot I/O Base
10 Slot I/O Base
Bases, Expansion Bases
and I/O Configuration
8 Slot I/O Base
4–8
Bases and
Maximum I/O
Supported
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Base Mounting
Dimensions
The maximum I/O for the base combinations is shown below. The number of I/O
points supported also depends on the which CPU is used in the system.
Base Configuration
DL330 / DL330P
CPU
DL340 CPU
5 slot local CPU base system
64 I/O max.
64 I/O max
5 slot local CPU base system with a 5 slot
expansion base
120 I/O max.
128 I/O max.
5 slot local CPU base system with two 5
slot expansion bases
120 I/O max.
128 I/O max.
8 slot local CPU base system
112 I/O max.
112 I/O max.
8 slot local CPU base system with a 5 slot
expansion base
152 I/O max.
152 I/O max.
10 slot local CPU base system
128 I/O max.
136 I/O max.
10 slot local CPU base system with a 5
slot expansion base
168 I/O max.
176 I/O max.
10 slot local CPU base system with a 10
slot expansion base
176 I/O max.
184 I/O max.
Use these mounting dimensions when you install the DL305 bases. Make sure you
have followed the installation guidelines shown in Chapter 2 for proper spacing.
5 slot base
11.41”
290mm
.94”
24mm
10.63”
270mm
Handheld Programer
on side view of
Base
3.54”
90mm
Bases, Expansion Bases
and I/O Configuration
4.84”
123mm
8 slot base
4.41”
112mm
5.35”
136mm
15.55”
395mm
14.76”
375mm
3.54”
90mm
4.84”
123mm
10 slot base
18.30”
465mm
17.51”
445mm
4.84”
123mm
3.54”
90mm
4–9
Bases, Expansion Bases, and I/O Configuration
The following diagram shows the terminal connections located on the power supply
of the DL305 bases.
WARNING: Damage will occur to the base power supply if 230 VAC is connected to
the 115 VAC terminal connections. Once the power wiring is connected, install the
protective cover. When the cover is removed there is a risk of electrical shock if you
accidentally touch the connection terminals.
24 VDC
Terminal Strip
110/220 VAC
Terminal Strip
Bases and
Expansion Bases
Line
Neutral
Expansion Base
Power Supply
Wiring Example
Bases and
Expansion Bases
Connecting the
Power Supply
The following diagram shows how to connect the power when you use both local
CPU and Expansion bases.
220VAC
24VDC
+ –
Neutral
110VAC
220VAC
24VDC +
–
Local CPU
Local CPU
Local CPU
110VAC
220VAC
24VDC +
–
Expansion
Base 1
Expansion
Base 1
Expansion
Base 1
110VAC
220VAC
24VDC +
–
Expansion
Base 2
Expansion
Base 2
Expansion
Base 2
Bases, Expansion Bases
and I/O Configuration
110VAC
Line
4–10
Bases, Expansion Bases
and I/O Configuration
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Base
Specifications
D3–05B
D3–05BDC
D3–08B
D3–10B
Number of Slots
5
5
8
10
Local CPU Base
Yes
Yes
Yes
Yes
Expansion Base
Yes
Yes
No
Yes
Input Voltage Range
97–132 VAC
194–264 VAC
47–63Hz
20.5–30 VDC <10%
ripple
97–132 VAC
194–264 VAC
47–63Hz
97–132 VAC
194–264 VAC
47–63Hz
Base Power
70 VA max (46W)
48 Watts
70 VA max (57W)
70 VA max (57W)
Inrush Current max.
30A
30A
30A
30A
Dielectric Strength
1500VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
1500VAC for 1 minute
between 24VDC input
terminals and Run
output
1500VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
2000VAC for 1 minute
between terminals of
AC P/S, Run output,
Common, 24VDC
Insulation Resistance
>10MW at 500VDC
>10MW at 500VDC
>10MW at 500VDC
>10MW at 500VDC
Power Supply Output
(Voltage Ranges and
Ripple)
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(5VDC) 4.75–5.25V
less than 0.1V p–p
(9VDC) 8.5–13.5V
less than 0.2V p–p
(9VDC) 8.5–13.5V
less than 0.2V p–p
(9VDC) 8.0–12.0V
less than 0.2V p–p
(9VDC) 8.0–12.0V
less than 0.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
(24VDC) 20–28V
less than 1.2V p–p
5 VDC current
available
1.4A *
1.4A
1.4A @ 122° F (50° C)
1.0A @ 140° F (60° C)
1.4A @ 122° F (50° C)
1.0A @ 140° F (60° C)
9 VDC current
available
0.8A *
0.8A
1.7A @ 122° F (50° C)
1.4A @ 140° F (60° C)
1.7A @ 122° F (50° C)
1.4A @ 140° F (60° C)
24 VDC current
available
0.5A *
0.5A
0.6A
0.6A
Auxiliary 24 VDC
100mA max
None
100mA max
100mA max
Run Relay
250 VAC,
4A (resistive load)
250 VAC,
4A (resistive load)
250 VAC,
4A (resistive load)
250 VAC,
4A (resistive load)
Fuses
2A (250V)
4A (250V)
2A (250V)
2A (250V)
User replaceable
User replaceable
User replaceable
User replaceable
WxHxD
11.42x4.85x4.41 in.
(290x123x112 mm)
11.42x4.85x4.41 in
(290x123x112 mm)
15.55x4.85x4.41 in
(395x123x112 mm)
18.3x4.85x4.41 in.
(465x123x112 mm)
Weight
34 oz. (964g)
34 oz. (964g)
44.2 oz. (1253g)
50.5 oz. (1432g)
Consumption
Output
Dimensions
* The total current for the D3–05B must not exceed 2.3A.
Auxiliary 24VDC
Output at Base
Terminal
There is 24 VDC available from the 24 VDC output terminals on all bases except the
5 slot DC version (D3–05BDC). The 24 VDC supply can be used to power external
devices or DL305 modules that require external 24 VDC. The power used from the
this 24 VDC output reduces the internal system 24 VDC available to the modules by
an equal amount. So if you use this power supply, make sure you consider this when
you calculate the power budget. (The power budget is discussed in more detail later
in this chapter.)
4–11
Bases, Expansion Bases, and I/O Configuration
The following diagram shows the details of how the DL305 base provides many of
the specifications listed on the previous page.
Schematic for D3–05B, D3–08B, D3–10B
2A
+
0V
–
+9V
+
+5V
+–
115VAC
Switching
Power
Source
Circuit
24V/9V
Voltage
Abnormality
Detection
L
N
230VAC
Coil
RUN
Output
CPU
Normal
RUN
Bases and
Expansion Bases
+24V
Bases and
Expansion Bases
Power Supply
Schematics
+
24VDC Output
–
Inside
of CPU
G
0V
Schematic for D3–05BDC
+
0V
–
+9V
+
+5V
+–
24V/9V
Voltage
Abnormality
Detection
+
Switching
Power
Source
Circuit
24VDC
–
Coil
RUN
Output
CPU
Normal
RUN
Inside
of CPU
0V
G
Bases, Expansion Bases
and I/O Configuration
4A
+24V
4–12
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Using the Run
Relay on the Base
Power Supply
The RUN relay output, located on the DL305 base power supply, can be used to
detect an undesired failure on the local CPU base or an expansion base. The
following table shows the operating characteristics of the RUN relay for a local CPU
base or an expansion base.
Event
Local CPU Base
RUN Relay Would:
Expansion Base
RUN Relay Would:
PROGRAM to RUN mode
Transition
Energize
Not change
The CPU detects a fatal
error
De–energize
Not change
CPU Local Base is
Removed Form the RUN
Mode
De–energize
Not change
Power Source to the
Power Supply is Turned
OFF
De–energize
De–energize
9 VDC or 24 VDC Failure
on the Power Supply
De–energize
De–energize
The following example demonstrates possible uses for the RUN relay on the DL305
bases.
Bases, Expansion Bases
and I/O Configuration
Relay
Power
Supply
Use of the RUN relay to
shutdown critical field
devices upon error detection
Relay
Critical
Field
Device
Field
Power
Supply
Panel
Lamp
Power
Use of the RUN relay to
monitor system operation
PLC
OK
Lamp
4–13
Bases, Expansion Bases, and I/O Configuration
The CPU must go into first slot (next to the power supply) on the far right side of the
base. When inserting components into the base, align the PC board(s) of the module
with the grooves on the top and bottom of the base. Push the module straight into the
base until it is firmly seated in the backplane connector. To remove a module from the
base squeeze the tabs on the top and bottom of the faceplate and pull the module
straight out.
Bases and
Expansion Bases
Align module to
slots in base and slide in
Bases and
Expansion Bases
Installing CPUs
and I/O Modules
WARNING: Do not remove any system component when system power is on. This
may cause damage to the system or unpredictable system operation that can result
in a risk of personal injury.
Bases, Expansion Bases
and I/O Configuration
4–14
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Using Bases for Local or Expansion I/O Systems
Base Uses Table
Local/Expansion
Connectivity
It is helpful to understand how you can use the various DL305 bases in your control
system. The following table shows how the bases can be used.
Base Part #
Number of Slots
Can Be Used As
A Local CPU
Base
Can Be Used As
An Expansion
Base
D3–05B
5
Yes
Yes
D3–05BDC
5
Yes
Yes
D3–08B
8
Yes
No
D3–10B
10
Yes
Yes
The configurations below show the valid combinations of local CPU bases and
expansion bases.
NOTE: You should use one of the configurations listed below when designing an
expansion system. If you use a configuration not listed below the system will not
function properly.
1.5 ft (0.5m)
10 slot local CPU base with
a 5 slot expansion base
10 slot local CPU base
with a
10 slot expansion base
1.5 ft (0.5m)
8 slot local CPU base with
a 5 slot expansion base
1.5 ft (0.5m)
1.5 ft (0.5m) 1.5 ft (0.5m)
Bases, Expansion Bases
and I/O Configuration
5 slot local CPU base
with a maximum of two
5 slot expansion bases
4–15
Bases, Expansion Bases, and I/O Configuration
The local CPU base is connected to the expansion base using a 1.5 ft. cable
(D3–EXCBL). The base must be connected as shown in the diagram below.
The top expansion connector on the base is the input from a previous base. The
bottom expansion connector on the base is the output to an expansion base. The
expansion cable is marked with “CPU Side” and “Expansion Side”. The“ CPU Side”
of the cable is connected to the bottom port of the base and the “Expansion Side” of
the cable is connected to the top port of the next base.
030
to
037
020
to
027
010
to
017
000
to
007
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
DL305
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
DL305
DL305
1.5 ft (0.5 m)
CPU Side
C
P
U
Bases and
Expansion Bases
Expansion
Cable
Bases and
Expansion Bases
Connecting
Expansion Bases
Expansion Side
Expansion Side
Note: Avoid placing the expansion cable in the same wiring
tray as the I/O and power source wiring.
Bases, Expansion Bases
and I/O Configuration
1.5 ft (0.5 m)
CPU Side
4–16
Setting the Base Switches
5 Slot Bases
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
BASE
1,3
2
10 Slot Base
Bases, Expansion Bases
and I/O Configuration
The 5 slot and 10 slot bases have jumper switches that need to be set depending on
which system configuration is used. The 8 slot base does not have any switches.
The 5 slot bases have a two position toggle switch which is used to set the base as
the CPU local base, the first expansion base, or the second (last) expansion base.
The switch is set to the “1,3” position if the base is the local CPU base or the third
base in the system. The switch is set to the “2” position if the base is the 2nd base in
the system. If the 5 slot base is used as an expansion base for a 10 slot local CPU
base the switch is set in the “1,3” position.
The 10 slot base has a jumper switch between slot 3 and 4 used to set the base to
local CPU base or expansion base. There is also a jumper switch between slot 9 and
10 that sets slot 10 to the 100–107 I/O address range or to the 700–707 I/O address
range.
4–17
Bases, Expansion Bases, and I/O Configuration
Example A
BASE BASE
1,3
2
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
170
to
177
160
to
167
150
to
157
140
to
147
030
to
037
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
170
to
177
160
to
167
150
to
157
140
to
147
BASE BASE
1,3
2
Example B
BASE BASE
1,3
2
Examples Show
Maximum I/O
Points Available
C
P
U
DL305
Expansion Base
DL305
Local CPU Base
C
P
U
DL305
Expansion Base
DL305
For the following examples the configurations using 16 point I/O modules are shown
with the maximum I/O points supported so you can always reduce the I/O count in
one of our examples and the configuration will still be valid. Substitution of 8 point I/O
modules can be made in place of any of the 16 point modules without affecting the
I/O numbering for any of the other I/O modules. When a 16 point module is replaced
with a 8 point I/O module the last 8 I/O addresses of that 16 point module may or may
not be useable in another slot location, depending on the system configuration used
Bases, Expansion Bases
and I/O Configuration
BASE BASE
1,3
2
Local CPU Base
030
to
037
Bases and
Expansion Bases
The following system configurations will allow you to quickly configure your system
by using examples. These system configurations show the I/O numbering and the
base switch settings for every valid base configuration for a DL305 system.
When a 16 point I/O module is used the last 8 I/O addresses of each 16 point module
16 Point I/O
Allocation Example could have been used in another base slot. In the illustration below Example A
shows a 16 point module in the slot next to the CPU using address 000–007 and
100–107. The expansion I/O cannot use the last slot of the expansion base since it is
assigned addresses 100–107 and the 16 point module next to the CPU has already
used these addresses. Example B shows an 8 point module in the slot next to the
CPU and an 8 point module in the last slot of the expansion base. Both examples are
valid configurations .
Bases and
Expansion Bases
Example I/O Configurations
4–18
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
I/O Configurations with a 5 Slot Local CPU Base
The configurations below and on the next few pages show a 5 slot base with 8 point
I/O modules, 16 point modules, one expansion base and two expansion bases.
Switch settings
The 5 slot base has a toggle switch on the inside of the base between slots 4 and 5
which allows you to select:
Type of Base
Switch Position
Local CPU
Base 1,3
First Expansion
Base 2*
Last Expansion
Base 1,3
*used only with a 5 slot local CPU base
5 Slot Base
with 8 Point I/O
Total I/O: 32
030
to
037
020
to
027
010
to
017
000
to
007
030
to
037
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
C
P
U
DL305
C
P
U
DL305
BASE BASE
1,3
2
Bases, Expansion Bases
and I/O Configuration
5 Slot Base
with 16 Point I/O
Total I/O: 64
BASE BASE
1,3
2
4–19
Bases, Expansion Bases, and I/O Configuration
Total I/O: 72
020
to
027
010
to
017
000
to
007
100
to
107
070
to
077
060
to
067
050
to
057
030
to
037
020
to
027
010
to
017
000
to
007
130
to
137
120
to
127
110
to
117
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
170
to
177
160
to
167
150
to
157
140
to
147
C
P
U
DL305
BASE BASE
1,3
2
040
to
047
DL305
BASE BASE
1,3
2
5 Slot Base and 5
Slot Expansion
Base with 16 Point
I/O
Bases and
Expansion Bases
030
to
037
Bases and
Expansion Bases
5 Slot Base and
5 Slot Expansion
Base with 8 Point
I/O
Total I/O: 128
BASE BASE
1,3
2
DL305
DL305
DL340 only
*NOTE: If a 16pt module is used in the last two available slots of the
expansion base, 160 through 177 will not be available for control relay
assignments. Also, even though you are using these points as I/O, you still
enter them as C160–C177 in DirectSOFT.
REV A–1
Bases, Expansion Bases
and I/O Configuration
BASE BASE
1,3
2
C
P
U
4–20
5 Slot Base and
Two 5 Slot
Expansion Bases
with 8 Point I/O
Total I/O: 112
030
to
037
020
to
027
010
to
017
000
to
007
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
DL305
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
DL305
030
to
037
020
to
027
010
to
017
000
to
007
070
to
077
060
to
067
050
to
057
040
to
047
170
to
177
160 150
to
to
167 157
140
to
147
120
to
127
110
to
117
C
P
U
DL305
BASE BASE
1,3
2
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
BASE BASE
1,3
2
BASE BASE
1,3
2
5 Slot Base and
Two 5 Slot
Expansion Bases
with 16 and 8 Point
I/O
Total I/O: 128
Bases, Expansion Bases
and I/O Configuration
BASE BASE
1,3
2
130
to
137
100
to
107
BASE BASE
1,3
2
C
P
U
DL305
DL305
DL340 only
DL305
BASE BASE
1,3
2
*NOTE: If a 16pt modules are used in the second expansion base as shown,
160 through 177 will not be available for control relay assignments. Also,
even though you are using these points as I/O, you still enter them as
C160–C177 in DirectSOFT.
REV A–1
4–21
Bases, Expansion Bases, and I/O Configuration
The configurations below show an 8 slot base with 8 point I/O modules, 16 point
modules, one 5 slot expansion base and two 5 slot expansion bases.
8 Slot Base
with 8 Point I/O
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
160
to
167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
100
to
107
6
5
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
740
to
747
730
to
737
720
to
727
710
to
717
700
to
707
C
P
U
DL305
C
P
U
DL305
C
P
U
DL305
Total I/O: 112
*See note below
regarding points
160–167
8 Slot Base and
5 Slot Expansion
Base with
8 Point I/O
060
to
067
4 3
2
1 0
Total I/O: 96
010
to
017
000
to
007
Total I/O: 152
*See note below
regarding points
160–167
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
160
to
167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
100
to
107
6
5
4 3
2
1 0
740
to
747
730
to
737
700
to
707
DL305
720
to
727
710
to
717
C
P
U
DL305
BASE BASE
1,3
2
*NOTE: If a 16pt module is used in Slot 6, 160 through 167 will not be
available for control relay assignments. Also, even though you are using
these points as I/O, you still enter them as C160–C167 in DirectSOFT.
Bases, Expansion Bases
and I/O Configuration
DL305
BASE BASE
1,3
2
8 Slot Base and
5 Slot Expansion
Base with
16 Point I/O
Bases and
Expansion Bases
8 Slot Base
with 16 Point I/O
Total I/O: 56
Bases and
Expansion Bases
I/O Configurations with an 8 Slot Local CPU Base
4–22
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
I/O Configurations with a 10 Slot Local CPU Base
Switch settings
The configurations below and on the next few pages show a 10 slot base with 8 point
I/O modules, with 16 point modules, with a 5 slot expansion base and with a 10 slot
expansion base.
The 10 slot base has two jumper switches to select the base type and the address
ranges to use. These switches can be found on the base between slots 3 and 4
(SW1) and slots 9 and 10 (SW2). Jumper switch SW1 is used to select if the base is a
local CPU base or an expansion base. Jumper switch SW2 determines the I/O
address range (100 – 107 or 700 – 707) for the 10th slot on the local CPU base. By
selecting the address range of 700 to 707 for slot 10, it is possible to use a 16 point
module next to the CPU (which uses the ranges of 000 to 007 and 100 to 107),
however; the position of this switch will affect the I/O numbering for the expansion I/O
if used.
NOTE: Jumper switch SW2 must be set to “100 EXP” on the expansion base.
Last Slot Address
Range 100 to 107
Total I/O: 72
Jumper
SW2 100
700
Jumper
SW1
EXP
EXP
Bases, Expansion Bases
and I/O Configuration
100
to
107
Last Slot Address
Range 700 to 707
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
C
P
U
CPU
DL305
Total I/O: 72
Jumper
SW2 100
700
Jumper
SW1
EXP
EXP
700
to
707
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
C
P
U
DL305
CPU
4–23
Bases, Expansion Bases, and I/O Configuration
Configuration 1
Configuration 1 shows an 8 point I/O module the slot next to the CPU and the
address range of 100–107 for the last slot. When jumper switch SW2 is set to the
“100 EXP” position, the address range for the last slot is set to 100–107, thereby
limiting the address range for the first module to 000–007. This means if you use this
configuration, the first module must be an 8 point I/O module. You will have more
available addresses for an expansion base as you will see in the example using a 10
slot expansion base.
Total I/O:128
Configuration 1
Jumper
SW2
Jumper
SW1
100
EXP
700
EXP
100
to
107
*See note below regarding
points 160–167 and
170–177.
Configuration 2
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
170
to
177
160
to
167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
6 5
4
8 7
DL340 only
3 2
000
to
007
C
P
U
DL305
1 0
Configuration 2
Jumper
SW2
700
Jumper
SW1
100
EXP
EXP
700
to
707
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
170
to
177
160
to
167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
100
to
107
6 5
4
8 7
DL340 only
3 2
C
P
U
CPU
DL305
1 0
*NOTE: If a 16pt module is used in Slot 6 for the DL330 or DL330P CPU, 160 through 167 will not be
available for control relay assignments. If a 16pt module is used in Slot 6 and/or Slot 7 for a DL340 CPU,
160–167 and/or 170–177 are not available for control relay assignments. Also, even though you are
using these points as I/O, you still enter them as C160–C167/C170–C177 in DirectSOFT.
Bases, Expansion Bases
and I/O Configuration
Configuration 2 shows a 16 point I/O module in the slot next to the CPU and the
address range of 700–707 for the last slot. This is the maximum I/O configuration for
a 10 slot local CPU base. When jumper switch SW2 is set to the “700” position the
address range for the last slot is set to 700–707 making addresses 000–007 and
100–107 available for use in the first slot. The position of jumper switch SW2 can limit
the amount of I/O addresses available to the larger expansion bases since
expansion I/O numbering would normally start with address 700.
Total I/O: 136
*See note below regarding
points 160–167 and
170–177.
CPU
Bases and
Expansion Bases
The next two configurations show a local CPU base using 16 point I/O modules and
the two possibilities for how to configure the base to use the maximum number of I/O
points.
Bases and
Expansion Bases
10 Slot Expansion
Base with
16 Point I/O
4–24
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
10 Slot Base and
5 Slot Expansion
Base with
16 Point I/O
Total I/O: 176
Jumper
SW2
700
Jumper
SW1
100
EXP
EXP
700
to
707
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
170 160
to
to
177 167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
100
to
107
6 5
4
Bases, Expansion Bases
and I/O Configuration
Bases and
Expansion Bases
8 7
750
to
757
740
to
747
730
to
737
720
to
727
710
to
717
3 2
C
P
U
CPU
DL305
1 0
DL340 only
DL305
BASE BASE
1,3
2
*NOTE: If a 16pt module is used in Slot 6 for the DL330 or DL330P CPU, 160 through 167 will not be
available for control relay assignments. If a 16pt module is used in Slot 6 and/or Slot 7 for a DL340 CPU,
160–167 and/or 170–177 are not available for control relay assignments. Also, even though you are
using these points as I/O, you still enter them as C160–C167/C170–C177 in DirectSOFT.
4–25
Bases, Expansion Bases, and I/O Configuration
10 Slot Base and
10 Slot Expansion
Base with
8 Point I/O
I/O addresses change depending on the point configuration in the local CPU base.
Notice, when the local CPU base contains only 8 point I/O modules, addresses
110–117, 120–127 and 130–137 are available for use in the expansion base. When
the local CPU base has 16 point I/O modules, which use the I/O addresses 110–117,
120–127 and 130–137, these addresses are taken up and are not available for use
in the expansion base.
Total I/O: 152
Jumper
SW2
Jumper
SW1
100
EXP
EXP
100
to
107
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
DL305
C
P
U
SW2
700
SW1
100
EXP
EXP
760
to
767
750
to
757
740
to
747
730
to
737
720
to
727
710
to
717
700
to
707
130
to
137
120
to
127
110
to
117
CPU
DL305
Total I/O: 184
Jumper
SW2
700
100
EXP
Jumper
SW1
8 7
6 5
3 2
1 0
070
to
077
060
to
067
050
to
057
040
to
047
030
to
037
020
to
027
010
to
017
000
to
007
170
to
177
160
to
167
150
to
157
140
to
147
130
to
137
120
to
127
110
to
117
100
to
107
SW2
700
4
EXP
C
P
U
DL305
SW1
DL340 only
100
EXP
760
to
767
750
to
757
740
to
747
730
to
737
720
to
727
710
to
717
700
to
707
CPU
EXP
CPU
DL305
*NOTE: If a 16pt module is used in Slot 6 for the DL330 or DL330P CPU, 160 through 167 will not be
available for control relay assignments. If a 16pt module is used in Slot 6 and/or Slot 7 for a DL340 CPU,
160–167 and/or 170–177 are not available for control relay assignments. Also, even though you are
using these points as I/O, you still enter them as C160–C167/C170–C177 in DirectSOFT.
Bases, Expansion Bases
and I/O Configuration
10 Slot Base and
10 Slot Expansion
Base with
16 Point I/O
CPU
Bases and
Expansion Bases
700
Bases and
Expansion Bases
Expansion
Addresses Depend
on Local CPU Base
Configuration.
4–26
Calculating the Power Budget
Managing your
Power Resource
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
When you determine the types and quantity of I/O modules you will be using in the
DL305 system it is important to remember there is a limited amount of power
available from the power supply. We have provided a chart to help you easily see the
amount of power available with each base. The following chart will help you calculate
the amount of power you need with your I/O selections. At the end of this section you
will also find an example of power budgeting and a worksheet for your own
calculations.
If the I/O you choose exceeds the maximum power available from the power supply
you can resolve the problem in one of two ways:
S Shift some of the modules to an expansion base which contains another
power supply.
S If a 5 slot base is being used, replace it with an 8 or 10 slot base. This
will provide more power on the 9V and 24V power supplies.
WARNING: It is extremely important to calculate the power budget. If you exceed
the power budget, the system may operate in an unpredictable manner which may
result in a risk of personal injury or equipment damage.
Auxiliary Base
Power Source
Bases, Expansion Bases
and I/O Configuration
Base Power
Specifications
There is 24 VDC available from the 24 VDC output terminals on the bases (except
D3–05BDC). The 24 VDC can be used to power external devices or DL305 modules
that require external 24 VDC. The power used from this supply reduces the internal
system 24 VDC available to the modules by an equal amount. When using the 24
VDC output at the base terminal it is not recommended to exceed 100mA.
This chart shows the amount of current available for the three voltages supplied on
DL305 bases. Use these currents when calculating the power budget for your
system.
Bases
5V Power
Supplied in
mA
9V Power
Supplied in
mA
24V Power
Supplied in
mA
Auxiliary
24 VDC
Output at
Base Terminal
D3–05B
1400
800
500
Yes
D3–05BDC
1400
800
500
None
D3–08B
1400
1700
600
Yes
D3–10B
1400
1700
600
Yes
NOTE: The total current for the D3–05B and D3–05BDC should not exceed 2.3
Amps. The base currents listed for the D3–08B and the D3–10B are for operating
ambient temperatures between 0° C and 50° C.
4–27
Bases, Expansion Bases, and I/O Configuration
The next three pages show the amount of maximum current required for each of the
DL305 modules. The column labeled “External Power Source Required” is for
module operation and is not for field wiring. Use these currents when calculating the
power budget for your system. If 24 VDC is needed for external devices, the 24 VDC
(100mA maximum) output at the base terminal strip may be used as long as the
power budget is not exceeded.
5V Power
Required in
mA
9V Power
Required in
mA
24V Power
Required in
mA
External
Power Source
Required
D3–330
300
50
0
None
D3–330P
300
50
0
None
D3–340
300
20
0
None
F3–OMUX–1
300
0
0
None
F3–OMUX–2
300
0
150
None
F3–PMUX
500
0
0
None
F3–RTU
300
0
0
0
D3–08ND2
0
10
112
None
D3–16ND2–1
0
25
224
None
D3–16ND2–2
0
24
209
None
D3–16ND2F
0
25
224
None
F3–16ND3F
0
148
68
None
D3–08NA–1
0
10
0
None
D3–08NA–2
0
10
0
None
D3–16NA
0
100
0
None
D3–08NE3
0
10
0
None
D3–16NE3
0
130
0
None
Bases and
Expansion Bases
Module Power
Requirements
CPUs
Bases and
Expansion Bases
Specialty CPUs
DC Input
Modules
AC/DC Input
Modules
Bases, Expansion Bases
and I/O Configuration
AC Input
Modules
4–28
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Module Power
Requirements
(continued)
5V Power
Required in
mA
9V Power
Required in
mA
24V Power
Required in
mA
External
Power Source
Required
D3–08TD1
0
20
24
None
D3–08TD2
0
30
0
None
D3–16TD1–1
0
40
96
None
D3–16TD1–2
0
40
96
None
D3–16TD2
0
180
0
None
D3–04TAS
0
12
0
None
F3–08TAS
0
80
0
None
D3–08TA–1
0
96
0
None
D3–08TA–2
0
160
0
None
F3–16TA–1
0
160
0
None
D3–16TA–2
0
400
0
None
D3–08TR
0
360
0
None
F3–08TRS–1
0
296
0
None
F3–08TRS–2
0
296
0
None
D3–16TR
0
480
0
None
D3–04AD
0
55
0
24VDC @
65mA max
F3–04ADS
0
183
50
None
F3–08AD
0
25
37
None
F3–08TEMP
0
25
37
None
F3–08THM–n
0
50
34
None
F3–16AD
0
33
47
None
D3–02DA
0
80
0
24VDC @
170mA max
F3–04DA–1
0
144
108
None
F3–04DA–2
0
144
108
None
F3–04DAS
0
154
145
None
DC Output
Modules
AC Output
Modules
Bases, Expansion Bases
and I/O Configuration
Relay Output
Modules
Analog
4–29
Bases, Expansion Bases, and I/O Configuration
24V Power
Required in
mA
External
Power Source
Required
D3–232–DCU
500
0
0
Optional 5VDC
@ 500mA
D3–422–DCU
500
0
0
Optional 5VDC
@ 500mA
F3–UNICON
0
0
0
(24 VDC or
5 VDC) @
100mA
F3–AB128–R
0
205
0
None
F3–AB128–T
0
205
0
None
F3–AB128
0
90
0
None
F3–AB64
0
90
0
None
D3–08SIM
0
10
112
None
D3–HSC
0
70
0
None
D3–PWU
800
0
0
Optional 5VDC
@ 800mA
D3–HP
50
50
0
Optional
D3–HPP
50
50
0
Optional
Communications
and Networking
ASCII BASIC
Modules
Bases and
Expansion Bases
9V Power
Required in
mA
Bases and
Expansion Bases
5V Power
Required in
mA
Specialty
Modules
Programming
Bases, Expansion Bases
and I/O Configuration
4–30
Bases and
Expansion Bases
Bases and
Expansion Bases
Bases, Expansion Bases, and I/O Configuration
Power Budget
Calculation
Example
Base #
The following example shows how to calculate the power budget for the DL305
system.
Module Type
5 VDC (mA)
9 VDC (mA)
24 VDC (mA) and/or
Auxiliary Base
Power Source
24 VDC Output (mA)
1
Base Used
D3–05B
1400
800
500
Slot 1
D3–330
+ 300
+ 50
+
0
Slot 2
D3–16NE3
+
0
+ 130
+
0
Slot 3
D3–16NE3
+
0
+ 130
+
0
Slot 4
F3–16TA–1
+
0
+ 160
+
0
Slot 5
F3–16TA–1
+
0
+ 160
+
0
D3–232–DCU
+ 500
+
+
0
Slot 6
Slot 7
Slot 8
Slot 9
Slot 10
Bases, Expansion Bases
and I/O Configuration
Other
Maximum power required
Remaining Power Available
800
1400 – 800 = 600 800 – 630
0
630
= 170 500 – 0
0
= 500
1. Using the tables at the beginning of the Power Budgeting section of this
chapter fill in the information for the Base, CPU, I/O modules, and any other
devices that will use system power including devices that use the 24 VDC
output. Pay special attention to the current supplied by the base which you
have selected since they do differ. Devices which fall into the “Other”
category are devices such as the Data Communications Unit and the
Handheld programmer which plug onto the CPU.
2. Add the current columns starting with slot 1 and put the total in the row
labeled “Maximum power required”.
3. Subtract the row labeled “Maximum power required” from the row labeled
“Base Used”. Place the difference in the row labeled “Remaining Power
Available”.
4. If “Maximum Power Required” is greater than “Base Used” in any of the
three columns, the power budget will be exceeded. It will be unsafe to use
this configuration and you will need to restructure your base/module
configuration.
4–31
Bases, Expansion Bases, and I/O Configuration
Base #
This blank chart is provided for you to copy and use in your power budget
calculations.
Module Type
5 VDC (mA)
9 VDC (mA)
24 VDC (mA) and/or
Auxiliary Base
Power Source
24 VDC Output (mA)
Bases and
Expansion Bases
Power Budget
Calculation
Worksheet
Base Used
Bases and
Expansion Bases
Slot 1
Slot 2
Slot 3
Slot 4
Slot 5
Slot 6
Slot 7
Slot 8
Slot 9
Slot 10
Other
Remaining Power Available
1. Using the tables at the beginning of the Power Budgeting section of this
chapter fill in the information for the Base, CPU, I/O modules, and any other
devices that will use system power including devices that use the 24 VDC
output. Pay special attention to the current supplied by the base which you
have selected since they do differ. Devices which fall into the “Other”
category are devices such as the Data Communications Unit and the
Handheld programmer which plug onto the CPU.
2. Add the current columns starting with slot 1 and put the total in the row
labeled “Maximum power required”.
3. Subtract the row labeled “Maximum power required” from the row labeled
“Base Used”. Place the difference in the row labeled “Remaining Power
Available”.
4. If “Maximum Power Required” is greater than “Base Used” in any of the
three columns, the power budget will be exceeded. It will be unsafe to use
this configuration and you will need to restructure your base/module
configuration.
Bases, Expansion Bases
and I/O Configuration
Maximum power required
I/O Module Selection
& Wiring Guidelines
In This Chapter. . . .
15
Ċ I/O Selection Considerations
Ċ Sinking and Sourcing Circuits
Ċ DL305 Input Module Configuration Chart
Ċ DL305 Output Module Configuration Chart
Ċ Configuration #1 DL305 DC Current Sourcing Input Module
Ċ Configuration #2 DL305 DC Current Sinking/Sourcing Input
Module
Ċ Configuration #3 DL305 DC Current Sinking Input Module
Ċ Configuration #4 DL305 AC/DC Input Module
Ċ Configuration #5 DL305 AC Input Module
Ċ Configuration #6 DL305 DC Current Sinking Output Module
Ċ Configuration #7 DL305 DC Current Sourcing Output Module
Ċ Configuration #8 DL305 AC/DC Current Sink/Source (Relay)
Output Module
Ċ Configuration #9 DL305 AC Output Module
Ċ Solid State Field Device Wiring to DC Input Modules
Ċ Derating Characteristics
Ċ I/O Wiring Guidelines
Ċ Fuse Protection
5–2
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
I/O Selection Considerations
I/O Module
Selection
The DL305 product family offers various types of I/O modules for interfacing many
different field devices to the PLC system. There are several electrical characteristics
that should be considered when choosing the proper I/O module for a field device or
for obtaining required system performance. Electrical characteristics for discrete
input modules and discrete output modules are discussed in Chapters 6 and 7. The
DL305 family also offers several specialized modules such as analog, ASCII BASIC
modules, network interface modules, high speed counter modules, etc. These
modules have their own manuals, so if you are using them you should supplement
this manual with the manual specifically designed for the special module.
Sinking and Sourcing Circuits
I/O Module Selection
& Wiring Guidelines
The charts on the following page supply information on the current sinking and
current sourcing configurations using DL305 discrete I/O modules. If you have a
question about the type of device required to connect to a particular module please
refer to the following charts. The charts show nine common input and output module
configurations. Match the module part number you are considering to the applicable
configuration(s) to ensure the module type will work in your application.
For additional clarification we have included nine diagrams depicting the
configurations listed in the charts. These diagrams show the module category, type
of device and how they are connected to each other. The diagrams and two
examples of wiring a solid state switch to an input module follow the charts on the
next page.
5–3
I/O Module Selection & Wiring Guidelines
DL305
Input Module
Type
Config #1
DC Current
Sourcing Input
D3–08ND2
✔
D3–16ND2–1
✔
D3–16ND2–2
✔
D3–16ND2F
✔
Config #2
DC Current
Sink/Sourcing
Input
Config #3
DC Current
Sinking Input
Config #4
AC/DC Input
Config #5
AC Input
I/O Module
Selection Criteria
DL305 Input Module Configuration Chart
✔
F3–16ND3F
D3–08NA–1
✔
D3–08NA–2
✔
D3–16NA
✔
D3–08NE3
✔
✔
✔
✔
✔
D3–16NE3
✔
✔
✔
✔
✔
DL305 Output Module Configuration Chart
DL305
Output Module
Type
D3–08TD1
Config #6
DC Current Sinking
Output
Config #9
AC Output
✔
✔
D3–08TD2
D3–16TD1–1
✔
D3–16TD1–2
✔
D3–16TD2
Config #7
Config #8
DC Current Sourcing AC/DC Current
Output
Sink/Sourcing
Output
✔
✔
D3–08TA–1
✔
D3–08TA–2
✔
F3–16TA–1
✔
D3–16TA–2
✔
D3–08TR
✔
F3–08TRS–1
✔
F3–08TRS–2
✔
D3–16TR
✔
D3–04TAS
✔
I/O Module Selection
& Wiring Guidelines
F3–08TAS
5–4
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
Configuration #1
DL305 DC Current Sourcing Input Module
Device
Common
Device
Common
Sinking
Field
Device
Sinking
Field
Device
Sourcing
Input Module
Device
Output
Current Flow
Device
Output
Module
Input
Current Flow
Current Flow
–
+
DC Supply
Module
Input
Module
Common
Note: Some modules may have their own
internal power supply and do not require an
external supply as shown here. See
individual input voltage specifications to find
out power supply requirements.
Configuration #2
DL305 DC Current Sinking/Sourcing Input Module
Device
Common
Sourcing
Field
Device
Sink/Source
Input Module
Device
Output
Current Flow
Current Flow
+
Module
Input
Module
Common
}
Current
Sinking Input
Configuration
–
I/O Module Selection
& Wiring Guidelines
DC Supply
Device
Common
Sinking
Field
Device
Device
Output
Current Flow
Current Flow
–
+
DC Supply
REV A–1
Module
Input
Module
Common
}
Current
Sourcing
Input
Configuration
5–5
I/O Module Selection & Wiring Guidelines
Device
Common
Device
Common
Sourcing
Field
Device
Sourcing
Field
Device
Sinking
Input Module
Device
Output
Current Flow
Device
Output
Module
Input
Module
Input
Current Flow
Current Flow
+
I/O Module
Selection Criteria
Configuration #3
DL305 DC Current Sinking Input Module
Module
Common
–
DC Supply
Configuration #4
DL305 AC/DC Input Module
Device
Common
Field
Device
AC/DC
Input
Module
Device
Output
–
+
Or
Module
Input
Module
Common
+ –
DC Supply
Field
Device
Device
Output
Module
Input
Module
Common
AC Supply
I/O Module Selection
& Wiring Guidelines
Device
Common
5–6
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
Configuration #5
DL305 AC Input Module
Device
Common
Field
Device
Device
Output
AC Input
Module
Module
Input
Module
Common
AC Supply
Device
Common
Field
Device
Device
Output
Module
Input
Module
Common
I/O Module Selection
& Wiring Guidelines
AC Supply
5–7
I/O Module Selection & Wiring Guidelines
Load
Device
Common
Device
Common
Sourcing
Field
Device
Sourcing
Field
Device
Sinking Output
Module
Device
Input
Current Flow
Device
Input
Module
Output
I/O Module
Selection Criteria
Configuration #6
DL305 DC Current Sinking Output Module
Module
Output
Current Flow
Load
Current Flow
Module
Common
+ –
DC Supply
Configuration #7
DL305 DC Current Sourcing Output Module
Load
Device
Common
Device
Common
Sinking
Field
Device
Sinking
Field
Device
Sourcing
Output Module
Device
Input
Current Flow
Device
Input
Module
Output
Module
Output
Current Flow
Load
+
DC Supply
Current Flow
Module
Common
I/O Module Selection
& Wiring Guidelines
–
5–8
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
Configuration #8
DL305 AC/DC Current Sink/Source (Relay) Output Module
Load
Device
Common
Field
Device
Relay Output
Module
Device
Input
–
+
Or
Module
Output
Module
Common
+ –
DC Supply
Load
Device
Common
Field
Device
Device
Input
Module
Output
Module
Common
AC Supply
Configuration #9
DL305 AC Output Module
Load
Device
Common
Field
Device
Device
Input
AC Output
Module
Module
Output
Module
Common
AC Supply
I/O Module Selection
& Wiring Guidelines
Load
Device
Common
Field
Device
Device
Input
Module
Output
Module
Common
AC Supply
5–9
I/O Module Selection & Wiring Guidelines
NPN Field Device
Example
24VDC
+
–
+
I/O Module
Selection Criteria
Solid State Field Device Wiring to DC Input Modules
D3–08ND2 Input Module
Sensor
Input
Output
–
+
–
Optical
Isolator
Common
(NPN) Current Sinking
Field Device
Current Sourcing
Configuration
PNP Field Device
Example
D3–16NE3 Input Module
24VDC
+
–
+
Sensor
Common
Output
Input
–
Current Sinking
Input Module
I/O Module Selection
& Wiring Guidelines
(PNP) Current Sourcing
Field Device
Optical
Isolator
5–10
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
Derating Characteristics
The DL305 input and output module operating specifications change depending on
ambient temperature. The I/O specifications have a derating chart for each module
which shows functionality in respect to ambient temperature.
The example below shows a derating curve for a D3–08ND2 discrete input module
where the operating specifications do not change within the specified temperature
operating range.
Points
8
6
4
2
0
0
32
10
50
20
68
30
86
40
104
50
122
60°C
140° F
Ambient Temperature (°C/°F)
The example below shows a derating curve for a D3–16TD–1 discrete output
module where the operating specifications are affected depending on ambient
temperature.
Points
16
0.25A
0.35A
12
I/O Module Selection
& Wiring Guidelines
8
0.5A
4
0
0
32
10
50
20
68
30
86
40
104
Ambient Temperature (°C/°F)
50
122
60°C
140° F
5–11
I/O Module Selection & Wiring Guidelines
General
Considerations
The following information is to give you a general idea on how to wire the different
types of modules in the DL305 system. For specific information on wiring a particular
module refer to the specification sheet in the appropriate I/O chapter.
Consider the following guidelines when connecting the field wring.
1. There is a maximum AWG the modules can accept. You can uses a smaller
AWG than is noted in the table below.
Module type
Maximum AWG
8 point
12
16 point
16
I/O Module
Selection Criteria
I/O Wiring Guidelines
2. Always use a continuous length of wire, do not combine wires to attain a
desired length.
3. Use the shortest possible cable length.
4. Use wire trays for routing where possible
5. Avoid running wires near high energy wiring.
6. Avoid running input wiring in close proximity to output wiring where
possible.
7. To minimize voltage drops when wires must run a long distance , consider
using multiple wires for the return line.
8. Avoid running DC wiring in close proximity to AC wiring where possible.
9. Avoid creating sharp bends in the wires.
Wiring the Different There are three main types of module faces for the DL305 I/O. These module faces
are: lift covers over terminal blocks, flip covers over terminal blocks and D–shell
Module Types
compatible sockets. If the module you are using has a cover you can remove the
cover either by lifting from the bottom or by flipping the door open. Some of the
modules have removable terminal blocks. These modules can be recognized by the
squeeze tabs on the top and bottom of the terminal block. To remove the terminal
block, press the squeeze tabs and pull the block away from the module.
WARNING: For some modules, field device power may still be present on the terminal
block even though the PLC system is turned off. To minimize the risk of electrical
shock, check all field device power before you remove the connector.
Squeeze Tab
Removable Cover
Squeeze Tab
Removable
Terminal Block
I/O Module Selection
& Wiring Guidelines
D-shell
Connector
5–12
I/O Module
Selection Criteria
I/O Module Selection & Wiring Guidelines
Fuse Protection
To help avoid blowing the internal module fuses, we suggest you add external fuses
to your I/O wiring. A fast blow fuse with a lower current rating than the I/O module
fuse can be added to each common. Or, you can add a fuse with a rating of slightly
less than the maximum current per output point to each output. Refer to the I/O
module specification sheets to find the maximum current per point or per common
for output modules. Adding the external fuse does not guarantee the prevention of
module damage, but it will provide added protection.
External Fuse
Example
External Fuses
(shown with DIN Rail, Fuse Blocks)
I/O Module Selection
& Wiring Guidelines
WARNING: For modules which have soldered-in or non-replaceable fuses, we
recommend that you return the module to us and let us replace your blown fuse(s)
since the module fuses are attached to the board and disassembling the module will
void your warranty.
Discrete Input
Modules
In This Chapter. . . .
16
Ċ Discrete Input Module Identification and Terminology
Ċ D3-08ND2, 24 VDC Input Module
Ċ D3-16ND2-1, 24 VDC Input Module
Ċ D3-16ND2-2, 24 VDC Input Module Module
Ċ D3-16ND2F, 24 VDC Fast Response Input Module
Ċ F3-16ND3F, TTL/24 VDC Fast Response Input Module
Ċ D3-08NA-1, 110 VAC Input Module
Ċ D3-08NA-2, 220 VAC Input Module
Ċ D3-16NA, 110 VAC Input Module
Ċ D3-08NE3, 24 VAC/DC Input Module
Ċ D3-16NE3, 24 VAC/DC Input Module
Ċ D3-08SIM, Input Simulator
6–2
Discrete Input Modules
Discrete Input
Modules
Discrete Input Module Identification and Terminology
This chapter contains I/O specification sheets for the discrete input modules. The
diagram below shows the status indicator location for some of the most common
discrete input modules.
Discrete Input
Module Status
Indicators
Squeeze Tab
Squeeze Tab
Discrete Input
Modules
Removable Cover
Color Coding of I/O The DL305 family of I/O modules has a color coding scheme to help you identify
whether the module is an input module, an output module or a special module. This
Modules
is done through a color bar indicator located on the front of each module below the
part number. The following color scheme is used.
Color Bar
å
110VAC INPUT
D3–16NA
I
I
0
1
2
3
C
0
1
2
3
4
5
6
7
C
0
4
5
6
7
0
1
2
3
4
5
6
7
II
Module Type
Discrete/Analog Output
Discrete/Analog Input
Other
Color Code
Red
Blue
White
1
2
3
4
5
6
7
Input Module
Selection
II
Your input module selection depends on the field devices used and system
performance requirements. The input module specifications in this chapter list the
information needed for choosing the correct module for a field device and to assure it
meets the system requirements. The following list defines the specifications listed in
this chapter.
6–3
Discrete Input Modules
Commons Per
Module
Number of commons per module and their electrical characteristics.
Input Voltage
Range
The operating voltage range of the input circuit. DL305 input modules require either
an internal or external power supply for the operating voltage. The base power
supply will provide the internal voltage.
Peak Voltage
Maximum voltage allowed for the input circuit.
AC Frequency
AC modules are designed to operate within a specific frequency range. 60 Hz is the
standard AC frequency in the U.S., 50 Hz is common in other countries.
ON Voltage Level
The voltage level at which the input point will turn ON.
OFF Voltage Level
The voltage level at which the input point will turn OFF.
Input Current
Typical operating current for an active (ON) input.
Input Impedance
Input impedance can be used to calculate input current for a particular operating
voltage.
Minimum ON
Current
The minimum current for the input circuit to operate reliably in the ON state.
Maximum OFF
Current
The maximum current for the input circuit to operate reliably in the OFF state.
Base Power
Required
Power from the base power supply is used by the DL305 input modules and varies
between different modules. The guidelines for using module power is explained in
the power budget configuration section in chapter 4.
OFF to ON
Response
The time the module requires to process an OFF to ON state transition.
ON to OFF
Response
The time the module requires to process an ON to OFF state transition.
Terminal Type
Indicates whether the terminal type is a removable or non-removable connector or
terminal.
Status Indicators
LEDs indicate the ON/OFF status of an input point. These LEDs are electrically
located on either the logic side or the field device side of the input circuit.
Weight
Indicates the weight of the module. (See Appendix D for a complete listing of DL305
component weights.)
Discrete Input
Modules
Indicates number of input points per module and designates current sinking, current
sourcing, or either.
Discrete Input
Modules
Inputs Per Module
6–4
Discrete Input Modules
Discrete Input
Modules
D3–08ND2, 24 VDC Input Module
Inputs per module
Commons per module
Input voltage range
Input voltage
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
8 (current sourcing)
2 (internally connected)
18–36VDC
Internally supplied
40 VDC
N/A
<3V
>18 V
1.8 K ohm
12 mA Max
7 mA
3 mA
Base power required
9V 10 mA Max
24V 14mA/ON pt.
(112 mA Max)
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
4–15 ms
4–15 ms
Non–removable
Field side
4.2 oz. (120 g)
Derating Chart for D3–08ND2
Points
24VDC INPUT
8
Discrete Input
Modules
D3–08ND2
Internallly
Connected
C1
0
4
1
5
2
6
3
7
6
4
2
0
1
C
1
2
3
0 1
4
5
2 3
6
7
4 5
0
0
32
Common
10
20
30
40
50
60 °C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
24VDC
– +
Other 7
Circuits
9V
6 7
C2
C
2
Input
1.8k
Optical
Coupler
6–5
Discrete Input Modules
D3–16ND2–1, 24 VDC Input Module
16 (current sourcing)
2 (internally connected)
18–36VDC
Internally supplied
36VDC
N/A
< 3V
>19 V
1.8 K ohm
20 mA Max
5 mA
1 mA
Base power required
9V 25 mA Max
24V 14mA/ON pt.
(224 mA Max)
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
3–15 ms
4–15 ms
Removable
Field side
6.3 oz. (180 g)
Discrete Input
Modules
Inputs per module
Commons per module
Input voltage range
Input voltage
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
Derating Chart for D3–16ND2–1
Points
16
24VDC INPUT
Discrete Input
Modules
D3–16ND2–1
12
I
Internally
Connected
CI
Common
I
0
2
0
1
2
3
4
5
6
7
II
8
4
C
0
1
0
32
2
3
4
3
4
5
6
10
20
30
40
50
60°C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
5
6
7
7
C
CII
0
0
1
1
2
Common
24VDC
– +
Other 15
Circuits
2
9V
3
3
4
4
0.1µF
5
5
1.5k
6
6
7
4
5
6
7
0
1
Common
0
1
2
3
7
II
Input
1.8k
Optical
Coupler
6–6
Discrete Input Modules
Discrete Input
Modules
D3–16ND2–2, 24 VDC Input Module Module
Inputs per module
Commons per module
Input voltage range
Input voltage
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
16 (current sourcing)
8 internally connected
18–36 VDC
Internally supplied
36 VDC
N/A
<3V
> 19 V
2.2 K ohm
20 mA Max
5 mA
2 mA
Base power required
9V 3mA+1.3mA/ON pt
(24 mA Max)
24V 1mA+13mA/ON pt
(209 mA Max)
OFF to ON response
ON to OFF response
Terminal type
4–15 ms
4–15 ms
24 Pin Removable
connector
Status indicators
Weight
Field side
5.3 oz. (150 g)
Derating Chart for D3–16ND2–2
Points
24VDC INPUT
16
D3–16ND2–2
Discrete Input
Modules
A 1 B
DC GRND
DC GRND
0
1
2
3
4
5
6
Internally
7 Connected
I
C
0
1
2
3
4
5
6
7
C
12
II
I
II
12
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
8
A
0
2
4
6
C
C
0
2
4
6
C
C
B
1
3
5
7
C
C
1
3
5
7
C
C
4
0
0
32
Input
10
20
30
40
50
60 °C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
2.2K
Internal
Power
Supply
9V
680 Ω
24VDC
– +
Common
Optical
Coupler
6–7
Discrete Input Modules
D3–16ND2F, 24 VDC Fast Response Input Module
16 (current sourcing)
2 (internally connected)
18–36VDC
Internally supplied
36VDC
N/A
< 13V
>19 V
1.8 K ohm
20 mA Max
5 mA
1 mA
Base power required
9V 25 mA Max
24V 14 mA/ON pt.
(224 mA Max)
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
0.8 ms
0.8 ms
Removable
Field side
6.3 oz. (180 g)
Discrete Input
Modules
Inputs per module
Commons per module
Input voltage range
Input voltage
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
Derating Chart for D3–16ND2F
Points
16
24VDC INPUT
I
Internally
Connected
CI
Common
I
0
1
0
1
2
3
4
5
6
7
12
II
8
C
4
1
0
2
3
4
0
32
3
4
5
6
10
20
30
40
50
60°C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
5
6
7
7
C
CII
0
0
1
1
2
2
Common
24VDC
– +
Other 15
Circuits
3
3
4
9V
4
0.1µF
5
5
1.5k
6
6
7
4
5
6
7
0
2
Common
0
1
2
3
Discrete Input
Modules
D3–16ND2F
7
II
Input
1.8k
Optical
Coupler
6–8
Discrete Input Modules
Discrete Input
Modules
F3–16ND3F, TTL/24 VDC Fast Response Input Module
Inputs per module
16 sink/source
(jumper selectable
sink/source)*
Base power required
2 (non-isolated)
5 VDC TTL & CMOS,
12–24 VDC
(jumper selectable)*
Internal (used with
sinking loads)
External (used with
sourcing loads)
100 VDC
(35 VDC Continuous)
Input impedance
OFF to ON response
9V 148 mA Max
24V 68 mA Max
1 mA @ 5VDC
3 mA @ 12–24 DC
4.7K
1 ms
ON to OFF response
1 ms
Maximum input rate
500 Hz
Minimum ON current
0.4 mA @ 5VDC
0.9 mA @ 12–24VDC
Maximum OFF current
AC frequency
ON voltage level
N/A
0–1.5VDC @ 5VDC
0–4VDC @ 12–24VDC
Terminal type
Status indicators
0.8 mA @ 5VDC
2.2 mA @ 12–24VDC
Removable
Logic side
OFF voltage level
3.5–5VDC @ 5VDC
10–24VDC @12–24VDC
Weight
5.4 oz. (153 g)
Commons per module
Input voltage range
Input voltage supplied
Discrete Input
Modules
Peak voltage
* 12 Inputs are jumper selectable for
5VDC/12–24VDC and Sink Load/Source
Load
4 Inputs are jumper selectable for
5VDC/12–24VDC and Sink Load/Source
Load
Input current
TTL/24VDC INPUT
F3–16ND3F
I
Internally
Connected
CI
Common
I
0
0
1
2
2
3
3
4
5
6
7
C
O
M
0
1
2
3
4
5
6
7
6
CII
C
O
M
1
4
Common
0
1
2
3
5
1
7
0
2
3
4
5
6
7
Sinking Load Configuration
II
4
5
6
7
0
1
2
3
4
5
6
7
II
Derating Chart for F3–16ND3F
Points
16
12
8
4
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
6–9
Discrete Input Modules
+V
Internal
Power
Sources
–
TTL
+VCC
Discrete Input
Modules
Common
5VDC
– +
To other 12
or 4 circuits
+
15VDC
12-24
VDC
Source Sink
4.7k
Optical
Coupler
Input
Jumper selected for 12–24VDC, sinking load configuration
+V
Common
Internal
Power
Sources
5VDC
– +
–
To other 12
or 4 circuits
+
15VDC
12-24
VDC
TTL
+VCC
12-24
VDC
Source Sink
Optical
Coupler
Input
Jumper selected for sourcing load configuration. An external power supply must be used in this configuration.
The DC power to sense the state of the inputs when jumpers are installed for sinking
type signals is provided by the rack power supply. Sinking type inputs are turned ON
by switching the input circuit to common. Source type input signals assume the ON
state until the input device provides the voltage to turn the input OFF.
Selection of Operating Mode:
The mode of operation, either 5VDC or 12–24VDC sink or source, for each group of
circuits is determined by the position of jumper plugs on pins located on the edge of
the circuit board. There are four sets of pins (3 pins in each set), with two sets for
each group of inputs. The first two sets of pins are used to configure the first 12 inputs
(eg. 0 to 7 and 100 to 103) and are labeled 12 CIRCUITS. Above the first set of pins
are the labels 12/24V and 5V. Above the second set of pins are the labels SINK and
SRC (source). To select an operating mode for the first 12 circuits, place a jumper on
the two pins nearest the appropriate labels. For example, to select 24VDC Sink input
operation for the first 12 inputs, place a jumper on the two pins labeled 12/24V and on
the two pins labeled SINK. The last two sets of pins are used to configure the last 4
inputs (eg. 104 to 107) and are labeled 4 CIRCUITS. The operating mode selected
for the last group of 4 inputs can be different than the mode chosen for the first group
of 12 inputs. Correct module operation requires each set of three pins have a jumper
installed (four jumpers total).
NOTE: When a group of inputs are used with TTL logic, select the SINK operating
mode for that group. “Standard” TTL can sink several milliamps but can source less
than 1 mA.
Discrete Input
Modules
4.7k
6–10
Discrete Input Modules
Discrete Input
Modules
D3–08NA–1, 110 VAC Input Module
Inputs per module
Commons per module
Input voltage range
Input voltage supply
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
8
2 (isolated)
85–132VAC
External
132VAC
47–63 Hz
>80 VAC
<20 VAC
10 K ohm
15 mA @ 50 Hz
18 mA @ 60 Hz
Minimum ON current
Maximum OFF current
Base power required
8 mA
2 mA
9V 10 mA Max
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
10–30 ms
10–60 ms
Non–removable
Field side
5 oz. (140 g)
Derating Chart for D3–08NA–1
Points
8
Discrete Input
Modules
110VAC INPUT
D3–08NA–1
0
4
1
5
2
6
C1
3
7
0
1
C
1
2
3
0 1
4
5
2 3
6
7
4 5
110VAC
6
4
2
0
0
32
110VAC
Common
Line
6 7
110VAC
10
20
30
40
50
60 °C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
2.2k
0.33µF
Optical
Coupler
9V
C2
C
2
Input
6–11
Discrete Input Modules
D3–08NA–2, 220 VAC Input Module
8
2 (isolated)
180–265VAC
External
265 VAC
50–60Hz
>180 VAC
< 40 VAC
18 K ohm
13 mA @ 50 Hz
18 mA @ 60 Hz
Minimum ON current
Maximum OFF current
Base power required
10 mA
2 mA
9V 10 mA max
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
5–50 ms
5–60 ms
Non–removable
Field side
5 oz. (140 g)
Discrete Input
Modules
Inputs per module
Commons per module
Input voltage range
Input voltage supply
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Derating Chart for D3–08NA–2
Points
220VAC INPUT
180–265VAC
Line Neut
C1
0
4
1
5
2
6
3
7
Discrete Input
Modules
8
D3–08NA–2
6
4
2
0
1
C
1
2
3
0 1
4
5
2 3
6
7
4 5
0
0
32
10
20
30
40
50
60°C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
270
185–265
VAC
Line
Common
Optical
Coupler
6 7
Line Neut
180–265VAC
9V
C2
C
2
470K
Input
1K .15µF
6–12
Discrete Input Modules
Discrete Input
Modules
D3–16NA, 110 VAC Input Module
Inputs per module
Commons per module
Input voltage range
Input voltage supply
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
16
2 (isolated)
80–132VAC
External
132VAC
50–60 Hz
>80 VAC
<15 VAC
8 K ohm
16 mA @ 50 Hz
25 mA @ 60 Hz
Minimum ON current
Maximum OFF current
Base power required*
8 mA
1.5 mA
9V 6.25 mA Max/ON ppt.
100mA max
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
5–50 ms
5–60 ms
Removable
Logic side
6.4 oz. (180 g)
* 9V typical values are 4 mA/ON pt., 64 mA total
Derating Chart for D3–16NA
Discrete Input
Modules
Points
16
110VAC INPUT
D3–16NA
12
I
80–132VAC
Common
CI
I
0
Line
2
4
5
6
7
II
8
4
C
0
1
0
32
3
4
5
6
10
20
30
40
50
60°C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
5
6
7
7
C
CII
0
0
1
1
2
2
110VAC
Line
Common
9V
Other 7
Circuits
3
3
4
4
0.33µF
5
5
6
6
7
0
1
2
3
2
4
Line
4
5
6
7
0
1
3
80–132VAC
Common
0
1
2
3
7
II
Input 150k
Optical
Coupler
6–13
Discrete Input Modules
D3–08NE3, 24 VAC/DC Input Module
8 (sink/source)
2 (isolated)
20–28 VAC/VDC
External
28 VAC/VDC
47–63 Hz
>20 V
<6V
1.5 K ohm
19 mA Max
10 mA
2 mA
Base power required
9V 10 mA max
24V N/A
OFF to ON response
AC: 5–50 ms
DC: 6–30 ms
ON to OFF response
Terminal type
Status indicators
Weight
AC/DC: 5–60 ms
Non–removable
Field side
4.2 oz. (120 g)
Discrete Input
Modules
Inputs per module
Commons per module
Input voltage range
Input voltage
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
Derating Chart for D3–08NE3
Points
8
24VAC/DC INPUT
Discrete Input
Modules
D3–08NE3
6
0
4
1
5
2
6
C1
3
7
0
1
C
1
2
3
0 1
4
5
2 3
Common
24VAC/DC
4
2
0
0
32
24VAC
270
LED
+24VDC
6
7
4 5
+
10
20
30
40
50
60 °C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
Optical
Coupler
–
Common
9V
6 7
+
–
–
+
24VAC/DC
C2
Common
C
2
Input
1.5k
Sinking Module Configuration
NOTE: This module can be wired in a sourcing configuration
and it will be operational except there will be no module
LED indication for each input.
6–14
Discrete Input Modules
Discrete Input
Modules
D3–16NE3, 24 VAC/DC Input Module
Inputs per module
Commons per module
Input voltage range
Input voltage supplied
Peak voltage
AC frequency
ON voltage level
OFF voltage level
Input impedance
Input current
Minimum ON current
Maximum OFF current
16 (sink/source)
2 (isolated)
14–30VAC/VDC
External
30 VAC/VDC
47–63 Hz
>14 V
<3 V
1.8 K ohm
16 mA Max
7 mA
2 mA
Base power required
9V 2.5 mA.+4.5mA/
ON pt.(130 mA max)
24V N/A
OFF to ON response
AC 5–30 ms
DC 5–25 ms
ON to OFF response
AC 5–30 ms
DC 5–25 ms
Terminal type
Status indicators
Weight
Removable
Logic side
6 oz. (170 g)
Derating Chart for D3–16NE3
Points
16
Discrete Input
Modules
24VAC/DC INPUT
D3–16NE3
I
24VAC
Common
CI
I
0
2
12
II
Vin=30V
8
10 circuits ON
Vin=24V
4
7 circuits ON
5 circuits ON
0
C
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
3
4
5
6
5
9V
6
7
7
Common
C
CII
0
0
1
1
2
2
3
3
24VAC
24VDC
4
4
1.8k
5
5
6
6
7
4
5
6
7
2
4
24VDC
0
1
2
3
1
3
24VDC
Common
4
5
6
7
0
1
Line
0
1
2
3
16 circuits ON
Vin=18V
7
II
Input
Sinking Module Configuration
Optical
Coupler
6–15
Discrete Input Modules
D3–08SIM, Input Simulator
8
10mA @ 9VDC
112mA max @
24VDC
OFF to ON response
4–15 ms
ON to OFF response
4–15 ms
Terminal type
None
Status indicators
Switch side
Weight
3.0 oz. (85 g)
Discrete Input
Modules
Inputs per module
Base Power required
INPUT SIMULATOR
D3–08SIM
4
1
5
2
6
3
7
0
1
2
3
4
5
6
7
Discrete Input
Modules
0
Discrete Output
Modules
In This Chapter. . . .
17
Ċ Discrete Output Module Identification and Terminology
Ċ Relay Arc Suppression - DC and AC Applications
Ċ D3-08TD1, 24 VDC Output Module
Ċ D3-08TD2, 24 VDC Output Module
Ċ D3-16TD1-1, 24 VDC Output Module
Ċ D3-16TD1-2, 24 VDC Output Module
Ċ D3-16TD2, 24 VDC Output Module
Ċ D3-04TAS, 110-220 VAC Output Module
Ċ F3-08TAS, 250 VAC Isolated Output Module
Ċ D3-08TA-1, 110-220 VAC Output Module
Ċ D3-08TA-2, 110-220 VAC Output Module
Ċ F3-16TA-2, 20-125 VAC Output Module
Ċ D3-16TA-2, 110-220 VAC Output Module
Ċ D3-08TR, Relay Output Module
Ċ F3-08TRS-1, Relay Output Module
Ċ F3-08TRS-2, Relay Output Module
Ċ D3-16TR, Relay Output Module
7–2
Discrete Output Modules
Discrete Output Module Identification and Terminology
Discrete Output
Module Status
Indicators
This chapter contains I/O specification sheets for the DL305/FL305 discrete output
modules. The following diagram shows the status indicator location for some of the
most common discrete output modules.
Discrete Output
Modules
Squeeze Tab
Squeeze Tab
Removable Cover
Color Coding of I/O The DL305 family of I/O modules has a color coding scheme to help you identify
whether the module is an input module, an output module or a special module. This
Modules
is done through a color bar indicator located on the front of each module below the
part number. The following color scheme is used.
Color Bar
➥
110VAC INPUT
D3–16NA
I
Discrete Output
Modules
I
0
1
2
3
C
0
1
2
3
4
5
6
7
C
0
4
5
6
7
0
1
2
3
4
5
6
7
II
Module Type
Discrete/Analog Output
Discrete/Analog Input
Other
Color Code
Red
Blue
White
1
2
3
4
5
6
7
Output Modules
Selection
II
Your output module selection depends on the field devices used and system
performance requirements. The output module specifications in this chapter list the
information which is needed for choosing the correct module for a field device and to
assure it meets the system requirements. The following list defines the
specifications listed in this chapter.
7–3
Discrete Output Modules
Outputs Per
Module
Indicates number of output points per module and designates current sinking,
current sourcing, or either.
Commons Per
Module
Operating Voltage
Number of commons per module and their electrical characteristics.
Output Type
The output circuit can be a transistor, a triac, or a relay. The NPN or PNP transistor
outputs are normally used in low voltage or high speed DC applications. Triac
outputs are used in AC voltage applications. The Form A or C relay outputs are
normally used where a wide voltage range is needed. Relay output modules are
capable of carrying more current than a transistor or a triac output and can pass AC
or DC voltages. The disadvantage of a relay module is the internal power
consumption and the relay life expectancy.
Peak Voltage
Maximum voltage the output circuit can control.
AC Frequency
AC modules are designed to operating within a specific frequency range. 60 Hz is
the standard AC frequency in the U.S., 50 Hz is common in other countries.
ON Voltage Drop
The voltage between the output point and common during an active ON with a load.
Maximum Current
(Resistive)
Maximum Leakage
Current
Maximum Inrush
Current
The maximum current for an output with a resistive load.
Minimum Load
The minimum load across the output’s circuit for the circuit to operate properly.
Base Power
Required
Power from the base power supply is used by the DL305 output modules and varies
between different modules. The guidelines for using module power is explained in
the power budget configuration section in chapter 4.
OFF to ON
Response Time
ON to OFF
Response Time
Terminal Type
The processing time the module requires to transition from an OFF to ON state.
Status Indicators
LEDs indicate the ON/OFF status of an input point. These LEDs are electrically
located on either the logic side or the field device side of the output circuit.
Fuses
Indicates the current rating of the replaceable or non-replaceable fuse(s).
Relay Life
Amount of closures typical for a relay point before failure.
Weight
Indicates the weight of the module.
The operating voltage range of the output circuit.
Discrete Output
Modules
The maximum current of the output circuit during an OFF state.
The maximum current over a short period of time during the OFF to ON transition of a
output point. It is greater than the normal ON state current and depends on the field
device electrical characteristics.
Indicates whether the terminal type is a removable or non-removable connector or
terminal.
Discrete Output
Modules
The processing time the module requires to transition from an ON to OFF state.
7–4
Discrete Output Modules
Relay Arc Suppression – DC and AC Applications
Discrete Output
Modules
FL305 High Current
Relay Output
Module Arc
Suppression
Resistor and
Capacitor
Selection
This application note describes the addition of external contact protection to high
current isolated relay output modules. It supplements the wiring information for the
F3–08TRS–1 and F3–08TRS–2 relay output modules.
Adding external contact protection may extend a relays life beyond the number of
operations listed. High current inductive loads such as clutches, brakes, motors,
direct acting solenoid valves, and motor starters will benefit the most from external
contact protection.
C (mF) = I2 / 10
R (W) = V / 10 Ix
where x = (1 + 50 / E)
Use peak AC values for I and V, see ”Peak Voltage and Current” below.
Where I = Amperes of load current immediately prior to opening of contacts.
Where E = Source voltage immediately prior to closing of contacts.
R minimum = 0.5 W, 1/2 W
C minimum = 0.001 mF, the voltage rating of C must be w E
Resistor Tolerance For E < 70V, R may be 3 times indicated value.
For 70V < E < 100V, R may be " 50% indicated value.
For 100V < E < 150V,R may be " 10% indicated value.
For E > 150V, R may be " 5% indicated value.
Discrete Output
Modules
Peak Voltage and
Current
Adding Contact
Protection
The following equations can be used to determine Ipeak and V peak:
Ipeak = Irms / .707
Vpeak = Vrms / .707
Alternating Current
Ipeak = Iave / .636
DC Rectified Alternating Current
If the contact is switching a DC inductive load, add a diode across the load as near to
load coil as possible. Add the RC network across the relay contacts as close to the
relay as possible.
7–5
Discrete Output Modules
Resistor and
Capacitor
Nomogram
The nomogram shown below affords a convenient method of selecting the proper contact protection for P & B relays
used in F3-08TRS-1 and F3-08TRS-2 modules.
Example: Use a current (1) of 1.0 ampere and a voltage (E) of 50 volts.
Capacitance (C ) in microfarads is found directly on the left side scale, opposite 1.0 amperes as 0.1. Resistance
(R) in ohms is obtained using a straight edge. Locate 1.0 amperes (I) on the left side scale and 50 volts (E) on the
center scale. Place the straightedge on these points. The junction of the straight edge and the right side determines
R. In this example R is equal to 5.0 ohms.
R
I
10,000
10
8,000
8
6,000
4,000
3,000
4
C
CURRENT AMPERES
3
.8
.6
.4
2
.3
.2
.1
1
.08
800
600
400
300
.6
200
5
E
6
8
.02
.4
.01
.008
.3
LOAD
VOLTAGE
10
.004
300
200
20
30
.006
500
400
50
100
.2
.003
.002
100
80
60
40
30
20
.001
.1
.08
10
.06
8
6
.04
4
.03
3
2
.02
1
.01
(1) C = 12 / 10 microfarads
(2) R = E / 10 Ix ohms
For DC. For AC, use peak values
Where x = (1 + 50/E)
Discrete Output
Modules
CAPACITOR MICROFARADS
.03
1,000
.8
.06
.04
2,000
RESISTANCE OHMS
1.0
Discrete Output
Modules
6
7–6
Discrete Output Modules
D3–08TD1, 24 VDC Output Module
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
8 (current sinking)
2(internally connected)
5–24VDC
NPN
(open collector)
Peak voltage
AC frequency
ON voltage drop
Max current
45VDC
N/A
0.8V @ 0.5A
0.5A / point
1.8 / common
Max leakage current
Max inrush current
0.1 mA @ 40VDC
3A / 20ms
1A / 100ms
Minimum load
Base power required
1 mA
9V 20 mA Max
24V 3mA/pt.
(24mA Max)
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
0.1 ms
0.1 ms
Non-removable
Logic Side
4.2 oz. (120 g)
(2)
One 3A per common
Non–replaceable
Derating Chart for D3–08TD1
Points
8
24VDC OUTPUT
D3–08TD1
6
0
4
1
5
2
6
C1
3
7
Internally
Connected
5–24VDC
+ –
4
2
L
L
0
1
C
1
L
2
3
0 1
4
5
2 3
6
7
4 5
0
0
32
Discrete Output
Modules
L
L
L
10
20
30
40
50
60°C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
Output
L
L
Optical
Coupler
L
6 7
C2
C
2
3A
Common
+ –
5–24VDC
24VDC
– +
Internal
Power Supply
9V
7–7
Discrete Output Modules
D3–08TD2, 24 VDC Output Module
8 (current sourcing)
2 (internally connected)
5–24VDC
NPN Transistor
(emitter follower)
Peak voltage
AC frequency
ON voltage drop
Max current
40VDC
N/A
1V @ 0.5A
0.5A / point
1.8A/ common
Max leakage current
Max inrush current
0.1 mA @ 24VDC
3A / 20ms
1A / 100ms
Minimum load
Base power required
1 mA
9V 30 mA Max
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
0.1 ms
0.1 ms
Non-removable
Logic Side
4.2 oz. (120 g)
(2)
One 3A per common
Non–replaceable
Derating Chart for D3–08TD2
24VDC OUTPUT
D3–08TD2
Internally
Connected
5–24VDC
– +
C1
0
4
1
5
2
6
3
7
Points
8
6
4
2
C
1
0
0
1
L
2
3
0 1
L
L
4
5
6
7
2 3
5–24VDC
– +
4 5
3A
Common
L
L
L
6 7
C
2
C2
Output
L
Optical
Coupler
9V
Discrete Output
Modules
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
L
L
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
7–8
Discrete Output Modules
D3–16TD1–1, 24 VDC Output Module
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
16 (current sinking)
2 (internally connected)
5–24VDC
NPN transistor
(open collector)
45VDC
N/A
2V @ 0.5A
0.5A/ point
2A/ common
Peak voltage
AC frequency
ON voltage drop
Max current
Max leakage current
Max inrush current
0.1mA @ 40VDC
3A / 20 ms
1A / 100 ms
Minimum load
Base power required
1 mA
9V (40 mA Max)
3mA+2.3mA/ON pt.
24V 6 mA/ON pt.
(96 mA Max)
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
0.1 ms
0.1 ms
Removable
Logic Side
5.6 oz. (160 g)
(2)
One 3A per common
Non-replaceable
Derating Chart for D3–16TD1–1
Points
16
24VDC OUTPUT
D3–16TD1–1
Internally
Connected
5–24VDC
+ –
I
CI
I
0
L
2
L
Discrete Output
Modules
5–24VDC
+ –
L
L
5
L
7
2
3
Output
L
4
5
3A
6
6
L
24VDC
9V
0
4
L
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
7
2
3
0
1
1
L
0.5A
4
C
C
0
L
8
5
7
L
0.25A
0.35A
6
CII
L
12
4
6
L
II
3
5
L
4
5
6
7
2
4
L
0
1
2
3
1
3
L
4
5
6
7
0
1
L
0
1
2
3
7
II
+ –
5–24VDC
Common
7–9
Discrete Output Modules
D3–16TD1–2, 24 VDC Output Module
Outputs per module
Commons per module
16 (current sinking)
4 (internally connected)
Operating voltage
5–24VDC
Output type
NPN transistor
(open collector)
Minimum load
Base power required
Peak voltage
AC frequency
ON voltage drop
Max current
45VDC
N/A
2.0V @ 0.5A
0.5A / point
1.8A common
Max leakage current
Max inrush current
0.3 mA @ 40VDC
3A / 20ms
1A / 100ms
Discrete Output
Modules
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
1 mA
9V (40mA Max)
3mA+2.3mA/ON pt.
24V 6mA/ON pt.
(96mA Max)
0.1 ms
0.1 ms
Removable connector
Logic Side
5.6 oz. (160 g)
(4)
One 3A per common
Non–replaceable
Derating Chart for D3–16TD1–2
Points
16
0.5A
24VDC OUTPUT
D3–16TD1–2
A
L
1
1
2
3
4
5
6
7
L
L
L
L
L
L
L
C
0
1
2
3
4
5
L
L
Internally
Connected
L
L
L
L
6
L
C
+
–
5–24VDC
7
II
I
II
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
7
A
0
2
4
6
C
C
0
2
4
6
C
C
B
1
3
5
7
C
C
1
3
5
7
C
C
8
4
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
Output 0, 2, 4, 6 (FUSED with 3A on Common)
Same circuit as shown below
Output 1, 3, 5, 7 (FUSED with 3A on Common)
Same circuit as shown below
L
Output
Optical
Coupler
To Other
3 Circuits
12
Common
+ –
5–24VDC
3A
24VDC
– +
Internal
Power Supply
To Other 3 Commons
Discrete Output
Modules
I
L
12
B
0
7–10
Discrete Output Modules
D3–16TD2, 24 VDC Output Module
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
16 (current sourcing)
2 (isolated)
5–24VDC
NPN transistor
(emitter follower)
Peak voltage
AC frequency
ON voltage drop
Max current
40VDC
N/A
1.5V @ 0.5A
0.5A / point
3A common
Max leakage current
Max inrush current
0.01 mA @ 40VDC
3A / 20ms
1A / 100ms
Minimum load
Base power required
1 mA
9V 7.5 mA/ON pt.
(180 mA Max)
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
0.1 ms
1 ms
Removable
Logic Side
7.1 oz. (210 g)
(2)
One 5A per common
Non–replaceable
Derating Chart for D3–16TD2
Points
16
24VDC OUTPUT
D3–16TD2
I
5–24VDC
– +
CI
I
0
L
2
L
Discrete Output
Modules
5–24VDC
– +
L
7
3
L
5
0
1
L
7
2
4
Common
5A
5
6
6
L
9VDC
5–24VDC
– +
3
4
L
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
7
2
L
0
C
1
L
4
C
5
0
L
0.5A
8
6
CII
L
12
4
6
L
II
3
5
L
4
5
6
7
2
4
L
0
1
2
3
1
3
L
4
5
6
7
0
1
L
0
1
2
3
0.25A
7
II
Optical
Isolator
L
Output
7–11
Discrete Output Modules
D3–04TAS, 110–220 VAC Output Module
4
4 (isolated)
80–265VAC
Triac
265 VAC
47–63 Hz
1.5 VAC @ 2A
2A / point
2A / common
Max leakage current
7 mA @ 220VAC
3.5 mA @ 110VAC
20A for 16 ms
10A for 100 ms
Max inrush current
Minimum load
Base power required
10 mA
9V 12 mA Max
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
1 ms Max
10 ms Max
Non–removable
Logic Side
6.4 oz. (180 g)
(4)
One 3A per common
User replaceable
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Derating Chart for D3–04TAS
Points
4
110/220VAC OUTPUT
D3–04TAS
0
4
1
5
2
6
3
7
2
0
0
C0
1
C1
L
2
C2
1 C
1
L
3
C3
2 C
2
0
32
10
20
30
40
50
60 °C
50
68
86 104 122 140°F
Ambient Temperature (°C/°F)
Output
.33
L
9V
3 C
3
3A
Line
80–265VAC
Common
47Ω
Discrete Output
Modules
L
0 C
0
Neut
Line
80–265VAC
2A
1
80–265VAC
Neut
Line
L
1A
3
7–12
Discrete Output Modules
F3–08TAS, 250 VAC Isolated Output Module
Outputs per module
Discrete Output
Modules
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Max leakage current
Max inrush current*
Minimum load
8 (500V point-to-point
isolation)
8 (isolated)
12–125 VAC
125–250 VAC requires
external fuses
SSR Array (TRIAC)
400 VAC
47 – 440 Hz
1 VAC @ 1A
1A / point
10 mA @ 240 VAC
20A for 16 ms
3A for 100 ms
Base power required
9V 10mA / ON pt.
80mA Max.
24V N/A
OFF to ON response
8 ms Max
ON to OFF response
8 ms Max
Terminal type
Status indicators
Weight
Fuses
BK/PCE–5 Bussman
(One spare fuse
included)
Removable
Logic Side
N/A at press time
(8) fast blow
One 5A (125V fast
blow) per each circuit
User replaceable
0.5 mA
*Fuse blows at 30 Amp surge
Motor starters up to and including
a NEMA size 3 can be used with
this module.
Derating Chart for F3–08TAS
OUTPUT 250VAC
ISOLATED
Discrete Output
Modules
0
1
2
3
0
0
L
Neut
1
1
L
Line
Neut
Line
Neut
Line
Neut
2
2
L
3
3
L
4
4
L
Line
Neut
Line
Neut
Line
Neut
0.5A
6
0.75A
4
5
6
7
4
1A
2
12–250VAC
Neut
Line
Line
Points
8
5
5
L
6
6
L
7
L
7
0
C
1
C
2
C
3
C
4
C
5
C
6
C
7
C
0
0
NO
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
1
NO
2
NO
3
NO
4
NO
12–250VAC
5A
9V
Line
5
NO
6
NO
7
NO
L
Output
7–13
Discrete Output Modules
D3–08TA–1, 110–220 VAC Output Module
8
2 (isolated)
80–265VAC
Triac
265VAC
47–63 Hz
1.5 VAC @ 1A
1A / point
3A / common
Max leakage current
1.2 mA @ 220VAC
0.52 mA @ 110VAC
10A for 16 ms
5A for 100 ms
Max inrush current
Minimum load
Base power required
25 mA
9V 20mA/ON pt.
(160 mA Max)
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
1 ms Max
8.33 ms Max
Removable
Logic Side
7.4 oz. (210 g)
(2)
One 5A per common
Non-replaceable
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Derating Chart for D3–08TA–1
Points
8
INTERNALLY CONNECTED
110–220VAC OUTPUT
80–265VAC
Neut
Line
D3–08TA–1
0
L
1
0
1
2
3
2
0
C1
L
C1
L
C1
L
3
C
1
0.5A
6
4
5
6
7
1A
4
2
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
1
2
C1
80–265VAC
Neut
Line
3
NC
L
4
4
C2
L
5
C2
L
6
C2
L
7
C2
INTERNALLY CONNECTED
C
2
5
80–265VAC
Neut
Line
Common
5A
6
7
L
Output
9V
Discrete Output
Modules
NC
7–14
Discrete Output Modules
Discrete Output
Modules
D3–08TA–2, 110–220 VAC Output Module
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
8
2 (isolated)
80–265VAC
Triac
265VAC
47–63 Hz
1.5 VAC @ 1A
1A / point
3A / common
Max leakage current
1.2 mA @ 220VAC
0.52 mA @ 110VAC
Max inrush current
10A for 16 ms
5A for 100 ms
Minimum load
25 mA
Base power required
9V 20mA/ON pt.
(160 mA Max)
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
1 ms Max
8.33 ms Max
Non-removable
Logic Side
6.4 oz. (180 g)
(2)
One 5A per common
Non–replaceable
Derating Chart for D3–08TA–2
110-220VAC OUTPUT
Points
8
D3–08TA–2
80–265VAC
Discrete Output
Modules
Neut
Line
0
4
1
5
2
6
3
7
L
0
1
L
2
3
4
5
L
2
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
C
1
0 1
2 3
L
L
80–265VAC
Neut
Line Common
4 5
6
L
5A
7
L
Neut
1A
4
C1
L
0.5A
6
6 7
Line
80–265VAC
C2
C
2
L
Output
9V
7–15
Discrete Output Modules
F3–16TA–2, 20–125 VAC Output Module
Outputs per module
Commons per module
16
2 (isolated)
Operating voltage
20 – 125VAC
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
(One spare fuse
included)
SSR Array (TRIAC)
140 VAC
47 – 63Hz
1.1VAC @ 1.1A
1.1A / point
0.7mA @ 125VAC
15A for 20ms
8A for 100ms
Points
50mA
9V 14mA / ON pt.
250mA Max.
24V N/A
8ms Max.
8 ms Max.
Removable
Logic Side
7.7oz. (218g)
4 (One 5A 125V fast
blow per each group
of four outputs)
Order D3–FUSE–4
(5 per pack)
Discrete Output
Modules
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Max leakage current
Max inrush current*
Minimum load
Base power required
Derating Chart
16
1.0A
0.5A
12
1.1A
8
20–125VAC OUTPUT
4
F3––16TA––2
0
0
32
10
20
30
40
50
60 C
50
68
86
104 122 140 F
Ambient Temperature (degrees C / F)
*Fuse blows at 20 Amp surge
Motor starters up to and including
a NEMA size 3 can be used with
this module.
20–125VAC
H
I
L
0
L
1
2
L
L
3
4
L
L
20–125VAC
5
6
L
7
H II
L
0
L
1
L
3
L
5
L
7
L
2
L
4
L
6
5A
20–125VAC
Common
L
Output
5A
To other 4 circuits
To other 3 circuits
9V
0
1
2
3
I H
0 I
1
2
3
4
5
6
7
H
II
0
1
2
3
4
5
6
7
II
4
5
6
7
0
1
2
3
4 II
5
6
7
Discrete Output
Modules
L
I
7–16
Discrete Output Modules
Discrete Output
Modules
D3–16TA–2, 110–220 VAC Output Module
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
16
2 (isolated)
15–265 VAC
Triac
265 VAC
47–63 Hz
1.5 VAC @ 0.5A
0.5A / point
3A / common
6A / per module
Max leakage current
Max inrush current
4 mA @ 265 VAC
10A for 10 ms
5A for 100 ms
Minimum load
Base power required *
10 mA @ 15VAC
9V 25mA Max /ON pt.
400 mA Max
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
1 ms Max
9 ms Max
Removable
Logic Side
7.2 0z. (210 g)
(2)
One 5A per common
Non–replaceable
* 9V typical values 17mA/ON pt., 272 mA total
Derating Chart for D3–16TA–2
Points
16
110–220VAC OUTPUT
D3–16TA–2
I
15–265VAC
CI
I
0
L
2
Discrete Output
Modules
L
15–265VAC
L
L
3
7
L
5
L
7
15–265VAC
Line
Common
9V
5A
.33
2
3
4
5
47Ω
6
6
L
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
0
4
L
0
1
2
L
Max 3A/common
4
C
C
0
1
0.5A
8
5
7
L
0.2A
6
CII
L
0.30A
12
4
6
L
II
3
5
L
4
5
6
7
2
4
L
0
1
2
3
1
3
L
4
5
6
7
0
1
L
0
1
2
3
7
L
II
Output
7–17
Discrete Output Modules
D3–08TR, Relay Output Module
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Max leakage current
Max inrush current
Minimum load
Base power required
5 mA @ 5v
9V 45 mA/ON pt.
(360 mA Max)
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
5 ms
5 ms
Non-removable
Logic Side
7 oz. (200 g)
(2)
One 10A per common
User replaceable
1 mA @ 220VAC
5A
Discrete Output
Modules
8
2 (isolated)
5–265VAC
5–30VDC
Form A (SPST)
265VAC / 30VDC
47–63 Hz
N/A
4A / point AC
5A / point DC
6A / common
Derating Chart for D3–08TR
Typical Relay Life (Operations)
Voltage Resistive Solenoid Closures
RELAY OUTPUT
D3–08TR
220VAC
220VAC
110VAC
110VAC
24VDC
4A
4A
5A
0.5A
0.05A
0.5A
0.1A
0.5A
5–265VAC
100k
800k
100k
650k
100k
C1
0
4
1
5
2
6
3
7
4
2
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
C
1
0 1
L
0
1
L
2
3
L
2 3
4 5
L
4
5
6
7
L
L
Common
10A
9V
6 7
C
2
L
– +
5–30VDC
6
C2
L
Output
Relay
Discrete Output
Modules
L
Points
8
7–18
Discrete Output Modules
F3–08TRS–1, Relay Output Module
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage*
8
8 (isolated)
12–125 VAC
125–250 VAC requires
external fuses
12–30 VDC
Max leakage current
Max inrush current
Minimum load
N/A
10A Inductive
100 mA @12VDC
Base power required
Output type
6 Form A (SPST)
2 Form C (SPDT)
Peak voltage
AC frequency
ON voltage drop
Max current (resistive)
265 VAC / 120 VDC
47–63 Hz
N/A
10A / point AC/DC
30A / module AC/DC
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
9V 37mA / ON pt.
(296 mA Max)
24V N/A
13 ms Max
9 ms Max
Removable
Logic Side
8.9 oz. (252 g)
(8) One 10A (125V)
per common
Non-replaceable
NOTE: Contact life may be lengthened beyond those values shown by the use of an appropriate arc
suppression. This technique is discussed earlier in this chapter.
Derating Chart for F3–08TRS–1
Typical Relay Life (Operations)
Points
8
Output Current
10A/point
(30A/module)
6
4
RELAY OUTPUT
F3–08TRS–1
0
1
2
3
Discrete Output
Modules
2
0
L
–
1C
L
2C
–
+
L
3C
L
4C
L
5C
L
6C
–
+
L
7C
L
L
0
C
0
NC
0C
+
7NC
Operating Voltage
28VDC
50K
200K
325K
>50M
120VAC 240VAC
25K
50K
100K
125K
50K
12–250VAC
10A
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
L
4
5
6
7
Maximum Resistive
or Inductive Inrush
Load Current
1/4HP
10.0A
5.0A
3.0A
.05A
0
NO
1
NO
2
NO
3
NO
4
NO
5
NO
6
NO
7
NO
1
C
2
C
3
C
4
C
5
C
6
C
7
C
7
NC
0
NC
Common
0
NO
1
NO
NO
L
9V
Outputs 1–6
2
NO
3
NO
12–30VDC
–
+
4
NO
5
NO
6
NO
7
NO
10A
Common
L
L
NC
NO
Outputs 0 & 7
*Maximum DC voltage rating is 120 VDC at
.5 Amp, 30,000 cycles typical
Motor starters up to and including
a NEMA size 4 can be used with
this module.
9V
7–19
Discrete Output Modules
F3–08TRS–2, Relay Output Module
Outputs per module
Commons per module
Operating voltage*
Max leakage current
Max inrush current
Minimum load
N/A
10A Inductive
100 mA @12VDC
Base power required
Output type
6 Form A (SPST)
2 Form C (SPDT)
Peak voltage
AC frequency
ON voltage drop
Max current (resistive)
265 VAC / 120 VDC
47–63 Hz
N/A
5A / point AC/DC
40A / module AC/DC
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
Fuses
19379–K–10A
Wickman
9V 37mA / ON pt.
(296 mA Max)
24V N/A
13 ms Max
9 ms Max
Removable
Logic Side
9 oz. (255 g)
(8) One 5A (125V) per
common
User replaceable
Discrete Output
Modules
8
8 (isolated)
12–125 VAC
125–250 VAC requires
external fuses
12–30 VDC
NOTE: Contact life may be lengthened beyond those values shown by the use of an appropriate arc
suppression. This technique is discussed earlier in this chapter.
Derating Chart for F3–08TRS–2
Typical Relay Life (Operations)
Points
8
Output Current
5A/point
(40A/module)
6
4
RELAY OUTPUT
F3–08TRS–2
0
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
0
NC
0C
+
L
–
1C
L
2C
–
+
L
3C
L
4C
L
5C
L
6C
–
+
L
7C
L
L
0
C
7NC
0
NO
1
NO
2
NO
3
NO
4
NO
5
NO
6
NO
7
NO
1
C
2
C
3
C
4
C
5
C
6
C
7
C
7
NC
4
5
6
7
5.0A
3.0A
.05A
Operating Voltage
28VDC
200K
325K
>50M
120VAC 240VAC
100K
125K
50K
Expected mechanical relay life is 100 million operations.
12–250VAC
0
NC
Discrete Output
Modules
0
1
2
3
2
L
Maximum Resistive
or Inductive Inrush
Load Current
5A
Common
0
NO
1
NO
NO
L
2
NO
3
NO
12–30VDC
–
5A
+
4
NO
Common
5
NO
L
6
NO
L
7
NO
9V
Outputs 1–6
NC
9V
NO
Outputs 0 & 7
*Maximum DC voltage rating is 120 VDC at
.5 Amp, 30,000 cycles typical
Motor starters up to and including
a NEMA size 3 can be used with
this module.
7–20
Discrete Output Modules
D3–16TR, Relay Output Module
Discrete Output
Modules
Outputs per module
Commons per module
Operating voltage
Output type
Peak voltage
AC frequency
ON voltage drop
Max current
Max leakage current
Max inrush current
16
2 (isolated)
5–265 VAC
5–30 VDC
16 Form A (SPST)
265 VAC / 30 VDC
47–63 Hz
N/A
2A / point AC/DC
(resistive)
8A / common AC/DC
0.1mA @ 220 VAC
2A
Minimum load
Base power required
5 mA @ 5v
9V 30 mA/ON pt.
(480 mA Max)
24V N/A
OFF to ON response
ON to OFF response
Terminal type
Status indicators
Weight
12 ms
12 ms
Removable
Logic Side
8.5 oz. (248g)
Fuses
None
Typical Relay Life (Operations)
Voltage Resistive Solenoid Closures
220VAC
220VAC
110VAC
110VAC
24VDC
2A
0.25A
0.03A
0.25A
0.05A
0.25A
2A
2A
100k
800k
100k
650k
100k
5-265VAC
Derating Chart for D3–16TR
D3–16TR
I
CI
I
0
L
2
Discrete Output
Modules
5-30VDC
L
L
3
L
5
0
1
L
7
5–265
VAC
5–30VDC
– +
2
Common
9V
4
5
L
6
6
L
0 10 20 30 40 50 60°C
32 50 68 86 104 122 140°F
Ambient Temperature (°C/°F)
3
4
L
0
7
2
L
4
C
5
0
1
8
C
CII
L
12
6
7
L
II
4
6
L
4
5
6
7
3
5
L
0
1
2
3
2
4
L
4
5
6
7
1
3
L
0
1
2
3
0
1
L
L
Points
16
RELAY OUTPUT
7
II
Output
Relay
System Operation
In This Chapter. . . .
18
Ċ Introduction
Ċ CPU Operating System
Ċ Initial Mode Setting and Memory Initialization
Ċ Program Mode Operation
Ċ Run Mode Operation
Ċ I/O Response Time
Ċ CPU Scan Time Considerations
Ċ Memory Map
Ċ I/O Point Bit Map
Ċ Control Relay Bit Map
Ċ Special Relays
Ċ Timer / Counter Registers and Contacts
Ċ Data Registers
Ċ Stage Control / Status Bit Map
Ċ Shift Register Bit Map
Ċ Special Registers
8–2
System Operation
System Operation
Introduction
Achieving the proper control for your equipment or process requires a good
understanding of how the DL305 CPUs control all aspects of the system operation.
This includes many things, such as I/O updates, program execution, etc. Take a few
minutes to understand how the CPU stores and processes information. For more
complex applications, this knowledge will make it easier to program and debug your
application program to meet your system performance requirements.
There are four primary things you need to understand before you create your
application program
S CPU Operating System — the CPU is the heart of the system. It
manages all aspects of system control. A quick overview of all the steps
is provided in the next section.
S CPU Operating Modes — the CPU has different operating modes that
allow different types of operations. There are two primary modes of
operation, Program Mode and Run Mode.
S CPU Timing — it is important you understand how the CPU timing can
affect the system operation. The two most important areas are the I/O
response time and the CPU scan time.
S CPU Memory Map — The DL305 CPUs offer a wide variety of memory
types, such as timers, counters, inputs, etc. It is important to understand
what memory types are available and how the memory areas are
organized.
The remainder of this chapter discusses these items in detail.
8–3
System Operation
CPU Operating System
After the initial power-up sequence, the DL305 CPUs process data cyclically. There
are several tasks the CPU must perform during each cycle, such as updating the I/O
status, servicing external communications, executing the application program, etc.
There are many different segments of execution, but the overwhelming majority of
your concerns will be with the portion of the execution cycle that occurs during Run
Mode. These operations will be discussed throughout the remainder of this chapter.
DL305 CPU
Operational Flow
Chart
Power up
#1
Initial Mode Setting
Initialize memory
Is program
memory OK?
NO
YES
YES
What mode is the
programmer in?
RUN
System Operation
Is programmer
connected?
Display error code
NO
User changes
programmer to
program mode
PGM/
Cassette
What is the
last mode?
PGM/
Cassette
RUN
I/O update
Service peripherals
Service peripherals
Service for force
operation or
monitoring
Operation of program
or cassette mode
What is the mode?
Executes user program
RUN
PGM
8–4
System Operation
Initial Mode Setting and Memory Initialization
Flow Chart for
The previous flowchart contained a step called Initial Mode Setting. Once power has
Initial Mode Setting been connected to the system, the CPU executes the following procedure to
determine which mode of operation should be entered.
(#1)
NO
Is programmer
or Data Communication Unit
connected?
YES
What is
connected?
Data Communication Unit
Programmer
ONLINE or
OFFLINE?
ONLINE
OFFLINE
Is programmer
connected?
NO
PROM
YES
System Operation
What is the
current mode?
RUN
Service peripherals
Initialize Memory
PGM
PGM
Select PGM/
Cassette mode
What is the
last mode?
RUN
What is the
program memory
RAM
8–5
System Operation
Memory
Initialization
Before the CPU can begin normal operation, all memory areas are initialized. The
CPU completes the following operations to initialize the memory areas.
Item
Procedure
I/O Points
Input Points: activated, CPU will monitor status.
Output Points: turned off
Control Relays
Non-Retentive: turned off
Retentive: retains the condition prior to the system
power interruption.
Shift Registers
Retains the condition prior to the system power
interruption.
Timer / Counter Current Values
Timers: reset to zero
Counters: retains the current count prior to the
system power interruption.
Stages
Non-Retentive: turned off
Retentive: retains the condition prior to the system
power interruption.
Data Registers
Retains the condition prior to the system power
interruption.
System Operation
NOTE: Not all memory areas are retentive by default. See Chapter 3 for details on
how to set the CPU to have retentive memory. Also, the memory map section
provided later in this chapter shows the exact ranges that can be selected as
retentive.
8–6
System Operation
Program Mode Operation
System Operation
In Program Mode, the CPU does not
execute the application program or
update the output modules. The primary
use for Program Mode is to enter or
change an application program. You can
also use the program mode to set up
CPU parameters, such as the network
address for the communication port on
the DL340, retentive memory areas, etc.
You can use the Handheld Programmer
key switch to select Program Mode
operation, or you can use a DirectSOFT
menu option to change the CPU mode.
Download Program
8–7
System Operation
Run Mode Operation
In Run Mode, the CPU executes the
application program and updates the I/O
system. You can perform many
operations during Run Mode. Some of
these include:
S
Monitor and change I/O point status
S
Update timer/counter preset values
S
Update Register memory locations
Even though there are many steps in the
overall flowchart of operation, the Run
Mode operation can be divided into a few
key areas. It is very important you
understand how each of these areas of
execution can affect the results of your
application program solutions.
Update I/O Points
Service Peripherals
Service Monitoring & Forcing
Solve Application Program
System Operation
8–8
System Operation
Update I/O Points
The CPU reads the status of all input modules present in the local CPU base and
local expansion bases. The status of each input is stored in the input image register
area. The input image register data is used by the CPU when it solves the application
program.
You may be thinking, “What if an input changes after the CPU has read the inputs?”
Good question! Generally, the CPU program execution time is measured in
milliseconds, so in most cases this is not a problem. If you need to know more, I/O
response timing is explained in more detail later in this chapter.
The CPU also uses the output image register to update the output modules present
in the local CPU base and local expansion bases.
8pt
8pt
8pt
16pt
4ch.
16pt
Relay
Output
Input
Input
Output
Input
050
–
057
040
–
047
030
–
037
020
027
–
120
127
010
017
–
110
117
000
007
–
100
107
System Operation
CPU Scan
Update I/O Points
I/O
Modules
Field
Device
OFF
030
OFF
031
ON
032
ON
033
OFF
034
ON
035
OFF
036
OFF
037
OFF
040
OFF
041
ON
042
ON
043
OFF
044
ON
045
OFF
046
OFF
047
...
...
The CPU reads the inputs
from the local and expansion
bases and stores the status in
an input image register.
032 031 030
ON OFF OFF
Input Image Register
...
...
...
042 041 040
...
ON OFF OFF
Output Image Register
...
...
Service Peripherals
Service Monitoring & Forcing
Solve Application Program
The CPU also writes the
status of the output image
register to the output
modules.
8–9
System Operation
Service Peripherals After the CPU updates the I/O points, it reads any attached peripheral devices. This
is primarily a communications service for any attached devices. For example, if you
were using an operator interface to read or write data, the CPU would service these
requests during this portion of the scan.
8pt
8pt
8pt
16pt
4ch.
16pt
Relay
Output
Input
Input
Output
Input
050
–
057
040
–
047
030
–
037
020
027
–
120
127
010
017
–
110
117
000
007
–
100
107
CPU Scan
Update I/O Points
032 031 030
ON OFF OFF
Input Image Register
...
...
...
042 041 040
...
ON OFF OFF
Output Image Register
...
...
...
...
Service Peripherals
Service Monitoring & Forcing
Solve Application Program
System Operation
CPU services peripherals
through communication ports.
8–10
System Operation
Service for
After the CPU updates any communications requests from peripheral devices, it
determines if any forcing operations have been requested. The CPU also services
Monitoring and
Forcing Operations any monitoring requests during this portion. For example, if you are using the
Handheld Programmer to monitor the current value of a timer or counter, the CPU
will provide this information during this portion of the scan.
Here’s an example of one of the more popular requests. For example, you may want
to force an input on, even though it is really off. This allows you to change the point
status that was stored in the image register. This value will be valid until the image
register location is written to during the Update I/O Points segment of the next scan.
8pt
8pt
8pt
16pt
4ch.
16pt
Relay
Output
Input
Input
Output
Input
050
–
057
040
–
047
030
–
037
020
027
–
120
127
010
017
–
110
117
000
007
–
100
107
System Operation
CPU Scan
Update I/O Points
I/O
Modules
Field
Device
OFF
030
OFF
031
ON
032
ON
033
...
...
The CPU reads the inputs
from the local and expansion
bases and stores the status in
an input image register.
032 031 030
ON OFF OFF
Input Image Register
...
...
...
042 041 040
...
ON OFF OFF
Output Image Register
...
...
Service Peripherals
Service Monitoring & Forcing
Force input 030 ON
The application program uses the
forced value to solve the
application program. In this
example, output 040 will be turned
on because the force changed the
status of input 030 in the image
register.
...
...
032 031 030
ON OFF ON
Input Image Register
...
...
Solve Application Program
030
040
8–11
System Operation
It is important to note the DL305 CPUs only retain the forced value for one scan if the
input point used corresponds to a module that is installed in the base. The following
example shows how the forcing actually works on the next CPU scan.
Result of previous scan
Force input 030 ON
030
040
On due to
030
forced ON
CPU Scan
Field
Device
Update I/O Points
I/O
Modules
OFF
030
OFF
031
ON
032
ON
033
...
...
The CPU reads the inputs
from the local and expansion
bases and stores the status in
an input image register.
032 031 030
ON OFF OFF
Input Image Register
...
...
...
042 041 040
...
ON OFF OFF
Output Image Register
...
...
Service Peripherals
The application program uses the image
register to solve the program. In this
case, output 040 is turned off since the
force of input 030 is no longer valid.
Service Monitoring & Forcing
...
...
032 031 030
ON OFF OFF
Input Image Register
...
...
Solve Application Program
030
040
As you can see from the example, the input forcing will not be valid when the CPU
reads the input status on the next scan.
Output point forcing works in a similar manner. That is, if you force an output on and
the application program results dictate the output should be turned on, then the
output image register will show the results of the application program instead of the
forcing request. This is discussed in more detail in the next section.
System Operation
Since the programming device did not
issue another request for a force, the
image register maintains the status
obtained during the reading of the
inputs.
8–12
System Operation
Solve Application
Program
The CPU evaluates each instruction in the application program during this segment
of the cycle. The instructions define the relationship between the input conditions
and the desired output response.
The CPU uses the output image register area to store the status of the desired action
for the outputs. The actual outputs are updated during the Update I/O Points
segment of the cycle.
The internal control relays (C), stages (S), and data registers (R) are also updated in
this segment.
You may recall the CPU may have obtained and stored forcing information when it
serviced any peripheral devices. If any output points or register locations have been
forced, the output image register also contains this information.
System Operation
NOTE: If an output point was used in the application program, the results of the
program solution will overwrite any forcing information that was stored. For example,
if output 030 was forced on by the programming device, and a rung containing 030
was evaluated such that 030 should be turned off, then the output image register will
show that 030 should be off. Of course, you can force output points that are not used
in the application program. In this case, the point remains forced because there is no
solution that results from the application program execution.
8–13
System Operation
8pt
8pt
8pt
16pt
4ch.
16pt
Relay
Output
Input
Input
Output
Input
050
–
057
040
–
047
030
–
037
020
027
–
120
127
010
017
–
110
117
000
007
–
100
107
CPU Scan
Update I/O Points
I/O
Modules
Field
Device
030
OFF
031
ON
032
ON
033
The CPU reads the inputs
from the local and expansion
bases and stores the status in
an input image register.
032 031 030
ON OFF OFF
Input Image Register
...
...
...
042 041 040
...
ON OFF OFF
Output Image Register
...
...
Service Peripherals
Service Monitoring & forcing
Force input 030 ON
Force output 041 ON
The application program uses the
forced value to solve the
application program. In this
example, 040 will be turned on
because the force changed the
status of 030 in the image register.
Notice output 041 is also on. This
output was forced on by the
programming device and since it
was not used in the application
program, the forced status is
maintained.
032 031 030
ON OFF ON
Input Image Register
...
...
042 041 040
...
...
ON
ON OFF
Output Image Register
...
...
...
...
Solve Application Program
030
...
...
...
...
042
ON
222
ON
040
041
ON
221
ON
040
ON
220
OFF
Output Image Register
Contains I/O, CRs, etc.
...
...
...
...
System Operation
OFF
...
...
8–14
System Operation
I/O Response Time
Is Timing Important I/O response time is the amount of time required for the control system to sense a
change in an input point and update a corresponding output point. In the majority of
for Your
applications, the CPU performs this task in such a short period of time you may never
Application?
have to concern yourself with the aspects of system timing. However, some
applications do require extremely fast update times. In these cases, you may need to
know how to to determine the amount of time spent during the various segments of
operation.
There are four things that can affect the I/O response time.
S The point in the cycle when the field input changes states
S Input module Off to On delay time
S CPU scan time
S Output module Off to On delay time
The next paragraphs show how these items interact to affect the response time.
System Operation
Normal Minimum
I/O Response
The I/O response time is shortest when the module senses the input change just
before the I/O Update portion of the execution cycle. In this case the input status is
read, the application program is solved, and the output point gets updated on the
following scan. The following diagram shows an example of the timing for this
situation.
Scan
Scan
Solve
Program
Solve
Program
Update
I/O
Solve
Program
Solve
Program
Update
I/O
Field Input
CPU Reads
Inputs
CPU Writes
Outputs
Input Module
Off/On Delay
Output Module
Off/On Delay
I/O Response Time
In this case, you can calculate the response time by simply adding the following
items.
Input Delay + Scan Time + Output Delay = Response Time
8–15
System Operation
Normal Maximum
I/O Response
The I/O response time is longest when the module senses the input change just after
the Update I/O portion of the execution cycle. In this case the new input status does
not get read until the following scan. The following diagram shows an example of the
timing for this situation.
Scan
Scan
Solve
Program
Solve
Program
Solve
Program
Solve
Program
Update
I/O
Field Input
CPU Reads InĆ
put change
CPU Writes
Output change
Input Module
Off/On Delay
Output Module
Off/On Delay
I/O Response Time
Improving
Response Time
There are a few things you can do the help improve throughput.
S You can try to choose instructions with faster execution times
S You can choose modules that have faster response times
System Operation
In this case, you can calculate the response time by simply adding the following
items.
Input Delay +(2 x Scan Time) + Output Delay = Response Time
8–16
System Operation
CPU Scan Time Considerations
The scan time covers all the cyclical
tasks that are performed by the operating
system. This information can be very
important
when
evaluating
the
performance of a system.
As we’ve shown previously there are
several segments that make up the
overall execution cycle. Each of these
segments requires a certain amount of
time to complete. Of all the segments, the
only ones you really need to understand
are those that occur during Run Mode.
Even within this portion, your primary
concern should be to understand the
instruction execution times.
Update I/O Points
Service Peripherals
Service Monitoring & Forcing
System Operation
Solve Application Program
DL330 / DL330P
Scan Calculation
The following table provides execution timing guidelines for the execution cycle.
A
Input / Output Update
B
Service Peripherals,
Monitoring, and
Forcing
C
Application Program
Solution
D
A timer interrupt occurs every 2.5ms
during the scan. The interrupt
requires approximately 266ms to
service. So, the larger the program,
the more timer interrupts.
A = 3.3 ms typical I/O update
B = 0 - 5.2 ms maximum to service peripherals, monitoring, and forcing
C = Total of instruction execution time
D = 266ms x A ) B ) C ) D
2.5ms
Actual Scan = A + B + C + D
NOTE: There are other events that occur during the execution cycle, but the areas
shown are the most important. This information is provided so you will understand
the basic scan calculations. Scan time can vary from scan-to-scan.
8–17
System Operation
DL340 Scan
Calculation
Typical scan overhead is from 2.5 – 3.5ms. However, the following table provides
more precise execution timing guidelines for the execution cycle.
A
Input / Output Update
B
Service Peripherals,
Monitoring, and
Forcing
C
Application Program
Solution
D
A timer interrupt occurs every 2.5ms
during the scan. The interrupt
requires approximately 200ms to
service. So, the larger the program,
the more timer interrupts.
A = 2 ms typical I/O update
B = 0 – 1.2 ms maximum to service peripherals, monitoring, and forcing
C = Total of instruction execution time
2.5ms
Actual Scan = A + B + C + D
NOTE: There are other events that occur during the execution cycle, but the areas
shown are the most important. This information is provided so you will understand
the basic scan calculations. Scan time can vary from scan-to-scan.
System Operation
D = 200 ms x A ) B ) C ) D
8–18
System Operation
Application
Program Execution
The CPU processes the program from
address 0 to the END instruction. The
CPU executes the program left to right
and top to bottom. As each rung is
evaluated the appropriate image register
or memory location is updated.
The time required to solve the application
program depends on the type and
number of instructions used
You can add the execution times for all
the instructions in your program to
determine how much time is required to
execute the instructions.
For example, the execution time for a
DL330 running the program shown
would be calculated as follows.
System Operation
Instruction
STR 000
OR 160
ANDN 001
OUT 020
STRN 161
DSTR K10
STRN 162
DOUT R400
STRN 163
DSTR K50
STRN 164
DOUT R402
STR 005
ANDN 010
OUT 021
END
TOTAL
Time
6.6ms
6.6ms
8.4ms
7.5ms
9.1ms
14.3ms
9.1ms
52.6ms
9.1ms
14.3ms
9.1ms
52.6ms
6.6ms
8.4ms
7.5ms
0ms
000
001
020
OUT
160
161
DSTR
F50
K10
162
DOUT
F60
R400
163
DSTR
F50
K50
164
005
DOUT
F60
R402
010
021
OUT
END
221.8ms
NOTE: Appendix C provides the instruction execution times for the DL305 CPUs.
8–19
System Operation
Memory Map
With any PLC system, you generally have many different types of information to
process. This includes input device status, output device status, various timing
elements, parts counts, etc. It is important to understand how the system represents
and stores the various types of data. For example, you need to know how the system
identifies input points, output points, data words, etc. The following paragraphs
discuss the various memory types used in the DL305 CPUs.
NOTE: The DL305 CPUs do not all have the same memory ranges. Make sure you
review the detailed memory maps at the end of this section to determine the
available memory types for your particular model of CPU.
Octal Numbering
System
All memory locations or areas are
numbered in Octal (base 8). For
example, the diagram shows how the
octal numbering system works for the
discrete input points. Notice the octal
system does not contain any numbers
with the digits 8 or 9.
8pt
Relay
8pt
Output
8pt
Output
16pt
Input
4ch.
(Analog)
050
–
057
040
–
047
030
–
037
020
027
–
120
127
010
017
–
110
117
16pt
Input
000
007
–
100
107
100 101 102 103 104 105 106 107
Two Basic Memory
Types: Discrete
and Word
As you examine the different memory
types, you’ll notice two types of memory
in the DL305, discrete and word memory.
Discrete memory is one bit that can be
either a 1 or a 0. Word memory is referred
to as Data Register memory and is an
8-bit location normally used to
manipulate
data/numbers,
store
data/numbers, etc.
Some information is automatically stored
in Register (R) memory. For example, the
timer current values are stored in
Registers that correspond to the timer or
counter number. So, the current value for
timer T600 is automatically stored in
R600.
Discrete – On or Off, 1 bit
000
or
Word Locations – 8 bits
0 0 1 0 0 1 0 1
000
System Operation
000 001 002 003 004 005 006 007
8–20
System Operation
R Memory
Locations for
Discrete Memory
Areas
The discrete memory area is for inputs, outputs, control relays, etc. However, you
can also access the bit data types as an R-memory word. Each R-memory location
contains 8 consecutive discrete locations.
Remember, the DL305 system does not have a separate memory type for input and
output points. The type of point assigned to the location depends on the type of
module installed in the slot that corresponds to the register location. Also, the
number of registers assigned to the module depends on the number of points. For
example, a 16-point module would require two registers since each register only
contains 8 bits. The following diagram shows how the points for a 16-point module
installed in the slot next to the CPU would map into registers.
16 Discrete Input Module
107 106 105 104 103 102 101 100
Bit # 7
6
5
4
3
2
1
0
007 006 005 004 003 002 001 000
7
6
System Operation
R010
5
4
3
2
1
0
R000
These discrete memory areas and their corresponding R-memory ranges are listed
in the memory area tables at the end of this chapter.
I/O Points
The discrete input and output points do not have separate data types. The type of
point assigned to the reference address depends on the type of module installed in
the base. Depending on the type of CPU, you can have up to 184 I/O points in a
DL305 system.
In the first example, output point 010 will 1st Slot – Input, 2nd Slot – Output
be turned on when input 000 energizes.
000
010
This assumes an 8-point input module is
OUT
installed in the first slot and an 8-point
output module is installed in the second
slot.
1st Slot – Output, 2nd Slot – Input
The second example shows how the
numbers can represent a different type of
point. For this example, the module
positions were reversed.
010
000
OUT
NOTE: Unused I/O references can be used as control relays in the application
program.
8–21
System Operation
Control Relays
Control relays are discrete bits normally
used to control the user program. The
control relays do not represent a real
world device, that is, they cannot be
physically tied to switches, output coils,
etc. They are internal to the CPU.
Because of this, control relays can be
programmed as discrete inputs or
discrete outputs. These locations are
used in programming the discrete
memory
locations
(C)
or
the
corresponding word location which
contains
8
consecutive
discrete
locations.
010
160
OUT
160
020
OUT
021
OUT
In this example, memory location 160 will energize when input 010 turns on. The
second rung shows a simple example of how to use a control relay as an input.
NOTE: Some of the references normally assigned as Control Relays can also be
used to refer to a16-point I/O modules in some situations. Make sure you review the
memory maps at the end of this chapter if you use 16-point modules.
System Operation
8–22
System Operation
Timers and
Timer Status Bits
(T Data type)
You can have up to 64 timers/counters in a DL305 CPU. Both the timers and
counters share the same memory area. This means you cannot have a timer T600
and a counter CT600 in the same program.
When you use these locations for timers, each timer has a status bit that reflects the
relationship between the current value and the timer preset value. The timer status
bit will be on when the current value is equal or greater than the preset value of a
corresponding timer. The DL330P does not support the status bit. Instead, you have
to use comparative boolean contacts. See Chapter 12 for details.
In the example shown, input 000 turns on
to start timer T600. When the timer
reaches the preset of 3 seconds (K of 30)
timer status contact T600 turns on. When
contact T600 turns on, output 022 is energized.
System Operation
Counters and
Counter Status
Bits
(CT Data type)
TMR
T600
K30
T600
022
OUT
You can have up to 64 timers/counters in a DL305 CPU. Both the timers and
counters share the same memory area. This means you cannot have a timer T600
and a counter CT600 in the same program.
When you use these locations for counters, each counter has a status bit that
reflects the relationship between the current count and the preset value. The counter
status bit will be on when the current value is equal to or greater than the counter
preset value. The DL330P does not support the status bit. Instead, you have to use
comparative boolean contacts. See Chapter 12 for details.
In the example shown, Each time contact
000 transitions from off to on, the counter
increments by one. (If 001 comes on, the
counter is reset to zero.) When the counter reaches the preset of 10 counts (K of
10) counter status contact CT603 turns
on. When CT603 turns on, output 022
turns on.
Counter
Current Values
(R Data Type)
000
As mentioned earlier, some information
is automatically stored in R memory. This
is true for the current values associated
with counters. For example, R600 holds
the current value for counter 600, R601
holds the current value for counter 601,
etc.
The primary reason for this is
programming flexibility. The example
shows how you can use comparative
contacts to monitor several count values
from a single counter.
000
CNT
CT603
K10
001
CT603
022
OUT
000
CNT
CT600
K1000
001
CT600
K250
022
SET
K500
023
SET
K750
024
SET
=
CT600
=
CT600
=
8–23
System Operation
Data Registers
(R Data Type)
Stages
(S Data type)
A word memory location is referred to as
a Data Register, which is an 8-bit location
normally
used
to
manipulate
data/numbers, store data/numbers, etc.
Some information is automatically stored
in registers. For example, the timer
current values are automatically stored
in a register that corresponds to the timer
or counter number being used.
The example shows how a four-digit
BCD constant is loaded into the
accumulator and then stored in a
Register location. Notice two registers
are required to hold the 4-digit number.
DSTR
F50
K1345
OUT
F60
R400
Word Locations – 8 bits
R401
0 0 0 1 00 1 1
1
3
R400
0 1 0 0 0 1 0 1
4
5
Ladder Representation
ISG
S0000
Wait for Start
Start
S1
JMP
000
S150
JMP
SG
Check for a Part
S0001
Part
Present
S2
JMP
001
Part
Present
S6
JMP
001
SG
Clamp the part
S0002
Part
Locked
002
Clamp
SET
S140
S3
JMP
System Operation
Stages are used in RLL PLUS programs to
create a structured program, similar to a
flowchart. Each program stage denotes
a program segment. When the program
segment or stage, is active, the logic
within that segment is executed. If the
stage is off or inactive, the logic is not
executed and the CPU skips to the next
active stage. (See Chapter 10 for a more
detailed
description
of
RLL PLUS
programming.)
Each stage also has a discrete status bit
that can be used as an input to indicate
whether the stage is active or inactive. If
the stage is active, then the status bit is
on. If the stage is inactive, then the status
bit is off. This status bit can also be turned
on or off by other instructions, such as the
SET or RESET instructions. This allows
you to easily control stages throughout
the program.
000
8–24
System Operation
Shift Registers
There are 128 bits available for use in Shift Registers with the DL330 and DL340
CPUs. You can still use Shift Registers in the DL330P CPU, but a separate range of
bits is not provided. You have to use the control relay points in the Shift Register
instructions. These are numbered from 400 to 577. Your first reaction may be to think
these are somehow related to the Data Registers with the same numbers. They are
completely separate areas and are not related.
The number of Shift Register instructions that can be used depends on how many
bits are used with each Shift Register. For example, if you have a DL330 and you use
16 bits in each Shift Register, you can have up to 8 Shift Registers. If you only used 8
bits in each one, then you could have up to 16 Shift Registers.
System Operation
In the example shown, contact 001
represents the data value (0 or 1) that will
be loaded into the shift register when the
clock input (002) is active. Each time the
clock input comes on, the data values are
shifted through the bit positions from 400
to 417. Input 003 resets the shift register
and sets all the bit positions back to zero.
Chapter 11 provides detailed instructions
on how to use shift registers.
Special Relays
Special Registers
(R Data Type)
Special relays are discrete memory
locations with pre-defined functionality.
There are many different types of special
relays. For example, some aid in
programming, others provide system
operating status information, etc.
In this example, special relay 375 will
energize for 50 ms and de–energize for
50 ms because relay 375 is a
pre–defined relay that will be on for 50 ms
and off for 50 ms.
001
Data Input
002
Clock Input
003
Reset Input
SR
400
375
417
020
OUT
There are also a few special registers that store various types of system information.
For example, the DL340 communication port parameters are set in special registers.
The detailed memory maps at the end of this chapter show special register
assignments for each CPU.
8–25
System Operation
DL330 Memory
Map
Memory Type
Discrete Memory
Reference
(octal)
Register Memory
Reference
(octal)
Qty.
Decimal
Input / Output
Points
000 – 157
700 – 767
R000 – R015
R070 – R076
168 Total
Control Relays
160 – 373
R016 – R037
140
Special Relays
374 – 377
770 – 777
R037
R077
12
Timers /
Counters
600 – 673
674 – 677*
None
64
Timer / Counter
Current Values
None
R600 – R673
R674 – R677*
Symbol
IO010
IO000
C160
C160
C376
C772
=
64
TMR
T600
K100
CTA600
CNT CT600
K10
K250
Contact valid for counters only.
Timer / Counter
Status Bits
T600 – T673
T674 – T677*
None
64
Data Words
None
R400 – R563
116
Shift Registers
400 – 577
None
128
T600
None specific, used with many
instructions
SR
400
417
Special
Registers
None
R574 – R577
4
R574 – R575 used with FAULT
R576 – R577 Auxiliary Accumulator
* T/ C Setpoint Unit Only. Can be used as data registers if the Timer/Counter Setpoint Unit or Thumbwheel Interface Module is not used. R564 – R573 contain the preset value used with the Timer /
Counter Setpoint Unit. R674 – R677 contain the current values for these timers or counters.
System Operation
=
8–26
System Operation
DL330P Memory
Map
System Operation
Memory Type
Discrete Memory
Reference
(octal)
Register Memory
Reference
(octal)
Qty.
Decimal
Symbol
Input / Output
Points
000 – 157
700 – 767
R000 – R015
R070 – R076
168 Total
Control Relays
160 – 174
200 – 277
R016 – R017
R020 – R027
77
C160
C160
Special Relays
175 – 177
770 – 777
R017
R077
11
C772
C376
Timers /
Counters
600 – 673
674 – 677*
None
64
Timer / Counter
Current Values
None
R600 – R673
R674 – R677*
64
Timer / Counter
Status Bits
T600 – T673
T674 – T677*
None
64
Data Words
None
R400 – R563
116
Stages
S0 – S177
R100 – R117
128
IO010
IO000
=
TMR
T600
K100
CTA600
K250
CNT CT600
K10
TA600
w
K250
w
T600
None specific, used with many
instructions
S1
SG
S 001
Special
Registers
None
R574 – R577
4
R574 – R575 used with FAULT
R576 – R577 Auxiliary Accumulator
* T/ C Setpoint Unit Only. Can be used as data registers if the Timer/Counter Setpoint Unit or Thumbwheel Interface Module is not used, which
provides a total of 128 data registers.
R564 – R573 contain the preset value used with the Timer / Counter Setpoint Unit. R674 – R677 contain the current values for these timers or
counters
Timer / Counter Current Values Registers (T600 – T677) are 16-bit registers.
8–27
System Operation
DL340 Memory
Map
Memory Type
Discrete Memory
Reference
(octal)
Register Memory
Reference
(octal)
Qty.
Decimal
Symbol
Input / Output
Points
000 – 157
700 – 767
R000 – R015
R070 – R076
168 Total
Control Relays
160 – 373
1000 – 1067
R016 – R037
R100 – R106
180
C160
C160
Special Relays
374 – 377
770 – 777
1070 – 1077
R037
R077
R107
20
C772
C376
Timers /
Counters
600 – 673
674 – 677*
None
64
Timer / Counter
Current Values
None
R600 – R673
R674 – R677*
64
Timer / Counter
Status Bits
T600 – T673
T674 – T677*
None
64
Data Words
None
R400 – R563
R700 – R767
172
Shift Registers
400 – 577
None
128
IO010
IO000
=
TMR
T600
K100
CTA600
CNT CT600
K10
K250
Contact valid for counters only.
T600
None specific, used with many
instructions
SR
400
417
Special
Registers
*
None
R574 – R577
R770 – R777
12
R574–R575 used with FAULT
R576–R577 Auxiliary Accumulator
R770–R777 Communications Setup
T/ C Setpoint Unit Only. Can be used as data registers if the Timer/Counter Setpoint Unit or Thumbwheel Interface Module is not used. R564 – R573
contain the preset value used with the Timer / Counter Setpoint Unit. R674 – R677 contain the current values for these timers or counters.
Registers T600 – T677 are 16-bit registers.
System Operation
=
8–28
System Operation
I/O Point Bit Map
These tables provide a listing of the individual Input points associated with each
register location for the DL330, DL330P, and DL340 CPUs.
System Operation
MSB
007
017
027
037
047
057
067
077
107
117
127
137
147
157
167
177
707
717
727
737
747
757
767
I/O References
006
016
026
036
046
056
066
076
106
116
126
136
146
156
166
176
706
716
726
736
746
756
766
005
015
025
035
045
055
065
075
105
115
125
135
145
155
165
175
705
715
725
735
745
755
765
004
014
024
034
044
054
064
074
104
114
124
134
144
154
164
174
704
714
724
734
744
754
764
003
013
023
033
043
053
063
073
103
113
123
133
143
153
163
173
703
713
723
733
743
753
763
LSB
002
012
022
032
042
052
062
072
102
112
122
132
142
152
162
172
702
712
722
732
742
752
762
001
011
021
031
041
051
061
071
101
111
121
131
141
151
161
171
701
711
721
731
741
751
761
000
010
020
030
040
050
060
070
100
110
120
130
140
150
160
170
700
710
720
730
740
750
760
Register
Number
R0
R1
R2
R3
R4
R5
R6
R7
R10
R11
R12
R13
R14
R15
n/a
n/a
R70
R71
R72
R73
R74
R75
R76
NOTE: 160 – 167 can be used as I/O in a DL330 or DL330P CPU under certain
conditions. 160 – 177 can be used as I/O in a DL340 CPU under certain conditions.
You should consult Chapter 4 to determine which configurations allow the use of
these points.
These points may be used as control relays. You cannot use them as both control
relays and as I/O points. Also, if you use these points as I/O, you cannot access
these I/O points as a Data Register reference using the DSTR5 (F55) and DOUT5
(F65) functions.
8–29
System Operation
Control Relay Bit Map
The following tables provide a listing of the individual control relays associated with
each register location for the DL305 CPUs.
NOTE: If a 16pt module is used in Slot 6 for the DL330 or DL330P CPU, 160 through
167 will not be available for control relay assignments. If a 16pt module is used in
Slot 6 and/or Slot 7 for a DL340 CPU, 160–167 and/or 170–177 are not available for
control relay assignments. You cannot use these points as both control relays and as
I/O points. If you use these points as I/O points, you still enter them as C160–C177 in
DirectSOFT.
Also, if you use these points as I/O, you cannot access these I/O points as a Data
Register reference using the DSTR5 (F55) and DOUT5 (F65) functions.
MSB
166
176
206
216
226
236
246
256
266
276
306
316
326
336
346
356
366
LSB
161
171
201
211
221
231
241
251
261
271
301
311
321
331
341
351
361
371
160
170
200
210
220
230
240
250
260
270
300
310
320
330
340
350
360
370
Register
Number
R16
R17
R20
R21
R22
R23
R24
R25
R26
R27
R30
R31
R32
R33
R34
R35
R36
R37
* Control relays 340 – 373 can be made retentive by setting a CPU dipswitch. See Chapter 3 for details on setting
CPU dipswitches.
REV A–1
System Operation
167
177
207
217
227
237
247
257
267
277
307
317
327
337
347
357
367
DL330
Control Relay References
165
164
163
162
175
174
173
172
205
204
203
202
215
214
213
212
225
224
223
222
235
234
233
232
245
244
243
242
255
254
253
252
265
264
263
262
275
274
273
272
305
304
303
302
315
314
313
312
325
324
323
322
335
334
333
332
345
344
343
342
355
354
353
352
365
364
363
362
373
372
8–30
System Operation
MSB
167
166
207
217
227
237
247
257
267
277*
206
216
226
236
246
256
266
276
DL330P
Control Relay References
165
164
163
162
174
173
172
205
204
203
202
215
214
213
212
225
224
223
222
235
234
233
232
245
244
243
242
255
254
253
252
265
264
263
262
275
274
273
272
LSB
161
171
201
211
221
231
241
251
261
271
160
170
200*
210
220
230
240
250
260
270
Register
Number
R16
R17
R20
R21
R22
R23
R24
R25
R26
R27
* Control relays 200 – 277 can be made retentive by setting a CPU dipswitch. See Chapter 3 for details on setting
CPU dipswitches.
System Operation
MSB
167
177
207
217
227
237
247
257
267
277
307
317
327
337
347
357
367
166
176
206
216
226
236
246
256
266
276
306
316
326
336
346
356
366
1007
1017
1027
1037
1047
1057
1067
1006
1016
1026
1036
1046
1056
1066
DL340
Control Relay References
165
164
163
162
175
174
173
172
205
204
203
202
215
214
213
212
225
224
223
222
235
234
233
232
245
244
243
242
255
254
253
252
265
264
263
262
275
274
273
272
305
304
303
302
315
314
313
312
325
324
323
322
335
334
333
332
345
344
343
342
355
354
353
352
365
364
363
362
373*
372
1005
1004
1003
1002
1015
1014
1013
1012
1025
1024
1023
1022
1035
1034
1033
1032
1045
1044
1043
1042
1055
1054
1053
1052
1065
1064
1063
1062
LSB
161
171
201
211
221
231
241
251
261
271
301
311
321
331
341
351
361
371
1001
1011
1021
1031
1041
1051
1061
160
170
200
210
220
230
240
250
260
270
300
310
320
330
340*
350
360
370
1000
1010
1020
1030
1040
1050
1060
Register
Number
R16
R17
R20
R21
R22
R23
R24
R25
R26
R27
R30
R31
R32
R33
R34
R35
R36
R37
R100
R101
R102
R103
R104
R105
R106
* Control relays 340 – 373 can be made retentive by setting a CPU dipswitch. See Chapter 3 for details on setting
CPU dipswitches.
8–31
System Operation
Special Relays
The following table shows the Special Relays used with the DL305 CPUs. Note, our
DL105, DL205, and DL405 product families use the data type “SP” to designate
Special Relays. Even though we refer to the following relays as special relays,
DirectSOFT uses the letter “C” as a special relay prefix for the DL305 products.
These letters aren’t used with the handheld programmer.
CPUs
DL330P
DL330
DL340
DL340
Description of Contents
C175
100 ms clock, on for 50 ms and off for 50 ms.
C176
Disables all outputs except for those entered with the SET
OUT instruction.
C177
Battery voltage is low.
C374
On for the first scan cycle after the CPU is switched to Run
Mode.
C375
100 ms clock, on for 50 ms and off for 50 ms.
C376
Disables all outputs except for those entered with the SET
OUT instruction.
C377
Battery voltage is low.
C770
Changes timers to 0.01 second intervals. Timers are
normally 0.1 second time intervals.
C771
The external diagnostics FAULT instruction (F20) is in use.
C772
The data in the accumulator is greater than the comparison
value.
C773
The data in the accumulator is equal to the comparison
value.
C774
The data in the accumulator is less than the comparison
value.
C775
An accumulator carry or borrow condition has occurred.
C776
The accumulator value is zero.
C777
The accumulator has an overflow condition.
C1072
Port 2 parity: on = odd, off = none
C1074
The RX or WX instruction is active.
C1075
An error occurred during communications with the RX or
WX instructions.
C1076
Port 2 communications mode: on = ASCII mode, off = HEX
mode. DirectNET supports both ASCII and HEX modes
and Modbus only supports HEX mode.
C1077
Port 1 communications mode: on = ASCII mode, off = HEX
mode
System Operation
DL330
DL330P
DL340
Special
Relay
8–32
System Operation
Timer / Counter Registers and Contacts
The following table shows the locations used for programming timer or counters.
Since timers and counters share the same data area, you cannot have timers and
counters with duplicate numbers. For example, if you have Timer 600, you cannot
have a Counter 600.
Each register contains the current value for the timer or counter. Each timer or
counter also has a timer or counter contact with the same reference number.
System Operation
NOTE: Counter current values are retentive and retain their state after a power
cycle. These registers are 16-bit registers.
607
617
627
637
647
657
667
677*
606
616
626
636
646
656
666
676*
Timer/Counter References/Registers
605
604
603
602
615
614
613
612
625
624
623
622
635
634
633
632
645
644
643
642
655
654
653
652
665
664
663
662
675*
674*
673
672
601
611
621
631
641
651
661
671
600
610
620
630
640
650
660
670
* Used with Timer / Counter Setpoint Unit and /or Thumbwheel Interface Module.
External
Timer/Counter
Setpoint Unit
Registers 674–677 are used in programming for use with the Timer/Counter
Setpoint Unit and the Thumbwheel Interface Module that are available in some
compatible product families. The registers contain the current time or count. There is
also a status bit for each register with the same reference number. For example, the
current value for Timer 674 is stored in R674 and the status contact is T674.
The presets for these modules are stored
in R564 – R573 as follows.
S
R564 – R565 — 1st T/C preset
S
R566 – R567 — 2nd T/C preset
S
R570 – R571 — 3rd T/C preset
S
R572 – R573 — 4th T/C preset
The example shows how a 4-digit
number would be represented in these
registers.
R565
0 0 0 1 00 1 1
1
3
R564
0 1 0 0 0 1 0 1
4
5
8–33
System Operation
Data Registers
The following 8-bit data registers are primarily used with data instructions to store
various types of application data. For example, you could use a register to hold a
timer or counter preset value.
Some data instructions call for two bytes, which will correspond to two consecutive
8-bit data registers such as R401 and R400. The LSB (Least Significant Bit) will be in
register R400 as bit0 and the MSB (Most Significant Bit) will be in register R401 as
bit17.
NOTE: Data Registers are retentive.
406
416
426
436
446
456
466
476
506
516
526
536
546
556
405
415
425
435
445
455
465
475
505
515
525
535
545
555
402
412
422
432
442
452
462
472
502
512
522
532
542
552
562
401
411
421
431
441
451
461
471
501
511
521
531
541
551
561
400
410
420
430
440
450
460
470
500
510
520
530
540
550
560
System Operation
407
417
427
437
447
457
467
477
507
517
527
537
547
557
DL330 / DL330P
8-Bit Data Registers
404
403
414
413
424
423
434
433
444
443
454
453
464
463
474
473
504
503
514
513
524
523
534
533
544
543
554
553
563
8–34
System Operation
System Operation
407
417
427
437
447
457
467
477
507
517
527
537
547
557
406
416
426
436
446
456
466
476
506
516
526
536
546
556
405
415
425
435
445
455
465
475
505
515
525
535
545
555
707
717
727
737
747
757
767
706
716
726
736
746
756
766
705
715
725
735
745
755
765
DL340
8-Bit Data Registers
404
403
414
413
424
423
434
433
444
443
454
453
464
463
474
473
504
503
514
513
524
523
534
533
544
543
554
553
563
704
703
714
713
724
723
734
733
744
743
754
753
764
763
402
412
422
432
442
452
462
472
502
512
522
532
542
552
562
702
712
722
732
742
752
762
401
411
421
431
441
451
461
471
501
511
521
531
541
551
561
701
711
721
731
741
751
761
400
410
420
430
440
450
460
470
500
510
520
530
540
550
560
700
710
720
730
740
750
760
8–35
System Operation
Stage Control / Status Bit Map
This table provides a listing of the individual stages and stage control bits. These are
only available with the DL330P CPU.
MSB
006
016
026
036
046
056
066
076
106
116
126
136
146
156
166
176
005
015
025
035
045
055
065
075
105
115
125
135
145
155
165
175
004
014
024
034
044
054
064
074
104
114
124
134
144
154
164
174
003
013
023
033
043
053
063
073
103
113
123
133
143
153
163
173
LSB
002
012
022
032
042
052
062
072
102
112
122
132
142
152
162
172
001
011
021
031
041
051
061
071
101
111
121
131
141
151
161
171
000
010
020
030
040
050
060
070
100
110
120
130
140
150
160
170
Register
Number
R100
R101
R102
R103
R104
R105
R106
R107
R110
R111
R112
R113
R114
R115
R116
R117
System Operation
007
017
027
037
047
057
067
077
107
117
127
137
147
157
167
177
Stage References
8–36
System Operation
Shift Register Bit Map
The shift register bits listed below are used in the shift register instruction. These
outputs are discrete bits and are not the same locations as the 8 Bit Data Registers.
These bits are retentive meaning they retain their state after a power cycle.
NOTE: The DL330P does not have Shift Register bits. Shift Register instructions in
the DL330P use Control Relays memory references.
System Operation
MSB
407
417
427
437
447
457
467
477
507
517
527
537
547
557
567
577
406
416
426
436
446
456
466
476
506
516
526
536
546
556
566
576
DL330 / DL340
Shift Register References
405
404
403
402
415
414
413
412
425
424
423
422
435
434
433
432
445
444
443
442
455
454
453
452
465
464
463
462
475
474
473
472
505
504
503
502
515
514
513
512
525
524
523
522
535
534
533
532
545
544
543
542
555
554
553
552
565
564
563
562
575
574
573
572
LSB
401
411
421
431
441
451
461
471
501
511
521
531
541
551
561
571
400
410
420
430
440
450
460
470
500
510
520
530
540
550
560
570
Register
Number
R40
R41
R42
R43
R44
R45
R46
R47
R50
R51
R52
R53
R54
R55
R56
R57
With the DL340 CPU, these bits can also be used as control relays if they are not
used with a Shift Register instruction.
8–37
System Operation
Special Registers
This table provides a listing of the special registers used with the DL305 CPUs.
CPUs
DL330
DL330P
DL340
DL340 Only
Special
Register
Description of Contents
R574 – 575 Contains the error code used with the FAULT instruction.
R576 – 577 Auxiliary accumulator used with the MUL and DIV
instructions.
Sets the upper byte of the station address assigned to the
bottom communication port. Therefore, this will contain the
1st and 2nd digits of the address.
R772
Sets the lower byte of the station address assigned to the
bottom communication port. This only contains one digit,
which is the 3rd digit of the address.
R773
Sets the baud rate for the bottom communication port.
R774
Sets the leading communications delay time for the bottom
communication port.
R775
Sets the trailing communications delay time for the bottom
communication port.
R776
Sets the leading communications delay time for the top
communication port.
R777
Sets the trailing communications delay time for the top
communication port.
System Operation
R771
Programming
Basics
In This Chapter. . . .
Ċ Introduction
Ċ Using Boolean Instructions
Ċ Using Timers
Ċ Using Counters
Ċ Using the Accumulator
19
9–2
Programming Basics
Introduction
This chapter describes some basic programming concepts used with the DL305
CPUs. It doesn’t provide detailed information on each instruction, but instead shows
how you can use the most basic elements of the instruction set. If you have quite a bit
of PLC programming experience, you may already know some of the information.
However, we suggest you at least read the portion that discusses the accumulator
operation. The accumulator is used in many different operations.
This chapter provides an overview of the following programming concepts.
1. Boolean Instructions
2. Timer Instructions
3. Counter Instructions
4. Shift Register Instruction
5. Accumulator Instructions
Programming Basics
Detailed examples of all categories of instructions are included in Chapters 11 & 12.
The DL305 CPUs can be programmed with the DirectSOFT PC-based
programming package, or by using the DL305 handheld programmer. There is a
separate manual available for each of these products. If your are not familiar with the
chosen programming device we recommend you use the appropriate programming
device manual along with this manual to program your DL305 system.
The following examples will help you understand how DL305 instructions are put
together to create a program solution.
9–3
Programming Basics
Using Boolean Instructions
Do you ever wonder why so many PLC manufacturers always quote the scan time
for a 1K boolean program? Simple. Most all programs utilize many boolean
instructions. These are typically very simple instructions designed to join input and
output contacts in various series and parallel combinations. Since the DirectSOFT
package allows you to use graphic symbols to build the program, you don’t
absolutely have to know the boolean equivalents of the instructions. However, it may
be helpful at some point, especially if you ever have to troubleshoot the program with
a Handheld Programmer.
The following paragraphs show how these boolean instructions are used to build
simple ladder programs.
END Statement
All DL305 programs require an END statement as the last instruction. This tells the
CPU this is the end of the program. Any instructions placed after the END statement
will not be executed. (This can be useful in some cases. See Chapter 13 for an
example.)
000
020
All programs must have
and END statement
OUT
END
Simple Rungs
You use a contact to start rungs that contain both contacts and coils. The boolean
instruction that does this is called a Store or, STR instruction. The output point is
represented by the Output or, OUT instruction. The following example shows how to
enter a single contact and a single output coil.
DirectSOFT Example
020
OUT
STR 000
OUT 020
END
END
Normally Closed
Contact
Normally closed contacts are also very common. This is accomplished with the
Store Not or, STRN instruction. The following example shows a simple rung with a
normally closed contact.
DirectSOFT Example
000
Handheld Mnemonics
020
OUT
END
STRN 000
OUT 020
END
Programming Basics
000
Handheld Mnemonics
9–4
Programming Basics
Contacts in Series
Use the AND instruction to join two or more contacts in series. The following
example shows two contacts in series and a single output coil.
DirectSOFT Example
000
Handheld Mnemonics
001
020
OUT
STR 000
AND 001
OUT 020
END
END
Midline Outputs
Sometimes it is necessary to use midline outputs to get additional outputs that are
conditional on other contacts. The following example shows how you can use the
AND instruction to continue a rung with more conditional outputs.
DirectSOFT Example
000
Handheld Mnemonics
020
001
OUT
021
002
OUT
003
STR 000
AND 001
OUT 010
AND 002
OUT 021
AND 003
OUT 022
END
022
OUT
END
Programming Basics
Parallel Elements
You may also join contacts in parallel. The OR instruction allows you to do this. The
following example shows two contacts in parallel and a single output coil.
DirectSOFT Example
000
Handheld Mnemonics
020
OUT
001
END
STR 000
OR 001
OUT 020
END
9–5
Programming Basics
Joining Series
Branches in
Parallel
Quite often it is necessary to join several groups of series elements in parallel. The
Or Store (ORSTR) instruction allows this operation. The following example shows a
simple network consisting of series elements joined in parallel.
DirectSOFT Example
000
Handheld Mnemonics
020
001
OUT
002
003
END
STR 000
AND 001
STR 002
AND 003
ORSTR
OUT 020
END
Quite often it is also necessary to join one or more parallel branches in series. The
Joining Parallel
Branches in Series And Store (ANDSTR) instruction allows this operation. The following example
shows a simple network with contact branches in series with parallel contacts.
DirectSOFT Example
000
001
Handheld Mnemonics
020
OUT
002
STR 000
STR 001
OR 002
ANDSTR
OUT 020
END
END
Comparative
Boolean
In the following example when the value
in counter C600 is equal to the constant
value 1234, output 020 will energize.
C600
K1234
020
OUT
The DL330P also provides Comparative Boolean instructions, but they are greater
than and less than instructions instead of equal and not equal.
Programming Basics
Many applications require comparisons of data values. This is especially true in
applications that use counters. Some PLC manufacturers make it really difficult to do
a simple comparison of a counter value and a constant or register. The DL330 and
DL340 CPUs provide Comparative Boolean instructions that allow you to quickly
and easily solve this problem. Comparative Boolean evaluates two 4-digit values
using boolean contacts. The valid evaluations are equal and not equal.
9–6
Programming Basics
Combination
Networks
You can combine the various types of series and parallel branches to solve most any
application problem. The following example shows a simple combination network.
000
002
005
020
OUT
001
003
004
006
END
Boolean Stack
There are limits to how many elements you can include in a rung. This is because the
DL305 CPUs use an 8-level boolean stack to evaluate the various logic elements.
The boolean stack is a temporary storage area that solves the logic for the rung.
Each time you enter a STR instruction, the instruction is placed on the top of the
boolean stack. Any other instructions on the boolean stack are pushed down a level.
The AND, OR, ANDSTR, and ORSTR instructions combine levels of the boolean
stack when they are encountered. Since the boolean stack is only eight levels, an
error will occur if the CPU encounters a rung that uses more than the eight levels of
the boolean stack.
Programming Basics
All of you software programmers may be saying, “I use DirectSOFT, so I don’t need
to know how the stack works.” Not quite true. Even though you can build the network
with the graphic symbols, the limits of the CPU are still the same. If the stack limit is
exceeded when the program is compiled, an error will occur.
9–7
Programming Basics
The following example shows how the boolean stack is used to solve boolean logic.
000
STR
STR
ORSTR
001
AND 004
020
OUT
002
STR
AND 003
005
Output
ANDSTR
OR
STR 000
STR 001
STR 002
1
1
STR 001
1
STR 002
1
002 AND 003
2
2
STR 000
2
STR 001
2
STR 001
3
3
3
STR 000
3
STR 000
4
4
4
4
5
5
5
5
6
6
6
6
7
7
7
7
8
8
8
8
STR 000
AND 003
ORSTR
AND 004
OR 005
1
001 OR (002 AND 003)
1
004 AND [001 OR (002 AND 003)]
1
NOT 005 OR 004 AND [001 OR (002 AND 003)]
2
STR 000
2
STR 000
2
STR 000
3
3
S
S
3
S
S
8
8
1
000 AND (NOT 005 OR 004) AND [001 OR (002 AND 003)]
2
3
S
S
8
8
Programming Basics
ANDSTR
S
S
9–8
Programming Basics
Using Timers
Timers are used to time an event for a desired length of time. The single input timer
will time as long as the input is on. When the input changes from on to off the timer
current value is reset to 0. Timers normally time in tenth of a second intervals, but you
can turn on Special Relay 770 to change the timers to hundredth of a second
intervals. There is discrete bit associated with each timer to indicate the current
value is equal to or greater than the preset value. The timing diagram below shows
the relationship between the timer input, associated discrete bit, current value, and
timer preset.
001
TMR
T600
K30
Input
001
Timer preset
T600
Timer
Programming Basics
T600
Contact
Current
Value
0
10
20
30
40
50
60
0
020
OUT
9–9
Programming Basics
Using Counters
Counters are used to count events. There are two types of counters.
S Regular Up counters
S Stage counters (used with the RLL PLUS instructions)
The up counter has two inputs, a count input and a reset input. The maximum count
value is 9999. The timing diagram below shows the relationship between the counter
input, counter reset, associated discrete bit, current value, and counter preset.
0
1
2
3
4
5
6
7
8
001
CNT
001
C600
K3
Up
002
Reset
002
Counter preset
CT600
1
Current
Value
2
3
4
0
The stage counter has a count input and is reset by the RST instruction. This
instruction is used with the RLL PLUS instructions. The maximum count value is 9999.
The timing diagram below shows the relationship between the counter input,
associated discrete bit, current value, counter preset and reset instruction.
0
1
2
3
4
5
6
7
8
Up
001
1
2
3
4
0
Programming Basics
RST
CT
SGCNT
C600
K3
Counter preset
CT600
Current
Value
001
9–10
Programming Basics
Using the Accumulator
Copying Data to
and from the
Accumulator
The accumulator in the DL305 series CPUs is a 16 bit register which is used as a
temporary storage location for data being copied or manipulated in some manor. For
example, you have to use the accumulator to perform math operations such as add,
subtract, multiply, etc. Since there are 16 bits, you can use up to a 4-digit BCD
number. The accumulator is reset to 0 at the end of every CPU scan.
The Data Store (DSTR) and Data Out (DOUT) instructions and their variations are
used to copy data from a register location to the accumulator, or to copy data from
the accumulator to a register location.
In the following example, when input 000 is on the value (7502) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The value in the
accumulator is output to data registers R404 and R405 using the Data Out (F60)
instruction.
DirectSOFT Display
000
R 403
R 402
7
0
2
2
Accumulator
0
2
5
DSTR (F50)
R 402
7
5
0
DOUT (F60)
R 404
7
5
R405
R404
You probably noticed it took two registers to hold a 4-digit BCD number. This is
because each BCD digit requires four binary bit positions.
Programming Basics
Since the accumulator is 16 bits and register locations are 8 bits, there are variations
of the DSTR and DOUT instructions that allow you to copy a single register, or even
half of a register (4 bits) either to or from the accumulator. The following example
shows how you could use the DSTR3 and DOUT2 instructions to copy the lower 4
bits from register 5 to the upper 4 bits of register 16. (These registers correspond to
I/O points and Control Relays respectively.)
DirectSOFT Display
000
DSTR3 (F53)
R 005
Load the lower 4 bits in
register 5 into the lower 4 bits
of the accumulator
DOUT2 (F62)
R 016
Output the lower 4 bits of the
accumulator to the upper 4
bits of R16
R005
The upper 4 bits (*) of R5
are not loaded into the
accumulator
0
0
The upper 4 bits (*) of R400
are not altered
*
8
0
8
8
*
R016
Accumulator
9–11
Programming Basics
Changing the
Accumulator Data
Instructions that change or manipulate data in some way also use the accumulator.
The result of the change resides in the accumulator. The original data that was being
changed is cleared from the accumulator. In the following example, when input 000
is on the value in R000 and R010 is loaded into the accumulator using the Data Store
5 (F55) instruction. The bit pattern in the accumulator is shifted to the left 4 bit
positions using the Shift Left (F80) instruction. Notice how the result resides in the
accumulator. The value in the accumulator is copied to data registers R404 and
R405 using the Data Out (F60) instruction.
DirectSOFT Display
000
R 010
R 000
6
3
9
5
DSTR5 (F55)
R 000
Load the value in registers R0
and R10 into the accumulator
7
6
0
1
I/O Points 100-107
5 4 3 2 1 0
1
0
1
0
15 14 13 12 11 10 9
Acc.
1
0
0
1
S S
Shifted out of
accumulator
SHFL (F80)
K4
0
1
0
0
1
7
6
0
0
I/O Points 000-007
5 4 3 2 1 0
1
1
0
1
0
1
S S
8
7
6 5
4 3
2
1
0
1
0
1
1
0
0
0
0
0
Shift the value in the
accumulator 4 bits to the left
776 will be ON after the shift
777 will be OFF after the shift
9
DOUT (F60)
R 404
Copy the value in the
accumulator to registers R404
and R405
3
R 405
5
0
R 404
776
Shifted a “1” out of Accumulator
777
Programming Basics
Accumulator equals zero after shift
9–12
Programming Basics
Accumulator
Operations
The following table lists several instructions that utilize the accumulator. Not all
instructions allow you to use all the different memory types. Chapters 11 & 12
provide details on these instructions.
Memory Areas
Category
Data Load
Programming Basics
4-digit
BCD
Const.
Shift
Register
Coils
Description
I/O
CRs
DSTR
(F50)
Load a 4-digit constant or a 2-bytes
of register data into the
accumulator
DSTR 1
(F51)
Load 1-byte of register data into the
accumulator
DSTR 2
(F52)
Load the upper 4 bits of a register
into the lower 4 bits of the
accumulator
DSTR 3
(F53)
Load the lower 4 bits of a register
into the upper 4 bits of the
accumulator
DSTR 5
(F55)
Load the digital values of 16 I/O
points (2 bytes) into the
accumulator
DOUT
(F60)
Write the accumulator to 2
sequential registers
DOUT 1
(F61)
Write the lower byte of the
accumulator to a register
DOUT 2
(F62)
Write the lower 4 bits of the
accumulator to the upper 4 bits of a
register
DOUT 3
(F63)
Write the lower 4 bits of the
accumulator to the lower 4 bits of a
register
DOUT 5
(F65)
Write the contents of the
accumulator to a 16-point output
module (2 bytes)
CMP
(F70)
Compare a 2-byte BCD reference
or a 4-digit BCD constant to the
accumulator
ADD
(F71)
Add a 2-byte BCD reference or a
4-digit BCD constant to the
accumulator
SUBTRACT
(F72)
Subtract a 2-byte BCD reference or
a 4-digit BCD constant from the
accumulator
MULTIPLY
(F73)
Multiply a 2-byte BCD reference or
a 4-digit BCD constant by the value
in the accumulator
DIVIDE
(F74)
Divide the accumulator by a 2-byte
BCD reference or a 4-digit BCD
constant
Mnemonic
Data Out
Math
Current
Values
Data
Register
— Memory Type available for use with the instruction
X — Not available
9–13
Programming Basics
Memory Areas
Category
Bit
Manipulation
Data
Conversion
Fault
Detection
Current
Values
4-digit
BCD
Const.
Shift
Register
Coils
Description
I/O
CRs
Data
Register
DAND
(F75)
Performs a bit “AND” on a 2-byte
reference or a 4-digit BCD constant
and the bits in the accumulator
DOR
(F76)
Performs a bit “OR” on a 2-byte
reference or a 4-digit BCD constant
and the bits in the accumulator
SHIFT
RIGHT
(F80)
Shifts the contents of the
accumulator to the right a specified
number of times. 1 – 15 bits can be
shifted.
SHIFT LEFT
(F81)
Shifts the contents of the
accumulator to the left a specified
number of times.
1 – 15 bits can be shifted.
DECODE
(F82)
Decodes the first 4 bits of the
accumulator into a decimal number.
ENCODE
(F83)
Encodes an accumulator bit into a
4-bit code that represents the
decimal number (0–15).
INV
(F84)
Logically inverts the contents of the
accumulator (1 to 0, 0 to 1).
BCD–BIN
(F85)
Converts the accumulator value
from BCD to Binary
BIN–BCD
(F86)
Converts the accumulator value
from Binary to BCD
FAULT
(F20)
Sends a 4-digit BCD number, from
a 2-byte reference or a constant, to
the programmer display
Mnemonic
— Memory Type available for use with the instruction
X — Not available
Programming Basics
RLL PLUS
Programming Basics
In This Chapter. . . .
110
Ċ Introduction
Ċ An Example Machine
Ċ An RLL Solution
Ċ An RLLā PLUS Solution
Ċ Stage Instruction Execution
Ċ Activating Stages
Ċ Using Outputs in Stages
Ċ Using Timers and Counters in Stages
Ċ Using Data Instructions in Stages
Ċ Using Comparative Contacts in Stages
Ċ Parallel Branching Concepts
Ċ Unusual Operations in Stages
Ċ Two Ways to View RLLā PLUS Programs
Ċ Designing a Program Using RLLā PLUS Instructions
10–2
RLL PLUS Programming Basics
Introduction
If you’ve ever been around some really accomplished RLL programmers you have
probably been amazed at how easily they seem to be able to create programs of
incredible complexity. Well, not everyone has years of experience in programming
PLCs. Because of this the DL330P CPU has RLL PLUS instructions that make it
considerably easier to design and create programming solutions. These instructions
are especially useful to those of you who aren’t that familiar with the interlocking
concepts commonly used in RLL programs.
You can still use the normal instructions you’ve already seen, plus you only have to
become familiar with a few new instructions that help you organize your program into
manageable pieces.
This programming method is similar to Sequential Function Chart programming and
literally allows you to design a flowchart of the program operation sequence and load
it into the CPU! You can expect to see several benefits by using this method.
S Considerably reduced program design time. We’ve seen many, many
cases where these few instructions have cut program design time by
well over 50%.
S Shorter, more simple programs. Later in this chapter we’ll show you why
your programs sometimes end up being a lot larger than you first
anticipated. The RLL PLUS instructions can help make your programs
simple for everyone to understand.
S Easier program troubleshooting. How many times have you tried to
troubleshoot or modify a program that was written by someone else? If
you’ve done this very often you know it’s not an easy task. This chapter
will show you a few instructions that will also help with this problem as
well.
The following paragraphs discuss several RLL PLUS programming concepts. We’ll
use a simple example to show you how to use the various types of instructions. Also,
we’ll show you the equivalent program without RLL PLUS instructions to give you an
idea of the differences between the two approaches.
RLLPLUS
Programming Basics
NOTE: The DL330P has several instructions that do not operate quite the same as
the equivalent instructions in the DL330 or DL340. If you want to take advantage of
the benefits associated with the RLL PLUS instructions, make sure you also take time
to review Chapter 12. This chapter discusses the instructions that are unique or
different with the DL330P CPU.
10–3
RLL PLUS Programming Basics
An Example Machine
Machine Operation
Most any application can be described as
a sequence of events. The PLC program
merely makes sure the events are
completed in a specific order. Not only
does the program control normal
operation, but it also has to allow for
machine failures and emergency
conditions. Consider a simple example.
1. The operator presses the start
switch.
2. The machine checks for a part. If the
part is present, the process
continues. If not, the conveyor moves
until a part is present.
3. The part is locked in place with a
clamp.
4. The press stamps the part.
5. The clamp is unlocked and the
finished piece is moved out of the
press.
6. The process stops if the machine is in
one-cycle mode, or the process
continues if automatic mode is
selected.
On/Off
Switch
Press Arm
Part
Part
Detection
Sensor
Clamp
Machine Flowchart The following diagram provides a flowchart of this operations sequence.
The flowchart
breaks the program
into logical steps
Wait for
Start
Step 1
Check for
Part
Lock the
clamp
Press the
Part
Unlock
clamp
Move
Conveyor
Step 2
Step 3
Step 4
Step 5
Step 6
Continuous
One
Cycle
Check
Mode
Inputs
Start Switch
Part Present
Part Locked
Part Unlocked
Lower Limit
Upper Limit
Conveyor Indexed
One-Cycle Switch
Outputs
000
001
002
003
004
005
006
007
Clamp
Press
Conveyor
020
021
022
RLLPLUS
Programming Basics
Step 7
10–4
RLL PLUS Programming Basics
An RLL Solution
RLLPLUS
Programming Basics
Why is RLL so popular? Simple. Before
the PLC arrived control problems were
generally solved with hardwired relays
and switches. About 30 years ago people
started experimenting with a way to
make quick and easy changes without
changing the actual panel wiring. Thus,
the PLC was born. Since the people
developing and using this new
technology were familiar with the relay
and switch solution, it made sense to
have this new technology emulate
something that was familiar to them.
That’s why RLL programs emulate a
relay panel solution.
When you supply power to a relay panel
the combination of contact and coil status
determines what actions take place.
Since the RLL program emulates the
relay panel solution, the entire program
is scanned left-to-right, top-to-bottom.
The program executes the operations
sequence when a certain combination of
contacts are activated. This process is
known as interlocking.
Since many PLCs do not have
instructions to help manage the
operations sequence, the programmer
has to make sure the program carries out
the correct sequence by adding the
required interlocks. One great thing
about the RLL solution is the individual
rungs are easy to understand. By
examining the contacts you can easily
determine if the output will be on or off.
Executes all rungs Left to Right, Top to bottom
Run
1 Cycle
Stop
RUN
OUT
160
163
011
160
Start
000
RUN
Part
Present
160
001
MCS
Part
Unlocked
Release
Clamp
003
162
Clamp
OUT
020
Clamp
020
Press
Lower
Limit
Index
Conveyor
Press
Complete
OUT
004
006
161
021
Press
Complete
161
Part
Locked
Lower
Limit
Press
Complete
002
004
161
Press
OUT
021
Press
021
Press
Complete
Upper
Limit
Release
Clamp
OUT
161
005
162
MCR
Press
Complete
161
Run
160
Part
Index
Unlocked Conveyor
003
Part
Present
006
Conveyor
OUT
022
001
1 Cycle
Index
Conveyor
007
006
1 Cycle
OUT
163
- Interlock
Many accomplished RLL programmers use things such as Master Control Relays
and Subroutines to reduce the amount of interlocking required. However, these
instructions can sometimes make the program more difficult to understand. There
are several things you should notice about our simple press program.
S Most all rungs use some amount of interlocking.
S The number of interlocks is usually proportional to the number of tasks
in the operations sequence.
S Most of the instructions are devoted to processing the interlocks. (Plus,
since the program is larger, it takes more time to process.)
S It usually requires several attempts until a program is designed that is
not susceptible to inadvertent activation and deactivation.
S The program can be difficult to debug if you do not have a considerable
amount of RLL programming experience.
RLL PLUS Programming Basics
10–5
An RLL PLUS Solution
The RLL PLUS instructions keep the simplicity of the contacts and coils while
removing some of the problems associated with the enormous amount of interlocks.
There are several RLL PLUS instructions, but the most often used are the Initial Stage
(ISG), Stage (SG), and Jump (JMP) instructions. Here’s the example press program
created using RLL PLUS instructions. There are two things you should notice.
S
Control Relay interlocks are not
required.
S The program directly follows the
flowchart of the press operation.
How can this happen? Simple. The
interlocks were added to the RLL
program to keep the outputs from coming
on at the improper time. This is because
every rung of the RLL program was
examined on every scan.
The Stage instructions (and the logic
between the Stage instruction and the
next stage instruction) are not
necessarily examined on every scan.
Only stages that are on are examined.
Each stage instruction has a status bit
that is on when the stage is active, and off
when the stage is inactive. On every scan
the CPU examines which stage status
bits are on and only examines the logic in
those stages. If a stage is inactive, the
CPU skips the logic between that stage
and the next active stage.
The following pages will talk about
several different aspects of the CPU
execution for the Stage Instructions. It
will help to understand the pieces of an
individual stage.
Stage Nomenclature
As we discuss the examples it will be
necessary for you to understand the
various pieces that can make up a
program stage.
S
S
Stages — a instruction that denotes
a piece of the program
Actions— an event in the program,
such as an output, jump, or some
other instruction.
Transitions — the event that causes
the program to move to the next
stage.
ISG
Wait for start
S000
Start
S1
JMP
000
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
S002
Part
Locked
Clamp
SET
020
S4
JMP
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
S4
JMP
004
SG
Unlock the clamp
S004
Top
Limit
Clamp
RST
020
005
Part
Unlocked
S5
JMP
003
SG
Index the conveyor
S005
Move
Conveyor
022
Conveyor
Moved
S6
JMP
006
SG
One cycle or automatic?
S006
One
Cycle
S0
JMP
007
One
Cycle
007
S1
JMP
RLLPLUS
Programming Basics
S
Only executes logic in stages that are active
10–6
RLL PLUS Programming Basics
Stage Instruction Execution
Stage Instruction
Numbering
Stages are numbered in octal, so you
can’t have any stages with the numbers 8
or 9 in them. Notice the stages skipped
from 7 to 10 since the numbers 8 and 9
are not used. There are 128 (decimal)
stages available in the DL330P CPU,
numbered 0 through 177.
Since each stage has a unique status bit,
you cannot have stages with the same
address number. For example, since the
example program already has a Stage1,
we wouldn’t want to use that number
again.
There’s another advantage to having a
status bit for each stage. This allows you
to skip stage numbers as necessary. This
is a good practice to follow because it
makes it easier to insert stages later
without affecting the appearance of the
program flow.
The stage numbers do not necessarily
have to be numbered sequentially, but it
can be extremely helpful to use
sequential numbers if you are working
with large programs.
Also, the stages do not have to be
entered
sequentially
with
the
programming device. For example, you
could have Stage 100 be the first entry in
the program. This is not a good
programming practice, but since the
CPU looks at the active status bits to
determine which stages to execute, it
doesn’t care where the stages are
physically located in the program.
Octal Numbering
SG
S007
SG
S008
No Duplicate Numbers
SG
S001
SG
S001
SG
S010
SG
S020
RLLPLUS
Programming Basics
SG
S030
Non-sequential Numbering
SG
S012
SG
S001
SG
S020
Only executes logic in stages that are active
SG
Press the part
S003
Press
Down
021
Lower
Limit
S4
JMP
004
ISG
Wait for start
S000
S1
JMP
000
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
The section on Designing an RLL PLUS
Program at the end of this chapter
provides guidelines for assigning
numbers to the stage instructions.
SG
S002
Skip Numbers if Necessary
Start
NOTE: Remember, machines do break.
We recommend you use numbering that
matches the machine flowchart. Also, we
recommend you enter the program in the
same order whenever possible. This will
make troubleshooting much easier.
SG
S010
001
S5
JMP
RLL PLUS Programming Basics
A Few
Simple Rules for
Execution
10–7
Since the CPU will only examine the logic in those stages that are active, it is
important you understand how stages can be turned on and off. There are a few
simple rules that dictate how this works. This may seem like quite a few things to
remember, but it’s really pretty simple. We’ll show examples in the following pages
that show how each of these rules apply to the program execution.
1. Only active stages are executed. If a stage is inactive, the CPU skips the
logic between that stage and the next active stage.
2. You can turn stages on by the following methods.
2.a Initial Stages are automatically turned on when the CPU transitions
from Program Mode to Run Mode.
2.b A stage can be turned on when the program “jumps” from stage to stage
with the Jump (JMP) instruction.
2.c You can use the SET instruction to set a stage status bit just like you
would SET an output.
2.d A stage can be turned on when the program has power flow between
two stages that are tied together by a single transition element.
3. You can turn stages off by the following methods.
3.a An active stage is automatically turned off if the program jumps from the
active stage to another stage.
3.b You can use the Reset (RST) instruction to turn off a stage just like you
use Reset to turn off an output point.
3.c The current stage is automatically turned off if the program has power
flow between the current stage and the next stage.
RLLPLUS
Programming Basics
10–8
RLL PLUS Programming Basics
Activating Stages
Using Initial Stages
Any initial stages (ISG instructions) are
automatically turned on when the CPU
goes from Program Mode to Run Mode.
For example, when the CPU executing
our example program enters Run Mode,
the Initial Stage (ISG 000) will be turned
on automatically. The other stages are
off, so the CPU only scans the portion of
the program associated with ISG 000.
Since there’s only one rung in Stage 0,
the CPU continually monitors the start
switch. Nothing else will happen until the
start switch is pressed.
Only executes logic in stages that are active
ISG
Wait for start
S000
Start
S1
JMP
000
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
RLLPLUS
Programming Basics
Although it is unusual, there may be times when you need more than one initial
stage. There is nothing at all wrong with this. If your application has a need for more
than one starting point, you can use more than one initial stage. For example, if you
had three initial stages, then those three stages would all be active when the CPU
entered the Run Mode.
RLL PLUS Programming Basics
Using Jump
Instructions
When the operator presses the start
switch input 000 comes on. When 000
comes on the CPU executes the Jump
instruction and “jumps” to Stage 1.
Now the CPU only scans Stage 1. Stage
0 is no longer scanned after the program
jumped to stage 1. This means the Jump
instruction did two things.
S It activated the destination stage. In
this case, it activated stage 1.
S It deactivated the stage it came
from, which was stage 0 in this
case.
So, you can jump to a stage to turn it on,
and when you jump from a stage it turns
off.
10–9
Only executes logic in stages that are active
ISG
Wait for start
S000
Start
S1
JMP
000
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
S002
Part
Locked
Clamp
SET
020
S3
JMP
002
This example only shows an action that initiates a jump to one destination. You can
use several jumps ORed together if necessary. Examples of this will be shown later.
Only executes logic in stages that are active
There’s also another type of Jump
instruction called a Not Jump. This
ISG
Wait for start
S000
instruction only works if the input
conditions are not true, whereas the
Start
S1
JMP
regular JMP instruction only works if the
000
input conditions are true.
SG
Check for a part
S001
In the previous example we examined a
Part
single contact to determine which part of
S2
Present
JMP
the program to jump to next. If the part is
001
present (001 closed), the program jumps
S5
NJMP
to Stage 2. If a part is not present (001
open), the program jumped to Stage 5.
SG
We could have used a single contact and
Lock the clamp
S002
the NJMP instruction.
Clamp
The program example to the right shows
SET
020
Part
how the NJMP instruction would be used
Locked
S3
JMP
in this situation. Notice there is one less
002
instruction required in this example
compared to the previous one.
RLLPLUS
Programming Basics
NOTE: We strongly recommend you
avoid using the NJMP instruction. This is
because program debugging can
become more difficult, especially for
those who are not so familiar with
structured programming concepts.
10–10
RLL PLUS Programming Basics
Using Set
Instructions with
Stages
When you examine the instruction set
more carefully you’ll notice the DL330P
CPU offers a Set (SET) instruction that
works similarly to a latching operation.
For example, you could use a SET
instruction to latch an output point. The
output point can then be unlatched with
the Reset (RST) instruction.
You can also use a SET instruction to turn
on a stage. To show how this works,
we’re going to add a stage to the
program. You may have noticed the
original flowchart did not contain a stop
switch. Well, we don’t want to make
these little widgets forever, so we’re
adding Stage 150, which monitors for a
stop switch. (This is also a good example
of how you can skip stage numbers.)
Notice we added a SET instruction in the
first stage. Now when the start switch is
pressed, two stages will be activated.
The CPU examines Stage 1, which
monitors for a part, and it also examines
Stage 150, which monitors the stop
switch.
Only executes logic in stages that are active
ISG
Wait for start
S000
Start
S0
JMP
000
S150
SET
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
S002
Part
Locked
Clamp
SET
020
S3
JMP
002
SG
Monitor for stop
S150
Stop
020 – 022
RST
010
S0 – S6
RST
RLLPLUS
Programming Basics
S0
JMP
We did not absolutely have to use a SET instruction in the example. We could have
used a Jump, since you can jump to more than one stage. We just used a SET to
show how it works.
If you examine Stage 150, you’ll notice we do three things when the stop switch is
pressed.
S The RST 020 – 022 instruction makes sure all the outputs are turned off.
(We’ll discuss this in more detail in the next section.)
S The RST S0–S6 instruction resets (turns off) stages 0 through 6. We
reset the entire range so that we guarantee we can stop the press no
matter which stage is currently executing. Notice we reset stages that
were not necessarily turned on with the SET instruction. The Reset
(RST) instruction can be used to turn off stages, no matter how they
were turned on. This is especially handy in larger, more complex
programs.
S The program jumps back to Stage 0 and starts over again. Note, just
because Stage 0 is an initial stage does not mean it can only be active
at a transition to Run Mode. You can return to an Initial Stage at any
time. It’s just the CPU automatically activates Initial Stages at the Run
Mode transition.
RLL PLUS Programming Basics
Power Flow
Transitions
You do not always have to use a Jump
instruction to move from stage to stage. If
you only move to one stage, instead of
multiple stages, you can use what it is
called a power flow transition. For
example, we used Jump instructions in
our sample program. For those stages
that did not have multiple transition
possibilities, we could have just used
power flow transitions.
Look at Stage 2. Notice how the
transition contact, 002 now is directly
connected to the next stage, Stage 3.
You can only do this if you are moving
from one stage to one other stage.
If you examine Stage 1, you’ll notice we
have to use the Jump instructions
because the program can transition to
more than one stage.
NOTE: We suggest you use Jump
Instructions instead of power flow
transitions. This is because we’ve seen
many cases where we had to come back
and add things to the program. If you
used Jumps from the beginning, you only
have to add another Jump instruction. If
you used power flow transitions, the
program edits can take a little longer.
10–11
Only executes logic in stages that are active
ISG
Wait for start
S000
Start
S1
JMP
000
S150
SET
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
S002
Part
Locked
Clamp
SET
020
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
004
RLLPLUS
Programming Basics
10–12
RLL PLUS Programming Basics
Using Outputs in Stages
Setting Outputs
with the SET
Instruction
Since the CPU only examines the logic in stages that are on, you have a lot more
flexibility in how you use outputs with the RLL PLUS instructions. Also, you don’t have
to worry about adding several permissive contacts to keep the output from coming
on at an inappropriate time. (If the stage is not on,the CPU doesn’t even scan the
stage, so the output can’t possibly be turned on by the logic in that stage.)
If you examine Stage 2, you’ll notice we
use a SET instruction to clamp the part in
ISG
Wait for start
S000
place. Why a set? Simple. If we used a
regular output the clamp will be
Start
S1
JMP
deactivated
when
the
program
000
S150
transitions to Stage 3. Remember, when
SET
you leave a stage the CPU no longer
SG
Check for a part
S001
scans that stage until it is turned on
Part
again. So if we had used a regular OUT
S2
Present
JMP
instruction, the CPU would have
001
automatically turned off the output, which
Part
Present
S5
would have unclamped the part.
JMP
001
The first example shows the program
SG
execution in Stage 2. The second
Lock the clamp
S002
example shows what happens on the
Clamp
next scan after the part is locked. Notice
SET
020
the clamp output is still on even though
Part
Locked
S3
the CPU is not scanning this portion of
JMP
002
the program. This is why we use the SET
instruction in this case. We want the
clamp to stay on while the press
completes the cycle.
Next Scan after part is locked
The clamp will stay on until the program
SG
enters Stage 4. Stage 4 unlocks the part
Lock the clamp
S002
by resetting output 020 when the press
Clamp
returns to the top limit.
SET
Part
Locked
020
S3
JMP
002
SG
Press the part
S003
Press
Down
021
RLLPLUS
Programming Basics
Lower
Limit
S4
JMP
004
SG
Unlock the clamp
S004
Top
Limit
005
Part
Unlocked
003
Clamp
RST
020
S5
JMP
RLL PLUS Programming Basics
Using the OUT
Instruction
One other benefit with RLL PLUS is the
ability to use the same output in multiple
places. Instead of using the SET
instruction in Stage 2, we could have just
put the clamp output, 020, in all the
stages where we wanted the part to
remain clamped.
If you examine Stage 2 you’ll notice
output 020 is on because the stage is
active. The next example shows what
happens after the part is locked in place.
The program moves to Stage 3 from
Stage 2. Notice output 020 is now off in
Stage 2. However, since we included the
same clamp output in Stage 3, the part
remains clamped in place.
The clamp will automatically turn off
when the program enters Stage 4. Notice
Stage 4 does not have to have any kind of
Reset instruction, since the output is
automatically turned off when the
program exits Stage 3.
The concept of automatically turning off
the outputs sometimes confuses many
people. However, the CPU just uses a
very simple algorithm to determine if the
output should be turned off. The following
diagram shows how this algorithm
works.
ISG
10–13
Wait for start
S000
Start
S1
JMP
000
S150
SET
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
S002
Clamp
OUT
020
S3
JMP
Part
Locked
002
Next Scan after part is locked
SG
Lock the clamp
S002
Clamp
OUT
020
S3
JMP
Part
Locked
002
SG
Press the part
S003
Press
Down
021
Clamp
OUT
020
Lower
Limit
Stage=On
No
S4
JMP
004
SG
Unlock the clamp
S004
Yes
Any outputs
on last
scan?
No
Top
Limit
Part
Unlocked
005
003
S5
JMP
Yes
Examine Logic,
AND results
with 0
Skip to next
active stage
RLLPLUS
Programming Basics
Execute
Logic
10–14
RLL PLUS Programming Basics
Latching Outputs
with Stages
There’s one more way to control outputs
with the Stage instructions. You may
recall once a stage is turned on, you can
only turn it off by resetting it, or by having
a transition from it, either by a Jump or a
power flow.
What happens if you have a stage that
does not have any kind of transition?
What if it doesn’t have a Jump instruction
or any other kind of transition contact
leading to another stage? Simple. The
stage will stay on until it is reset by some
other part of the program that uses a
Reset instruction.
This makes it easy to use a stage without
a transition to latch an output. For
example, if you examine Stage 2 you’ll
notice we’ve now changed this part of the
program again. Now this stage sets
Stage 140,which will be used to control
the clamp.
Notice Stage 140 does not have any type
of transition. The only way to turn off the
clamp is to Reset Stage 140. This
instruction has now been included in
Stage 4. So, after the program transitions
to Stage 4, the Reset instruction will turn
off Stage 140.
ISG
Wait for start
S000
Start
S1
JMP
000
S150
SET
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the Clamp
S002
Part
Locked
SET
S140
S3
JMP
002
Next Scan after part is locked
SG
Lock the clamp
S002
Part
Locked
SET
S140
S3
JMP
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
S4
JMP
004
SG
Unlock the clamp
S004
Top
Limit
Clamp
RST
S140
005
Part
Unlocked
S5
JMP
003
SG
RLLPLUS
Programming Basics
S140
Clamp
Clamp
020
RLL PLUS Programming Basics
10–15
Using Timers and Counters in Stages
Time Based
Transitions
Up to this point we’ve been using certain
events that triggered the transition from
stage to stage. There will probably be
many cases where the transition should
be related to a timer value. For example,
if you know the speed of the conveyor
you could use a timer to control the
conveyor movement.
If we used this approach we would
modify Stage 5 as shown. Notice the
timer does not have a preset value. The
timer begins incrementing as soon as it
becomes active. Since the timer does not
have a preset value, you do not have a
timer contact, so you have to use a
comparative instruction.
In the example shown, the conveyor will
be turned on for 5 seconds and then the
program will jump to the next stage.
Only executes logic in stages that are active
SG
Unlock the clamp
S004
Top
Limit
Clamp
RST
020
005
Part
Unlocked
S5
JMP
003
SG
Index the conveyor
S005
Move
Conveyor
022
TMR
T600 50
SG
T600
S6
JMP
One cycle or automatic?
S006
One
Cycle
S0
JMP
007
One
Cycle
S1
JMP
007
RLLPLUS
Programming Basics
10–16
RLL PLUS Programming Basics
RLLPLUS
Programming Basics
Using Counters
There will also be times when you need
to count things that happen throughout
the process. For example, you may want
to know the number of parts produced
during any given shift, or you may know
the presses generally require some type
of maintenance after a certain number of
cycles.
If we wanted to count the number of
widgets made on our simple press, we
could just add a counter to Stage 4 to
monitor how many times the press is
used. We’re also going to use the counter
as an automatic shutdown when the
press has made 5000 parts so we’ve
added a new rung in Stage 150 to
perform the shutdown operation.
Notice the counter does not have a reset
leg. This is true only when you use a
counter with the DL330P. (The other
CPUs have counters with reset legs.)
Even though this counter does not have a
reset leg, it can be reset with a Reset
instruction. This works just like an output
reset, so you could place this reset
wherever it is appropriate. We’ve placed
it in Stage 150 for this example.
When the parts count reaches 5000, the
program will finish the current cycle,
reset the part counter, and jump to Stage
0 to wait for another start cycle. You may
notice we added an additional input, 006.
This is what allows the program to finish
the current cycle. (You may recall 006
only came on after the part was unlocked
and the conveyor was indexed.)
SG
Lock the clamp
S002
SET
S150
S3
JMP
Part
Locked
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
CNT
C600
004
S4
JMP
SG
Monitor for stop
S150
Stop
020 – 022
RST
010
S0 – S6
RST
S0
JMP
Parts Count
C600 K5000
Index
Conveyor
C600
RST
006
S0 – S6
RST
S0
JMP
RLL PLUS Programming Basics
10–17
Using Data Instructions in Stages
Even though there are a few differences
in the way some of the instructions
operate between the various CPUs,
there are many of the normal instructions
that can be used inside an individual
stage. For example, you may need to
load data into the accumulator to perform
some type of math, or, you may need to
store values into register locations.
If you examine Stage 3, you’ll notice
we’ve added a couple of instructions.
These instructions store the current parts
count in a register.
Now the CPU will take the current parts
count, stored in R600, and load it into the
accumulator with the DSTR instruction.
Then this 4-digit BCD count will be
moved to R400 with the DOUT
instruction.
This is just one example of how you can
use the various types of data
instructions. There are many other
possibilities. Just remember, if the stage
is active, the instructions can be
executed. If the stage isn’t active, the
instructions will not even be examined.
SG
Lock the clamp
S0002
SET
S150
S3
JMP
Part
Locked
002
SG
Press the part
S0003
Press
Down
021
Lower
Limit
CNT
C600
004
DSTR
F50
R600
DOUT
F60
R400
S4
JMP
SG
Monitor for stop
S150
Stop
020 – 021
RST
010
S0 – S6
RST
S0
JMP
Parts Count
C600 5000
Index
Conveyor
CT0
RST
006
S0 – S6
RST
S0
JMP
RLLPLUS
Programming Basics
10–18
RLL PLUS Programming Basics
RLLPLUS
Programming Basics
Using Comparative Contacts in Stages
You may recall you had to use a
comparative instruction with the timers
and counters. The DL330P provides
several comparative contacts that are
very useful. You can use these contacts
to examine the relationship between a
counter or timer value and a constant or
register value.
For example, let’s assume the pressed
widgets move off the conveyor into a
holding bin. The bin can only hold 1000
widgets, so we’ll add another counter,
C601, to note how many widgets are in
the bin. Also, we want to use different
colored lights mounted on top of the
press to alert a forklift driver the bin
needs to be carried to the next operation.
We’ll use the following indicators.
Indicator Meaning Address Stage
Green
OK
040
21
Yellow
Soon
041
22
Red
Urgent
042
23
Reset
Emptied 030
Notice we’ve added a few more stages to
monitor this condition. For this example,
assume the press has made 750
widgets. This means the Yellow indicator
(Stage 22) should be active.
We also need a way to reset the bin
counter whenever the forklift driver
empties the bin. If you examine Stage 21
through Stage 23, you’ll notice we reset
the bin counter whenever the bin reset
(030) is active.
This example doesn’t show it, but you
would also have to make some changes
to other parts of the program. For
example, you’d need to modify the Stop
Stage to shut off these stages when the
machine was stopped.
SG
Press the part
S0003
Press
Down
021
Lower
Limit
CNT
C600
004
DSTR
F50
R600
DOUT
F60
R400
CNT
Bin counter
C601
S4
JMP
SG
Monitor lights for forklift
S0020
R601 K499
S21
SET
S22
RST
S23
RST
R601 500
R601
K899
S22
SET
S21
RST
R601 K900
S23
SET
S22
RST
SG
Bin level OK
S0021
040
OUT
Bin
Emptied
C601
RST
030
SG
Empty bin soon
S0022
041
OUT
Bin
Emptied
C601
RST
030
SG
Empty bin now
S0023
042
OUT
Bin
Emptied
030
C601
RST
RLL PLUS Programming Basics
10–19
Parallel Branching Concepts
Branching
Methods
As you examined some of the previous examples you saw we could have more than
one stage being processed on any given scan. The CPU scanned the first active
stage and then moved on to the next active stage, skipping any inactive stages in
between. For some complex applications, you can easily have as many parallel
paths as necessary. This is often called branching or divergence.
There are a couple of approaches you can take when you want to turn on more than
one stage. The diagrams shown don’t necessarily apply to our press example, but
instead show the various approaches.
Only executes logic in stages that are active
In this example, you use one transition
contact to activate several stages.
ISG
Wait for start
S000
S The SET instruction sets a range of
Start
S20 – S30
stages. These stages would remain
SET
on until they were reset, or, until
000
S2
any transition instructions contained
JMP
within the stages were executed.
S50
JMP
S There are two Jump instructions,
both activating different stages.
In this example, notice the stage that gets
activated depends on an extra condition.
For example, if the machine was capable
of producing three different patterns,
there may be a section of program for
each pattern.
There are other types of contacts that
can be used. For example, you may
recall we used Comparative contacts in
some earlier examples.
Notice we had to repeat the start switch in
a separate rung each time. At first glance
you would think you could simply have
one Start switch contact and OR the
remaining switches. The DL305 CPUs
do support midline outputs (which is what
this is called), but only in an AND
situation.
Only executes logic in stages that are active
ISG
Wait for start
S000
Start
Pattern 1
000
020
Start
Pattern 2
000
021
Start
Pattern 3
000
022
ISG
S0000
S100
JMP
S200
JMP
S300
JMP
Wait for start
Start
Pattern 1
000
020
Pattern 2
S100
JMP
S200
JMP
021
Pattern 3
S300
JMP
022
ISG
S000
S100
SET
000
001
S200
JMP
002
S300
JMP
000
023
RLLPLUS
Programming Basics
You can also use midline outputs to
control branching conditions. Here’s an
example of branching instructions that
follow the guidelines for midline outputs.
(This example is not for the press
program, but merely shows how the
midline outputs would appear.)
10–20
RLL PLUS Programming Basics
RLLPLUS
Programming Basics
Joining Parallel
Branches
There are many times you have to bring parallel branches back together at some
point in the program. You may recall the stages have status bits associated with
them. You can use this status bit as a contact to easily converge the parallel paths.
To illustrate this method, we’re going to use a simple press with two stations. Now a
widget must get pressed at each station before it is a finished product. Since there
are two stations, we must make sure both operations are complete before we move
the conveyor.
RLL PLUS Programming Basics
10–21
Here’s a flowchart that describes the two-station press. Please note we’ve changed
some of the stage numbers, input numbers, and output numbers, so they won’t
necessarily match the previous examples.
Check for
Stop
Stage150
Reset all stages
Jump to Start
Check for
Parts in
A&B
Stage 10
Lock the
clamp
Press the
Part
Unlock
clamp
Wait for
Station B
Move
Conveyor
Check
Mode
A Stage 20
Stage 21
Stage 22
Stage 23
Stage 40
Stage 50
Station A
Wait for
Start
Stage 0
No Part in A
Station B
Lock the
clamp
Press the
Part
Unlock
clamp
Station B
Finished
B Stage 30
Stage 31
Stage 32
Stage 33
Program must
converge into
a single path
again
No Part in B
One
Cycle
Continuous
You’ve already seen how the basic sequence of operations was executed. so we’re
only going to show the portions of the program that describe how the branches are
joined together.
RLLPLUS
Programming Basics
10–22
RLL PLUS Programming Basics
Using Stage Bits
as Contacts
If you examine the flowchart you’ll notice
once the part is unclamped in station B,
the program transitions to Stage 33
which indicates Station B is complete.
If you look at that portion of the program
shown here, you’ll notice there are no
other instructions or actions that take
place in this stage. This is why we call it a
“dummy” stage. We’re just going to use
the status of the stage bit associated with
this dummy stage as a contact elsewhere
in the program to indicate station B is
finished.
You may be wondering how we can turn
off this stage. Since it does not have any
type of jump or power flow transition, the
only other option is to Reset the stage.
We’ll do this later in the program.
Station B
SG
Lock the clamp
S030
Clamp
SET
020
S31
JMP
Part
Locked
023
SG
Press the part
S031
Press
Down
021
Lower
Limit
S32
JMP
024
SG
Unlock the clamp
S031
Top
Limit
Clamp
RST
020
025
Part
Unlocked
S33
JMP
023
SG
S0033
Station B Finished
Check for
Stop
Stage 150
Reset all stages
Jump to Start
Station A
Wait for
Start
Stage 0
Check for
Parts in
A&B
Stage 10
Lock the
clamp
Press the
Part
Unlock
clamp
Wait for
Station B
Move
Conveyor
Check
Mode
A Stage 20
Stage 21
Stage 22
Stage 23
Stage 40
Stage 50
No Part in A
RLLPLUS
Programming Basics
Station B
Lock the
clamp
Press the
Part
Unlock
clamp
Station B
Finished
B Stage 30
Stage 31
Stage 32
Stage 33
No Part in B
One
Cycle
Continuous
Program must
converge into
a single path
again
RLL PLUS Programming Basics
Stage Contact
Example
Since each stage has a status bit that is
either on or off, you can use this bit as a
contact in the program. If you examine
Stage 23 you’ll notice we’ve used a
contact labeled S33. This contact
reflects the status of Stage 33, which
indicated Station B was finished.
When S33 is on, the contact labeled S33
is also on and the program will transition
to Stage 40. In Stage 40 we use a reset
instruction to reset Stage 33 before we
move the conveyor.
10–23
Only executes logic in stages that are active
Station A
SG
Clamp the part
S020
Part
Locked
Clamp
SET
020
S21
JMP
002
SG
Press the part
S021
Press
Down
021
Lower
Limit
S22
JMP
004
SG
Unlock the clamp
S022
Top
Limit
Clamp
RST
020
005
Part
Unlocked
S23
JMP
003
SG
Wait for Station B to finish
S023
B
Finished
S40
JMP
S33
SG
Index the
conveyor
S040
B
Finished
RST
S33
Conveyor
022
Conveyor
Moved
S50
JMP
006
SG
One cycle or automatic?
S050
One
Cycle
S0
JMP
007
One
Cycle
S10
JMP
007
RLLPLUS
Programming Basics
10–24
RLL PLUS Programming Basics
Unusual Operations in Stages
Using the Same
Output Multiple
Times
Over the last few pages you’ve learned how the CPU executes the Stage
instructions. However, there are a few unusual circumstances that may not work
exactly as the appear.
In the program shown it appears output
021 will be turned on at three separate
SG
times before the program jumps to the
S0010
next stage. However, the only time the
TMR
T600
output actually comes on is when the
final condition has been met.
T600 K100
021
Why? Remember if you use multiple
OUT
outputs in a program, the last rung
021
T600 K200 T600 K500
containing the output controls the status
OUT
that will be written to the module. This is
021
T600 900
no different in a program that uses
OUT
RLL PLUS instructions.
Finished
S20
In this example, the last comparison rung
JMP
001
says the output should be off until the
timer value reaches 90 seconds.
RLLPLUS
Programming Basics
In the previous example the same output
was used multiple times in the same
stage. The last use of the output
controlled the status of the output.
There may be occasions when you have
the same output in different stages. Even
though it’s not advisable to do this in
normal RLL programs, this is perfectly
acceptable with a program that uses
RLL PLUS instructions. However, if both
stages are active at the same time, then
the logic in the last stage will control the
status of the output.
In the example shown, if both stages are
active, then the logic in Stage 70 will
control the output status.
SG
S0010
021
OUT
001
S002
JMP
002
SG
S070
021
OUT
010
011
S002
JMP
006
RLL PLUS Programming Basics
Using a Set Out
Reset (SET OUT
RST) Instruction
Output Placement
Many normal RLL programs use
one-shot instructions. In the DL305
instruction set, this instruction is called a
Set Out Reset (SET OUT RST).
In the program shown, input 001 will
trigger the SET OUT RST 160
instruction, which will in turn activate
output 021 for one scan.
However, what happens if 001 stays on
and Stage 10 is activated, deactivated,
and then activated again? At first glance
it appears the one shot only gets
executed one time since 001 stayed on
while Stage 10 was turning on and off. It
doesn’t work this way.
The logic in an inactive stage is not
executed. So even though the stage
became active the SET OUT RST
instruction did not see an off to on
transition, so the instruction is not
executed.
The SET OUT RST instruction will work
in an active stage as long as the input
transitions from off to on while the stage
is active.
Scan N
SG
One Shot is executed
S010
001
160
SET OUT RST
160
021
OUT
Scan N + 10
Stage off,
One Shot is not executed
SG
S0010
001
160
SET OUT RST
160
021
OUT
Scan N + 20
SG
S0010
One shot must see off to on
001
160
SET OUT RST
160
021
OUT
Incorrect Placement
SG
S0010
001
CNT
C600
021
OUT
003
S11
JMP
Correct Placement
SG
S0010
021
OUT
001
003
CNT
C600
S11
JMP
RLLPLUS
Programming Basics
As you’ve seen in some of the previous
examples,
we
always
place
unconditional
outputs
immediately
following the Stage Instructions. There’s
a reason for doing this.
If you look at the example stage shown
here, the output is placed after a counter
box. The DirectSOFT software and the
Handheld Programmer will allow you to
enter this as shown. However, the CPU
will only turn on output 021 when the
counter input 001 is turned on. This is
because the CPU interprets the output as
being tied to the counter input leg instead
of the Stage power rail.
You can easily avoid this problem by
placing any unconditional actions at the
very beginning of the stage. Then, the
output will work the way you expect.
10–25
10–26
RLL PLUS Programming Basics
Two Ways to View RLL PLUS Programs
Throughout the example programs, we’ve consistently shown how the instructions
appear in when viewed as ladder instructions. However, with DirectSOFT, you also
have the capability to view the program as a flowchart. You can even view the
program flowchart (in Stage View) and view the ladder program at the same time
with a split screen feature. The DirectSOFT manual provides detailed information
on how to view the programs in this manner.
DirectSOFT
Stage View
ISG
S0
J
J
SG
Stage
DirectSOFT
Ladder View
SG
S1
SG
S150
Reference to
a Stage
J
SG
S2
S
SG
S140
J
SG
S6
J
SG
S3
J
ISG
S0
R
SG
S140
Transition
Logic
ISG
J
Wait for start
S000
Start
S1
JMP
000
SG
Check for a part
S001
Part
Present
S2
JMP
001
Part
Present
S5
JMP
001
SG
Lock the clamp
RLLPLUS
Programming Basics
S002
Part
Locked
Clamp
SET
020
S4
JMP
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
004
S4
JMP
Jump
S
Set Stage
R
Reset Stage
RLL PLUS Programming Basics
10–27
Designing a Program Using RLL PLUS Instructions
As with most any application problem, a thorough understanding of the tasks
combined with a good plan of execution often results in success. The RLL PLUS
instructions provide an easy way to load the plan of execution directly into the CPU.
The easiest way to make sure you understand the tasks is to make a flowchart. This
is often the most critical part of creating a program that uses RLL PLUS instructions.
There are a few simple steps you can follow to create a detailed flowchart.
1. Create a top-level flowchart.
2. Expand the flowchart by adding things that cause the transitions from step
to step.
3. Add any actions that must occur in each step.
4. Add any conditions that control the actions.
5. Add any special monitoring or alarm steps that must be performed.
6. Assign numbers to the stages (steps).
7. Add the I/O instructions and addresses (input contacts, output coils, jump
instructions, etc.)
8. Enter the program.
Use DirectSOFT to The DirectSOFT programming package allows you to quickly and easily create
programs with RLL PLUS instructions. The software has special features that allow
Save Time
you to create the flowcharts, add the transitions, actions, etc. Even if your programs
are fairly small, DirectSOFT can make the job much easier.
RLLPLUS
Programming Basics
10–28
RLL PLUS Programming Basics
Step 1:
Design a Top-level
Flowchart
There are many different ways to design a flowchart of the application problem, but
there are a few guidelines that will make the job easier.
1. Start with a “top-level” flowchart that breaks the operation sequence into
simple pieces.
2. Each piece of the top-level flowchart should only represent one action.
Resist the temptation to group several operations into one part of the
flowchart.
3. Don’t try to add input or output addresses to the flowchart. Only use words
to describe the things that are taking place.
4. Don’t worry about special conditions, such as stop conditions, alarms, etc
at this point. These will be added later when you fully understand how the
main part of the operations sequence is organized.
You can draw the flowchart horizontally or vertically at any point in the design
process, the choice is yours. Here’s an example top level flowchart for our simple
one-station press.
The flowchart
breaks the program
into logical steps
Wait for
Start
RLLPLUS
Programming Basics
One
Cycle
Check
for Part
Continuous
Check
Mode
Lock
Clamp
Press
Part
Unlock
Clamp
Move
Conveyor
RLL PLUS Programming Basics
Step 2:
Add Flowchart
Transitions
10–29
Once you have designed the basic operating sequence you should determine the
events that cause a transition from step to step. During this phase you may find
things need to be added to the flowchart. All you’re really doing is adding more detail
to the top-level flowchart. Once again, don’t try to use addresses yet. Concentrate on
using words to describe the events taking place. The following flowchart adds the
transition conditions for our one-station press.
Wait for Start
Transition
Symbol
Press Start Switch
Check for Part
Part in place
No Part
Lock the Clamp
Jump to
Move
Conveyor
Clamp Limit Switch
Press the Part
Press Lower Limit Switch
Unlock the Clamp
Unclamp Limit Switch
Move Conveyor
Conveyor Index Limit Switch
Check 1-cycle Switch ON
Jump to Wait
for Start
Check 1-cycle Switch OFF
Jump to
Check for
Part
RLLPLUS
Programming Basics
Check Mode
10–30
RLL PLUS Programming Basics
Step 3:
Add Actions
After you determine the events that cause a transition from step to step you should
add any actions that need to take place during the sequence. Again, don’t try to use
addresses yet. Concentrate on using words to describe the actions taking place. The
following flowchart adds the actions that take place during each part of the program.
Wait for Start
Press Start Switch
Check for Part
Part in place
No Part
Jump to
Move
Conveyor
Lock the Clamp
Clamp On
Clamp Limit Switch
Action
Symbol
Press the Part
Press
Press Lower Limit Switch
Unlock the Clamp
Clamp Off
Unclamp Limit Switch
Move Conveyor
Conveyor On
Conveyor Index Limit Switch
RLLPLUS
Programming Basics
Check Mode
Check 1-cycle Switch ON
Jump to Wait
for Start
Check 1-cycle Switch OFF
Jump to
Check for
Part
RLL PLUS Programming Basics
10–31
Step 4:
Some actions may only take place if certain conditions are met. Examine the
Add Conditions for program carefully to determine any conditions that should be added. The following
flowchart adds any conditions for the actions that take place during each part of the
Actions
program.
Wait for Start
Press Start Switch
Check for Part
Part in place
No Part
Jump to
Move
Conveyor
Lock the Clamp
Clamp On
Clamp Limit Switch
Press the Part
Press
Press Lower Limit Switch
Unlock the Clamp
Press Up
Clamp Off
Unclamp Limit Switch
Move Conveyor
Condition
Symbol
Conveyor On
Conveyor Index Limit Switch
Check Mode
Jump to Wait
for Start
Check 1-cycle Switch OFF
Jump to
Check for
Part
RLLPLUS
Programming Basics
Check 1-cycle Switch ON
10–32
RLL PLUS Programming Basics
Step 5:
Add Alarm or
Monitoring
Operations
Many people are tempted to add alarm or monitoring operations earlier in the
flowchart design process. It is almost always easier to add them last because then
you know how they should affect the main part of the program. The following
flowchart adds an operation that monitors for the conditions that will stop the press.
Wait for Start
Press Start Switch
Check for Part
Monitor for Stop
Stop Switch
Part in place
Reset all Operations
No Part
Jump to
Move
Conveyor
Lock the Clamp
Clamp On
Jump to Wait
for Start
Clamp Limit Switch
Press the Part
Press On
Press Lower Limit Switch
Unlock the Clamp
Press Up
Clamp Off
Unclamp Limit Switch
Move Conveyor
Conveyor On
Conveyor Index Limit Switch
RLLPLUS
Programming Basics
Check Mode
Check 1-cycle Switch ON
Jump to Wait
for Start
Check 1-cycle Switch OFF
Jump to
Check for
Part
RLL PLUS Programming Basics
Step 6:
Determine Stage
Numbering
10–33
You can number the stages any way you would like, but it’s usually best to follow
some type of sequence that matches the flow of the program. This makes it much
easier to understand. There are a few guidelines we have used to determine the best
numbering sequence. You don’t have to follow these guidelines, but they may help.
You can typically find these types of operations in any program.
S Sequential Operations — a certain sequence of events, one after the
other. This is usually the main part of the program. It’s usually best to
number these first. For example, you may want to always number these
stages from 0 – 127 (octal).
S Independent Operations — these operations usually only perform one
task, such as activating a motor or turning on a horn. For example, you
may want to number all independent operations starting from 130 – 147
(octal).
S Alarm and Monitoring Operations — These operations usually monitor
the main parts of the program. Since you may want to reset parts of the
program during an alarm condition, it is usually best to number these
last. This way you can use one Reset (RST) instruction to reset almost
the entire program. Use stages 150 – 177 for alarming and monitoring
stages.
These guidelines are especially helpful if you have many different programs. By
using a standard numbering scheme, you always know where to look for the various
types of operations.
The example shows how we assigned numbers for the example press. Notice we’ve
also made a separate stage for the clamp. This was not an absolute requirement
because there are several ways you could have done this. We just did it to show you
an example of an independent operation.
RLLPLUS
Programming Basics
10–34
RLL PLUS Programming Basics
Initial Stage 0
Wait for Start
Press Start Switch
Stage 1
Check for Part
Stage 150
Monitor for Stop
Stop Switch
Part in place
Reset all Operations
No Part
Jump to
Move
Conveyor
Stage 2
Lock the Clamp
Clamp On
Jump to Wait
for Start
Clamp Limit Switch
Stage 140
Clamp
Stage 3
Press the Part
Clamp
Press On
Press Lower Limit Switch
Stage 4
Unlock the Clamp
Press Up
Clamp Off
Unclamp Limit Switch
Stage 5
Move the Conveyor
Conveyor On
Conveyor Index Limit Switch
Stage 6
Check Mode
RLLPLUS
Programming Basics
Check 1-cycle Switch ON
Jump to Wait
for Start
Check 1-cycle Switch OFF
Jump to
Check for
Part
RLL PLUS Programming Basics
Step 7:
Assign I/O
Addresses
10–35
The final step before you enter the program is to assign the I/O addresses and the
destinations for any Jump, Set, or Reset instructions.
Initial Stage 0
Wait for Start
Press Start Switch
Stage 1
Check for Part
Stage 150
Monitor for Stop
Stop Switch
000
010
Part in place
Reset All Operations
RST
S0 – S140
Jump to
Wait for Start
001
No Part
Jump to
Move
Conveyor
Stage 2
Lock the Clamp
Clamp Limit Switch
Stage 140
Clamp
002
Clamp
SET
S140
Stage 3
Press the Part
Clamp
OUT
020
Press Lower Limit Switch
004
Press On
OUT
021
Stage 4
Unlock the Clamp
Press Up
Unclamp Limit Switch
005
003
Clamp
RST
S140
Stage 5
Move the Conveyor
006
Conveyor Index Limit Switch
Conveyor
OUT
022
Stage 6
Check Mode
Check 1-cycle Switch OFF
007 Closed
Jump to
Wait for Start
007 Open
Jump to
Check for
Part
RLLPLUS
Programming Basics
Check 1-cycle Switch ON
10–36
RLL PLUS Programming Basics
Step 8:
Enter the Program
The following diagram shows how the program would look when viewed as a ladder
program.
ISG
A
Wait forStart
S000
Start
S1
JMP
SG
Clamp
S140
000
S150
JMP
SG
Clamp
OUT
Check for a Part
S001
Part
Present
020
S2
JMP
SG
001
Part
Present
Check for Stop
S150
S6
JMP
Stop
001
SG
S000
JMP
Clamp the part
S002
Part
Locked
Clamp
SET
S140
S3
JMP
002
SG
Press the part
S003
Press
Down
021
Lower
Limit
S4
JMP
004
SG
Unclamp the part
S004
Top
Limit
Clamp
RST
S140
005
Part
Unlocked
S5
JMP
003
SG
Index the conveyor
S005
Move
Conveyor
022
Conveyor
Moved
S6
JMP
006
SG
One cycle or automatic?
S006
RLLPLUS
Programming Basics
A
S0 – S140
RST
010
One
Cycle
S0
JMP
007
One
Cycle
007
S1
JMP
RLL PLUS Programming Basics
10–37
This diagram shows how a portion of the program would look when viewed as a
Stage Diagram in DirectSOFT.
Wait forStart
ISG
S0
Check for a Part
J
SG
S1
Clamp the part
J
SG
S2
J
SG
S6
Clamp
S
Press the part
J
Check for Stop
J
SG
S150
J
ISG
S0
R
SG
S140
SG
S140
SG
S3
RLLPLUS
Programming Basics
Instruction Set
In This Chapter. . . .
111
Ċ Boolean Instructions
Ċ Comparative Boolean Instructions
Ċ Timer, Counter, and Shift Register Instructions
Ċ Accumulator Load and Output Instructions
Ċ Accumulator Logic Instructions
Ċ Math Instructions
Ċ Bit Operation Instructions
Ċ Number Conversion Instructions
Ċ Program Control Instructions
Ċ Network Instructions
Ċ Message Instructions
11–2
Instruction Set
Instruction Set
Introduction
The DL305 CPUs offer a wide variety of instructions to perform many different types
of operations. This chapter shows you how to use these individual instructions. The
following table provides a quick reference listing of the instruction mnemonic and the
page(s) defining the instruction. (The mnemonics are very similar to the instruction
names and should be easy to become familiar with in a short time.) For example STR
NOT (Comparative) is the mnemonic for Store Not Equal. Each instruction definition
will show in parentheses the keystrokes used to enter the instruction.
There are two ways to quickly find the instruction you need.
S If you know the instruction category (Boolean, Comparative Boolean,
etc.) just use the header at the top of the page to find the pages that
discuss the instructions in that category.
S If you know the individual instruction mnemonic, use the following table
to find the page that discusses the instruction.
The DL330 and DL340 instructions sets are very similar. However, the DL330P
instruction set has several differences. Some of the instructions in this chapter will
be labeled “DL330/DL340 Only.” There may be an equivalent instruction for the
DL330P CPU, but it may also work slightly differently. The DL330P instructions that
operate differently from these instructions are discussed in Chapter 12. Make sure
you review the instructions carefully to make sure you can use the instruction with
your CPU.
Instruction Set
Instruction
Page
Instruction
Page
INV
AND
11–10
MCR
11–50
AND (Comparative)
11–21
MCS
11–50
AND NOT
11–10
(F71)
AND NOT (Comparative)
11–21
AND NOT T/C
11–11, 11–12
AND STR
11–13
AND T/C
11–11, 11–12
MUL
(F84)
(F73)
11–49
11–38
OR
11–7
OR (Comparative)
11–20
OR NOT
11–7
OR NOT (Comparative)
11–20
OR NOT T/C
11–8, 11–9
BCD
(F86)
11–48
OR STR
11–13
BIN
(F85)
11–47
OR T/C
11–8, 11–9
CMP
(F70)
11–32
OUT
11–15
11–23
RST
11–16
11–30
RX
11–16
CNT
DAND
(F75)
(F952)
11–52
DECO
(F82)
11–46
SET
DIV
(F74)
11–40
SET OUT
11–17
SET OUT RST
11–18
DOR
(F76)
11–31
DOUT
(F60)
11–25
DOUT1
(F61)
11–26
SHFL
(F82)
11–42
SHFR
(F80)
11–43
SR
11–24
STR
11–4
STR (Comparative)
11–19
DOUT2
(F62)
11–27
DOUT3
(F63)
11–28
DOUT5
(F65)
11–29
STR NOT
11–4
DSTR
(F50)
11–25
STR NOT (Comparative)
11–19
DSTR1
(F51)
11–26
STR NOT T/C
11–5, 11–6
DSTR2
(F52)
11–27
STR T/C
DSTR3
(F53)
11–28
SUB
DSTR5
(F55)
11–29
TMR
ENCO
(F83)
11–44
WX
FAULT
(F20)
11–56
NOTE: See Chapter 12 for RLL PLUS instructions.
11–5, 11–6
(F72)
11–36
11–22
(F953)
11–54
Instruction Set
11–34
ADD
11–3
11–4
Instruction Set
Boolean Instructions
Instruction Set
Boolean Instructions
Store
(STR)
The Store instruction begins a new rung
or additional branch in a rung with a
normally open contact. Status of the
contact will be the same state as the
associated image register point or
memory location.
Store Not
(STR NOT)
The Store Not instruction begins a new
rung or additional branch in a rung with a
normally closed contact. Status of the
contact will be opposite the state of the
associated image register point or
memory location.
Data Type
aaa
aaa
D3–330 Range
D3–340 Range
D3–330P Range
aaa
aaa
aaa
Inputs / Outputs
000–167
700–767
000–177
700–767
000–167
700–767
Control Relays
160–373
160–373
1000–1067
160–174
200–77
Special Control Relays
374–377
770–777
374–377
770–777
1074–1077
175–177
770–777
Shift Register Bits
400–577
400–577
––
In the following Store example, when input 000 is on, output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
STR
OUT
SHF
SHF
0
1
ENT
0
ENT
In the following Store Not example, when input 000 is off output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
STR
OUT
NOT
SHF
SHF
1
0
0
ENT
ENT
11–5
Instruction Set
Boolean Instructions
The Store Timer instruction begins a new
rung or additional branch in a rung with a
normally open timer contact. The timer
contact T aaa will be on when the timer
current value is the preset value of the
associated timer.
Store Not Timer
(STR NOT TMR)
DL330/340 Only
The Store Not Timer instruction begins a
new rung or additional branch in a rung
with a normally closed timer contact. The
timer contact T aaa will be on when the
timer current value is < the preset value
of the associated timer.
Data Type
Timer
T
T aaa
Instruction Set
Store Timer
(STR TMR)
DL330/340 Only
T aaa
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
600–677
600–677
––
* See Chapter12 for similar RLL PLUS instructions
In the following Store Timer example, when the current value in timer 600 is the
preset value output 017 will energize.
DirectSOFT Display
T600
Handheld Programmer Keystrokes
017
OUT
STR
OUT
TMR
SHF
SHF
1
6
7
0
ENT
0
ENT
In the following Store Not Timer example, when the current value in timer 600 is < the
preset value output 017 will energize.
DirectSOFT Display
T600
Handheld Programmer Keystrokes
017
OUT
STR
OUT
NOT
SHF
TMR
1
SHF
7
6
ENT
0
0
ENT
Instruction Set
11–6
Instruction Set
Boolean Instructions
Store Counter
(STR CNT)
DL330/340 Only
The Store Counter instruction begins a
new rung or additional branch in a rung
with a normally open counter contact.
The counter contact C aaa will be on
when the counter current value the
preset value of the associated counter.
Store Not Counter
(STR NOT CNT)
DL330/340 Only
The Store Not Counter instruction begins
a new rung or additional branch in a rung
with a normally closed counter contact.
The counter contact C aaa will be on
when the counter current value is < the
preset value of the associated counter.
Data Type
Counter
C
C aaa
C aaa
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
600–677
600–677
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Store Counter example, when the current value in counter 602 is the preset value output 015 will energize.
DirectSOFT Display
C 602
Handheld Programmer Keystrokes
015
OUT
STR
OUT
CNT
SHF
SHF
1
6
5
0
ENT
2
ENT
In the following Store Not Counter example, when the current value in counter 602 is
< the preset value output 015 will energize.
DirectSOFT Display
C602
Handheld Programmer Keystrokes
015
OUT
STR
OUT
NOT
SHF
CNT
1
SHF
5
6
ENT
0
2
ENT
Instruction Set
Boolean Instructions
Or Not
(OR NOT)
The Or instruction logically ors a normally
open contact in parallel with another
contact in a rung. The status of the
contact will be the same state as the
associated image register point or
memory location.
aaa
The Or Not instruction logically ors a
normally closed contact in parallel with
another contact in a rung. The status of
the contact will be opposite the state of
the associated image register point or
memory location.
aaa
Data Type
D3–330 Range
D3–340 Range
aaa
aaa
aaa
Inputs / Outputs
000–167
700–767
000–177
700–767
000–167
700–767
Control Relays
160–373
160–373
1000–1067
160–174
200–77
Special Control Relays
374–377
770–777
374–377
770–777
1074–1077
175–177
770–777
Shift Register Bits
400–577
400–577
––
Instruction Set
Or
(OR)
11–7
D3–330P Range
In the following Or example, when input 000 or 001 is on output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
STR
OR
OUT
SHF
SHF
SHF
0
1
1
ENT
ENT
0
ENT
001
In the following Or Not example, when input 000 is on or 001 is off output 010 will
energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
001
STR
OR
OUT
SHF
NOT
SHF
0
SHF
1
ENT
1
0
ENT
ENT
Instruction Set
11–8
Instruction Set
Boolean Instructions
Or Timer
(OR TMR)
DL330/340 Only
Or Not Timer
(OR NOT TMR)
DL330/340 Only
The Or Timer instruction logically ors a
normally open timer contact in parallel
with another contact in a rung. The timer
contact T aaa will be on when the timer
current value is the preset value of the
associated timer.
T aaa
The Or Not Timer instruction logically ors
a normally closed timer contact in parallel
with another contact in a rung. The timer
contact T aaa will be on when the timer
current value is < the preset value of the
associated timer.
T aaa
Data Type
Timer
T
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
600–677
600–677
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Or Timer example, when input 000 is on or the current value in T600
is the preset value output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
STR
OR
OUT
SHF
TMR
SHF
0
SHF
1
ENT
6
0
0
ENT
0
ENT
T600
In the following Or Not Timer example, when input 000 is on or the current value in
T600 is < the preset value output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
T600
STR
OR
OUT
SHF
NOT
SHF
0
TMR
1
ENT
SHF
0
6
ENT
0
0
ENT
11–9
Instruction Set
Boolean Instructions
Or Not Counter
(OR NOT CNT)
DL330/340 Only
The Or Counter instruction logically ors a
normally open counter contact in parallel
with another contact in a rung. The
counter contact C aaa will be on when the
counter current value is the preset
value of the associated counter.
C aaa
The Or Not Counter instruction logically
ors a normally closed counter contact in
parallel with another contact in a rung.
The counter contact C aaa will be on
when the counter current value is < the
preset value of the associated counter.
Data Type
Counter
C
Instruction Set
Or Counter
(OR CNT)
DL330/340 Only
C aaa
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
600–677
600–677
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Or Counter example, when input 007 is on or the current value in
C610 is the preset value output 025 will energize.
DirectSOFT Display
007
Handheld Programmer Keystrokes
025
OUT
STR
OR
OUT
SHF
CNT
SHF
7
SHF
2
ENT
6
5
1
ENT
0
ENT
C610
In the following Or Not Counter example, when input location 007 is on or the current
value in C610 is < the preset value output 025 will energize.
DirectSOFT Display
007
Handheld Programmer Keystrokes
025
OUT
C610
STR
OR
OUT
SHF
NOT
SHF
7
CNT
2
ENT
SHF
5
6
ENT
1
0
ENT
Instruction Set
11–10
Instruction Set
Boolean Instructions
And
(AND)
The And instruction logically ands a
normally open contact in series with
another contact in a rung. The status of
the contact will be the same state as the
associated image register point or
memory location.
And Not
(AND NOT)
The And Not instruction logically ands a
normally closed contact in series with
another contact in a rung. The status of
the contact will be opposite the state of
the associated image register point or
memory location.
Data Type
aaa
aaa
D3–330 Range
D3–340 Range
aaa
aaa
D3–330P Range
aaa
Inputs / Outputs
000–167
700–767
000–177
700–767
000–167
700–767
Control Relays
160–373
160–373
1000–1067
160–174
200–77
Special Control Relays
374–377
770–777
374–377
770–777
1074–1077
175–177
770–777
Shift Register Bits
400–577
400–577
––
In the following And example, when input 000 and 001 is on output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
001
010
OUT
STR
AND
OUT
SHF
SHF
SHF
0
1
1
ENT
ENT
0
ENT
In the following And Not example, when input 000 is on and 001 is off output 010 will
energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
001
010
OUT
STR
AND
OUT
SHF
NOT
SHF
0
SHF
1
ENT
1
0
ENT
ENT
11–11
Instruction Set
Boolean Instructions
The And Timer instruction logically ands
a normally open timer contact in series
with another contact in a rung. The timer
contact T aaa will be on when the timer
current value the preset value of the
associated timer.
And Not Timer
(AND NOT TMR)
DL330/340 Only
The And Not Timer instruction logically
ands a normally closed timer contact in
series with another contact in a rung. The
timer contact T aaa will be on when the
timer current value is < the preset value
of the associated timer.
Data Type
Timer
T
Instruction Set
And Timer
(AND TMR)
DL330/340 Only
T aaa
T aaa
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
600–677
600–677
––
* See Chapter 12 for similar RLL PLUS instructions
In the following And Timer example, when input 000 is on and the current value in
timer 604 is the preset value output 050 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
T604
050
OUT
STR
AND
OUT
SHF
TMR
SHF
0
SHF
5
ENT
6
0
0
ENT
4
ENT
In the following And Not Timer example, when input 000 is on and the current value in
timer 604 is < the preset value output 050 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
T 604
050
OUT
STR
AND
OUT
SHF
NOT
SHF
0
TMR
5
ENT
SHF
0
6
ENT
0
4
ENT
Instruction Set
11–12
Instruction Set
Boolean Instructions
And Counter
(AND CNT)
DL330/340 Only
The And Counter instruction logically
ands a normally open counter contact in
series with another contact in a rung. The
counter contact C aaa will be on when the
counter current value is the preset
value of the associated counter.
And Not Counter
(AND NOT CNT)
DL330/340 Only
The And Not Counter instruction logically
ands a normally closed counter contact
in series with another contact in a rung.
The counter contact C aaa will be on
when the counter current value is < the
preset value of the associated counter.
Data Type
Counter
C
C aaa
C aaa
D3–330 Range
D3–340 Range
D3–330P Range
aaa
aaa
aaa
600–677
600–677
––
* See Chapter 12 for similar RLL PLUS instructions
In the following And Counter example, when input 002 is on and the current value in
counter 602 is the preset value output 050 will energize.
DirectSOFT Display
002
Handheld Programmer Keystrokes
C 602
050
OUT
STR
AND
OUT
SHF
CNT
SHF
2
SHF
5
ENT
6
0
0
ENT
2
ENT
In the following And Not Counter example, when input 002 is on and the current
value in counter 602 is < the preset value output 050 will energize.
DirectSOFT Display
002
Handheld Programmer Keystrokes
C 602
050
OUT
STR
AND
OUT
SHF
NOT
SHF
2
TMR
5
ENT
SHF
0
6
ENT
0
2
ENT
11–13
Instruction Set
Boolean Instructions
Or Store
(OR STR)
The And Store instruction logically ands
two branches of a rung in series. Both
branches must begin with the Store
instruction.
OUT
➁
➀
The Or Store instruction logically ors two
branches of a rung in parallel. Both
branches must begin with the Store
instruction.
➀
OUT
➁
In the following And Store example, the branch consisting of contacts 000 and 002
have been anded with the branch consisting of contacts 001 and 003.
DirectSOFT Display
000
Handheld Programmer Keystrokes
001
010
OUT
002
003
STR
OR
STR
OR
SHF
SHF
SHF
SHF
0
2
1
3
ENT
ENT
ENT
ENT
AND
OUT
STR
SHF
ENT
1
0
ENT
In the following Or Store example, the branch consisting of 000 and 001 have been
ored with the branch consisting of 002 and 003.
DirectSOFT Display
000
Handheld Programmer Keystrokes
001
010
OUT
002
003
STR
AND
STR
AND
SHF
SHF
SHF
SHF
0
1
2
3
ENT
ENT
ENT
ENT
OR
OUT
STR
SHF
ENT
1
0
ENT
Instruction Set
And Store
(AND STR)
11–14
Instruction Set
Boolean Instructions
Instruction Set
There are limits to what you can enter with these simple boolean instructions. This is
because the DL305 CPUs use an 8-level stack to evaluate the various logic
elements. The stack is a temporary storage area that helps solve the logic for the
rung. Each time you enter a Store instruction, the instruction is placed on the top of
the stack. Any other instructions on the stack are pushed down a level. The And, Or,
And Store, and Or Store instructions combine levels of the stack when they are
encountered. Since the stack is only eight levels, an error will occur if the CPU
encounters a rung that uses more than the eight levels of the stack.
The following example shows how the stack is used to solve simple boolean logic.
000
STR
STR
ORSTR
001
AND 004
050
Output
OUT
002
STR
AND 003
005
ANDSTR
OR
STR 000
STR 001
1
1
STR 001
1
STR 002
1
002 AND 003
2
2
STR 000
2
STR 001
2
STR 001
3
3
3
STR 000
3
STR 000
4
4
4
4
5
5
5
5
6
6
6
6
7
7
7
7
8
8
8
8
STR 000
ORSTR
AND 003
STR 002
AND 004
OR 005
1
001 OR (002 AND 003)
1
004 AND [001 OR (002 AND 003)]
1
005 OR 004 AND [001 OR (002 AND 003)]
2
STR 000
2
STR 000
2
STR 000
3
3
S
S
3
S
S
8
8
ANDSTR
1
000 AND (005 OR 004) AND [001 OR (002 AND 003)]
2
3
S
S
8
S
S
8
Instruction Set
Boolean Instructions
The Out instruction reflects the status of
the rung (on/off) and outputs the discrete
(on/off) state to the specified image
register point or memory location.
Multiple Out instructions referencing the
same discrete location should not be
used because only the last Out
instruction in the program will control the
physical output point.
Data Type
aaa
OUT
D3–330 Range
D3–340 Range
aaa
aaa
D3–330P Range
aaa
Outputs
000–167
700–767
000–177
700–767
000–167
700–767
Control Relays
160–373
160–373
1000–1067
160–174
200–77
Shift Register Bits
400–577
400–577
––
In the following Out example, when input 000 is on output 010 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
000
010
OUT
STR
OUT
SHF
SHF
0
1
ENT
0
ENT
In the following Out example, two Out instructions using output 10 are used in the
program. The status of output 010 being controlled by input 001 will override the
instance of output 010 being controlled by input 000. The physical output would
always be controlled by input 001.
000
010
OUT
●
●
●
●
001
010
OUT
Instruction Set
Out
(OUT)
11–15
Instruction Set
11–16
Instruction Set
Boolean Instructions
Set
(SET)
DL330/340 Only
The Set instruction sets or turns on an
output. Once the output is set it will
remain on until it is reset using the Reset
instruction. It is not necessary for the
input controlling the Set instruction to
remain on. The Set instruction is
sometimes known as a latch. The Reset
instruction is used to reset the output.
Reset
(RST)
DL330/340 Only
The Reset instruction resets or turns off
an output. Once the output is reset it is
not necessary for the input to remain on.
The Reset instruction is sometimes
known as an unlatch instruction.
Data Type
aaa
SET
aaa
RST
D3–330 Range
D3–340 Range
D3–330P Range*
aaa
aaa
aaa
Outputs
000–167
700–767
000–177
700–767
––
Control Relays
160–373
160–373
1000–1067
––
Shift Register Bits
400–577
400–577
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Set example, when input 000 is on output 010 will be energized.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
SET
STR
SET
SHF
SHF
0
1
ENT
0
ENT
In the following Reset example, when input 001 is on output 010 will de–energize.
DirectSOFT Display
001
Handheld Programmer Keystrokes
010
RST
STR
RST
SHF
SHF
1
1
ENT
0
ENT
Instruction Set
Boolean Instructions
The Set Out instruction reflects the status
of the rung (on/off) and outputs the
discrete (on/off) state to the specified
image register location. This instruction
is similar to the Out instruction except the
output disable coil (special relay 376) will
not override and disable the output.
Multiple Set Out instructions referencing
the same discrete location should not be
used because only the last Set Out
instruction in the program will control the
physical output point.
Data Type
Outputs
Instruction Set
Set Out
(SET OUT)
11–17
aaa
SET OUT
D3–330 Range
D3–340 Range
D3–330P Range
aaa
aaa
aaa
000–167
700–767
000–177
700–767
000–167
700–767
In the following Set Out example, when input location 000 is on output 020 will
energize. The output disable coil (special relay 376) will not override this output coil.
DirectSOFT Display
000
Handheld Programmer Keystrokes
020
SET OUT
STR
SET
SHF
OUT
0
SHF
ENT
2
0
ENT
Instruction Set
11–18
Instruction Set
Boolean Instructions
Set Out Reset
(SET OUT RST)
The Set Out Reset instruction is typically
known as a one shot. When the input
logic produces an off to on transition the
output will turn on for one CPU scan.
Data Type
aaa
OUT RST
D3–330 Range
D3–340 Range
aaa
aaa
D3–330P Range
aaa
Outputs
000–167
700–767
000–177
700–767
000–167
700–767
Control Relays
160–373
160–373
1000–1067
160–174
200–77
In the following Set Out Reset example, when input 007 transitions from off to on,
control relay 160 will energize for the remainder of the CPU scan.
DirectSOFT Display
007
Handheld Programmer Keystrokes
160
OUT RST
STR SHF
7
SET OUT RST
ENT
SHF
1
6
0
ENT
11–19
Instruction Set
Comparative Boolean Instructions
Comparative Boolean Instructions
The Store If Equal instruction begins a
new rung or additional branch in a rung
with a normally open comparative
counter contact. The contact will be on if
the specified counter CT aaa = B bbbb.
CTaaa
Instruction Set
Store If Equal
(STR)
DL330/DL340 Only
B bbbb
CT
Store Not If Equal
(STR NOT)
DL330/DL340 Only
The Store Not If Equal instruction begins
a new rung or additional branch in a rung
with a normally closed comparative
counter contact. The contact will be on if
the specified counter CT aaa B bbbb.
Operand Data Type
CT aaa
D3–330 Range
B bbbb
D3–340 Range
D3–330P Range*
B
aaa
bbbb
aaa
bbbb
aaa
bbbb
CT
600–677
––
600–677
––
––
––
Data registers
R
––
400–577
––
400–577
700–777
––
––
Constant
K
––
0–9999
––
0–9999
––
––
Counters
* See Chapter 12 for similar RLL PLUS instructions
In the following Store If Equal example, when CT600 = 2510 output 012 will
energize.
DirectSOFT Display
CT600
K2510
Handheld Programmer Keystrokes
012
OUT
STR
SHF
SHF
2
6
5
0
1
0
0
ENT
ENT
OUT
SHF
0
1
2
ENT
In the following Store Not If Equal example, when CT600 is the value in R400
output 020 will energize.
DirectSOFT Display
CT600
R400
Handheld Programmer Keystrokes
020
OUT
STR
R
NOT
4
SHF
0
6
0
0
ENT
0
OUT
SHF
0
1
2
ENT
ENT
Instruction Set
11–20
Instruction Set
Comparative Boolean Instructions
Or If Equal
(OR)
DL330/DL340 Only
Or Not If Equal
(OR NOT)
DL330/DL340 Only
The Or If Equal instruction connects a
normally open comparative counter
contact in parallel with another contact.
The contact will be on if the specified
counter CT aaa = B bbbb.
The Or Not If Equal instruction connects
a normally closed comparative counter
contact in parallel with another contact.
The contact will be on if the specified
counter
CT aaa B bbbb.
Operand Data Type
D3–330 Range
CT aaa
B bbbb
CT aaa
B bbbb
D3–340 Range
D3–330P Range*
B
aaa
bbbb
aaa
bbbb
aaa
bbbb
CT
600–677
––
600–677
––
––
––
Data registers
R
––
400–577
––
400–577
700–777
––
––
Constant
K
––
0–9999
––
0–9999
––
––
Counters
* See Chapter 12 for similar RLL PLUS instructions
In the following Or If Equal example, when input contact 001 is on or CT600 = 2510
output 012 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
012
001
OUT
CT600
K2510
STR
OR
SHF
SHF
SHF
2
1
6
5
ENT
0
1
0
0
ENT
ENT
OUT
SHF
0
1
2
ENT
In the following Or Not If Equal example, when input contact 001 is on or CT600 the value in R400 output 012 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
012
001
OUT
CT600
R400
STR
OR
R
SHF
NOT
4
1
6
0
ENT
0
0
0
ENT
ENT
OUT
SHF
0
1
2
ENT
11–21
Instruction Set
Comparative Boolean Instructions
The And If Equal instruction connects a
normally open comparative counter
contact in series with another contact.
The contact will be on if the specified
counter CT aaa = B bbbb.
And Not If Equal
(AND NOT)
DL330/DL340 Only
The And Not If Equal instruction
connects a normally closed comparative
counter contact in series with another
contact. The contact will be on if the
specified counter CT aaa B bbbb.
Operand Data Type
D3–330 Range
CT aaa
B bbbb
CT aaa
B bbbb
D3–340 Range
D3–330P Range*
B
aaa
bbbb
aaa
bbbb
aaa
bbbb
CT
600–677
––
600–677
––
––
––
Data registers
R
––
400–577
––
400–577
700–777
––
––
Constant
K
––
0–9999
––
0–9999
––
––
Counters
* See Chapter 12 for similar RLL PLUS instructions
In the following And If Equal example, when input contact 001 is on and CT600 =
2510 the contact will turn on and output 012 will energize.
DirectSOFT Display
001
Handheld Programmer Keystrokes
CT600
K2510
012
OUT
STR
AND
SHF
SHF
SHF
2
1
6
5
ENT
0
1
0
0
ENT
ENT
OUT
SHF
0
1
2
ENT
In the following And Not If Equal example, when input contact 001 is on and CT600
the value in R400 output 012 will energize.
DirectSOFT Display
001
Handheld Programmer Keystrokes
CT600
R400
012
OUT
STR
AND
R
SHF
NOT
4
1
6
0
ENT
0
0
0
ENT
ENT
OUT
SHF
0
1
2
ENT
Instruction Set
And If Equal
(AND)
DL330/DL340 Only
11–22
Instruction Set
Timer, Counter, and Shift Register Instructions
Instruction Set
Timer, Counter, and Shift Register Instructions
Timer
(TMR)
DL330/DL340 Only
The Timer instruction provides a single
input timer with a 0.1 second increment
(0–999.9 seconds) in the normal
operating mode, or a 0.01 second
increment (0–99.99 seconds) in the fast
timer mode when relay 770 is turned on.
The timer will time up to 9999 and stop. It
will reset to zero when the input is turned
off. The discrete bit associated with the
timer will be on when the current value is
equal to or greater than the preset value.
Operand Data Type
TMR
D3–330 Range
T aaa
Bbbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
bbbb
Timers
T
600–677
––
600–677
––
––
––
Data registers
R
––
400–577
––
400–577
700–777
––
––
Constant
K
––
0–9999
––
0–9999
––
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Timer example, timer 600 will begin timing up when input 000 turns
on. The timer bit associated with timer 600 will turn on when the current value in timer
600 is the preset value K30 (3 seconds). When input 000 turns off the timer
discrete bit and current value are reset.
DirectSOFT Display
Handheld Programmer Keystrokes
000
TMR
STR
TMR
K
T600
K30
T600
SHF
SHF
3
0
6
ENT
ENT
0
10
OUT
Timing Diagram
0
1
2
3
4
5
6
7
0
10
20
30
40
50
60
8
000
010
Current
Value
0
0
ENT
11–23
Instruction Set
Timer, Counter, and Shift Register Instructions
The Counter instruction provides a
counter with a count and reset input. The
range of this counter is 0–9999 and it will
increment when the count input
transitions from off to on. The counter is
reset to 0 when you turn on the reset
input. The counter bit associated with the
counter will turn on when the current
value is equal to or greater than the
preset value.
Operand Data Type
Counters
COUNT
aaa
CTaaa
Bbbbb
RESET
D3–330 Range
B
CNT
Instruction Set
Counter
(CNT)
DL330/DL340 Only
D3–340 Range
bbbb
aaa
D3–330P Range
bbbb
aaa
bbbb
CT
600–677
––
600–677
––
––
––
Data registers
R
––
400–577
––
400–577
700–777
––
––
Constant
K
––
0–9999
––
0–9999
––
––
* See Chapter 12 for similar RLL PLUS instructions
In the following Counter example, counter 604 will increment by one count when
input 000 transitions from off to on. When input contact 001 is turned on the counter
will reset to zero. The counter bit associated with counter 604 will turn on when the
current value in counter 604 is the preset constant value K3 (3).
DirectSOFT Display
Handheld Programmer Keystrokes
STR
STR
CNT
SHF
000
CNT
CT604
K3
001
CT604
SHF
SHF
SHF
3
0
1
6
ENT
ENT
ENT
0
10
OUT
000
001
010
Current
Value
1
2
3
4
0
4
ENT
Instruction Set
11–24
Instruction Set
Timer, Counter, and Shift Register Instructions
Shift Register
(SR)
DL330/340 Only
The Shift Register instruction shifts data
through a predefined number of shift
register bits. There are 128 bits allocated
for use in shift registers. There is no limit
to the number of shift registers which can
be used in a program, however the total
number of bits used cannot exceed 128.
The Shift Register has three contacts.
S Data — determines the value (1 or
0) that will enter the register
S Clock — shifts the bits one position
on each off to on transition
S Reset —resets the Shift Register to
all zeros.
DATA
SR
From A aaa
CLOCK
To
B bbb
RESET
With each off to on transition of the clock input, the bits which make up the shift
register block are shifted by one bit position and the status of the data input is shifted
into the starting bit position in the block. The direction of the shift depends on the
entry in the From and To fields. From 400 to 407 would define a block of eight bits to
be shifted from bit 400 to bit 407. From 407 to 400 would also define a block of eight
bits, but would shift from bit 407 to bit 400. The maximum size of the shift register
block is limited to 128 bits. There is no minimum block size.
Operand Data Type
D3–330 Range
Shift Register Bits
D3–340 Range
bbbb
aaa
bbbb
aaa
bbbb
400–577
400–577
400–577
400–577
––
––
DirectSOFT Display
000
Handheld Programmer Keystrokes
Data Input
001
SR
From
400
To
417
Clock Input
002
D3–330P Range
aaa
STR
STR
STR
SR
SHF
SHF
SHF
SHF
SHF
4
0
1
2
4
1
Reset Input
Inputs on Successive Scans
Data
Clock
Reset
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
1
- indicates on
Shift Register Bits
400
417
- indicates off
ENT
ENT
ENT
0
7
0
ENT
ENT
11–25
Instruction Set
Accumulator Load and Output Instructions
Accumulator Load and Output Instructions
The Data Store (F50) is a 16–bit
instruction that loads the value of a 16–bit
register, two consecutive 8–bit registers
(specify starting location), or a 4–digit
BCD value into the accumulator.
DSTR (F50)
A aaaa
Data Out
DOUT (F60)
The Data Out (F60) is a 16–bit instruction
that copies the 16–bit value in the
accumulator to a 16–bit reference or two
consecutive 8–bit registers (specify
starting location).
DOUT (F60)
A aaaa
Data Type
D3–330 Range
D3–340 Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
*Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Instruction Set
Data Store
DSTR (F50)
D3–330P Range
* A constant is not a valid data type for the DOUT (F60) instruction.
In the following example, when input 000 is on the value (7502) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The value in the
accumulator is output to data registers R404 and R405 using the Data Out (F60)
instruction.
DirectSOFT Display
000
R 403
R 402
7
0
2
2
Accumulator
0
2
5
Handheld Programmer Keystrokes
DSTR (F50)
R 402
7
5
0
DOUT (F60)
R 404
7
5
R405
STR
F
SHF
5
0
0
ENT
ENT
R
F
R
4
6
4
0
0
0
2
ENT
4
ENT
ENT
R404
In the following example, when input 001 is on the BCD constant value K7502 is
loaded into the accumulator using the Data Store (F50) instruction. The value in the
accumulator is output to data registers R404 and R405 using the Data Out (F60)
instruction.
DirectSOFT Display
K
001
DSTR (F50)
K 7502
DOUT (F60)
R 404
7
Handheld Programmer Keystrokes
7
5
0
2
7
5
0
2
Accumulator
0
2
5
R405
R404
STR
F
SHF
5
1
0
ENT
ENT
SHF
F
R
7
6
4
5
0
0
0
ENT
4
2
ENT
ENT
Instruction Set
11–26
Instruction Set
Accumulator Load and Output Instructions
Data Store 1
DSTR (F51)
The Data Store 1 (F51) is an 8–bit
instruction that loads the value from a
specified 8–bit register into the lower 8
bits of the accumulator. The upper 8 bits
of the accumulator are set to zero.
DSTR1 (F51)
R aaa
Data Out 1
DOUT (F61)
The Data Out 1 (F61) is an 8–bit
instruction that copies the value in the
lower 8 bits of the accumulator to a
specified 8–bit register.
DOUT1 (F61)
R aaa
Data Type
D3–330 Range
D3–340 Range
D3–330P Range
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Data Registers
R
400–577
400–577
700–777
400–577
In the following example, when input 000 is on the value (89) in R410 is loaded into
the lower 8 bits of the accumulator using the Data Store 1 (F51) instruction. The
value in the least significant 8 bits of the accumulator is output to data register R500
using the Data Out 1 (F61) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
R410
DSTR1 (F51)
R 410
Load the value in register
R410 into the accumulator
DOUT1 (F61)
R 500
Copy the value in the
accumulator to
registers R500
0
0
8
9
8
9
8
9
R500
Accumulator
STR
F
SHF
5
0
1
ENT
ENT
R
F
R
4
6
5
1
1
0
0
ENT
0
ENT
ENT
11–27
Instruction Set
Accumulator Load and Output Instructions
The Data Store 2 (F52) is a 4–bit
instruction that loads the value of the
most significant 4 bits of a specified 8–bit
register into the least significant 4 bits of
the accumulator. The remaining 12 bits
of the accumulator are set to zero.
Data Out 2
DOUT (F62)
The Data Out 2 (F62) is a 4–bit
instruction that copies the value in the
least significant 4 bits of the accumulator
into the most significant 4 bits of a
specified 8–bit register. The lower 4 bits
of the register are not altered .
Data Type
DSTR2 (F52)
R aaa
Instruction Set
Data Store 2
DSTR (F52)
DOUT2 (F62)
R aaa
D3–330 Range
D3–340 Range
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–27
Shift Registers
R
040–056
040–56
––
Stages
R
––
––
100–116
Data Registers
R
400–577
400–577
700–777
400–577
In the following example, when input 000 is on the most significant 4 bits of R1 are
loaded into the lower 4 bits of the accumulator using the Data Store 2 (F52)
instruction. The value in the least significant 4 bits of the accumulator is output to
most significant 4 bits of data register R400 using the Data Out 2 (F62) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
R001
DSTR2 (F52)
R 001
Load the upper 4 bits in
register 1 into the lower 4 bits
of the accumulator
DOUT2 (F62)
R 400
Copy the lower 4 bits of the
accumulator to the upper 4
bits or registers R400
5
0
0
*
0
5
5
*
R400
The lower 4 bits (*) of R1
are not loaded into the
accumulator
Accumulator
The lower 4 bits (*) of R400
are not altered
STR
F
SHF
5
0
2
ENT
ENT
R
F
R
1
6
4
ENT
2
0
ENT
0
ENT
Instruction Set
11–28
Instruction Set
Accumulator Load and Output Instructions
Data Store 3
DSTR (F53)
The Data Store 3 (F53) is a 4–bit
instruction that loads the value of the
least significant 4 bits of a specified 8–bit
register into the least significant 4 bits of
the accumulator. The upper 12 bits of the
accumulator are set to zero.
Data Out 3
DOUT (F63)
The Data Out 3 (F63) is a 4–bit
instruction that copies the value in the
least significant 4 bits of the accumulator
to the least significant 4 bits of a specified
8 bit register. The upper 4 bits of the
register are not altered.
Data Type
DSTR3 (F53)
R aaa
DOUT3 (F63)
R aaa
D3–330 Range
D3–340 Range
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Data Registers
R
400–577
400–577
700–777
400–577
In the following example, when input 000 is on the least significant 4 bits of R005 are
loaded into the accumulator using the Data Store 3 (F53) instruction. The data in the
least significant 4 bits of the accumulator is output to the least significant 4 bits of
R016 using the Data Out 3 (F63) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR3 (F53)
R 005
Load the lower 4 bits in
register 5 into the lower 4 bits
of the accumulator
DOUT3 (F63)
R 016
Output the lower 4 bits of the
accumulator to the lower 4
bits of R16
R005
The upper 4 bits (*) of R5
are not loaded into the
accumulator
0
0
The upper 4 bits (*) of R400
are not altered
*
8
0
8
*
8
R016
Accumulator
STR
F
SHF
5
0
3
ENT
ENT
R
F
R
5
6
1
ENT
3
6
ENT
ENT
Instruction Set
Accumulator Load and Output Instructions
The Data Store 5 (F55) is a 16–bit
instruction that loads the value of 16
image register locations for a specified
16 point input module into the
accumulator.
DSTR 5 (F55)
R aaa
Data Out 5
DOUT (F65)
The Data Out 5 (F65) is a 16–bit
instruction that outputs the 16 bit value in
the accumulator to the image register of a
specified 16 point output module.
DOUT 5 (65)
R aaa
Data Type
D3–330 Range
Inputs / Outputs
R
D3–340 Range
D3–330P Range
aaaa
aaaa
aaaa
000–014
070–075
000–014
070–075
000–014
070–075
In the following example, when input 000 is on the binary status of a 16 point I/O
module in slot 1 (R000 and R010) is loaded into the accumulator using the
Data Store 5 (F55) instruction. The value in the accumulator is copied to I/O register
locations in slot 2 (R001 and R011) using the Data Out 5 (F65) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR5 (F55)
R 000
R
Loads status of 16 point
input image register
(R000 and R010) to
accumulator
0
1
0
R
0
0
0
7
I/O Points 100-107
6 5 4 3 2 1 0
7
I/O Points 000-007
6 5 4 3 2 1 0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
Load status of 16 pt. input module into the accumulator
Acc.
15 14 13 12 11 10 9
8
7
6
5
4
3
2
1
0
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
I/O Points 100-107
R
DOUT5 (F65)
R 001
Copy the value in the
accumulator to R001
and R011
0
1
I/O Points 000-007
1
R
I/O Points 110-117
0
0
1
I/O Points 010-017
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
STR
F
SHF
5
0
5
ENT
ENT
R
F
0
6
1
ENT
5
ENT
ENT
R
Instruction Set
Data Store 5
DSTR (F55)
11–29
11–30
Instruction Set
Accumulator Logic Instructions
Instruction Set
Accumulator Logic Instructions
Data And
DAND (F75)
The Data And (F75) is a 16–bit
instruction that logical ands the value in a
16–bit reference, two consecutive 8–bit
registers (specify starting location), or a
4–digit BCD constant with the value in
the accumulator. The result resides in the
accumulator.
Data Type
D3–330 Range
DAND (F75)
A aaaa
D3–340 Range
D3–330P Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
In the following example, when input 000 is on the value(6489) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The data in the
accumulator is logically anded with the constant K4107 with the result residing in the
accumulator. The value in the accumulator is output to data register R404 and R405
using the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in register
R402 and R403 into the
accumulator
Acc.
DAND (F75)
K4107
AND the value in the
accumulator with the constant
value 4107
DOUT (F60)
R 404
AND
STR
F
SHF
5
0
0
ENT
ENT
R
F
SHF
4
7
4
0
5
1
2
ENT
0
F
R
6
4
0
0
ENT
4
R402
6
8
4
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
0
1
1
0
0
1
0
0
1
0
0
0
1
0
0
1
0
1
1
0
0
1
0
0
1
0
0
0
1
0
0
1
Accumulator
0
1
0
0
0
0
0
1
0
0
0
0
0
1
1
1
Constant (4107)
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
Accumulator
4
0
0
1
R405
Output the value in the
accumulator to registers R404
and R405
9
R403
R404
ENT
7
ENT
ENT
11–31
Instruction Set
Accumulator Logic Instructions
The Data Or (F76) is a 16–bit instruction
that logically ors the value in a 16–bit
reference, two consecutive 8–bit
registers, (specify starting location) or a
4–digit BCD constant with the value in
the accumulator. The result resides in the
accumulator.
Data Type
DOR (F76)
A aaaa
D3–330 Range
D3–340 Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Instruction Set
Data Or
DOR (F76)
D3–330P Range
In the following example, when input 000 is on the value (6481) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The data in the
accumulator is logically ored with the constant K4102 with the result residing in the
accumulator. The value in the accumulator is output to data registers R404 and
R405 using the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in register
R402 and 403 into the
accumulator
7
Acc.
DOR (F76)
K4102
AND the value in the
accumulator with the constant
value 4102
DOUT (F60)
R 404
OR
0
6
1
5
1
STR
F
SHF
5
0
0
ENT
ENT
3
R
F
K
4
7
4
0
6
1
2
ENT
0
F
R
6
4
0
0
ENT
4
R402
6
8
4
0
4
3
0
2
1
1
0
0
0
7
1
6
0
5
0
4
0
0
2
0
1
0
0
1
0
1
1
0
0
1
0
0
1
0
0
0
0
0
0
1
Accumulator
0
1
0
0
0
0
0
1
0
0
0
0
0
0
1
0
Constant (4102)
0
1
1
0
0
1
0
1
1
0
0
0
0
0
1
1
Accumulator
6
5
8
3
R405
Output the value in the
accumulator to registers R404
and R405
1
R403
R404
ENT
2
ENT
ENT
Instruction Set
11–32
Instruction Set
Accumulator Logic Instructions
Compare
CMP (F70)
The Compare (F70) is a 16–bit
instruction that compares the value in a
16–bit reference, two consecutive 8–bit
registers (specify starting location), or a
4–digit BCD against the value in the
accumulator. Discrete bit flags are used
to indicate if the result of the comparison
was greater than, equal to, or less than
the value in the accumulator.
Data Type
CMP (F70)
A aaaa
D3–330 Range
D3–340 Range
A
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–27
Shift Registers
R
040–056
040–56
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Discrete Bit Flags
Description
772
Will be on if the accumulator value is greater than the compare value
773
Will be on if the accumulator value is equal to the compare value
774
Will be on if the accumulator value is less than the compare value
11–33
Instruction Set
Accumulator Logic Instructions
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
402 and 403 into the
accumulator
R 403
R 402
2
1
3
Acc.
2
1
3
2
2
Compared
with
CMP (F70)
R 404
Compare the value in the
accumulator with the value in
registers 404 and 405
000
774
160
7
5
R405
0
2
STR
F
SHF
5
0
0
ENT
ENT
R
F
R
STR
AND
4
7
4
SHF
SHF
0
0
0
0
7
2
ENT
4
ENT
7
ENT
4
ENT
OUT
SHF
1
6
0
ENT
ENT
R404
772
Accumulator value is
greater than compare value
OUT
773
Flag status after Compare execution
772 off
773 off
774 on
Accumulator value is
equal to compare value
774
Accumulator value is
less than compare value
NOTE: Input 000 has been used to interlock output 160. This is done since an earlier comparison could
result in status flag 774 coming on when this particular comparison is not being executed thereby
providing the opportunity for an unexpected output signal on output 160.
It is a common mistake to just use the status flags without interlocking to control outputs in a program but,
status flags 772 – 774 can change several times during the same scan. Just as you should not use the
status flags by themselves to control outputs, you also should not monitor status flags within the program.
Instead you should monitor the interlocked outputs controlled by the status flags.
Instruction Set
In the following example, when input 000 is on the value (2132) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The data in the
accumulator is compared to value in data registers R404 and R405 using the
Compare (F70) instruction. Discrete status flag 774 is used to indicate if the
accumulator is less than the compare value in this example.
11–34
Instruction Set
Math Instructions
Instruction Set
Math Instructions
Add
ADD (F71)
The Add (F71) is a 16–bit instruction that
adds the value of a 16 bit reference, two
consecutive 8–bit registers (specify
starting location), or a 4–digit BCD value
with the value in the accumulator. The
result resides in the accumulator.
Discrete bit flags are used to indicate if
the result had a carry digit or if the result
was was zero.
Data Type
ADD (F71)
A aaaa
D3–330 Range
D3–340 Range
A
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Discrete Bit Flags
Description
775
Will be on if the operation results in a carry
776
Will be on if the result is 0
In the following example, when input 000 is on the value (3619) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The Add
instruction (F71) adds the value (2602) in R410 and R411 to the value in the
accumulator. The result in the accumulator is then copied to data registers R404 and
R405 with the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
R 403
R 402
3
6
1
9
3
6
1
9
Accumulator
2
6
0
2
(R410 and R411)
6
2
2
1
Accumulator
6
2
2
1
Load the value in registers
R402 and R403 into the
accumulator
ADD (F71)
R410
+
Add the value in the
accumulator with the value in
registers R410 and R411
DOUT (F60)
R 404
Copy the value in the
accumulator to registers R404
and R405
R 405
R 404
777
Carry bit
776
Result equal 0
STR
F
SHF
5
0
0
ENT
ENT
R
F
R
4
7
4
0
1
1
2
ENT
0
F
R
6
4
0
0
ENT
4
ENT
ENT
ENT
Instruction Set
Math Instructions
Add Example
11–35
Registers for DSTR
Instruction
Registers for ADD
Instruction
Registers for DOUT
Instruction
Discrete Status
Flag
Discrete Status
Flag
R401/R400
R403/R402
R405/R404
775
776
Example 1
500
400
0900
off
off
Example 2
5000
5000
0000
on
on
Example 3
5050
5000
0050
on
off
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 400
Load the value in registers
R400 and R401 into the
accumulator
ADD (F71)
R402
Add the value in the
accumulator with the value in
registers R402 and R403
DOUT (F60)
R 404
STR
F
SHF
5
0
0
ENT
ENT
R
F
R
4
7
4
0
1
0
0
ENT
2
F
R
6
4
0
0
ENT
4
ENT
STR
OUT
SHF
SHF
7
0
7
1
5
0
ENT
ENT
STR
OUT
SHF
SHF
7
0
7
1
6
1
ENT
ENT
ENT
ENT
Output the value in the
accumulator to registers R404
and R405
000
775
010
OUT
Output 010 will be on if the
operation results in a carry
000
776
011
OUT
Output 011 will be on if the
result of the addition is zero
NOTE: An input has been used to interlock the outputs on the last two rungs. This is
done since an earlier math instruction could result in the status flag coming on
when this particular math instruction is not being executed thereby providing the
opportunity for an unexpected output signal.
It is a common mistake to just use the status flags without interlocking to control
outputs in a program but, the status flags can change several times during the
same scan. Just as you should not use the status flags by themselves to control
outputs, you also should not monitor status flags within the program. Instead you
should monitor the interlocked outputs controlled by the status flags.
Instruction Set
The following examples demonstrate how the discrete status flags are used to
indicate if the result of the add has produced a number which exceeds the capacity of
the accumulator. Remember, the accumulator has a 4 digit maximum. When a
calculation produces a number larger than 4 digits, part of this number is lost. The
following table shows different values being used in the logic example below. Notice
how the discrete status flags change.
Instruction Set
11–36
Instruction Set
Math Instructions
Subtract
SUB (F72)
The Subtract (F72) is a 16–bit instruction
that subtracts the value in a 16–bit
register, two consecutive 8–bit registers
(specify starting location), or a 4–digit
BCD value from the value in the
accumulator. The result resides in the
accumulator. Discrete bit flags are used
to indicate if the result had a borrow digit
or the result was zero.
Data Type
SUB (F72)
A aaaa
D3–330 Range
D3–340 Range
A
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Discrete Bit Flags
Description
775
Will be on if the result if a borrow digit occurred
776
Will be on if the result is 0
In the following example, when input 000 is on the value (3619) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The constant
value K1406 is subtracted from the value in the accumulator using the Subtract
(F72) instruction. The result in the accumulator is then copied to data registers R404
and R405 using the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
R402 and R403 into the
accumulator
SUB (F72)
K1406
–
Subtract the value in the
accumulator with the value in
registers R402 and R403
DOUT (F60)
R 404
Output the value in the
accumulator to registers R404
and R405
R 403
R 402
3
1
6
9
3
6
1
9
Accumulator
1
4
0
6
Constant (K1406)
2
2
1
3
Accumulator
2
2
1
3
R 405
R 404
775
Borrow digit
776
Result equal 0
STR
F
SHF
5
0
0
ENT
ENT
R
F
SHF
4
7
1
0
2
4
2
ENT
0
F
R
6
4
0
0
ENT
4
ENT
6
ENT
ENT
Instruction Set
Math Instructions
Subtract Example
11–37
Registers for DSTR
Instruction
Registers for SUB
Instruction
Registers for DOUT
Instruction
Discrete Status
Flag
Discrete Status
Flag
R401/R400
R403/R402
R405/R404
775
776
Example 1
6050
5000
1050
off
off
Example 2
7050
7050
0000
off
on
Example 3
5000
6000
9000*
on
off
* The DL305 cannot process negative numbers. When the number being subtracted
from the accumulator is larger than the number in the accumulator, a borrow digit
occurs and the subtraction is completed. The value in the accumulator does not
represent the difference between the two numbers. To get the difference between
the two numbers in Example 3 the result (9000) in the accumulator is subtracted
from 0. The final result is 1000, the difference between 6000 and 5000.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 400
Load the value in registers
R400 and R401 into the
accumulator
SUB (F72)
R402
Subtract the value in the
accumulator with the value in
registers R402 and R403
DOUT (F60)
R 404
000
775
Output the value in the
accumulator to registers R404
and R405
DSTR (F50)
K0
STR
F
SHF
5
0
0
ENT
ENT
R
F
R
4
7
4
0
2
0
0
ENT
2
F
R
STR
6
4
SHF
0
0
0
ENT
4
ENT
AND
F
SHF
5
7
0
7
ENT
R
F
K
4
7
0
0
2
ENT
4
ENT
F
R
6
4
0
0
ENT
4
ENT
ENT
ENT
5
ENT
ENT
Load the constant zero (0)
into the accumulator
SUB (F72)
R404
Subtract the value in the
accumulator with the value in
registers R404 and R405
DOUT (F60)
R 404
Output the value in the
accumulator to registers R404
and R405
NOTE: It is a common mistake to just use the status flags without interlocking to
control outputs in a program, but the status flags can change several times during
the same scan. Just as you should not use the status flags by themselves to control
outputs, you also should not monitor status flags within the program. Instead you
should monitor the interlocked outputs controlled by the status flags.
Instruction Set
The following examples demonstrate how the discrete status flags are used to
indicate if the result of the Subtraction is a 0 or required a borrow digit. The following
table shows different values being used in the logic example below. Notice how the
discrete status flags change for each example.
Instruction Set
11–38
Instruction Set
Math Instructions
Multiply
MUL (F73)
The Multiply (F73) is a 16–bit instruction
that multiplies the value in a 16–bit
register, two consecutive 8–bit registers,
or a 4–digit BCD value by the value in the
accumulator. The least significant four
digits of the result are stored in the
accumulator and the most significant
four digits are stored in the auxiliary
accumulator (R575 and R577). A
discrete bit flag is used to indicate if the
result was zero.
Data Type
MUL (F73)
A aaaa
D3–330 Range
D3–340 Range
A
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Discrete Bit Flags
Description
776
Will be on if the result is 0
In the following example, when input 000 is on the value (3619) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The data in the
accumulator is multiplied with the constant K2 with the result residing in the
accumulator and auxiliary accumulator (R576 and R577) using the Multiply (F73)
instruction. The value in the accumulator is output to data registers R404 and R405
using the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
R402 and R403 into the
accumulator
3
1
6
6
1
X
0
0
0
0
Auxilliary Acc.
R 577 R 576
7
2
3
9
9
Accumulator
2
Constant (K2)
8
Accumulator
7
DOUT (F60)
R404
Copy the value in the
accumulator to registers R404
and R405
R 402
3
MUL (F73)
K2
Multiply the value in the
accumulator with the
constant 2
R 403
2
R 405
3
8
R 404
776
Result equal 0
STR
F
SHF
5
0
0
ENT
ENT
R
F
SHF
4
7
2
0
3
ENT
2
ENT
F
R
6
4
0
0
ENT
4
ENT
ENT
11–39
Instruction Set
Math Instructions
Multiply Example
Whenever possible multiplications resulting in more than 4 digits should be avoided
since the DL305 instruction set can only manipulate a maximum of two consecutive
8–bit registers (4 digits) at one time.
If the result of a multiplication is greater than 4 digits, the application program must
be written to compensate for the instruction set 4 digit maximum for data
manipulation. The example below shows how the auxiliary accumulator is used to
store a result with more than 4 digits and how to access the upper 4 digits.
The example below shows how the auxiliary accumulator is used to process
numbers larger than 4 digits when the multiplication instruction is used.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
R402 and R403 into the
accumulator
DOUT (F60)
R412
R 402
3
1
3
MUL (F73)
K50
Multiply the value in the
accumulator with the
constant 50
R 403
6
6
X
0
0
1
8
Auxilliary Acc.
R 577 R 576
0
9
9
1
9
Accumulator
5
0
Constant (K50)
5
0
Accumulator
0
9
5
0
R 413
R 412
0
1
Output the value in the
accumulator to registers R412
and R413
DSTR (F50)
R 576
Load the value in registers
R576 and R577 into the
accumulator
DOUT (F60)
R414
Output the value in the
accumulator to registers R414
and R415
0
8
Accumulator
0
0
R 415
1
8
R 414
STR
F
SHF
5
0
0
ENT
ENT
R
F
SHF
4
7
5
0
3
0
2
ENT
ENT
F
R
F
6
4
5
0
1
0
ENT
2
ENT
R
F
R
5
6
4
7
0
1
6
ENT
4
ENT
ENT
ENT
ENT
Instruction Set
The multiply instruction allows you to multiply two 4–digit numbers together. The
result is located in the accumulator and the auxiliary accumulator (R576 and R577)
when necessary. The accumulator holds the lower 4 digits of the result and the
auxiliary accumulator holds the upper 4 digits.
Instruction Set
11–40
Instruction Set
Math Instructions
Divide
DIV (F74)
The Divide (F74) is a 16–bit instruction
that divides the value in the accumulator
by the value in a 16–bit register, two
consecutive 8–bit registers, or a 4–digit
BCD value. The integer portion of the
result is stored in the accumulator and
the decimal fraction is stored in the
auxiliary accumulator, R576 and R577.
Discrete flags are used to indicate if the
dividend or divisor is zero or if only the
divisor is zero.
Data Type
D3–330 Range
D3–340 Range
DIV (F74)
A aaaa
D3–330P Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
Discrete Bit Flags
Description
776
Will be on if the dividend or divisor is zero
777
Will be on if the divisor is zero
In the following example, when input 000 is on the value (530) in R402 and R403 is
loaded into the accumulator using the Data Store (F50) instruction. The data in the
accumulator is divided by the constant 10 (K10). The result in the accumulator and is
copied to data registers R404 and R405 using the Data Out (F60) instruction. The
remainder is in the auxiliary accumulator (R576 and R577).
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
R402 and R403 into the
accumulator
DIV (F74)
K10
Divide the value in the
accumulator by the
constant value 10
R 403
R 402
0
3
0
5
0
0
0
STR
F
SHF
5
0
0
ENT
ENT
3
0
Accumulator
R
F
SHF
4
7
1
0
4
0
2
ENT
ENT
1
0
Constant (K10)
F
R
6
4
0
0
ENT
4
5
3
Accumulator
0
DOUT (F60)
R404
5
0
R 405
5
0
0
0
0
Auxilliary Acc.
R 577 R 576
3
R 404
776
Copy the value in the
accumulator to registers R404
and R405
Dividend or divisor is zero
777
Divisor is zero
ENT
ENT
11–41
Instruction Set
Math Instructions
Divide Example
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 402
Load the value in registers
R402 and R403 into the
accumulator
DIV (F74)
K32
Divide the value in the
accumulator with the
constant value 32
DOUT (F60)
R412
R 403
R 402
0
2
0
5
5
0
0
9
STR
F
SHF
5
0
0
ENT
ENT
2
9
Accumulator
R
F
SHF
4
7
3
0
4
2
2
ENT
ENT
3
2
Constant (K32)
1
6
F
R
F
6
4
5
0
1
0
ENT
2
ENT
R
F
5
6
7
0
6
ENT
ENT
R
4
1
4
ENT
Accumulator
0
0
1
6
R 413
R 412
5
1
Copy the value in the
accumulator to registers R412
and R413
DSTR (F50)
R 576
Load the value in registers
R576 and R577 into the
accumulator
DOUT (F60)
R414
Copy the value in the
accumulator to registers R414
and R415
3
2
Accumulator
5
3
R 415
1
2
R 414
5
3
1
2
Auxilliary Acc.
R 577 R 576
ENT
ENT
Instruction Set
The divide instruction allows you to divide the value in the accumulator by 4 digits
maximum. The divide instruction uses the accumulator for the integer value of the
result and the auxiliary accumulator (R576 and R577) for fraction. The instruction set
only allows manipulation on two consecutive registers at a time. For example, if the
result was a 4 digit number with a remainder it would have to be treated like two
4–digit numbers in the program. Manipulating numbers over 4 digits should be
avoided whenever possible. If it cannot be avoided the application program must be
written to compensate for the 4–digit maximum for data manipulation.
The example below shows how the auxiliary accumulator is used to store the
fractional portion of the result and how to access the remainder.
11–42
Instruction Set
Bit Operation Instructions
Instruction Set
Bit Operation Instructions
Shift Left
SHFL (F81)
The Shift Left (F81) is a 16–bit instruction
that shifts the value in the accumulator a
specified number of bits (15 maximum)
to the left. Discrete bit flags are used to
indicate if a “1” was shifted out of the
accumulator or if the accumulator equals
“0” after the shift.
Data Type
SHFL (F81)
K aaaa
D3–330 Range
D3–340 Range
D3–330P Range
aaaa
aaaa
aaaa
1–16
1–16
1–16
Constant (4–digit BCD)
K
Discrete Bit Flags
Description
775
Will be on if a“1” was shifted out of the accumulator.
776
Will be on if the accumulator equals zero after the shift instruction is executed.
In the following example, when input 000 is on the value in R000 and R010 is loaded
into the accumulator using the Data Store 5 (F55) instruction. The bit pattern in the
accumulator is shifted to the left 4 bit positions using the Shift Left (F81) instruction
with the result resides in the accumulator. The value in the accumulator is copied to
data registers R404 and R405 using the Data Out (F60) instruction.
DirectSOFT Display
000
R 010
R 000
6
3
9
Handheld Programmer Keystrokes
5
DSTR 5 (F55)
R0
Load the value in registers R0
and R10 into the accumulator
7
6
0
1
I/O Points 100-107
5 4 3 2 1 0
1
0
1
0
15 14 13 12 11 10 9
Acc.
1
0
0
1
S S
Shifted out of
accumulator
SHFL (F81)
K4
0
1
0
0
1
7
6
0
0
I/O Points 000-007
5 4 3 2 1 0
1
1
0
1
0
1
9
Copy the value in the
accumulator to registers R404
and R405
SHF
5
0
5
ENT
ENT
R
F
SHF
0
8
4
ENT
1
ENT
ENT
F
R
6
4
0
0
ENT
4
S S
8
7
6 5
4 3
2
1
0
1
0
1
1
0
0
0
5
0
0
0
775 will be ON after the shift
776 will be OFF after the shift
Shift the value in the
accumulator 4 bits to the left
DOUT (F60)
R 404
STR
F
3
R 405
R 404
775
Shifted a “1” out of Accumulator
776
Accumulator equals zero after shift
ENT
11–43
Instruction Set
Bit Operation Instructions
The Shift Right (F80) is a 16–bit
instruction that shifts the value in the
accumulator a specified number of bits
(15 maximum) to the right. Discrete bit
flags are used to indicate if a “1” was
shifted out of the accumulator or if the
accumulator equals “0” after the shift.
Data Type
Instruction Set
Shift Right
SHFR (F80)
SHFR (F80)
Kaaaa
D3–330 Range
D3–340 Range
D3–330P Range
aaaa
aaaa
aaaa
1–16
1–16
1–16
Constant (4–digit BCD)
K
Discrete Bit Flags
Description
775
Will be on if a“1” was shifted out of the accumulator.
776
Will be on if the accumulator equals zero after the shift instruction is executed.
In the following example, when input 000 is on the value in R000 and R010 is loaded
into the accumulator using the Data Store 5 (F55) instruction. The bit pattern in the
accumulator is shifted 4 bit positions using the Shift Right (F80) instruction and the
result resides in the accumulator. The value in the accumulator is copied to data
registers R404 and R405 using the Data Out (F60) instruction.
DirectSOFT Display
R 10
000
4
DSTR 5 (F55)
R0
Load the value in registers R0
and R10 into the accumulator
3
7
7
I/O Points 000-007
6 5 4 3 2 1 0
0
1
0
0
0
0
1
0
0
15 14 13 12 11 10 9
Acc.
5
I/O Points 100-107
6 5 4 3 2 1 0
1
S S
SHFR (F80)
K4
Handheld Programmer Keystrokes
R0
9
0
0
0
0
0
1
0
1
S S
1
0
1
0
1
8
7
6 5
4 3
2
1
0
0
1
0
1
0
1
1
0
9
3
Copy the value in the
accumulator to registers R404
and R405
4
R 405
SHF
5
0
5
ENT
ENT
R
F
SHF
0
8
4
ENT
0
ENT
ENT
F
R
6
4
0
0
ENT
4
Shifted out of
accumulator
0
0
775 will be ON after the shift
776 will be OFF after the shift
Shift the value in the
accumulator 4 bits to the right
DOUT (F60)
R 404
STR
F
R 404
775
Shifted a “1” out of Accumulator
776
Accumulator equals zero after shift
ENT
11–44
Instruction Set
Number Conversion Instructions
Instruction Set
Number Conversion Instructions
Encode
ENCOD (F83)
The Encode instruction encodes the
accumulator bit position that contains a 1
by returning the corresponding binary
representation. If the most significant bit
is set to HEX F (decimal 15), the binary
value 15 is returned to the accumulator. If
the accumulator value is 0000 or 0001 a
zero will be returned to the accumulator.
If there is more than one bit position set to
a “1” the least significant “1” will be
encoded. The discrete bit flag 777 is
used to indicate if there were multiple 1s
in the accumulator.
ENCOD (F83)
Discrete Bit Flags
Description
777
Will be on if there was more than one bit position set to a ”1” in the accumulator.
11–45
Instruction Set
Number Conversion Instructions
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR 5 (F55)
R 005
R 015
R 005
0
4
0
0
Load the value in registers
R005 and R015 into the
accumulator
15 14 13 12 11 10 9
Acc.
0
0
0
0
0
0
0
8
7
6 5
4 3
2
1
0
0
0
1
0
0
0
0
0
0
Bit position 6 converted to binary.
15 14 13 12 11 10 9
ENCOD (F83)
Acc.
0
0
0
0
0
0
0
8
7
6 5
4 3
2
1
0
0
0
0
0
1
1
0
0
0
Encode the bit position in the
accumulator set to 1" by
returning the corresponding
binary number
DOUT3 (F63)
R 404
Copy the lower four bits in the
accumulator to the lower four
bits of register R404.
0
6
R 404
STR
F
SHF
5
0
5
ENT
ENT
R
F
F
R
5
8
6
4
ENT
3
3
0
ENT
ENT
4
ENT
Instruction Set
In the following example, when input 000 is on the 16–bit binary pattern from
registers R005 and R015 is loaded in the accumulator by the Data Store 5 (F55)
instruction. In this example the 6th bit (BCD 40) is on. When the Encode (F83)
instruction executes the accumulator will contain the BCD value of 6. The lower four
bits of the accumulator are copied to the lower four bits of register R404 by the Data
Out 3 (F63) instruction.
Instruction Set
11–46
Instruction Set
Number Conversion Instructions
Decode
DECOD (F82)
The Decode instruction decodes a four
bit binary number (0–F) in the
accumulator and sets the corresponding
bit position to a one. If the accumulator
contains a HEX F (decimal 15) the most
significant bit (bit 15) will be set in the
accumulator. If the accumulator contains
a zero the least significant bit (bit 0) will
be set to a one. All other bits in the
accumulator will be set to a zero.
DECOD (F82)
In the following example, when 000 is on the binary value of the lower four bits in
R016 (5) will be loaded in the accumulator by the Data Store 3 (F53) instruction. The
Decode instruction will then translate the value 5 to a 1 in the fifth bit position of the
accumulator. The value 20 in the accumulator is copied to data registers R404 and
R405 with the Data Out (F60) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
R 016
DSTR3 (F53)
R 016
0
5
Load the lower four bits in
R016 into the accumulator
15 14 13 12 11 10 9
Acc.
0
0
0
0
0
0
0
8
7
6 5
4 3
2
1
0
0
0
0
0
1
0
1
0
0
Bit pattern equals 5 BCD
15 14 13 12 11 10 9
DECOD (F82)
Acc.
0
0
0
0
0
0
0
8
7
6 5
4 3
2
1
0
0
0
0
0
0
0
0
2
0
Decode the binary bit pattern
in the accumulator and set
the appropriate bit to a "1"
DOUT (F60)
R 404
Copy the value in the
accumulator to registers R404
and R405
0
0
R 405
R 404
1
0
STR
F
SHF
5
0
3
ENT
ENT
R
F
1
8
6
2
ENT
ENT
F
R
6
4
0
0
ENT
4
ENT
11–47
Instruction Set
Number Conversion Instructions
The Binary (F85) instruction converts a
BCD value in the accumulator to the
binary/HEX equivalent value. The result
of the conversion resides in the
accumulator.
BIN (F85)
In the following example, when input 000 is on the value (2571 BCD) in R600 is
loaded into the accumulator using the Data Store (F50) instruction. The value in the
accumulator is converted to a binary number (HEX 0A0B) using the Binary (F85)
instruction with the result residing in the accumulator. The value in the accumulator
is copied to I/O registers R000 and R010 (which corresponds to I/O points 0–7 and
100–107) with the Data Out 5 (F65) instruction.
DirectSOFT Display
Handheld Programmer Keystrokes
000
DSTR (F50)
R 600
Load the value in registers
600 and 601 into the
accumulator
BIN (F85)
R601
R600
2
7
Accumulator value before
BIN instruction
2
Accumulator value after
BIN instruction
0
5
5
A
7
0
1
1
B
Hex.
Convert the BCD number in
the accumulator to a binary
number
I/O Points 100-107
DOUT5 (F65)
R 000
Output the value in the
accumulator to R000 and
R010
I/O Points 000-007
7
6
5
4
3
2
1
0
7
6
5
4
3
2
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
1
R010
R000
STR
F
SHF
5
0
0
ENT
ENT
R
F
F
6
8
6
0
5
5
0
ENT
ENT
R
0
ENT
ENT
Instruction Set
Binary
BIN (F85)
Instruction Set
11–48
Instruction Set
Number Conversion Instructions
Binary Coded
Decimal
BCD (F86)
The Binary Coded Decimal (F86)
instruction converts a binary/HEX value
in the accumulator to the BCD
equivalent. The result of the conversion
resides in the accumulator.
BCD (F86)
In the following example, when input 000 is on the value (HEX 0A0A) in R000 and
R010 is loaded into the accumulator with the Data Store 5 (F55) instruction. The
value in the accumulator is converted to a BCD number (BCD 2570) using the BCD
(F86) instruction with the result residing in the accumulator. The value in the
accumulator is output to register R600 using the Data Out (F60) instruction.
R 10
0
DirectSOFT Display
R0
A
0
A
Handheld Programmer Keystrokes
000
DSTR5 (F55)
R0
Load the value in
registers R000 and
R010 into the
accumulator
Accumulator
value before
BCD instruction
7
6
0
0
I/O Points 100-107
5 4 3 2 1 0
0
0
1
0
1
0
7
6
0
0
I/O Points 000-007
5 4 3 2 1 0
0
0
1
0
1
0
BCD (F86)
15 14 13 12 11 10 9
Convert the binary number
in the accumulator to a BCD
number
DOUT (F60)
R600
8
7
6 5
4 3
2
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
3
2
7
6
8
1
6
3
8
4
8
1
9
2
4
0
9
6
2
0
4
8
1
0
2
4
5
1
2
2
5
6
1 6
2 4
8
3
2
1 8
6
4
2
1
2
5
7
0
2
5
7
0
Copy the value in the
accumulator to R600 and
R601
Accumulator value after
BCD instruction
R601
R600
STR
F
SHF
5
0
5
ENT
ENT
R
F
F
0
8
6
ENT
6
0
ENT
ENT
R
6
0
0
ENT
11–49
Instruction Set
Number Conversion Instructions
The Invert instruction generates the
one’s complement of the number in the
accumulator. The result is stored in the
accumulator.
INV (F84)
In the following example, when input 000 is on the value (AD63) in R000 and R010 is
loaded into the accumulator using the Data Store (F55) instruction. The value in the
accumulator is inverted with the result residing in the accumulator. The value (HEX
529C) is copied to registers R404 and R405 using the Data Out (F60) instruction.
R 10
DirectSOFT Display
A
000
R0
D
6
Handheld Programmer Keystrokes
3
DSTR5 (F55)
R0
Load the value in register
R000 and R010 into the
accumulator
INV (F84)
Invert the value in the
accumulator
DOUT (F60)
R 404
7
I/O Points 100-107
6 5 4 3 2 1 0
7
I/O Points 000-007
6 5 4 3 2 1 0
1
0
1
0
1
0
1
0
SHF
5
0
5
ENT
ENT
R
F
F
0
8
6
ENT
4
0
ENT
ENT
R
4
0
4
1
1
0
1
0
1
1
0
0
0
1
1
1
1
0
1
0
1
1
0
0
0
1
1
Accumulator
0
0
Accumulator
Invert the value in the accumulator
0
1
0
1
0
5
2
R405
Copy the value in the
accumulator to registers R404
and R405
STR
F
0
1
0
1
0
0
1
1
9
C
R404
1
ENT
Instruction Set
Invert
INV (F84)
11–50
Instruction Set
Program Control Instructions
Instruction Set
Program Control Instructions
Master Control Set
(MCS)
DL330/DL340 Only
Master Control
Reset
(MCR)
DL330/DL340 only
Understanding
Master Control
Relays
The Master Control Set and Master
Control Reset instructions are used to
provide an additional left power rail which
is controllable by a input contact. This is
sometimes known as a sub power rail.
Any number of rungs of ladder logic can
be disabled using these instructions.
MCS
MCR
The Master Control Set (MCS) and Master Control Reset (MCR) instructions allow
you to quickly enable (or disable) sections of the RLL program. This provides
program control flexibility. The following example shows how the MCS and MCR
instructions operate by creating a sub power rail for control logic.
000
When contact 000 is on, logic under the first MCS
will be executed.
MCS
050
OUT
001
002
When contact 002 is on, logic under
the
second MCS will be executed.
MCS
003
MCR
010
MCR
The MCR instructions note the end of the Master Control area. (They will be entered in
adjacent addresses.)
Instruction Set
Program Control Instructions
11–51
DirectSOFT Display
Handheld Programmer Keystrokes
000
A
MCS
001
160
OUT
002
161
OUT
165
20
OUT
010
C
MCS
003
170
OUT
004
171
OUT
D
STR
MCS
STR
OUT
STR
OUT
STR
OUT
STR
MCS
STR
OUT
STR
OUT
MCR
STR
OUT
STR
OUT
MCR
STR
OUT
SHF
ENT
SHF
SHF
SHF
SHF
SHF
SHF
SHF
ENT
SHF
SHF
SHF
SHF
ENT
SHF
SHF
SHF
SHF
ENT
SHF
SHF
0
ENT
1
1
2
1
1
2
1
ENT
6
ENT
6
6
0
0
ENT
ENT
3
1
4
1
ENT
7
0
ENT
ENT
7
1
ENT
5
1
6
2
ENT
7
2
ENT
ENT
1
ENT
7
2
ENT
2
ENT
0
ENT
1
5
ENT
ENT
MCR
005
172
OUT
006
21
OUT
B
MCR
007
22
OUT
NOTE: When programming the MCS instruction, do not put any parallel coils in the
rung with the MCS.
Instruction Set
MCS/MCR Example In the following MCS/MCR example logic between the first MCS (A) and the last
MCR (B) will function only if input 000 is on. The logic between the second MCS (C)
and the next to last MCR (D) will function only if input 010 is on. The last rung is not
controlled by either of the MCS coils.
11–52
Instruction Set
Network Instructions
Instruction Set
Network Instructions
Read from Network The Read from Network instruction is used
RX (F952)
by the master device on a DirectNET
DL340 Only
network to read a block of data from
another CPU or DirectNET interface
module. The function parameters are
loaded into the accumulator and the first
and second level of the accumulator stack
by three additional instructions. Listed
below are the steps necessary to program
the Read from Network function.
RX (F952)
A aaa
Step 1: — Load the slave address (1–90 BCD) into the accumulator with the DSTR
instruction. This must always be preceded by 00, so address 20 would be 0020.
(Remember, D4–DCM slave device addresses are set with switches that use a
hexadecimal format. Make sure you convert this address to the decimal equivalent
for use with this instruction.)
Step 2: — Load the number of bytes (1 – 128 BCD) to be transferred from the
network slave station.
Step 3: — Load the octal address for the data register that will be used to store the
data obtained from the slave station.
Step 4: — Insert the RX instruction which specifies the starting address in the slave
station. If you are getting the data from a DL305 station, just enter the Data Register
number. If you are getting the data from a DL205 or DL405 station, enter a constant
that corresponds to the memory address. For example, to get the current count for
Timer 600 from a DL305 CPU, you would use R600 with the RX instruction. If you
wanted to get Counter 0 from a DL405 CPU, you would use a constant of 1000 with
the RX instruction. (V1000 stores the current count for Counter 0 in a DL405 CPU.)
NOTE: The DirectNET manual provides further information on the use of the RX and
WX network instructions.
Data Type
D3–330 Range
D3–340 Range
A
aaaa
aaaa
D3–330P Range
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
*Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
* A constant is used to obtain data from a DL205 or DL405 system.
Discrete Bit Flags
Description
777
Parameters are not properly set. Check the slave address, data length, or data
address reference.
1074
Communication port busy.
1075
Communication error. Data was not transmitted.
Instruction Set
Network Instructions
11–53
In the following example, when input 001 is on and the CPU busy relay 1074 (see
special relays, p. 8–31) is not on, the RX instruction will access a DL405 CPU that
has been assigned station address 20. (Note, the D4–DCM slave station addresses
are set with switches that indicate a hexadecimal number. Make sure you determine
the decimal equivalent to be used with the first DSTR instruction in the sequence.)
Ten consecutive bytes of data (V1400 – V1404) will be read from the slave station
and stored in registers R400 – R411. (Remember, the DL205 and DL405 V-memory
locations are 16 bits. The DL305 registers are only 8 bits, so you have to use two data
registers for each V-memory location.)
DirectSOFT Display
001
1074
DSTR (F50)
K0020
The constant value K0020
specifies station address 20
(hex)
DL305
CPU
Slave
CPU
S
S
S
S
DSTR (F50)
K0010
The constant value K10
specifies the number of
bytes to be read
R401
R400
3
5
4
7
R403
R402
8
3
5
4
3
4
5
7
V1400
8
5
3
4
V1401
1
9
3
6
V1402
9
5
7
1
V1403
1
4
2
3
V1404
DSTR (F50)
K0400
Octal address 0400 is used
to designate R400 as the
starting point for the range of
registers that will hold the
data
RX (F952)
K1400
K1400 is used to represent
V1400, which is the starting
location in the for the Slave
CPU where the specified
data will be read from
Handheld Programmer Keystrokes
STR
AND
F
SHF
F
SHF
F
SHF
F
SHF
NOT
5
0
5
1
5
4
9
1
SHF
0
0
0
0
0
0
5
ENT
1
ENT
2
ENT
ENT
ENT
0
2
ENT
ENT
SHF
1
4
0
0
0
7
0
ENT
ENT
4
ENT
R405
R404
1
3
9
6
R407
R406
9
7
5
1
R411
R410
1
2
4
3
Instruction Set
NOTE: See the DL205 or DL405 User’s Manuals for a listing of V-memory
addresses available with these CPUs. Since the DL305 only supports a 4-digit
constant, you will not be able to access the entire V-memory ranges of the DL205
and DL405 CPUs. For example, you could not directly access V40400 stored in a
DL405 CPU. If you require data from a range outside the area available with a 4-digit
constant (from V0 – V9999) then add a routine to the slave station program that
moves this data down into one of the accessible areas.
Instruction Set
11–54
Instruction Set
Network Instructions
Write to Network
WX (F953)
DL340 Only
The Write to Network instruction is used by
the master device on a DirectNET
network to write a block of data to another
WX (F953)
station. The function parameters are
A aaa
loaded into the accumulator and the first
and second level of the accumulator stack
by three additional instructions. Listed
below are the steps necessary to program
the Write to Network function.
Step 1: — Load the slave address (1–90 BCD) into the accumulator with the DSTR
instruction. This must always be preceded by 00, so address 20 would be 0020.
(Remember, the D4–DCM slave device addresses are set with switches that use a
hexadecimal format. Make sure you convert this address to the decimal equivalent
for use with this instruction.)
Step 2: — Load the number of bytes (1 – 128 BCD) to be transferred to the network
slave station.
Step 3: — Load the octal address for the data register that will be used to obtain the
data that will be sent to the slave station.
Step 4: — Insert the WX instruction which specifies the starting address in the slave
station. If you are sending data to a DL305 station, just enter the Data Register
number. If you are sending data to a DL205 or DL405 station, enter a constant that
corresponds to the memory address. For example, to send data to Register 500 in
a DL305 CPU, you would use R500 with the RX instruction. If you wanted to send
data to V1400 in a DL405 CPU, you would use a constant of 1400 with the WX
instruction.
NOTE: The DirectNET manual provides further information on the use of the RX
and WX network instructions.
Data Type
D3–330 Range
D3–340 Range
D3–330P Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–027
Shift Registers
R
040–056
040–056
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
*Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
* A constant is used to send data to a DL205 or DL405 system.
Discrete Bit Flags
Description
777
Parameters are not properly set. Check the slave address, data length, or data
address reference.
1074
Communication port busy.
1075
Communication error. Data was not transmitted.
Instruction Set
Network Instructions
11–55
In the following example, when input 001 is on and the CPU busy relay 1074 (see
special relays, p. 8–31) is not on, the WX instruction will access a DL405 CPU that
has been assigned station address 20. (Note, the D4–DCM slave station addresses
are set with switches that indicate a hexadecimal number. Make sure you determine
the decimal equivalent to be used with the first DSTR instruction in the sequence.)
Ten consecutive bytes of data (R400 – R411) will be sent from the DL340 and stored
in V-memory locations V1400 – V1404. (Remember, the DL205 and DL405
V-memory locations are 16 bits. The DL305 registers are only 8 bits, so you have to
use two data registers for each V-memory location.)
DirectSOFT Display
001
1074
DSTR (F50)
K0020
The constant value K0020
specifies station address 20
(hex)
DL305
CPU
Slave
CPU
S
S
S
S
DSTR (F50)
K0010
The constant value K10
specifies the number of
bytes to be send
R401
R400
3
5
4
7
R403
R402
8
3
5
4
3
4
5
7
V1400
8
5
3
4
V1401
1
9
3
6
V1402
9
5
7
1
V1403
1
4
2
3
V1404
DSTR (F50)
K0400
Octal address 0400 is used
to designate R400 as the
starting point for the range of
registers that holds the data
in the DL340.
WX (F953)
K1400
K1400 is used to represent
V1400, which is the starting
location in the for the Slave
CPU where the specified
data will be stored.
Handheld Programmer Keystrokes
STR
AND
F
SHF
F
SHF
F
SHF
F
SHF
NOT
5
0
5
1
5
4
9
1
SHF
0
0
0
0
0
0
5
ENT
1
ENT
2
ENT
ENT
ENT
0
7
0
ENT
0
3
ENT
ENT
SHF
1
4
0
0
ENT
4
ENT
R405
R404
1
3
9
6
R407
R406
9
7
5
1
R411
R410
1
2
4
3
Instruction Set
NOTE: See the DL205 or DL405 User’s Manuals for a listing of V-memory
addresses available with these CPUs. Since the DL305 only supports a 4-digit
constant, you will not be able to access the entire V-memory ranges of the DL205
and DL405 CPUs. For example, you could not directly access V40400 stored in a
DL405 CPU. If you want to send data to a range outside the area available with a
4-digit constant (from V0 – V9999) then add a routine to the slave station program
that moves the data from one of the accessible areas into the unavailable locations.
11–56
Instruction Set
Message Instructions
Instruction Set
Message Instructions
Fault
FAULT (F20)
The Fault (F20) instruction is used to
display a 4–digit BCD constant, 16–bit
register, or two consecutive 8–bit data
registers on the handheld programmer or
in DirectSoft. When the fault instruction
is executed the number being displayed
will also be copied into the registers R574
and R575 and the discrete bit flag 771 will
be on.
FAULT (F20)
In the following example, when input 000 is on the number 0206 will be displayed on
the programming device. This would typically be a user defined error code.
Data Type
D3–330 Range
D3–340 Range
D3–330P Range
A
aaaa
aaaa
aaaa
Inputs / Outputs
R
000–014
070–075
000–014
070–075
000–014
070–075
Control Relays
R
016–036
016–036
100–105
016, 020–27
Shift Registers
R
040–056
040–56
––
Stages
R
––
––
100–116
Timer /Counters (16 bit)
R
600–677
600–677
600–677
Data Registers
R
400–577
400–577
700–777
400–577
Constant (4–digit BCD)
K
0000–9999
0000–9999
0000–9999
DirectSOFT Display
Handheld Programmer Display
000
FAULT (F20)
K 0206
0206
ADDRESS/DATA
ON/OFF
RUN BATT
PWR CPU
0
AND
1
OR
2
STR
3
NOT
4
OUT
5
TMR
6
CNT
7
SR
0
MCS
1
MCR
2
SET
3
RST
Handheld Programmer Keystrokes
4
ADR
5
SHF
6
DATA
7
REG
STR
F
SHF
2
0
0
ENT
ENT
SHF
2
0
6
ENT
RLL PLUS
Instruction Set
In This Chapter. . . .
112
Ċ Introduction
Ċ Stage Instructions
Ċ Comparative Boolean Instructions
Ċ Timer, Counter, and Shift Register Instructions
12–2
RLL PLUS Instruction Set
Stage Instructions
Instruction Set
Introduction
This chapter provides information concerning the instructions used with RLL PLUS
CPUs. If you are not familiar with RLL PLUS programming concepts, you should read
Chapter 10 first. Chapter 10 will help you understand the basic concepts. The
following table provides a quick reference listing of the instruction mnemonic and the
page(s) defining the instruction. (The mnemonics are very similar to the instruction
names and should be easy to become familiar with in a short time.) For example ISG
is the mnemonic for Initial Stage. Each instruction definition will show in parentheses
the keystrokes used to enter the instruction.
RLLPLUS
Instructions
NOTE: Don’t assume that the instructions in this chapter are the only ones you can
use with your RLL PLUS CPU. There are many others that are discussed in Chapter 11
that you can use as well. If you are using an RLL PLUS CPU, such as the DL330P, then
you should always consult this chapter before you use one of the instructions shown
in Chapter 11. There may be differences in the way the instruction operates in an
RLL PLUS CPU.
This chapter provides a description of several instructions that are similar, but
slightly different from their RLL CPU counterparts. For example, you’ll notice that a
Counter instruction has two input lines in an RLL CPU but only one input line in an
RLL PLUS CPU.
There are two ways to quickly find the instruction you need.
S
If you know the instruction category (Stage, Comparative Boolean, etc.)
just use the header at the top of the page to find the pages that discuss
the instructions in that category.
S
If you know the individual instruction mnemonic, use the following table
to find the page that discusses the instruction.
Instruction
Page
Instruction
Page
AND CNT
12–17
ORN TMR
12–14
AND SG
12–9
RST
12–10
AND TMR
12–16
RST (counter)
12–20
ANDN CNT
12–17
RST SG
12–11
ANDN SG
12–9
SET
12–10
ANDN TMR
12–16
SET SG
12–11
CNT
12–19
SG
12–3
ISG
12–3
SR
12–21
JMP
12–5
STR CNT
12–13
NJMP
12–5
STR TMR
12–12
OR CNT
12–15
STR SG
12–7
OR SG
12–8
STRN CNT
12–13
OR TMR
12–14
STRN SG
12–7
ORN CNT
12–15
STRN TMR
12–12
ORN SG
12–8
TMR
12–18
RLL PLUS Instruction Set
Stage Instructions
12–3
Stage Instructions
Stage
(SG)
DL330P Only
The Stage instruction creates segments
of a RLL PLUS program. Stages are
activated by transitional logic, a jump or
set stage executed from an active stage.
Stages are de–activated one scan after
transitional logic, a jump, or a reset stage
instruction is executed.
Data Type
Stages
SG
D3–330 Range
D3–340 Range
aaaa
aaaa
aaaa
––
––
0–177
ISG
S aaa
SG
S aaa
D3–330P Range
RLLPLUS
Instructions
The Initial Stage instruction is normally
used as the first segment of a RLL PLUS
program. Initial stages are activated
when the CPU enters the run mode, this
creates a starting point in the program.
The Initial Stage can be made inactive by
either jumping from it or resetting it.
Multiple Initial Stages are allowed in a
program.
Instruction Set
Initial Stage
(ISG)
DL330P Only
12–4
RLL PLUS Instruction Set
Stage Instructions
Instruction Set
The following example is a simple RLL PLUS program. This program utilizes the Initial
Stage, Stage, and Jump instructions to create a structured program.
DirectSOFT Display
ISG
Handheld Programmer Keystrokes
S0
000
010
OUT
001
S2
SET
RLLPLUS
Instructions
005
S1
JMP
SG
S1
002
011
OUT
SG
S2
006
012
OUT
007
S1
S0
JMP
ISG
STR
SHF
SHF
0
0
ENT
ENT
OUT
STR
SET
SHF
SHF
SG
1
1
SHF
0
ENT
2
STR
JMP
SG
STR
SHF
SG
SHF
SHF
5
1
1
2
ENT
ENT
ENT
ENT
OUT
SG
STR
SHF
SHF
SHF
1
2
6
1
ENT
ENT
ENT
OUT
STR
AND
JMP
SHF
SHF
SG
SG
1
7
1
0
2
ENT
ENT
ENT
ENT
ENT
ENT
RLL PLUS Instruction Set
Stage Instructions
Not Jump
(NOT JMP)
DL330P Only
The Not Jump instruction allows the
program to transition from an active
stage which contains the jump
instruction to another which is specified
in the instruction. The jump will occur
when the input logic is false. The active
stage that contains the Not Jump will be
de–activated 1 scan after the Not Jump
instruction is executed.
Data Type
Stages
SG
SG aaa
JMP
SG aaa
NJMP
RLLPLUS
Instructions
The Jump instruction allows the program
to transition from an active stage which
contains the jump instruction to another
which is specified in the instruction. The
jump will occur when the input logic is
true. The active stage that contains the
Jump will be de–activated 1 scan after
the Jump instruction is executed.
Instruction Set
Jump
(JMP)
DL330P Only
12–5
D3–330 Range
D3–340 Range
aaaa
aaaa
D3–330P Range
aaaa
––
––
0–177
12–6
RLL PLUS Instruction Set
Stage Instructions
Instruction Set
The following example is a simple RLL PLUS program. This program utilizes the Initial
Stage, Stage, Jump, and Not Jump instructions to create a structured program.
DirectSOFT Display
ISG
Handheld Programmer Keystrokes
S0
000
010
OUT
001
S1
JMP
RLLPLUS
Instructions
S2
NJMP
SG
S1
002
011
OUT
003
S2
JMP
SG
S2
004
012
OUT
005
S0
JMP
ISG
STR
SG
SHF
SHF
0
0
ENT
ENT
OUT
STR
JMP
SHF
SHF
SG
1
1
SHF
0
ENT
1
ENT
JMP
SG
STR
NOT
SHF
SHF
SG
1
002
SHF
ENT
ENT
2
OUT
STR
JMP
SHF
SHF
SG
1
3
SHF
1
ENT
2
ENT
SG
STR
OUT
STR
SHF
SHF
SHF
SHF
2
4
1
5
ENT
ENT
2
ENT
JMP
SG
SHF
0
ENT
ENT
ENT
ENT
ENT
RLL PLUS Instruction Set
Stage Instructions
The Store instruction begins a new rung
or additional branch in a rung with a
normally open stage contact. Status of
the contact will be the same state as the
associated Stage memory location.
Store Not Stage
(STR NOT SG)
DL330P Only
The Store Not instruction begins a new
rung or additional branch in a rung with a
normally closed stage contact. Status of
the contact will be opposite the state of
the associated stage memory location.
Stages
SG
SG aaa
D3–330 Range
D3–340 Range
aaaa
aaaa
aaaa
––
––
0–177
RLLPLUS
Instructions
Data Type
SG aaa
Instruction Set
Store Stage
(STR SG)
DL330P Only
12–7
D3–330P Range
In the following Store example, when stage contact 000 is on, output 010 will
energize.
DirectSOFT Display
SG 000
Handheld Programmer Keystrokes
010
OUT
STR
OUT
SG
SHF
SHF
1
0
0
ENT
ENT
In the following Store Not example, when stage contact 000 is off output 010 will
energize.
DirectSOFT Display
SG 000
Handheld Programmer Keystrokes
010
OUT
STR
OUT
NOT
SHF
SG
1
SHF
0
0
ENT
ENT
RLLPLUS
Instructions
Instruction Set
12–8
RLL PLUS Instruction Set
Stage Instructions
Or Stage
(OR SG)
DL330P Only
Or Not Stage
(OR NOT SG)
DL330P Only
The Or instruction logically ors a normally
open stage contact in parallel with
another contact in a rung. The status of
the contact will be the same state as the
associated stage memory location.
SG aaa
The Or Not instruction logically ors a
normally closed stage contact in parallel
with another contact in a rung. The status
of the contact will be opposite the state of
the associated stage memory location.
Data Type
Stages
SG
SG aaa
D3–330 Range
D3–340 Range
D3–330P Range
aaaa
aaaa
aaaa
––
––
0–177
In the following Or example, when input 000 or stage contact 001 is on output 010 will
energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
STR
OR
OUT
SHF
SG
SHF
0
SHF
1
ENT
1
0
ENT
ENT
SG 001
In the following Or Not example, when input 000 is on or stage contact 001 is off
output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
010
OUT
SG 001
STR
OR
OUT
SHF
NOT
SHF
0
SG
1
ENT
SHF
0
1
ENT
ENT
RLL PLUS Instruction Set
Stage Instructions
The And instruction logically ands a
normally open stage contact in series
with another contact in a rung. The status
of the contact will be the same state as
the associated stage memory location.
And Not Stage
(AND NOT SG)
DL330P Only
The And Not instruction logically ands a
normally closed stage contact in series
with another contact in a rung. The status
of the contact will be opposite the state of
the associated stage memory location.
Stages
SG
SG aaa
D3–330 Range
D3–340 Range
aaaa
aaaa
aaaa
–
–
0–177
RLLPLUS
Instructions
Data Type
SG aaa
D3–330P Range
In the following And example, when input 000 and stage contact 001 is on output 010
will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
SG 001
010
OUT
STR
AND
OUT
SHF
SG
SHF
0
SHF
1
ENT
1
0
ENT
ENT
In the following And Not example, when input 000 is on and stage contact 001 is off
output 010 will energize.
DirectSOFT Display
000
Handheld Programmer Keystrokes
SG 001
010
OUT
Instruction Set
And Stage
(AND Stage)
DL330P Only
12–9
STR
AND
OUT
SHF
NOT
SHF
0
SG
1
ENT
SHF
0
1
ENT
ENT
RLLPLUS
Instructions
Instruction Set
12–10
RLL PLUS Instruction Set
Stage Instructions
Set
(SET)
DL330P Only
The Set instruction sets or turns on a
output or a consecutive range of outputs.
Once the output is set it will remain on
until it is reset using the Reset instruction.
It is not necessary for the input controlling
the Set instruction to remain on. The Set
instruction is sometimes known as a
latch. The Reset instruction is used to
reset the output.
Reset
(RST)
DL330P Only
The Reset instruction resets or turns off
an output or a consecutive range of
outputs. Once the output is reset it is not
necessary for the input to remain on. The
Reset instruction is sometimes known as
an unlatch instruction.
Data Type
Optional
memory range
aaa aaa
SET
Optional
memory range
aaa aaa
RST
D3–330 Range
D3–340 Range
aaaa
aaaa
D3–330P Range
aaaa
Outputs
––
––
000–177
700–767
Control Relays
––
––
160 – 167
170 – 174
200 – 277
In the following Set example, when input location 005 is on, outputs 20–37 will be set
on.
DirectSOFT Display
005
Handheld Programmer Keystrokes
020
037
SET
STR
SET
SHF
SHF
SHF
3
5
2
7
ENT
0
ENT
ENT
In the following Reset example, when input location 006 is on, outputs 020–37 will be
reset to the off state.
DirectSOFT Display
006
Handheld Programmer Keystrokes
020 037
RST
STR
RST
SHF
SHF
SHF
3
6
2
7
ENT
0
ENT
ENT
RLL PLUS Instruction Set
Stage Instructions
Reset Stage
(RST SG)
DL330P Only
The Reset instruction resets or turns off a
stage or a consecutive range of stages.
Once the stage(s) is reset it is not
necessary for the input to remain on.
Data Type
Stage
Optional
memory range
SG aaa aaa
SET SG
Optional
memory range
SG aaa aaa
RST SG
D3–330 Range
D3–340 Range
aaa
aaa
aaa
––
––
000–177
RLLPLUS
Instructions
The Set Stage instruction sets or turns on
a stage or a consecutive range of stages.
Once the stage is set it will remain on until
a transition is made to another stage or
the stage is reset using the Reset Stage
instruction. It is not necessary for the
input controlling the Set Stage instruction
to remain on.
D3–330P Range
In the following Set Stage example, when input 000 is on, stages 30–47 will be set
on.
DirectSOFT Display
000
Handheld Programmer Keystrokes
030 047
SETSG
STR
SET
SHF
SHF
SG
4
0
SHF
7
ENT
3
ENT
0
ENT
In the following Reset Stage example, when input 003 is on, stages 30–47 will be
reset off.
DirectSOFT Display
003
Handheld Programmer Keystrokes
030 047
RSTSG
Instruction Set
Set Stage
(SET SG)
DL330P Only
12–11
STR
RST
SHF
SHF
SG
4
3
SHF
7
ENT
3
ENT
0
ENT
12–12
RLL PLUS Instruction Set
Comparative Boolean Instructions
RLLPLUS
Instructions
Instruction Set
Comparative Boolean Instructions
Store If Greater
Than or Equal
To Timer
(STR TMR)
DL330P Only
The Store If Greater Than or Equal To
instruction begins a new rung or
additional branch in a rung with a
normally open comparative timer
contact. The contact will be on if the
specified timer T aaa w B bbbb.
Store Not IF
Greater Than Timer
(STR NOT TMR)
DL330P Only
The Store Not If Greater Than instruction
begins a new rung or additional branch in
a rung with a normally closed
comparative timer contact. The contact
will be on if the specified timer
T aaa t B bbbb.
Operand Data Type
D3–330 Range
T aaa
B bbbb
T aaa
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
bbbb
Timers
T
––
––
––
––
600–677
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
In the following Store If Greater Than or Equal To example, when T602 w the value
1538 the contact will turn on and output 014 will energize.
DirectSOFT Display
T602
K1538
Handheld Programmer Keystrokes
014
OUT
STR
SHF
TMR
1
SHF
5
6
3
0
8
OUT
SHF
1
4
ENT
2
ENT
ENT
In the following Store Not If Greater Than example, when T602 t the value in R404
the contact will turn on and output 020 will energize.
DirectSOFT Display
T602
R404
Handheld Programmer Keystrokes
020
OUT
STR
R
NOT
4
TMR
0
SHF
4
6
ENT
OUT
SHF
2
0
ENT
0
4
ENT
12–13
RLL PLUS Instruction Set
Comparative Boolean Instructions
Store Not If Greater
Than Counter
(STR NOT CNT)
DL330P Only
The Store Not If Greater Than instruction
begins a new rung or additional branch in
a rung with a normally closed
comparative counter contact. The
contact will be on if the specified counter
CT aaa t B bbbb.
Operand Data Type
D3–330 Range
CTaaa
B bbbb
CT aaa
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
CT
––
––
––
––
600–677
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
Counters
bbbb
In the following Store If Greater Than or Equal To example, when CT602 w the value
in R404 the contact will turn on and output 014 will energize.
DirectSOFT Display
CT602
R404
Handheld Programmer Keystrokes
014
OUT
STR
R
CNT
4
SHF
0
6
4
0
ENT
OUT
SHF
1
4
ENT
2
ENT
In the following Store Not If Greater Than example, when CT602 t the constant
value 4620 the contact will turn on and output 020 will energize.
DirectSOFT Display
CT602
K4620
Handheld Programmer Keystrokes
020
OUT
STR
SHF
NOT
4
CNT
6
SHF
2
6
0
OUT
SHF
2
0
ENT
0
ENT
2
ENT
RLLPLUS
Instructions
The Store If Greater Than or Equal To
instruction begins a new rung or
additional branch in a rung with a
normally open comparative counter
contact. The contact will be on if the
specified counter CT aaa w B bbbb.
Instruction Set
Store If Greater
Than or Equal
To Counter
(STR CNT)
DL330P Only
RLLPLUS
Instructions
Instruction Set
12–14
RLL PLUS Instruction Set
Comparative Boolean Instructions
Or If Greater Than
or Equal To Timer
(OR TMR)
DL330P Only
The Or If Greater Than or Equal To
instruction connects a normally open
comparative timer contact in parallel with
another contact. The contact will be on if
the specified timer T aaa w B bbbb.
Or Not If Greater
Than Timer
(OR NOT TMR)
DL330P Only
The Or Not If Greater Than instruction
connects a normally closed comparative
timer contact in parallel with another
contact. The contact will be on if the
specified timer T aaa t B bbbb.
Operand Data Type
D3–330 Range
T aaa
B bbbb
T aaa
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
Timers
T
––
––
––
––
600–677
bbbb
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
In the following Or If Greater Than or Equal To example, when input contact 001 is on
or T602 w the value 1234 the contact will turn on and output 014 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
014
001
OUT
T602
K1234
STR
OR
SHF
SHF
TMR
1
1
SHF
2
ENT
6
3
0
4
OUT
SHF
1
4
ENT
2
ENT
ENT
In the following Or Not If Greater Than example, when input contact 003 is on or
T602 the value in R404 the contact will turn on and output 020 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
020
003
OUT
T602
R404
STR
OR
R
SHF
NOT
4
3
TMR
0
ENT
SHF
4
6
ENT
OUT
SHF
2
0
ENT
0
2
ENT
12–15
RLL PLUS Instruction Set
Comparative Boolean Instructions
The Or If Greater Than or Equal To
instruction connects a normally open
comparative counter contact in parallel
with another contact. The contact will be
on if the specified counter CT aaa w B
bbbb.
Or Not If Greater
Than Counter
(OR NOT CNT)
DL330P Only
The Or Not If Greater Than instruction
connects a normally closed comparative
counter contact in parallel with another
contact. The contact will be on if the
specified counter CT aaa t B bbbb.
CT aaa
D3–330 Range
B bbbb
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
CT
––
––
––
––
600–677
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
Counters
bbbb
In the following Or If Greater Than or Equal To example, when input contact 007 is on
or CT602 w the value in R404 the contact will turn on and output 014 will energize.
DirectSOFT Display
Handheld Programmer Keystrokes
014
007
OUT
CT602
R404
STR
OR
R
SHF
CNT
4
7
SHF
0
ENT
6
4
0
ENT
OUT
SHF
1
4
ENT
2
ENT
In the following Or Not If Greater Than example, when input contact 003 is on or
CT602 t the constant value 4620 the contact will turn on and output 020 will
energize.
DirectSOFT Display
Handheld Programmer Keystrokes
020
003
OUT
CT602
K4620
STR
OR
SHF
SHF
NOT
4
3
CNT
6
ENT
SHF
2
6
0
OUT
SHF
2
0
ENT
0
ENT
2
ENT
RLLPLUS
Instructions
Operand Data Type
CT aaa
Instruction Set
Or If Greater Than
or Equal
To Counter
(OR CNT)
DL330P Only
RLLPLUS
Instructions
Instruction Set
12–16
RLL PLUS Instruction Set
Comparative Boolean Instructions
And If Greater
Than or Equal
To Timer
(AND TMR)
DL330P Only
The And If Greater Than or Equal To
instruction connects a normally open
comparative timer contact in series with
another contact. The contact will be on if
the specified timer T aaa w B bbbb.
And Not If Greater
Than Timer
(AND NOT TMR)
DL330P Only
The And Not If Greater Than instruction
connects a normally closed comparative
timer contact in series with another
contact. The contact will be on if the
specified timer T aaa t B bbbb.
Operand Data Type
D3–330 Range
T aaa
B bbbb
T aaa
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
Timers
T
––
––
––
––
600–677
bbbb
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
In the following And If Greater Than or Equal To example, when input contact 001 is
on and T602 w the value 1234 the contact will turn on and output 014 will energize.
DirectSOFT Display
001
Handheld Programmer Keystrokes
T602
K1234
014
OUT
STR
AND
SHF
SHF
TMR
1
1
SHF
2
ENT
6
3
0
4
OUT
SHF
1
4
ENT
2
ENT
ENT
In the following Store Not If Greater Than example, when input contact 003 is on and
T602 t the value in R404 the contact will turn on and output 020 will energize.
DirectSOFT Display
003
Handheld Programmer Keystrokes
T602
R404
020
OUT
STR
AND
R
SHF
NOT
4
3
TMR
0
ENT
SHF
4
6
ENT
OUT
SHF
2
0
ENT
0
2
ENT
12–17
RLL PLUS Instruction Set
Comparative Boolean Instructions
The And If Greater Than or Equal To
instruction connects a normally open
comparative counter contact in series
with another contact. The contact will be
on if the specified counter CT aaa w B
bbbb.
And Not If Greater
Than Counter
(AND NOT CNT)
DL330P Only
The And Not If Greater Than instruction
connects a normally closed comparative
counter contact in series with another
contact. The contact will be on if the
specified counter CT aaa t B bbbb.
D3–330 Range
B bbbb
CT aaa
B bbbb
D3–340 Range
D3–330P Range
B
aaa
bbbb
aaa
bbbb
aaa
CT
––
––
––
––
600–677
––
Data registers
R
––
––
––
––
––
400–577
Constant
K
––
––
––
––
––
0–9999
Counters
bbbb
In the following Or If Greater Than or Equal To example, when input contact 007 is on
and CT602 w the value in R404 the contact will turn on and output 014 will energize.
DirectSOFT Display
007
Handheld Programmer Keystrokes
CT602
R404
014
OUT
STR
AND
R
SHF
CNT
4
7
SHF
0
ENT
6
4
0
ENT
OUT
SHF
1
4
ENT
2
ENT
In the following Or Not If Greater Than example, when input contact 003 is on and
CT602 t the constant value 4620 the contact will turn on and output 020 energize.
DirectSOFT Display
003
Handheld Programmer Keystrokes
CT602
K4620
020
OUT
STR
AND
SHF
SHF
NOT
4
3
CNT
6
ENT
SHF
2
6
0
OUT
SHF
2
0
ENT
0
ENT
2
ENT
RLLPLUS
Instructions
Operand Data Type
CT aaa
Instruction Set
And If Greater
Than or Equal
To Counter
(AND CNT)
DL330P Only
12–18
RLL PLUS Instruction Set
Timer, Counter, and Shift Register Instructions
RLLPLUS
Instructions
Instruction Set
Timer, Counter, and Shift Register Instructions
Timer
(TMR)
DL330P Only
The Timer instruction used in the
DL330P CPU provides a single input
timer with a 0.1 second increment
(0–999.9 seconds) in the normal
operating mode, or a 0.01 second
increment (0–99.99 seconds) in the fast
timer mode with relay 770 on. The timer
will time up to the maximum value (999.9
or 99.99) as long as the input logic
remains on, once the input logic turns off
the timer will reset to 0. There is no timer
bit
associated
with
this
timer.
Comparative boolean instructions must
be used to monitor the current value of
this timer.
Operand Data Type
Time
TMR
D3–330 Range
D3–340 Range
aaa
aaa
aaa
––
––
600–677
T aaa
D3–330P Range
In the following Timer example when input contact 000 is on timer 600 will time up.
When input contact 000 goes off the timer will reset to zero. The comparative
instruction will monitor the current value of the timer and energize when the current
value of the timer is greater than or equal to the constant K30.
DirectSOFT Display
Handheld Programmer Keystrokes
000
T600
TMR
K30
T600
014
OUT
STR
TMR
STR
SHF
SHF
SHF
TMR
3
0
6
SHF
0
ENT
0
6
ENT
0
0
OUT
SHF
1
4
ENT
ENT
0
ENT
Timing Diagram
0
1
2
3
4
5
6
7
0
10
20
30
40
50
60
8
seconds
000
014
Current
Value
0
1/10 seconds
12–19
RLL PLUS Instruction Set
Timer, Counter, and Shift Register Instructions
The Counter instruction used in the
DL330P CPU provides a single input
counter with a counting range of 0–9999.
The counter will count up to 9999 and
stop. The Reset Counter instruction must
be used to reset this counter. There is no
counter bit associated with this counter,
so comparative boolean instructions
must be used to monitor the current value
of this counter.
Operand Data Type
D3–330 Range
D3–340 Range
D3–330P Range
aaa
aaa
aaa
––
––
600–677
CNT
C aaa
In the following Counter example when input contact 000 transitions from off to on
counter 600 will increment by one. When input contact 001 is on the Reset Counter
instruction will reset the counter to 0. The comparative instruction will monitor the
current value of the counter and energize when the current value of the
counter the constant K2.
DirectSOFT Display
Handheld Programmer Keystrokes
000
001
C600
STR
CNT
STR
RST
SHF
SHF
SHF
CNT
0
6
1
SHF
ENT
0
ENT
6
RST
STR
SHF
CNT
2
SHF
ENT
6
014
OUT
SHF
1
4
ENT
CNT
C600
C600
K2
0
ENT
0
0
ENT
0
2
ENT
OUT
0
1
2
3
4
5
6
7
8
0
014
Current
Value
RST
CT
1
2
3
4
0
RLLPLUS
Instructions
Counter
COUNT
Instruction Set
Counter
(CNT)
DL330P Only
Instruction Set
12–20
RLL PLUS Instruction Set
Timer, Counter, and Shift Register Instructions
Reset Counter
(RST)
DL330P Only
The Reset Counter instruction used in
the DL330P CPU provides a reset for the
counter instruction. One counter or a
range of counters can be reset.
Operand Data Type
RLLPLUS
Instructions
Counters
Optional
memory range
C aaa C bbb
RST
D3–330 Range
D3–340 Range
D3–330P Range
aaa
bbbb
aaa
bbbb
aaa
bbbb
––
––
––
––
600–677
600–677
In the following Reset Counter example when input contact 001 is on the Reset
Counter instruction will reset counter 600.
DirectSOFT Display
000
001
Handheld Programmer Keystrokes
CNT
C600
C600
RST
STR
CNT
STR
RST
SHF
SHF
SHF
CNT
0
6
1
SHF
ENT
0
ENT
6
0
ENT
0
0
ENT
12–21
RLL PLUS Instruction Set
Timer, Counter, and Shift Register Instructions
The Shift Register instruction shifts data
through a predefined number of control
relays. There are 77 control relays which
can be used for internal control relays or
shift register bits. There is no limit to the
number of shift registers which can be
used in a program, however the total
number of bits used cannot exceed 77.
The Shift Register has three input
contacts.
S Data — determines the value
(1 or 0) that will enter the register
S Clock — shifts the bits one position
on each low to high transition
S Reset —resets the Shift Register to
all zeros.
DATA
Instruction Set
Shift Register
(SR)
DL330P Only
SR
From aaa
CLOCK
To bbb
RESET
RLLPLUS
Instructions
With each off to on transition of the clock input, the bits which make up the shift
register block are shifted by one bit position and the status of the data input is placed
into the starting bit position of the shift register. The direction of the shift depends on
the entry in the From and To fields. From 160 to 167 would define a shift right block of
eight bits to be shifted from bit left to right. From 167 to 160 would define a shift left
block of eight bits, but would shift from right to left. The maximum size of the shift
register block is limited to 77 bits. There is no minimum block size.
Operand Data Type
Shift Register Bits
D3–330 Range
D3–340 Range
D3–330P Range
aaa
bbbb
aaa
bbbb
aaa
bbbb
––
––
––
––
160–174
200–277
160–174
200–277
Instruction Set
12–22
RLL PLUS Instruction Set
Timer, Counter, and Shift Register Instructions
In the following example, when the clock input transitions from low to high the value
in the Data input is placed in the first bit position of the shift register and the
successive successive bits are shifted to the right. When the Reset input transitions
from low to high the entire shift register is set to zeros.
DirectSOFT Display
000
Data Input
001
SR
From
160
To
167
Clock Input
002
RLLPLUS
Instructions
Handheld Programmer Keystrokes
Reset Input
Inputs on Successive Scans
Data
Clock
Reset
1
1
0
0
1
0
0
1
0
1
1
0
0
1
0
0
0
1
STR
STR
STR
SET
SHF
SHF
SHF
SHF
RST
1
0
1
2
SHF
6
6
ENT
0
determines the direction of the shift
Shift Register Bits
160
ENT
ENT
ENT
1
7
167
ENT
Maintenance and
Troubleshooting
In This Chapter. . . .
113
Ċ Maintenance
Ċ CPU Indicators
Ċ Power Indicator
Ċ RUN Indicator
Ċ CPU Indicator
Ċ BATT Indicator
Ċ Expansion Base Power
Ċ Testing Output Points
Ċ I/O Module Troubleshooting
Ċ Noise Troubleshooting
Ċ Machine Startup and Program Troubleshooting
13–2
Maintenance and Troubleshooting
Maintenance
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
The DL305 is a low maintenance system requiring only a few periodic checks to
ensure your system stays up and running without problems. There are two things
you should check periodically.
S Air quality (cabinet temperature, etc.)
S CPU battery
Air Quality
Maintenance
The quality of the air your system is exposed to can affect system performance. If
you have placed your system in an enclosure, check to se the ambient temperature
is not exceeding the operating specifications. If there are filters in the enclosure, you
should clean or replace them as necessary. A good guideline is to check your system
environment every one to two months and make sure the environment meets the
system operating specifications.
CPU Battery
Replacement
The CPU battery is used to retain the application program, data register, and
retentive memory types. The life expectancy of this battery is five years.
NOTE: Before replacing your CPU battery, you should back-up your application
program. This can be done by saving the program to hard/floppy disk on a personal
computer or using the handheld programmer along with a cassette tape recorder.
The CPU has a built-in capacitor to retain the memory for several minutes while the
battery is being replaced. Saving the program prior to replacing the battery is just an
added precaution.
WARNING: If the battery connector is not connected to the PC board or the battery is
left out of the system, the indicator light will not notify you of the error. Be sure the
battery is in place and the connector is firmly seated before you place the CPU back
into the base.
DL330, DL330P,
To replace the CPU battery:
DL340 CPU Battery
1. Turn power off to the system.
Replacement
2. Wait 60 seconds then remove the CPU. Do not short any connectors or
components on the CPU since it may alter the program memory.
3. Unlatch and tilt the clip covering the battery.
4. Pull the two wire battery connector from the PC board.
5. Remove the battery.
Maintenance and
Troubleshooting
WARNING: Do not attempt to recharge the battery or dispose of it by fire. The battery
may explode or release hazardous materials.
To install the CPU battery:
1. Plug the (keyed) two wire battery connector on the battery into the
connector on the PC board.
2. Push gently till the connector snaps closed
3. Slide the battery under the battery retaining clip till the battery is positioned
in the socket.
4. Push the retaining clip down over the battery snapping the clip over the
edge of the PC board.
5. Note the date the battery was changed.
13–3
Maintenance and Troubleshooting
Battery Removal
2) Unplug
connector
1) Push back
retaining clip
1) Push back
retaining clip
2) Unplug
connector
DL330
DL340
RAM/UVPROM
3) Remove battery
Part #D3–04–BATT
CPU Indicators
The DL305 CPUs have indicators on the front to help you diagnose problems with
the system. The table below gives a quick reference of potential problems with each
status indicator. Following the table will be a detailed analysis of each of these
indicator problems.
Potential Problems
Power (off)
1. Improper wiring
2. Power supply fuse is blown
3. Power supply/CPU is faulty
4. Other component such as an I/O module has power
supply shorted
5. Power budget exceeded for the base power supply
RUN
(will not come on)
1. CPU programming error
2. Key switch on handheld not in RUN mode
CPU (on)
1. CPU defective
2. Severe electrical noise interference
BATT (on)
CPU battery low
Maintenance and
Troubleshooting
Indicator Status
Maintenance and
Troubleshooting
3) Remove battery
Part #D3–04–BATT
13–4
Maintenance and Troubleshooting
Power Indicator
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Incorrect Base
Power
Power Supply
Blown Fuse
In general there are four reasons for the CPU power status LED to be OFF:
1. Power to the base is incorrect or is not applied.
2. The power supply has a blown fuse.
3. Base power supply is faulty.
4. Other component(s) have the power supply shut down. This problem could
be in the base or in the I/O modules.
5. Power budget for the base has been exceeded.
If the voltage to the power supply is not correct, the CPU may not operate properly or
may not operate at all. If this is a new installation, first check the terminal strip on the
local CPU base to insure the base is wired correctly. If it is wired for 110 VAC while
using 220 VAC the power supply in the base will be damaged. If this has happened,
you will need to replace your base. If the wiring is correctly installed for the AC or DC
you are using, you should measure the voltage at the terminal strip to insure it is
within specification for the base you are using. If the voltage is not correct shut down
the system and correct the problem.
The fuse for base power is located behind the power supply cover at the right side of
the base.
1.
2.
3.
4.
5.
Remove power from the base.
Remove the two slotted insert screws from the front cover.
Remove and replace the 2A 250V fuse. (4A 250V for the DC models)
Place the front cover back on the power supply and insert the screws.
Reapply power to the system.
Fuse (2A)
(4A for DC models)
Retaining
Screws
Power Supply
Cover Removed
13–5
Maintenance and Troubleshooting
Faulty Base Power There is not a good check to test for a faulty power supply other than substituting a
known good base to see if this corrects the problem. If you have experienced major
Supply
power surges, it is possible the base and power supply have been damaged. If you
suspect this is the cause of the power supply damage, a line conditioner which
removes damaging voltage spikes should be used in the future.
Device or Module
It is possible a faulty module or external device using the system power can shut
Causing the Power down the power supply.
Supply to
Shutdown
To test for a device causing this problem:
S Turn off power to the base.
S Disconnect all external devices (example Data Communication Unit,
Prom Writer Unit) from the CPU.
S Reapply power to the base.
Power Budget
Exceeded
This normally would not be the problem if the machine had been operating correctly
for a considerable amount of time prior to the indicator going off. Power budgeting
problems usually occur during system start-up when the PLC is under operation and
the inputs/outputs are requiring more current than the base power supply can
provide.
Maintenance and
Troubleshooting
If the Power LED does not operate normally the problem is most likely in one of the
modules in the base. To isolate which module is causing the problem remove one
module at a time till the Power LED operates normally. Follow the procedure below:
S Turn off power to the base.
S Remove a module from the base.
S Reapply power to the base.
WARNING: The PLC may reset if the power budget is exceeded. If there is any doubt
about the system power budget, please check it at this time. Exceeding the power
budget can cause unpredictable results which can cause damage and injury. Verify
the modules in the base operate within the power budget for the chosen base. You
can find additional information on power budget calculations by reviewing Chapter 4.
Maintenance and
Troubleshooting
13–6
Maintenance and Troubleshooting
RUN Indicator
If the CPU will not enter the run mode (the RUN indicator is off), the problem is
usually in the application program unless the CPU has a fatal error in which case the
CPU LED should be on.
Both of the programming devices, handheld programmer and PC programming
package, will return a error message and depending on the error may also
recommend an AUX function to run that will aid in further diagnosing the problem. A
complete list of error codes can be found in Appendix B.
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
CPU Indicator
If the CPU indicator is on, a fatal error has occurred in the CPU. Generally, this is not
a programming problem but an actual hardware failure. You can power cycle the
system to clear the error. If the error clears the system should be closely monitored
and every effort should be made to try to determine the cause of the problem. You will
find this problem is sometimes caused by high frequency electrical noise introduced
into the CPU from a outside source. Check your system grounding and install
electrical noise filters if the grounding is suspected. If power cycling the system does
not reset the error or if the problem returns replace the CPU. The CPU indicator
lights when the watchdog timer is not processed within 100 ms. The RUN output
from the power supply will also turn off.
BATT Indicator
If the BATT indicator is on, the CPU battery is low and needs to be replaced. The
battery voltage is continuously monitored while the system voltage is being supplied.
The detection circuit will be activated when the voltage drops to 2.5 volts and CPU
operation will still continue as normal. Internal relay 377 energizes when the BATT
indicator is on.
Procedures for how to replace the battery can be found earlier in this chapter.
13–7
Maintenance and Troubleshooting
Expansion Base Power
Because a expansion base contains no CPU the only method of determining if the
base power supply if functioning correctly is the run relay provided for that base. This
relay can be connected to an input point on the local CPU base or an external
warning indicator to monitor the expansion base power supply. If the power supply
fails, the run relay will open. The procedures for troubleshooting the expansion
bases are the same as a local CPU base. Refer to the Power Indicator section for
procedures.
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
13–8
Maintenance and Troubleshooting
Testing Output Points
Testing Output
Points
Output points can be set on or off in the DL305 series CPUs but they cannot be
forced in such a way which overrides ladder logic. If you want to do an I/O check out
independent of the application program follow the procedure below.
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Step
Action
1
If you are using the handheld programmer, change the keyswitch to
PRG, if you are using DirectSOFT select program mode.
2
Go to address 0 (handheld SHF NXT keys) .
3
Insert a “END” (handheld CLR SHF INS NXT keys) statement at address 0. (This will cause program execution to occur only at address 0
and prevent the application program from turning the I/O points on or
off).
4
Change to Run mode using the handheld programmer or DirectSOFT.
5
Use the programming device to set (turn on) or reset (turn off) the points
you wish to test.
6
When you finish testing I/O points go to address 0 (handheld SHF, NXT,
NXT keys) and delete the “END” statement (handheld keys DEL PRV)
The following diagram shows the Handheld Programmer keystrokes used to test an
output point.
WARNING: Depending on your application, forcing I/O points may cause
unpredictable machine operation that can result in a risk of personal injury or
equipment damage. Make sure you have taken all appropriate safety precautions
prior to testing any I/O points.
13–9
Maintenance and Troubleshooting
0
END
0
2
1
3
5
7
20
1
4
To monitor the output point on the handheld
programmer use the following keystrokes
SHF
2
0
MON
To turn on the output point use the following
keystrokes
SET
SHF
2
0
2
0
0
4
0
4
(20)
AND
OUT
MCS
ADR
1
5
1
5
(21)
OR
TMR
MCR
SHF
2
6
2
6
(22)
STR
CNT
SET
DATA
3
7
3
7
(23)
NOT
SR
RST
REG
0
4
0
4
(20)
AND
OUT
MCS
ADR
1
5
1
5
(21)
OR
TMR
MCR
SHF
2
6
2
6
(22)
STR
CNT
SET
DATA
3
7
3
7
(23)
NOT
SR
RST
REG
ENT
Maintenance and
Troubleshooting
SHF
When the MON command is used, the
LED display shows 16 consecutive
status points. The MON command has
designated this LED to be output
number 20.
ENT
To turn off the output point use the following
keystrokes
RST
Insert a END statement
at the beginning of the
Program. This disables
the remainder of the
program.
Maintenance and
Troubleshooting
13–10
Maintenance and Troubleshooting
I/O Module Troubleshooting
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Maintenance and
Troubleshooting
Important Notes
About I/O Module
Diagnostics
When troubleshooting the DL series I/O modules there are a few facts you should be
aware of. These facts may assist you in quickly correcting an I/O problem.
S The output modules cannot detect shorted or open output points. If you
suspect one or more points on a output module to be faulty, you should
measure the voltage drop from the common to the suspect point.
Remember when using a Digital Volt Meter, leakage current from an
output device such as a triac or a transistor must be considered. A point
which is off may appear to be on if no load is connected the point.
S If the I/O status indicators on the modules are logic side indicators. This
means the LED which indicates the on or off status reflects the status of
the point in respect to the CPU. On a output module the status
indicators could be operating normally while the actual output device
(transistor, triac etc.) could be damaged. With an input module if the
indicator LED is on, the input circuitry should be operating properly. To
verify proper functionality check to see the LED goes off when the input
signal is removed.
S Leakage current can be a problem when connecting field devices to I/O
modules. False input signals can be generated when the leakage
current of an output device is great enough to turn on the connected
input device. To correct this install a resistor in parallel with the input or
output of the circuit. The value of this resistor will depend on the amount
of leakage current and the voltage applied but usually a 10K to 20K ohm
resistor will work. Insure the wattage rating of the resistor is correct for
your application.
S The easiest method to determine if a module has failed is to replace it if
you have a spare. However, if you suspect another device to have
caused the failure in the module, that device may cause the same
failure in the replacement module as well. As a point of caution, you
may want to check devices or power supplies connected to the failed
module before replacing it with a spare module.
13–11
Maintenance and Troubleshooting
Noise Troubleshooting
Noise is one of the most difficult problems to diagnose. Electrical noise can enter a
system in many different ways and they fall into two categories, conducted or
radiated. It may be difficult to determine how the noise is entering the system but the
corrective actions for either of the types of noise problems are similar.
S Conducted noise is when the electrical interference is introduced into
the system by way of a attached wire, panel connection ,etc. It may
enter through an I/O module, a power supply connection, the
communication ground connection, or the chassis ground connection.
S Radiated noise is when the electrical interference is introduced into the
system without a direct electrical connection, much in the same manner
as radio waves.
Reducing
Electrical Noise
While electrical noise cannot be eliminated it can be reduced to a level that will not
affect the system.
S Most noise problems result from improper grounding of the system. A
good earth ground can be the single most effective way to correct noise
problems. If a ground is not available, install a ground rod as close to
the system as possible. Insure all ground wires are single point grounds
and are not daisy chained from one device to another. Ground metal
enclosures around the system. A loose wire is no more than a large
antenna waiting to introduce noise into the system; therefore, you
should tighten all connections in your system. Loose ground wires are
more susceptible to noise than the other wires in your system. Review
Chapter 2 Installation and Safety Guidelines if you have questions
regarding how to ground your system.
S Electrical noise can enter the system through the power source for the
CPU and I/O. Installing a isolation transformer for all AC sources can
correct this problem. DC sources should be well grounded good quality
supplies. Switching DC power supplies commonly generates more noise
than linear supplies do.
S Separate input wiring from output wiring. Never run I/O wiring close to
high voltage wiring.
Maintenance and
Troubleshooting
Electrical Noise
Problems
Maintenance and
Troubleshooting
13–12
Maintenance and Troubleshooting
Machine Startup and Program Troubleshooting
Even after our your best attempts at creating application programs, there are still
times when you need some assistance. This is especially true during machine
startup and program troubleshooting. With the DL305 CPUs there are a few things
that help make this task easier.
S Program Syntax Check—find problems before startup
S Pause Relay — monitor output status without enabling the actual output
points or field devices
S End Statement — move the End statement to disable parts of the
program.
Maintenance and
Troubleshooting
Syntax Check
Even though the Handheld Programmer and DirectSOFT provide error checking
during program entry, you may want to check a program that has been modified.
Both programming devices offer a way to check the program syntax. For example,
you can use check the program syntax from a Handheld Programmer, or you can
use the PLC Diagnostics menu option within DirectSOFT. This check will find a wide
variety of programming errors. The following example shows how to use the syntax
check with a Handheld Programmer.
001
CTR
601
K50
Counter Reset Leg is missing
Execute the syntax check
Maintenance and
Troubleshooting
CLR
SCH
E07
ADDRESS/DATA
ON/OFF
RUN BATT
PWR CPU
0
AND
1
OR
2
STR
3
NOT
4
OUT
5
TMR
6
CNT
7
SR
0
MCS
1
MCR
2
SET
3
RST
4
ADR
5
SHF
6
DATA
7
REG
0
MCS
1
MCR
2
SET
3
RST
4
ADR
5
SHF
6
DATA
7
REG
Press CLR to display the address where the error occurred
Maintenance and
Troubleshooting
CLR
0003
....
ADDRESS/DATA
ON/OFF
RUN BATT
PWR CPU
0
AND
1
OR
2
STR
3
NOT
4
OUT
5
TMR
6
CNT
7
SR
Correct the problem and continue running the Syntax check until the
E07 message no longer appears.
13–13
Maintenance and Troubleshooting
Using the Pause
Relay
Special Relay 376 provides a quick way to allow the inputs (or other logic) to operate
while disabling any output points used with an OUT instruction. The output image
register is still updated, but the output status is not written to the modules. For
example, you could make this conditional by adding an input contact or CR to control
the instruction with a switch or a programming device. Or, you could just add the
instruction without any conditions so the outputs would be disabled at all times.
PAUSE disables 020 and 021
Normal Program
000
002
020
376
PAUSE
001
003
004
021
010
000
002
001
003
020
004
021
010
END
END
WARNING: This special relay only inhibits those outputs referenced by the OUT
instruction. Output points referenced by the SET OUT instruction are not disabled.
END Instruction
Placement
If you need a way to quickly disable part of the program, just insert an END statement
prior to the portion that should be disabled. When the CPU encounters the END
statement, it assumes that is the end of the program. The following diagram shows
an example.
New END disables X10 and Y1
Normal Program
000
002
001
003
007
Maintenance and
Troubleshooting
By using this relay, you can still monitor the output status with a programming device.
The programming device will show that the output should be on, even though the
CPU does not actually update the I/O point.
020
004
000
002
001
003
020
004
021
END
007
021
END
Maintenance and
Troubleshooting
END
Quick Start Example
In This Appendix. . . .
1A
Ċ Step 1: Unpack the DL305 Equipment
Ċ Step 2: Configure the 5Ćslot Base as the Local CPU Base
Ċ Step 3: Install the CPU and I/O Modules
Ċ Step 4: Wire the I/O Modules to the Field Devices
Ċ Step 5: Remove the Terminal Strip Access Cover
Ċ Step 6: Connect the Power Wiring
Ċ Step 8: Connect the Handheld Programmer
Ċ Step 9: Connect the Power Source
Ċ Step 10: Enter the Example Program
A–2
Appendix B
DL405 Product Cross Ref.
Appendix A
Quick Start Example
Quick Start Example
Now, you have the material necessary to become confident and productive with the
DL305. The rest of this chapter is dedicated to laying out all of the pieces necessary
to put together a complete system. It will highlight where specific chapters apply to
questions you will typically have during your system configuration. This example is
not intended to tell you everything you need to start-up your system, warnings and
helpful tips are in the rest of the manual. It is only intended to give you a general
picture of what you will need to do to get your system powered-up.
Step 1: Unpack the DL305 Equipment
Unpack the DL305 equipment and verify you have the parts necessary to build your
system. The minimum parts you will need are:
1 5-slot base
1 Handheld programmer
1 CPU
1 D3–08ND2 discrete input module or D3–08SIM input simulator (If you use any
other discrete input module it will be necessary for you to look up the wiring
information for the module you are using.)
1 D3–08TD2 discrete output module (Any of the DL305 output modules can be
used for this example since we will just be looking at the status indicators.)
1 Power cord (which you supply)
A–3
Quick Start Example
Step 2 – the 5 slot base must be configured for base 1 (the base where the CPU
resides). Identification of this base as the local CPU base is made by placing the
base toggle switch in the 1,3 position as indicated below the toggle switch. Refer to
Chapter 4 for more information on base switches.
BASE
1,3 2
Insert the CPU and I/O modules into the base as shown below. The CPU must go into
the far right side of the base in the position next to the Power Supply.
When inserting components into the base, align the PC board(s) of the module with
the grooves on the top and bottom of the base. Push the module straight into the
base until it is firmly seated in the backplane connector.
Placement of 8 point discrete and relay modules are not critical and may go in any
slot in the local CPU base. Limiting factors for other types of modules are discussed
in Chapter 4. You must also make sure you do not exceed the power budget for each
base in your system configuration. Power budgeting is also discussed in Chapter 4.
D3-08TD2 D3-08ND2
0
4 0
4
1
5 1
5
2
6 2
6
3
7 3
7
Output
Input
CPU
Module
Module
I/O Address I/O Address
010-017
000-007
Appendix B
DL405 Product Cross Ref.
Step 3: Install the CPU and I/O Modules
Appendix A
Quick Start Example
Step 2: Configure the 5-slot Base as the Local CPU Base
A–4
Appendix B
DL405 Product Cross Ref.
Appendix A
Quick Start Example
Quick Start Example
Step 4: Wire the I/O Modules to the Field Devices
This step is not necessary if you are using an input simulator module. The toggle
switch provides an external control point where you can interact with your system.
Wire the I/O module to the field device prior to applying power to the system. (This
will ensure that a point is not accidentally turned on during the wiring operation.) Wire
the discrete input module as shown below. If you are using a module other than the
D3–08ND2 you will need to refer to Chapter 6, Discrete Input Modules, for wiring
information. Chapter 2, Installation and Safety Guidelines provides a list of I/O wiring
guidelines. In the example below there is a discrete input module and a discrete
output module in the base. The discrete input module is connected to an external
switch.
D3-08TD2 D3-08ND2
4
0
4 0
5
1
5 1
6
2
6 2
7
3
7 3
Note: the switch must be wired
to input point 0 for our example.
Output
Module
Toggle
Switch
Step 5: Remove the Terminal Strip Access Cover
Remove the base terminal strip cover.
D3-08TD2
0
4
1
5
2
6
3
7
D3-08ND2
0
4
1
5
2
6
3
7
Base
Terminal
Strip
A–5
Quick Start Example
If you are using 110VAC to power the base you must wire to the top 2 designated
terminals. If you are using a 220VAC power source then you wire to the top and third
designated terminals. You can find a detailed explanation of the terminal block on the
bases in Chapter 2, Installation and Safety Guidelines.
Wire the appropriate power connections to the base as shown below. Once wiring is
completed insert the base terminal strip cover.
AC Line
110VAC
Wiring
220VAC
Wiring
AC Neutral
D3-08TD2
0
4
1
5
2
6
3
7
D3-08ND2
0
4
1
5
2
6
3
7
110VAC wiring is shown
Appendix B
DL405 Product Cross Ref.
WARNING: To minimize the risk of electrical shock, make sure the power source is
disconnected before you connect the power wiring. Also, make sure you connect the
power wiring correctly. The unit will be damaged if you connect 220 VAC to the
115 VAC terminals.
Appendix A
Quick Start Example
Step 6: Connect the Power Wiring
A–6
Appendix B
DL405 Product Cross Ref.
Appendix A
Quick Start Example
Quick Start Example
Step 8: Connect the Handheld Programmer
Put the handheld programmer’s key switch in the PRG position. Attach the handheld
programmer directly to the front of the CPU making sure the port on the back of the
programmer aligns properly with the port on the CPU and the programmer’s latches
connect with the slots in the base power supply. Apply power to the base. LEDs on
the programmer will display indicating a good connection.
Handheld
Programmer
Key switch in PRG mode
A–7
Quick Start Example
Apply power to the system and ensure the CPU PWR indicator is on. If the indicator
is not on, disconnect the system power and check the wiring connections. If the
wiring connections are correct, refer to Chapter 13 for additional assistance.
WARNING: To minimize the risk of electrical shock, make sure the power source is
disconnected before you check the power wiring.
The switch wired to the input module and status indicator (LED) on the face of the
output module will be the two I/O points used in the simple rung of ladder logic you
will enter. The following diagram shows the ladder logic representation of the the
program which will be entered on the handheld programmer.
output
010
input
000
Enter the key sequences on the handheld programmer as shown below.
CLR
SHF
3
4
STR
SHF
0
ENT
OUT
SHF
1
0
8
ENT
DEL
NXT
(Clears the CPU memory)
(Stores input 000)
(Outputs an on or off state to address 010)
With the programmer’s key switch in the PRG position, open and close the field input
switch and observe that only the 0 LED on the input module turns on and off. This
indicates the input signal is being received.
Now put the programmers key switch in the run position. The RUN LED on the
programer’s display will turn on. Open and close the field input switch and observe
the 0 LED on the face of the input module and the 0 LED on the face of the output
module both turn on and off. This indicates the program is accurately reflecting the
signals which it is receiving from the field device.
Appendix B
DL405 Product Cross Ref.
Step 10: Enter the Example Program
Appendix A
Quick Start Example
Step 9: Connect the Power Source
DL305 Error Codes
In This Appendix. . . .
Ċ Error Code Table
1B
B–2
Appendix B
DL305 Error Codes
Appendix A
DL305 Error Codes
DL305 Error Codes
DL305 Error Code
Description
E01
Invalid Keystrokes
Invalid keystroke or series of keystrokes entered into the handheld programmer.
Refer to the DL305 Handheld Programmer manual for assistance in the operation you
are trying to perform.
E02
An I/O point dedicated to an input module has been used as an output in the
Input Point Programmed application program. Change the I/O reference number in the program which is
as Output
causing the error.
E03
Stack Overflow
The maximum number of instructions utilizing the internal stack has exceeded eight.
These instructions can be a combination of AND STRs, OR STRs and MCS/MCR
groups. Reduce the number of these instructions which are pushed onto the stack at
one time.
E05 (NON Stage)
Duplicate Coil
Reference
Two or more output coils have the same data type and number. Change the duplicate
coil to correct the error. Duplicate coil references are valid with the SET instruction.
E05 will be generated at the address of the second duplicated output.
E05 (Stage)
Duplicate Stage
Reference
Two or more Stages have the same reference number. Change the duplicate Stage
number to correct the error. E05 will be generated at the address of the second
duplicated stage number.
E06
MCR/MCS Mismatch
The number of MCR instructions do not match the number of MCS instructions. Each
MCR must have an accompanying MCS.
E07
Missing CNT or SR
Contact
A required input contact is missing from a CNT (example, RESET input) or a SR
instruction.
E08
Invalid Data Values
The required data values for a TMR, CNT or SR are missing or incorrect. Refer to the
DL305 Programming Manual Set for details on these instructions.
E09
Incomplete Program
Rung
The rung does not terminate with an output as required. Program an output to
terminate the rung properly.
E11
Program Full
There is no available program addresses in memory. Reduce the size of the program.
E21
Program Memory Parity
Error
A parity error has occurred in the program memory of the CPU. Clear the memory
and reload the program. If the error reoccurs replace the CPU. Severe electrical noise
will cause this problem.
E22
Password Error
The password stored in the CPU is invalid. Press the “CLR” key twice on the
handheld programmer and the password will be reset to 0000. Re-enter the password
if required.
E25
A mismatch was found when a compare was performed on the program in CPU
Tape/Program Mismatch memory and the program stored on tape.
E28
Volume Incorrect On
Tape Device.
The volume is incorrect on the tape player being used to load the program to the
CPU. Adjust the volume and retry the operation. Refer to the DL305 Handheld
Programmer manual for details on tape operation.
E31
RAM Limit Exceeded
The application program required more RAM for execution than is available. Reduce
the length of the program.
E377
EEPROM Write Error
Write of EEPROM failed because EEPROM is write protected (remove write protect
jumper), the EEPROM is bad (replace EEPROM), or UVPROM is installed instead of
EEPROM (install EEPROM).
E99
Instruction Not Found
A search was performed and the specified instruction was not found in the application
program.
Instruction
Execution Times
In This Appendix. . . .
Ċ Introduction
Ċ DL330 Instruction Execution Times
Ċ DL330P Instruction Execution Times
Ċ DL340 Instruction Execution Times
1C
C–2
Introduction
This appendix contains several tables that provide the instruction execution times
for the DL330, DL330P, and DL340 CPUs. One thing you will notice is that many of
the execution times depend on the type of data being used with the instruction. For
example, some of the instructions have different execution times if you use a regular
data register instead of a constant.
You’ll also notice that some of the data instructions (such as DSTR) require differing
amounts of execution time depending on the type of data. There are generally three
options.
S Data Registers
S I/O Data Registers
S Constants
The following paragraphs may help you understand the differences between the
register types.
Data Registers
Appendix D
Inst. Execution Times
Appendix C
Inst. Execution Times
Appendix B
DL405 Error Codes
Appendix A
DL405 Error Codes
Instruction Execution Times
Some data registers are primarily used to hold variable data and are considered true
data registers. For example, the registers that store the timer or counter current
values, or just regular variable data would be considered as a data register. Don’t
think that you cannot load a bit pattern into these types of registers, you can. It’s just
that their primary use is as a data register. The following locations are considered as
data registers.
Type of Data
I/O Data Registers
DL330
DL330P
DL340
Timer / Counter Current Values
R600 – R677
R600 – R677
R600 – R677
User Data Words
R400 – R563
R400 – R563
R400 – R563
R700 – R767
You may recall that the I/O points are automatically mapped into data register
locations. The following locations that contain this data are considered I/O registers
and will take longer to execute with most instructions.
Type of Data
I/O Points
DL330
R000 – R016*
R070 – R 076
DL330P
R000 – R016*
R070 – R076
DL340
R000 – R017*
R070 – R076
NOTE: 160 – 167 can be used as I/O in a DL330 or DL330P CPU under certain
conditions. 160 – 177 can be used as I/O in a DL340 CPU under certain conditions.
You should consult Chapter 4 to determine which configurations allow the use of
these points.
These points are normally used as control relays. You cannot use them as both
control relays and as I/O points. Also, if you use these points as I/O, you cannot
access these I/O points as a Data Register reference.
C–3
Instruction Execution Times
Some of the instructions can have more than one parameter so the table shows
execution times that depend on the amount and type of parameters. For example,
the when you use the SET instruction to set a range of stages in a DL330P CPU, the
execution time depends on how many stages are being set by the instruction.
Two Locations Available
X0
X1
S10 – S17
SET
Appendix A
DL405 Error Codes
How to Read the
Tables
C0
Stage Instruction
Stage Instruction not activated by a Jump
instruction
(ex. power flow)
SET SG
26.3 + 13.1ms x (n–1)
18.8 ms
Does not apply
RST SG
26.3 + 13.1ms x (n–1)
18.8 ms
Does not apply
Appendix C
Inst. Execution Times
Execution depends
on numbers of
locations and types
of data used
Appendix B
DL405 Error Codes
Instruction
Appendix D
Inst. Execution Times
C–4
DL330 Instruction Execution Times
Basic Input
Instructions
Appendix D
Inst. Execution Times
Appendix C
Inst. Execution Times
Appendix B
DL405 Error Codes
Appendix A
DL405 Error Codes
Instruction Execution Times
Output Type
Instructions
Instruction
Execute
Disabled by MCR
STR
6.6 ms
N/A
STR NOT
9.1 ms
N/A
AND
5.3 ms
N/A
AND NOT
8.4 ms
N/A
OR
6.6 ms
N/A
OR NOT
9.1 ms
N/A
STR T/C
10.3 ms
N/A
STR NOT T/C
12.8 ms
N/A
AND T/C
5.3 ms
N/A
AND NOT T/C
8.4 ms
N/A
OR T/C
6.6 ms
N/A
OR NOT T/C
9.1 ms
N/A
STR (Comparative Contact)
50.9 ms
N/A
STR NOT (Comparative Contact)
61.5 ms
N/A
AND (Comparative Contact)
59.1 ms
6.2 ms
AND NOT (Comparative Contact)
60.3 ms
6.2 ms
OR (Comparative Contact)
60.3 ms
6.2 ms
OR NOT (Comparative Contact)
62.5 ms
6.2 ms
AND STR
3.8 ms
N/A
OR STR
3.8 ms
N/A
MCR
5.0 ms
N/A
MCS
3.0 ms
N/A
Instruction
Execute
Not Executed
OUT
7.5 ms
7.5 ms
SET OUT
10.0 ms
10.0 ms
SET
17.5 ms
17.5 ms
RST
9.3 ms
9.3 ms
SET OUT RST
19.3 ms
19.3 ms
C–5
Instruction Execution Times
Instruction
Execute w/
Constant
Execute w/
Data Register
Execute w/
I/O Register
Not
Executed
TMR
90.9 ms
458.8 ms
700.0 ms
27.1 ms
CNT
92.9 ms
465.6 ms
706.8 ms
27.1 ms
SR
64.1 ms+16.6 ms times ( # of shifts)
Data Operations
Instruction
Execute w/
Data
Register
Execute w/
I/O Register
53.1 ms
Execute w/
Constant
Appendix A
DL405 Error Codes
Timer, Counters,
and Shift Registers
Not
Executed
321.9 ms
14.3 ms
6.3 ms
DSTR1
F51
63.8 ms
140.9 ms
N/A
6.3 ms
DSTR2
F52
95.0 ms
172.2 ms
N/A
6.3 ms
DSTR3
F53
96.6 ms
173.8 ms
N/A
6.3 ms
DSTR5
F55
N/A
326.2 ms
N/A
6.3 ms
DOUT
F60
52.6 ms
329.4 ms
N/A
6.3 ms
DOUT1
F61
39.1 ms
160.1 ms
N/A
6.3 ms
DOUT2
F62
39.8 ms
116.0 ms
N/A
6.3 ms
DOUT3
F63
55.0 ms
108.1 ms
N/A
6.3 ms
DOUT5
F65
N/A
358.3 ms
N/A
6.3 ms
CMP<=>
F70
112.8 ms
354.0 ms
57.0 ms
6.3 ms
ADD
F71
456.8 ms
698.0 ms
262.0 ms
6.3 ms
SUB
F72
315.8 ms
557.0 ms
275.0 ms
6.3 ms
MUL
F73
290–2664 ms
497–2851 ms
223–2576 ms
6.3 ms
DIV
F74
742–2645 ms
1218–2851ms
720–2557 ms
6.3 ms
DAND
F75
103.7 ms
345.0 ms
55.6 ms
6.3 ms
DOR
F76
103.7 ms
345.0 ms
55.6 ms
6.3 ms
SHFR
F80
216 ms+13.4 ms times ( # of shifts)
6.3 ms
SHFL
F81
220 ms+13.4 ms times ( # of shifts)
6.3 ms
DECO
F82
56.3 ms
N/A
N/A
6.3 ms
ENCO
F83
282.0 ms
N/A
N/A
6.3 ms
INV
F84
30.0 ms
N/A
N/A
6.3 ms
BIN
F85
412.2 ms
N/A
N/A
6.3 ms
BCD
F86
746.0 ms
N/A
N/A
6.3 ms
FAULT
F20
114.0 ms
355.3 ms
72.2 ms
6.3 ms
Appendix D
Inst. Execution Times
80.7 ms
Appendix C
Inst. Execution Times
F50
Appendix B
DL405 Error Codes
DSTR
C–6
DL330P Instruction Execution Times
Basic Input
Instructions
Appendix C
Inst. Execution Times
Appendix D
Inst. Execution Times
I/O, Control Relay
Instruction
Executed
*
Appendix B
DL405 Error Codes
Appendix A
DL405 Error Codes
Instruction Execution Times
**
Timer, Counters,
and Shift Registers
Not
Executed
*
Not
Executed
Executed
**
*
Timer / Counter
**
*
Executed
**
*
Not
Executed
**
*
STR
28.4 / 31.4ms
21.3 ms
25.6 / 30.9ms
22.2 ms
121.3/117.8ms
28.4 ms
STR NOT
28.4 / 31.4ms
21.3 ms
25.6 / 30.9ms
22.2 ms
121.3/117.8ms
28.4 ms
AND
13.4 / 20.0ms
13.4 / 20.0ms
13.4 / 20.0ms
13.4 / 20.0ms
123.1/119.6ms
20.3 ms
AND NOT
18.1 / 21.6ms
10.3 ms
18.1 / 21.6ms
10.3 ms
123.1/119.6ms
20.3 ms
OR
21.8 / 25.3ms
14.7 ms
21.8 / 25.3ms
14.7 ms
123.1/119.6ms
20.3 ms
OR NOT
20.6 / 24.1ms
14.7 ms
20.6 / 24.1ms
14.7 ms
123.1/119.6ms
20.3 ms
*
Execution time when data type is ON. For example, STR 000 takes 28.4 ms if point 000 is on.
**
Execution time when data type is OFF. For example, STR 000 takes 31.4 ms if point 000 is off.
Instruction
Output Type
Instructions
Stage
Executed
Not Executed
AND STR
25.9 ms
22.8 ms
OR STR
25.9 ms
22.8 ms
Instruction
Execute
Not Executed
OUT
20.6 ms
20.6 ms
SET OUT
24.3 ms
16.6 ms
SET
24.3 ms
16.6 ms
RST
24.3 ms
16.6 ms
SET OUT RST
33.8 ms
29.4 ms
Instruction
Execute
Not Executed
TMR
92.8 ms
50.9 ms
CNT
97.5 ms
46.3 ms
RST CNT
25.9 ms
16.6 ms
SR
75.9 +11.5ms x (# of shifts)
41.9 ms
**
C–7
Instruction Execution Times
Stage Instruction
Instruction
Executed
Stage Instruction not activated by a Jump
instruction
(ex. power flow)
Not Executed
Executed
Not Executed
35.3 ms
20.0 ms
50.9 ms
30.6 ms
SG
35.3 ms
20.0 ms
50.9 ms
30.6 ms
JMP
28.4 ms
16.6 ms
Does not apply
NJMP
40.3 ms
28.4 ms
Does not apply
SET SG
26.3 + 13.1ms x (n–1)
18.8 ms
Does not apply
RST SG
26.3 + 13.1ms x (n–1)
18.8 ms
Does not apply
Data Operation
Instructions
Instruction
Execute w/
Data
Register
Execute w/
I/O Register
Execute w/
Constant
Not
Executed
80.7 ms
321.9 ms
14.3 ms
6.3 ms
DSTR1
F51
63.8 ms
140.9 ms
N/A
6.3 ms
DSTR2
F52
95.0 ms
172.2 ms
N/A
6.3 ms
DSTR3
F53
96.6 ms
173.8 ms
N/A
6.3 ms
DSTR5
F55
N/A
326.2 ms
N/A
6.3 ms
DOUT
F60
52.6 ms
329.4 ms
N/A
6.3 ms
DOUT1
F61
39.1 ms
160.1 ms
N/A
6.3 ms
DOUT2
F62
39.8 ms
116.0 ms
N/A
6.3 ms
DOUT3
F63
55.0 ms
108.1 ms
N/A
6.3 ms
DOUT5
F65
N/A
358.3 ms
N/A
6.3 ms
CMP<=>
F70
112.8 ms
354.0 ms
57.0 ms
6.3 ms
ADD
F71
456.8 ms
698.0 ms
262.0 ms
6.3 ms
SUB
F72
315.8 ms
557.0 ms
275.0 ms
6.3 ms
MUL
F73
290–2664 ms
497–2851 ms
223–2576 ms
6.3 ms
DIV
F74
742–2645 ms
1218–2851ms
720–2557 ms
6.3 ms
DAND
F75
103.7 ms
345.0 ms
55.6 ms
6.3 ms
DOR
F76
103.7 ms
345.0 ms
55.6 ms
6.3 ms
SHFR
F80
216 ms+13.4 ms times ( # of shifts)
6.3 ms
SHFL
F81
220 ms+13.4 ms times ( # of shifts)
6.3 ms
DECO
F82
56.3 ms
N/A
N/A
6.3 ms
ENCO
F83
282.0 ms
N/A
N/A
6.3 ms
INV
F84
30.0 ms
N/A
N/A
6.3 ms
BIN
F85
412.2 ms
N/A
N/A
6.3 ms
BCD
F86
746.0 ms
N/A
N/A
6.3 ms
FAULT
F20
114.0 ms
355.3 ms
72.2 ms
6.3 ms
Appendix D
Inst. Execution Times
F50
Appendix C
Inst. Execution Times
DSTR
Appendix B
DL405 Error Codes
ISG
Appendix A
DL405 Error Codes
Stage Instructions
C–8
DL340 Instruction Execution Times
Basic Input
Instructions
Appendix D
Inst. Execution Times
Appendix C
Inst. Execution Times
Appendix B
DL405 Error Codes
Appendix A
DL405 Error Codes
Instruction Execution Times
Instruction
Disabled by MCR
STR
0.875 ms
N/A
STR NOT
1.750 ms
N/A
AND
0.625 ms
N/A
AND NOT
1.5 ms
N/A
OR
1.125 ms
N/A
OR NOT
1.75 ms
N/A
STR T/C
0.875 ms
N/A
STR NOT T/C
1.75 ms
N/A
AND T/C
0.625 ms
N/A
AND NOT T/C
1.5 ms
N/A
OR T/C
1.125 ms
N/A
OR NOT T/C
1.75 ms
N/A
AND STR
0.75 ms
N/A
OR STR
0.75 ms
N/A
MCR
0.75 ms
N/A
MCS
1.125 ms
N/A
Comparative
Contacts
Output Type
Instructions
Execute
Instructions
Execute w/
Data
Register
Execute w/
I/O Register
Execute w/
Constant
RAM
Not
Executed
EE / UV
STR
56.8 ms
95.0 ms
15.6 ms
15.6 ms
N/ A
STR NOT
56.8 ms
96.5 ms
15.6 ms
15.6 ms
N/A
AND
56.8 ms
95.0 ms
15.0 ms
15.0 ms
1.4 ms
AND NOT
56.8 ms
96.5 ms
15.6 ms
15.6 ms
1.4 ms
OR
56.8 ms
94.0 ms
15.6 ms
15.6 ms
1.4 ms
OR NOT
56.8 ms
94.0 ms
16.2 ms
16.2 ms
1.4 ms
Instruction
Execute
Not Executed
OUT
1.188 ms
1.188 ms
SET OUT
1.563 ms
1.563 ms
SET
1.625 ms
1.4 ms
RST
1.625 ms
1.4 ms
SET OUT RST
7.5 ms
7.125 ms
C–9
Instruction Execution Times
Instructions
Execute w/
Data
Register
Execute w/
Constant
Execute w/
I/O Register
RAM
Not
Executed
EE / UV
TMR
68.1 ms
113.8 ms
22.5 ms
22.5 ms
15.7 ms
CNT
67.3 ms
97.9 ms
22.5 ms
22.5 ms
25.6 ms
SR
21.8 ms+3.8 ms times ( # of shifts)
Data Operation
Instructions
Instruction
Execute w/
Data
Register
Execute w/
I/O Register
8.3 ms
Execute w/
Constant
Appendix A
DL405 Error Codes
Timer, Counters,
and Shift Registers
Not
Executed
60.6 ms
10.6 ms
1.4 ms
DSTR1
F51
24.3 ms
39.4 ms
N/A
1.4 ms
DSTR2
F52
25.0 ms
40.6 ms
N/A
1.4 ms
DSTR3
F53
96.6 ms
39.4 ms
N/A
1.4 ms
DSTR5
F55
N/A
76.8 ms
N/A
1.4 ms
DOUT
F60
18.8 ms
53.8 ms
N/A
1.4 ms
DOUT1
F61
13.1 ms
33.1 ms
N/A
1.4 ms
DOUT2
F62
16.3 ms
23.1 ms
N/A
1.4 ms
DOUT3
F63
15.6 ms
23.1 ms
N/A
1.4 ms
DOUT5
F65
N/A
59.3 ms
N/A
1.4 ms
CMP<=>
F70
30.0 ms
61.8 ms
15.6 ms
1.4 ms
ADD
F71
77.5 ms
108.0 ms
63.0 ms
1.4 ms
SUB
F72
70.6 ms
101.8 ms
57.0 ms
1.4 ms
MUL
F73
71.8 – 540.0 ms
102.5 – 571.2 ms
58.7 – 526.8 ms
1.4 ms
DIV
F74
73.7 – 568.1 ms
104.3 – 598.7 ms
58.7 – 553.1 ms
1.4 ms
DAND
F75
29.3 ms
60.0 ms
15.6 ms
1.4 ms
DOR
F76
31.2 ms
62.5 ms
15.6 ms
1.4 ms
SHFR
F80
18.1 ms+2.5 ms times ( # of shifts)
SHFL
F81
18.1 ms+2.5 ms times ( # of shifts)
DECO
F82
ENCO
F83
INV
BIN
1.4 ms
1.4 ms
15.6 ms
N/A
N/A
1.4 ms
47.5 ms
N/A
N/A
1.4 ms
F84
6.8 ms
N/A
N/A
1.4 ms
F85
48.1 ms
N/A
N/A
1.4 ms
BCD
F86
88.7 – 326.0 ms
N/A
N/A
1.4 ms
FAULT
F20
28.8 ms
60.1 ms
15.0 ms
1.4 ms
Appendix D
Inst. Execution Times
29.4 ms
Appendix C
Inst. Execution Times
F50
Appendix B
DL405 Error Codes
DSTR
DL305
Product Weight
Tables
In This Appendix. . . .
Ċ Product Weight Table
1D
D–2
DL305 Product Weights
Product Weight Table
CPUs
Weight
D3–330
6.3 oz. (178g)
D3–330P
6.3 oz. (178g)
D3–340
5.2 oz. (146g)
Specialty CPUs
Appendix C
DL305 Product Weights
Weight
Communications
and Networking
Weight
D3–08TD1
4.2 oz. (120g)
D3–232–DCU
15.0 oz. (427g)
D3–08TD2
4.2 oz. (120g)
D3–422–DCU
14.8 oz. (419g)
D3–16TD1–1
5.6 oz. (160g)
D3–16TD1–2
5.6 oz. (160g)
ASCII BASIC
Modules
7.1 oz. (210g)
F3–OMUX–1
6.4 oz. (182g)
D3–16TD2
F3–OMUX–2
6.4 oz. (182g)
F3–PMUX
3.7 oz. (104g)
AC Output
Modules
F3–RTU
6.7 oz. (190g)
Bases
Appendix D
Product Weight Table
DC Output
Modules
D3–05B
34.0 oz. (964g)
D3–05BDC
34.0 oz.(964g)
D3–08B
44.2 oz.
(1253g)
D3–10B
50.5 oz.
(1432g)
DC Input Modules
D3–08ND2
4.2 oz. (120g)
D3–16ND2–1
6.3 oz. (180g)
D3–16ND2–2
5.3 oz. (150g)
D3–16ND2F
6.3 oz. (180g)
F3–16ND3F
5.4 oz. (153g)
AC Input Modules
D3–04TAS
6.4 oz. (180g)
D3–08TAS
N/A at press time
D3–08TA–1
7.4 oz. (210g)
D3–08TA–2
6.4 oz. (180g)
F3–16TA–1
6.2 oz. (176g)
D3–16TA–2
7.2 oz. (210g)
5.1 oz. (146g)
F3–AB128–T
6.2 oz. (175g)
F3–AB128
5.4 oz. (154g)
Specialty
Modules
D3–08SIM
3.0 oz. (85g)
D3–HSC
5.2 oz. (147g)
D3–PWU
13.0 oz. (368g)
D3–FILL
1oz. (30g)
Programming
Relay Output
Modules
D3–08TR
7 oz. (200g)
F3–08TRS–1
8.9 oz. (252g)
F3–08TRS–2
9 oz. (255g)
D3–16TR
8.5 oz. (248g)
Analog Modules
D3–04AD
7 oz. (200g)
F3–04ADS
6.9 oz. (195g)
F3–08AD
5.5 oz. (154g)
D3–08NA–1
5 oz. (140g)
F3–08TEMP
5.2 oz. (147g)
D3–08NA–2
5 oz. (140g)
F3–08THM–n
6 oz. (170g)
D3–16NA
6.4 oz. (180g)
F3–16AD
5.4 oz. (152g)
D3–02DA
7 oz. (200g)
F3–04DA–1
6.3 oz. (180g)
AC/DC Input
Modules
F3–AB128–R
D3–08NE3
4.2 oz. (120g)
F3–04DA–2
6.3 oz. (180g)
D3–16NE3
6 oz. (170g)
F3–04DAS
7 oz. (200g)
D3–HP
7.1 oz. (202g)
D3–HPP
7.2 oz. (204g)
1
Index
A
Accumulator
load and output instructions, 11–25
logic instructions, 11–30
operations, 9–10–9–13
shifting bits in, 11–42
Adding Numbers, 11–34
Agency Approvals, 2–7
Auxiliary Functions, 3–17
C
Communication, instructions, 11–52
Communication Port
data format, 3–13
DL340, 3–12
DL340 port diagrams, 3–13
master / slave selection, 3–13
response delay time, 3–13
Comparative Boolean Instructions, 11–19–11–21
in stages, 10–18, 12–12–12–19
Configuration, I/O examples, 4–17–4–25
Control Relays, 8–21
B
Bases
expansion, 4–14
I/O supported, 4–8
installation spacing, 2–4
installing modules, 2–10
local, 4–14
mounting dimensions, 2–10, 4–8
power budget, 4–26–4–31
power specifications, 2–6
power supply schematics, 4–11
power wiring, 2–11
run relay, 4–12
setting base jumpers, 4–16
setting switches, 4–16
specifications, 4–10–4–13
Battery, replacement, 3–14, 13–2
Baud Rate, 3–12
Bit Operation Instructions, 11–42
Boolean Instructions, 9–3, 11–4–11–18
Converting Number Formats, 11–44–11–49
Counters, 8–22, 9–9, 11–23
in stages, 10–15, 12–19
CPU
auxiliary functions, 3–17
battery, 3–14
clearing memory, 3–21
features, 3–2
indicators, 13–3–13–6
memory options, 3–5
mode setting, 8–4
modes of operation, 3–20, 8–6–8–8
operating system, 8–3
scan time, 8–16
setup
DL330/DL340P, 3–9
DL340, 3–10
DL340 network address, 3–12
setup and system functions, 3–16
specifications, 3–3
switches
DL330/DL330P, 3–9
DL340, 3–10–3–13
Index–2
D
Data Instructions, 9–12–9–47
in stages, 10–17
Data Registers, 8–23
Derating Characteristics, 5–10
Dimensions, 2–7
Discrete Input
specifications, 6–4–6–15
terminology, 6–2
Discrete Memory, 8–19
Discrete Output
specifications, 7–6–7–20
terminology, 7–2
Dividing Numbers, 11–40
E
EEPROM, 3–5
Enclosures, selection, 2–7
End Instruction, 9–3
Environmental Specifications, 2–6
Error Codes, B–2
Execution Times, 8–18, C–2–C–9
Expansion Bases, 4–14–4–15
F
Fault Messages, 11–56
Flowchart Programming, 10–26
Forcing I/O, 8–10
Fuses
I/O protection, 5–12
power supply, 13–4
configuration history, 4–2
derating, 5–10
discrete input specifications, 6–4–6–15
discrete output specifications, 7–6–7–20
example configurations, 4–17–4–25
fuse protection, 5–12–5–15
installing, 4–13
numbering, 4–2, 4–3
placement, 4–4–4–6
point requirements, 4–3
power requirements, 4–27–4–29
response time, 8–14
selection considerations, 5–2
sinking and sourcing circuits, 5–2
solid state field devices, 5–9
testing outputs, 13–8
troubleshooting, 13–10
update sequence, 8–8
wiring guidelines, 2–12, 5–11
Indicators, CPU, 13–3–13–6
Input Modules
specifications, 6–4–6–15
wiring diagrams, 6–4–6–15
Installation
base mounting dimensions, 2–10
base power wiring, 2–11
base wiring, 4–7–4–9
component dimensions, 2–7
DL330/DL330P setup, 3–9
DL340 setup, 3–10
grounding, 2–4
I/O modules, 4–13
I/O wiring guidelines, 2–12
installing modules, 2–10
local and expansion bases, 4–14
panel design specifications, 2–4
setting CPU switches, 3–9–3–12
Instruction, execution times, 8–18, C–2–C–9
G
Instruction Set, index, 11–3
Grounding, 2–4
I
I/O Memory, 8–20
I/O Modules
address switch (base), 4–16
Instructions
accumulator load and output, 11–25
accumulator logic instructions, 11–30
bit operations, 11–42
boolean, 11–4–11–18
comparative boolean, 11–19–11–21
in stages, 12–12–12–19
Index–3
counters, 11–23
in stages, 12–19
end placement, 9–3, 13–13
initial stage, 12–3
jump, 12–5
math, 11–34
messages (fault), 11–56
network communication, 11–52
not jump, 12–5
number conversion, 11–44
program control, 11–50
RLLPLUS, 12–2
shift registers, 11–24
in stages, 12–21
stage, 12–3
timers, 11–22
in stages, 12–18
J
Jump Instruction, 12–5
Jumpers, on bases, 4–16
L
Latching Outputs, in stages, 10–14
Local Bases, 4–14
M
Maintenance
battery replacement, 13–2
guidelines, 13–2
Master Control Relays, 11–50
Math Instructions, 11–34
Memory
battery backup, 3–14
clearing, 3–21
external storage, 3–4–3–6
initialization, 8–5
maps, 8–19, 8–25–8–37
options for CPUs, 3–4–3–6
PROM Writer Unit, 3–6
retentive, 3–4, 3–11, 8–5
retentive selection switch, 3–9
volatile and non-volatile, 3–4
Messages, 11–56
Multiplying Numbers, 11–38
N
Network Address, 3–12, 3–13
Network Instructions, 11–52
Noise, reducing problems, 13–11
Not Jump Instruction, 12–5
Number Conversion Instructions, 11–44
O
Output Modules
specifications, 7–6–7–20
using outputs in stages, 10–12
wiring diagrams, 7–6–7–20
P
Pause Relay, 13–13
Power Budget, 4–26–4–31
worksheet, 4–31
Power Specifications, 2–6
Power Supply
schematics, 4–11
wiring, 4–9–4–12
Program Control Instructions, 11–50
Program Mode, 8–6
Programming
accumulator usage, 9–10–9–12
basic concepts, 9–2
counters, 9–9
device connections, 3–18
flowchart style, 10–26
instruction set index, 11–3
RLL PLUS concepts, 10–2–10–37
stack operation, 9–6
timers, 9–8
troubleshooting, 13–12
PROM Writer Unit, 3–6
Q
Quick Start, A–2–A–7
R
RAM, 3–5
Retentive Memory, 3–4, 3–11
initialization of, 8–5
selection switch, 3–9
Run Mode, 8–7
Run Relay, 4–12
Index–4
S
Safety
fuses, 5–12
guidelines, 2–2
levels of protection, 2–2
panel design specifications, 2–4
planning for, 2–2
sources of assistance, 2–2
DL340 communication, 3–12
System
component dimensions, 2–7
components, 1–4
enclosures, 2–7
environmental specifications, 2–6
operation, 8–2–8–37
panel design specifications, 2–4
power supply requirements, 2–6
Scan Time, 8–16
Shift Registers, 8–24, 11–24
in stages, 12–21
Shifting Accumulator Bits, 11–42
Sinking Circuits, 5–2
T
Special Registers, 8–24
Terminology
discrete input, 6–2
discrete output, 7–2
Special Relays, 8–24
using the pause relay, 13–13
Timers, 8–22, 9–8, 11–22
in stages, 10–15, 12–18
Sourcing Circuits, 5–2
Specifications
base power, 2–6
CPU, 3–3
discrete input modules, 6–4–6–15
discrete output modules, 7–6–7–20
environmental, 2–6
panel design, 2–4
power source, 2–6
Stages, 8–23
activating, 10–8
activating with power flow, 10–11
execution rules, 10–7
flowchart view, 10–26
instructions, 12–3
numbering, 10–6
parallel branching concepts, 10–19
resetting stages, 12–11
setting, 10–10
setting stages, 12–11
unusual operations, 10–24
using bits as contacts, 10–22, 12–7–12–10
using comparative boolean in, 10–18
using data instructions in, 10–17
using initial, 10–8
using outputs in, 10–12
using to latch outputs, 10–14
using with jump instructions, 10–9
Storing Programs, 3–4–3–8
Subtracting Numbers, 11–36
Switches, CPU
DL330/DL330P, 3–9
DL340, 3–10
Troubleshooting
See also Indicators
I/O modules, 13–10
noise problems, 13–11
programs, 13–12
testing outputs, 13–8
U
UVPROM, 3–5
comparing to the CPU, 3–8
copying CPU program to, 3–7
erasing, 3–8
installing in CPU, 3–9, 3–10
loading program to CPU, 3–8
W
Weights, D–2
Wiring
base power, 2–11
bases, 4–7–4–9
I/O guidelines, 5–11
I/O modules, 2–12
run relay, 4–12
Word Memory, 8–19
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement