400508-01 FM-3 Reference Manual

Add to my manuals
288 Pages

advertisement

400508-01 FM-3 Reference Manual | Manualzz

FM-4

Programming Module

Reference Manual

P/N 400509-01

Revision: A7

Date: March 26, 2009

© Control Techniques Drives, Inc. 2001-2009

FM-4

Programming Module

Reference Manual

Information furnished by Control Techniques Americas LLC (Control Techniques) is believed to be accurate and reliable. However, no responsibility is assumed by Control Techniques for its use. Control Techniques reserves the right to change the design or operation of the equipment described herein and any associated motion products without notice. Control Techniques also assumes no responsibility for any errors that may appear in this document. Information in this document is subject to change without notice.

P/N 400509-01

Revision: A7

Date: March 26, 2009

© Control Techniques Americas LLC, 2001-2009

© Control Techniques Americas LLC, 2001-2008 All rights reserved.

Part Number: 400509-01

Revision: A7

Date: March 2009

Printed in United States of America

Information in this document is subject to change without notice. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Control Techniques.

The following are trademarks of Control Techniques and may not be reproduced in any fashion without written approval of Control

Techniques: EMERSON Motion Control,

EMERSON Motion Control PowerTools, AXIMA, “Motion Made Easy.”

Control Techniques is a division of EMERSON Co.

Control Techniques is not affiliated with Microsoft Corporation, owner of the Microsoft, Windows, and Windows NT trademarks.

This document has been prepared to conform to the current released version of the product. Because of our extensive development efforts and our desire to further improve and enhance the product, inconsistencies may exist between the product and documentation in some instances. Call your customer support representative if you encounter an inconsistency.

ii

Customer Support

Control Techniques Americas LLC

12005 Technology Drive

Eden Prairie, Minnesota 55344-3620

U.S.A.

Telephone: (952) 995-8000 or (800) 893-2321

It is Control Techniques’ goal to ensure your greatest possible satisfaction with the operation of our products. We are dedicated to providing fast, friendly, and accurate assistance. That is why we offer you so many ways to get the support you need. Whether it’s by phone, fax or modem, you can access Control Techniques support information 24 hours a day, seven days a week. Our wide range of services include:

FAX (952) 995-8099

You can FAX questions and comments to Control Techniques. Just send a FAX to the number listed above.

Website and Email www.emersonct.com

Website: www.emersonct.com

Email: [email protected]

If you have Internet capabilities, you also have access to technical support using our website. The website includes technical notes, frequently asked questions, release notes and other technical documentation. This direct technical support connection lets you request assistance and exchange software files electronically.

Technical Support (952) 995-8033 or (800) 893-2321

Email: [email protected]

Control Techniques’ “Motion Made Easy” products are backed by a team of professionals who will service your installation.

Our technical support center in Eden Prairie, Minnesota is ready to help you solve those occasional problems over the telephone. Our technical support center is available 24 hours a day for emergency service to help speed any problem solving.

Also, all hardware replacement parts, if needed, are available through our customer service organization.

When you call, please be at your computer, with your documentation easily available, and be prepared to provide the following information:

• Product version number, found by choosing About from the Help menu

• The type of controller or product you are using

• Exact wording of any messages that appear on your screen

• What you were doing when the problem occurred

• How you tried to solve the problem

Need on-site help? Control Techniques provides service, in most cases, the next day. Just call Control Techniques’ technical support center when on-site service or maintenance is required.

Training Services (952) 995-8000 or (800) 893-2321

Email: [email protected]

Control Techniques maintains a highly trained staff of instructors to familiarize customers with Control Techniques’ “Motion

Made Easy” products and their applications. A number of courses are offered, many of which can be taught in your plant upon request.

Application Engineering (952) 995-8000 or (800) 893-2321

Email: [email protected]

An experienced staff of factory application engineers provides complete customer support for tough or complex applications.

Our engineers offer you a broad base of experience and knowledge of electronic motion control applications.

iii

iv

Customer Service (Sales) (952) 995-8000 or (800) 893-2321

Email: [email protected]

Authorized Control Techniques distributors may place orders directly with our Customer Service department. Contact the

Customer Service department at this number for the distributor nearest you.

Document Conventions

Manual conventions have been established to help you learn to use this manual quickly and easily. As much as possible, these conventions correspond to those found in other Microsoft® Windows® compatible software documentation.

Menu names and options are printed in bold type: the File menu.

Dialog box names begin with uppercase letters: the Axis Limits dialog box.

Dialog box field names are in quotes: “Field Name.”

Button names are in italic: OK button.

Source code is printed in Courier font: Case ERMS.

In addition, you will find the following typographic conventions throughout this manual. bold

This

italic

ALL CAPITALS

SMALL CAPS

KEY1+KEY2 example: (Alt+F)

KEY1,KEY2 example: (Alt,F)

Represents

Characters that you must type exactly as they appear. For example, if you are directed to type

a:setup

, you should type all the bold characters exactly as they are printed.

Placeholders for information you must provide. For example, if you are directed to type

filename

, you should type the actual name for a file instead of the word shown in italic type.

Directory names, file names, key names, and acronyms.

Non-printable ASCII control characters.

A plus sign (+) between key names means to press and hold down the first key while you press the second key.

A comma (,) between key names means to press and release the keys one after the other.

Note

For the purpose of this manual and product, “Note” indicates essential information about the product or the respective part of the manual.

E

N

E Series Only

For the purpose of this manual and product, the “EN” symbol indicates information about the EN drive specifically.

Throughout this manual, the word “drive” refers to an MDS or EN drive.

“Warning” indicates a potentially hazardous situation that, if not avoided, could result in death or serious injury.

“Caution” indicates a potentially hazardous situation that, if not avoided, may result in minor or moderate injury.

“Caution” used without the safety alert symbol indicates a potentially hazardous situation that, if not avoided, may result in property damage.

Safety Instructions

General Warning

Failure to follow safe installation guidelines can cause death or serious injury. The voltages used in the product can cause severe electric shock and/or burns and could be lethal. Extreme care is necessary at all times when working with or adjacent to the product. The installation must comply with all relevant safety legislation in the country of use.

Qualified Person

For the purpose of this manual and product, a “qualified person” is one who is familiar with the installation, construction and operation of the equipment and the hazards involved. In addition, this individual has the following qualifications:

• Is trained and authorized to energize, de-energize, clear and ground and tag circuits and equipment in accordance with established safety practices.

• Is trained in the proper care and use of protective equipment in accordance with established safety practices.

• Is trained in rendering first aid.

Reference Materials

The following related reference and installation manuals may be useful with your particular system.

Function Module Installation Manual (P/N 400506-03)

Epsilon Eb and EN Drives Reference Manual (P/N 400501-01)

Modular Drive System (MDS) Reference Manual (P/N 400525-01)

FM-4 and FM-4 Connectivity Reference Manual (P/N 400508-04) v

vi

Safety Considerations

Safety Precautions

This product is intended for professional integration into a complete system. If you install the product incorrectly, it may present a safety hazard. The product and system may use high voltages and currents, carry a high level of stored electrical energy, or control mechanical equipment that can cause injury.

You should give close attention to the electrical installation and system design to avoid hazards either in normal operation or in the event of equipment malfunction. System design, installation, commissioning and maintenance must be carried out by personnel who have the necessary training and experience. Read and follow this safety information and the instruction manual carefully.

Enclosure

This product is intended to be mounted in an enclosure which prevents access except by trained and authorized personnel, and which prevents the ingress of contamination. This product is designed for use in an environment classified as pollution degree 2 in accordance with IEC664-1. This means that only dry, non-conducting contamination is acceptable.

Setup, Commissioning and Maintenance

It is essential that you give careful consideration to changes to drive settings. Depending on the application, a change could have an impact on safety. You must take appropriate precautions against inadvertent changes or tampering. Restoring default parameters in certain applications may cause unpredictable or hazardous operation.

Safety of Machinery

Within the European Union all machinery with which this product is used must comply with Directive 89/392/EEC, Safety of Machinery.

The product has been designed and tested to a high standard, and failures are very unlikely. However the level of integrity offered by the product’s control function – for example stop/start, forward/reverse and maximum speed – is not sufficient for use in safety-critical applications without additional independent channels of protection. All applications where malfunction could cause injury or loss of life must be subject to a risk assessment, and further protection provided where needed.

General warning

Failure to follow safe installation guidelines can cause death or serious injury. The voltages used in this unit can cause severe electric shock and/or burns, and could be lethal. Extreme care is necessary at all times when working with or adjacent to this equipment. The installation must comply with all relevant safety legislation in the country of use.

AC supply isolation device

The AC supply must be removed from the drive using an approved isolation device or disconnect before any servicing work is performed, other than adjustments to the settings or parameters specified in the manual. The drive contains capacitors which remain charged to a potentially lethal voltage after the supply has been removed. Allow at least 3 minutes after removing the supply before carrying out any work which may involve contact with electrical connections to the drive.

Products connected by plug and socket

A special hazard may exist where the drive is incorporated into a product which is connected to the AC supply by a plug and socket. When unplugged, the pins of the plug may be connected to the drive input, which is only separated from the charge stored in the bus capacitor by semiconductor devices. To avoid any possibility of electric shock from the pins, if they are accessible, a means must be provided for automatically disconnecting the plug from the drive (that is, a latching contactor).

Grounding (Earthing, equipotential bonding)

The drive must be grounded by a conductor sufficient to carry all possible fault current in the event of a fault. The ground connections shown in the manual must be followed.

Fuses

Fuses or over-current protection must be provided at the input in accordance with the instructions in the manual.

vii

viii

Isolation of control circuits

The installer must ensure that the external control circuits are isolated from human contact by at least one layer of insulation rated for use at the applied AC supply voltage.

Table of Contents

Customer Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

Safety Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .v

Reference Materials. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .v

Safety Considerations vii

Introduction 1

Operational Overview 3

Software Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

PowerTools Pro Setup Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

Keypad Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

How Motion Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

How Jogging Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

How Home Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

How Indexes Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

How Communications Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

Secure Downloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25

Brake Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

How Data Capture Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

Setting Up Parameters 29

Status View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

Status Online Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

Information Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

Graph View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32

Setup View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34

Motor View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36

User Units View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .43

Master Units View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46

Virtual Master View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49

Position View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50

Velocity View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53

Ramps View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54

Torque View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58

Distance Recovery View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

Tuning View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

Faults View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

Setup NVM View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64

Devices / Vars Group. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

PLS View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

Capture View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67

Timers View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74

Variables View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83

Bits View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85

Packed Bits - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88

I/O Setup Group. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95

Assignments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95

Assignments View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95

Selector View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98

ix

x

Input Lines View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

Output Lines View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Analog Inputs View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Analog Outputs View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Jog View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Home View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Index View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Gearing View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Camming View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

Torque Mode View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Multiple Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

Stopping Motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

Network Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Modbus View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

Modbus Master View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

DeviceNet View - FM-4DN Only. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Profibus View - FM-4PB Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Ethernet View - FM-4E Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

Programming 141

Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

Program Toolbar Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

Cyclic Program View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

User Program View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

Real Time Program View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Program Multi-Tasking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

Program Instruction Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

Adding and Deleting Programs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

Run Anytime Programs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Example Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

Parameter Descriptions 173

Installation 205

Basic Installation Notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

Mechanical Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

Electrical Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

Software Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

Starting and Exiting PowerTools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

Accessing Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

Quick Start 211

Basic Setup Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

Example Application Start Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222

Tuning Procedures 229

PID vs. State-Space. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

Tuning Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

Tuning Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

Determining Tuning Parameter Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

Diagnostics and Troubleshooting 237

Diagnostic Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

Drive Faults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242

Online Status Indicators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244

Diagnostic Analog Output Test Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247

Specifications 249

Dimensions and Clearances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249

Cable Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251

Glossary 265

Index 271

xi

xii

FM-4 Programming Module Reference Manual

Introduction

The FM-4 module is a compact and rugged function module that attaches to the front of the drive. It provides eight digital input lines and four digital output lines, in addition to the four input and three output lines available on the drive.

Unlike other function modules, the FM-4 module offers complex motion profiling, along with multi-tasking user programs.

A complex motion profile consists of two or more indexes that are executed in sequence such that the final velocity of each index except the last is non-zero. Logical instructions between index statements can provide a powerful tool for altering motion profiles ’on the fly’. The FM-4 module defines complex motion by a configuration file that includes setups, function assignments and programs. The configuration file is created using EMERSON Control Techniques PowerTools Pro software on a PC running Windows® 98, 2000, 2003, 2008, XP (SP2) (32-bit) or Vista (32-bit) operating system. Setup views have the same look and feel as dialog boxes. The wiring of input and output functions is done through assignments in the software.

Complete diagnostics are provided for quick troubleshooting. A diagnostic display on the front of the drive as well as the display on the module inform the user of the operational or fault status. The last 10 faults are stored in non-volatile memory along with a time stamp for easy recall.

Figure 1: EN Drive with FM-4 Function Module

Note that the drive’s firmware is disabled whenever a Function Module, such as the FM-4 module is attached. Therefore, if the drive’s hardware is FM compatible, then the drive’s firmware can be any version because the programming features reside in the function module’s flash memory. Flash files used for firmware upgrades are available on the Control Techniques webpage.

The FM-4 module stores drive setup parameters within the module itself. This allows you to transfer the FM-4 module to another drive without losing setup parameters.

1

FM-4 Programming Module Reference Manual

Fastening Latch

3 Row by 12

Character Display

Soft Keys

Direction Arrow

Keys

Figure 2:

Expanded I/O

(not used at this time)

Sync. Input

Sync. Output

Aligning Tabs

Programming Module

485 +

485 -

SHLD

3

4

5

1

2

6

7

8

3

4

+

-

1

2

Front

FM-4 Programming Module Features

100-Pin Connector

Inputs

Outputs

+10 to 30 VDC

MODEL FM-4

PART 960498-01

REV

SER

A1/A1

0120B025

Back

2

FM-4 Programming Module Reference Manual

Operational Overview

This section provides a complete functional description of the FM-4 module. It is intended to provide you, the user, with a thorough understanding of all operations. The description includes references to many FM-4 module and drive parameters which can be displayed and/or edited using PowerTools Pro software, or through any Modbus interface.

The FM-4 module augments the drive by providing the ability to implement programs written using PowerTools Pro. When a FM-4 module is attached to a drive, it overrides the operation and user accessible features of the drive. The drive’s basic operating modes (Pulse, Velocity and Torque) are not available when a FM-4 module is attached.

The FM-4 module stores drive setup parameters within the module itself. This allows the user to transfer the FM-4 module to another drive without losing setup parameters.

The FM-4 module allows the user to set up 55 different Indexes, Jog functions and a Home. It also provides eight digital input lines and four digital output lines in addition to the four input and three output lines available on the drive.

Software Interface

The FM-4 module is set up using PowerTools Pro software. PowerTools Pro is an easy-to-use Windows® based setup and diagnostics tool. It provides the user with the ability to create, edit and maintain the drive’s setup. You can download or upload the setup data to or from a device. The setup data can also be save to a file on the PC or printed for review or permanent storage.

PowerTools Pro Setup Software

PowerTools Pro is designed to be the easiest-to-use software available for single axis motion controllers.

Features

• “Hierarchy Tree” for quick navigation to any setup view

• Simple I/O function assignments

• Powerful online diagnostic capabilities

• Programming

Figure 3: Hierarchy Tree

The “Hierarchy Tree” (shown above on the left side) contains expandable groups of parameters. The groups can be expanded and contracted just like folders in Windows® Explorer. Left click on a view name in the Hierarchy Tree will display that view on the right side of the computer screen.

To setup a drive the user simply steps through the Hierarchy Tree from top to bottom starting with the Setup view. Simple applications can be setup in a matter of minutes.

3

FM-4 Programming Module Reference Manual

Keypad Interface

The keypad and character display on the front of the FM-4 module provides navigation through a menu of common parameters and displays current functions. Navigation through the menu is accomplished with the six keys located below the display. The top two keys are called the “soft keys” because they relate to the commands located directly above each key on the display. These keys are used to select the operation (e.g. Modify, Ok, Cancel), parameter group, and/or to validate information. The four arrow keys are used to navigate through parameter groups, select a specific parameter to be modified, and to modify digital and numeric data.

The operation of the arrow keys is dependent upon the type of parameter which is being modified.

4

Figure 4: FM-4 Display and Keypad

On the Menu screen, the drive type and axis address are always shown on the top line of the display. The second line shows the motor type. If a user defined motor is selected, the user defined motor name will appear. The third line shows two parameter group names, one above each of the soft keys.

From the Menu screen, the user selects a group of drive parameters to work with. The group names are scrolled using the left/ right direction keys. The groups correspond roughly to the views used by the PowerTools Pro software. The groups are shown cyclically and wrap around.

The drive parameters available with the FM-4 module keypad are arranged into seven groups (see list below). Upon powerup the FM-4 module will display the default parameter groups “SECUR” (left soft key) and “QUICK” (right soft key).

• QUICK (Quick)

• PROG (Program)

• INDEX (Index)

• HOME (Home)

• JOG (Jog)

• RAMPS (Ramps)

• SECUR (Security)

Operational Overview

Menu

Screen

EN-204 Adr01

MG-316

SECUR

PBus-

Group

MODIF MENU

Security: 1

Baud Rate

Security: 0

MENU

Network Sts

DVNET+

Group

Slave Address MacID

MODIF MENU

Security: 1

Baud Rate

MODIF MENU

Network Sts

SECUR

Group

Auto Log Out Stop

MODIF MENU

Security: 3

Password 1

MODIF MENU

Security: 3

Password 2

RAMPS

Group

MODIF MENU

Security: 0

Stop.Decel

MODIF MENU

Security: 1

JOG*

Group

<Jog.0.Vel>

MODIF MENU

Security: 1

<Jog.0.Accl>

MODIF MENU

Security: 1

<Jog.0.Decl>

HOME

Group

Home.0.Vel

MODIF MENU

Security: 1

Home.0.Accl

MODIF MENU

Security: 1

Home.0.Decl

Security: 0

MENU

Module Sts

MODIF MENU

Security: 0

MasterAddr

MODIF MENU

Security: 0

Module Sts

Security: 0

MENU

Net OK

Security: 0

MENU

MsgProcessed

Security: 0

MENU

Conn Type

Security: 0

MENU

Security: 0

MENU

Mster MacID

Security: 0

MENU

Transmit Cntr

Security: 0

MENU

Receive Cntr

Security: 0

MENU

MODIF MENU

Security: 3

Log Out Now?

OK

Security: 0

MODIF MENU

Security: 1

<Jog.0.Plus>

MODIF MENU

Security: 1

<Jog.0.Mius>

MODIF MENU

Security: 1

Posn Fdbk Ct

MENU

Security: 0

MODIF MENU

Security: 1

Home.0.Init

MODIF MENU

Security: 1

Calc Offset

MENU

Security: 1

Spec Offset

MODIF MENU

Security: 1

Select Offst

MODIF MENU

Security: 1

* Jog Group contains 2 Jogs (Jog.0 and Jog.1)

Index Group contains 7 Indexes (Index.0 to Index.7)

Prog Group contains 4 Programs (Prog.0 to Prog.3)

+ DeviceNet Group is only available on FM-3DN and FM-4DN modules

- Profibus Group is only available on FM-3PB and FM-4PB modules

INDEX*

Group

PROG*

Group

QUICK

Group

<Ind.0.Vel>

<Prg.0.Init>

MODIF MENU

Security: 1

<Ind.0.Accl>

MODIF MENU

Security: 1

Posn Fdbk

GRAPH MENU

Security: 0

Vel Fdbk

MODIF MENU

Security: 1

<Ind.0.Decl>

GRAPH MENU

Security: 0

Following Er

MODIF MENU

Security: 1

<Ind.0.Dist>

GRAPH MENU

Security: 0

Axis Address

MODIF MENU

Security: 1

<Ind.0.Init>

MODIF MENU

Security: 1

MODIF MENU

Security: 0

Baud Rate

MODIF MENU

Security: 3

DriveInput

MENU

Security: 0

ModuleInput

On all screens with < > symbols, scroll left and right to select the specific Instance

MENU

Security: 0

DriveOutput

MENU

Security: 0

ModuleOutput

MENU

Security: 0

Fault Sts 1

MENU

Security: 3

Fault Sts 2

MENU

Security: 0

Clear Fault?

OK MENU

Security: 0

Module Rev

MENU

Security: 0

Boot Rev

MENU

Security: 0

Parameter Screens

After selecting a group using one of the soft keys, the FM-4 module will display a Parameter screen for that group. This screen could be either the first screen in the group or the last screen that was used in that group. The FM-4 module keeps track of the last Parameter screen viewed in each group and returns to that screen when returning come back to that group. This is reset on power-up and the FM-4 module displays the first Parameter screen in the group.

In this screen, the parameter name is shown on the first line of the display. The up/down arrow keys are used to scroll through the parameters available in the selected group. The second line displays the condition or value of parameters. The third line displays the soft key actions.

The left/right arrow keys are used to scroll through the parameters when the “<“ and “>” symbols are shown.

5

FM-4 Programming Module Reference Manual

Numeric parameter units are sometimes shown before the actual value, because the parameter value and the units cannot be displayed on one line. The unit of measure will appear on the second line for about one second. Then the actual parameter value will appear. The parameter value is updated about five times a second.

How Motion Works

The FM-4 module provides four types of motion: jogging, homing, indexing and gearing. Only one index, jog, home or gear may be in process at any given moment (exclusionary motion types). Through assignments and programs, the FM-4 module can sequentially run various motion routines. The Positive direction parameter affects all motion types by specifying which direction of motor revolution (CW or CCW) is considered motion in the “+” direction.

How Jogging Works

Jogging produces rotation of the motor at controlled velocities in a positive or negative direction.

Assignments to jogs are level sensitive such that when the jog input is turned on, jogging begins and continues jogging until the jog input is removed.

Each jog has its own acceleration and deceleration ramp along with a specified velocity. Jogging has no distance parameter associated with it. If trying to move a specific distance or to a known position, then an index is used.

6

Figure 5: Jog View

How Home Works

The Home is used in applications in which the axis must be precisely aligned with some part of the machine. The Home is initiated in one of three ways: with the Initiate Destination function found in the Assignments view, through a program, or with the Online tab. A Home or Define Home is required to set the Absolute Position Valid so that any index to absolute position can work.

The FM-4 module can home the motor to an external sensor, the motor’s encoder marker pulse, or to a sensor and then to the encoder marker pulse.

Operational Overview

Gear Reducer

External

Home Sensor

NT Motor

with Encoder

Carriage

-

Dir ec tion

+

Sensor Point

Home Offset

Distance

Figure 6: Basic Home Function, Example

The figure above show a basic home function using a ball screw. This example uses most of the setup features in the

PowerTools Pro Home view.

Home Sequence

1. Back off the sensor, if on the sensor. (This step is optional).

2. Move to the external home sensor to establish a home reference point.

3. Next it will move to the Offset position.

4. Then the command and feedback positions are set to the value entered into the End of Home Position.

Homing to the motor’s encoder marker will establish the most accurate and repeatable home position. This method will position the motor relative to the location of the rising edge of the encoder marker pulse. Most applications will use a sensor and marker to find an accurate home position in the vicinity of the home sensor.

Several parameters affect how the Home function operates. Each of these parameters are explained in detail on the following pages.

Note

The Home function will NOT be initiated when any other motion command is in progress.

Establishing a Home Reference Position

The first step in setting up a home is to select the desired home reference type. The Home Reference type selected determines how the Home Reference Position is established. PowerTools Pro allows selection of one of three different Home Reference types: Sensor, Marker, or Sensor then Marker.

Sensor

Selecting Sensor means the rising edge of the Home Sensor input function is used to establish the home reference position.

Figure 7: Sensor Home Reference Position

Marker

Selecting Marker means the rising edge of the motor’s encoder marker channel is used to establish the reference position.

7

FM-4 Programming Module Reference Manual

Figure 8: Marker Home Reference Position

Sensor then Marker

Selecting Sensor then Marker means the reference position is established using the first marker rising edge after the device sees the rising edge of the Home Sensor input function.

Figure 9: Sensor then Marker Home Reference Position Example 1

Accuracy and Repeatability

The accuracy is one trajectory update rate. For example - if the trajectory update rate is set to 800 μs then the accuracy will be 800 μs, if the trajectory update rate is set to 1.6 ms then the accuracy will be 1.6 ms.

The amount of accuracy the application requires will determine the Home Reference type selected. Homing to an external sensor will only establish a repeatable home position within 0.04 revolutions at 3000 RPMs (800 μsec sensor capture interval).

Note

The data above assumes the use of a perfectly repeatable home sensor.

In Sensor then Marker applications, the marker must be at least 800 μsec after the rising edge of the sensor input to be

considered a valid marker pulse, see Figure 10.

Note

At 1000 RPM, the motor will travel 0.0133 revolutions (or 4.8°) in 800 μsec.

8

Operational Overview

>800 µsec

Sensor

Marker

Direction of Travel

Figure 10: Sensor then Marker Home Reference Position Example 2

The Home Sensor must be “On” for at least 800 μsec to guarantee that it will be recognized.

Sensor Min.

On Time

Sensor

800 μsec

Figure 11: Sensor then Marker Home Reference Position Example 3

Home Offset

The Home Offset is the distance from the Reference Position to the final stopping point at the end of the homing sequence.

Regardless of the value you enter for the Offset or which Home Reference type you choose, there is always an offset inherent in the homing process.

The user may either specify a desired offset or allow the drive to calculate an offset automatically. The drive calculates an offset that guarantees that the motor will not have to backup to get to the offset position. This is very convenient for unidirectional applications.

The Calculated Offset is the distance travelled during deceleration ramp from the home velocity to a stop plus the distance travelled at the home velocity for 800 usec. This extra distance is used to guarantee that the motor will not need to backup after the deceleration ramp.

The Specified Offset allows the user to choose an exact offset from the Home Reference.

Once the home reference is detected, the device will do whatever is necessary to reach the offset position. This may be as simple as a deceleration to a stop, a continuation at speed followed by a deceleration to a stop, or a deceleration followed by a move in the opposite direction.

To enter a specified home offset, select the Specified Offset radio button. PowerTools Pro always displays the calculated offset value as a reference. If the home reference is detected before the axis has reached its peak velocity, the axis will still continue to the precise offset position.

9

FM-4 Programming Module Reference Manual

Figure 12: Calculated Home Offset, Peak Velocity Not Reached

If the Home Reference is detected after the axis has reached its peak velocity, the axis will decelerate to the precise offset position.

Calculated

Home Offset

Figure 13: Calculated Home Offset, Peak Velocity Reached

Two examples below show operation when the specified offset is greater or lesser than the calculated offset. This causes the axis to continue on at speed before decelerating and stopping at the offset position, or backing up after the home sensor.

Specified

Offset

10

Figure 14: Specified Home Offset, Greater than Calculated Offset

Specified

Offset

Operational Overview

Figure 15: Specified Home Offset, Backup Required

End of Home Position

The End of Home Position (End Posn) defines the home position in relation to the machine’s coordinate system. At the completion of the home, the value of the End of Home Position is put into the command position.

Home Limit Distance

This parameter places an upper limit on the incremental distance the motor will travel during the home.

If no reference is found, the system will decelerate and stop at the limit distance. The Home Limit Distance Hit function will be activated if the home stops at the limit distance without finding the reference. Additionally, the Home.CommandComplete function will not turn “On” if the limit distance is hit.

Home Examples

Example 1: Linear Application

In this example, the system uses an external sensor and the motor’s encoder marker channel to establish a Home Reference

Position. This is the most accurate and most common way to home.

Gaer Recuder

External

Home Sensor

NT

Motor

-

Dir ection

+

Figure 16: Home to Sensor and Marker, Example

When the FM-4 module sees the Home Initiate, it accelerates the motor to the Home Velocity.

11

FM-4 Programming Module Reference Manual

The motor continues at that velocity until it first senses the Home Sensor input. It continues at the same velocity until the motor’s encoder marker channel is sensed. The rising edge of the motor’s encoder marker channel is used to establish the reference position. Once the home reference is detected, the motor decelerates to a stop and moves to the offset position.

Home Sequence

1. If on sensor then back off (if enabled)

2. Search for sensor

3. Search for marker

4. Go to offset (2.0 Revs)

5. Set feedback position equal to End of Home Position

Velocity

+ 100 + 100

Back off

Sensor

Time

- 100

Sensor Marker

Figure 17: Home Velocity Profile

Start of Home

1

Back Off Sensor

Marker

2

Sensor

Home Move

4

Offset Move

2.0 Revs

5

Final Position = End of Home Position

Offset

Figure 18: Home Move Sequence

Example 2: Rotary Application

This example uses an external sensor and the motor’s encoder marker pulse to establish a home reference position.

12

Operational Overview

NT Motor

Figure 19: Home Sensor and Marker then Offset, Example

When the device sees the rising edge of the Home Initiate function, it accelerates the motor to the Home Velocity. The motor continues at that velocity until it first senses the Home Sensor input. The motor continues on at the home velocity until the marker is activated.

The rising edge of the motor’s encoder marker channel is used to establish the reference position.

After sensing the rising edge of the motor’s marker channel, the device will continue moving and will decelerate to a stop at the specified offset position.

Figure 20: Home Velocity Profile

How Indexes Work

An index is a complete motion sequence that moves the motor a specific incremental distance or to an absolute position. This motion sequence includes an acceleration ramp to a programmed velocity, a run at velocity, and a deceleration ramp to a stop.

Velocity

Run at Velocity

Deceleration

Acceleration

Time

Figure 21: Index Motion Sequence

13

FM-4 Programming Module Reference Manual

14

Figure 22: Indexes View

Indexes use acceleration and deceleration ramps which may or may not reach the specified velocity depending on the total distance and the ramp values. For example, a short move with long acceleration and deceleration ramps may not reach the target velocity entered.

Indexes cannot be initiated when any other motion (jogging, homing, or program) is in progress. Indexes can be aborted with the Stop destination found in the Ramps group on the Assignments View.

The FM-4 module supports five types of indexes: absolute, incremental, registration, rotary plus and rotary minus.

Absolute vs. Incremental

The difference between absolute and incremental indexes is that absolute indexes move to a specific absolute position and incremental indexes move the motor a specific distance. The figures and explanations below demonstrate this concept.

Absolute Indexes

Absolute indexes are used in applications where the motor must travel to a specific position, regardless of where the motor is when the index is initiated.

The FM-4 module calculates the distance required to move to the specified position from the current position.

Operational Overview

Absolute Index

Absolute Index

Start Position = 1 Rev

Index Position = 5 Revs

Figure 23: Absolute Index Example 1

In the example above, the current position is 1 rev. If this index is initiated, the motor will travel to a position of 5 revs no matter where it is sitting before the move. From 3 revs, it will travel 2 revs to finish at 5 revs. If the absolute index to 5 revs is initiated a second time immediately after the index, no motion will occur because the motor will already be at a position of

5 revs.

The direction of an Absolute Index is determined by the starting position and the absolute index position. If the starting position for the above index is 9 revs, then the motor will rotate in the negative direction to end up at 5 revs. The figure below shows this.

Absolute Index

Start Position = 9 Revs

Index Position = 5 Revs

Figure 24: Absolute Index Example 2

Absolute indexes with Rotary Rollover enabled will take the shortest path to the position entered in the index position parameter.

Note

Absolute indexes move to positions relative to where the machine was homed using the Home, or the DefineHome destination.

Incremental Indexes

An incremental index will move the motor a specified distance in the + or - direction regardless of the starting position. The direction of the incremental index motion is determined by the sign (+ or -) of the Index Distance parameter.

Incremental Index

Incremental Index

Start Position = 1 Rev

Index Distance = 2 Revs

Figure 25: Incremental Index Example

In the example above, the motor starts at 1 rev, travels a distance of 2 revs and stops at 3 revs. If the same index is initiated a second time, the FM-4 module would move the motor another 2 revs to a position of 5 revs. If initiated a third time, the

motor would travel another 2 revs to a final position of 7 revs. Figure 26 shows this operation.

15

FM-4 Programming Module Reference Manual

Incremental Index

Start Position = 1 Rev

Index Distance = 2 Revs

16

Figure 26: Incremental Index Example 2

Registration Index

A Registration Index is used in applications where the motor must move until an object is detected and then move a specific distance from the point of detection, such as finding a registration mark and moving a distance beyond.

The Registration Index consists of two parts. The first part accelerates the motor to the target velocity and continues at this velocity until it receives a registration trigger (sensor or analog). Upon receipt of a registration trigger, the registration offset will be executed at the target velocity. The Sensor Limit Distance Hit source can be used to turn on an output, if a sensor input or analog limit is not received within the Limit Distance. A registration window can also be used to determine the validity of a registration trigger. If a registration trigger is received outside of the registration window, it will be ignored.

Rotary Plus and Rotary Minus Indexes

Rotary Plus and Rotary Minus Indexes provide forced directional control of moves to absolute positions. The position entered for a Rotary Plus or Minus type index must be within the rotary range (i.e. 0 ≤ Position < Rotary Rollover Point). All other parameters function the same as they do with absolute indexes. An Absolute Index is a direct move to a specific position, regardless of the starting point. A Rotary Plus Index moves to the specified position, but is forced in a positive direction.

Similarly, a Rotary Minus index moves to the specific position, but is forced in a negative direction.

Rotary Plus and Minus Indexes are usually used in rotary applications, therefore the rotary rollover feature on the Setup -

Position view in the PowerTools Pro software must be enabled to use them.

1. In the following examples the term “D” = (absolute position specified) - (current position). If “D” is negative, motion in the negative direction is implied.

2. In the following examples the Rotary Rollover parameter on the Setup - Position view is set to 360.00°. This means that with each revolution of the motor (or rotary table), feedback will count up to 359.99°, then roll over to Ø°.

Indexes with Rotary Rollover Enabled

Incremental move distances can be outside of the rotary rollover range. See the "Setting Up Parameters" chapter for an explanation of Rotary Rollover.

Example 1:

If the starting position is at Ø° and 720° is the specified distance, an Incremental index would move 2 revolutions in the positive direction. At the completion of this index the motor position would be Ø°.

Absolute indexes will take the shortest path to the specified position. Absolute index positions must be within the rotary rollover range.

Example 2:

If the starting position is at 90° and 80° is the specified position, an Absolute index would travel 10° in the negative direction. At the completion of this index the motor position would be 80°.

Example 3:

If the starting position is 45° and 315° is the specified position, an Absolute index would travel 90° in the negative direction because that is the shortest path between 45° and 315°.

Rotary Plus indexes will move to the specified position and are forced in a positive (or plus) direction. Rotary Plus index distances must be within the rotary rollover range.

Example 4:

As in example 2 above, the starting position is at 90° and 80° is the specified position. A Rotary Plus index would travel 350° in the positive direction. At the completion of this index the motor position would be 80°.

Example 5:

If the starting position is 10° and the specified position is 350°, a Rotary Plus index will travel 340° in the positive direction.

Operational Overview

Rotary Minus indexes move to the specified position, but are forced to travel in the negative (or minus) direction. Rotary

Minus index positions must be within the rotary rollover range.

Example 6:

As in examples 2 and 4 above, the starting position is at 90° and 80° is the specified position. A Rotary

Minus index would travel 10° in the negative direction. At the completion of this index the motor position would be 80°.

Example 7:

If the starting position is 15° and the specified position is 270°, a Rotary Minus index would travel 105° in the negative direction.

Correction Indexes - FM-4E Only

A Correction index is intended to continuously run on the second profile correcting any position drift. It will adjust the motor position based on changes to it's index.#.dist parameter. The Correction indexes use incremental distance values.

Updates to the index distance while the correction index is executing will take effect immediately by recalculating the index on the fly. Another words, if this index is in progress and the distance value is changed, the move profile instantaneously recalculates based on the index's current position, speed and acceleration. Once the Correction index is initiated it will remain active until stopped by the user with the Profile.#.MotionStop function.

Example:

Correction index distance sources are user program calculations, fieldbus inputs or analog input values. The index distance value can be updated via Fieldbus, by simply writing to the index distance parameter. If the analog input's

Destination Variable is set to the Index.#.Dist parameter, the index's distance value will be updated by the Analog Input.

This can be set to a automatic refresh using the Analog Input view.

Posn Tracker Cont and Posn Tracker Once Indexes - FM-4E Only

Posn Tracker Cont and Posn Tracker Once are indexes which expect their position values to be dynamically changed while executing. Position Tracker indexes use absolute position values. Posn Tracker Cont index once initiated, will remain active until stopped by the user with the Profile.#.MotionStop function. The Posn Tracker Once index will accept position changes until the target position is reached, at which point the index is complete.

The index 's position value can be updated via fieldbus, by simply writing to the index position parameter. Posn Tracker

Indexes are used to follow dynamic changes to the end point of the index prior to and during the index motion. If the analog input's Destination is set to an Index.#.distance, the index's position value will be updated by the Analog to Position scaling found in the Analog Input view.

Posn Tracker also accepts on the fly changes to index velocity, acceleration and deceleration. The index is recalculated on the next trajectory update.

How Communications Work

Configuring Communication

Before attempting to upload or download a configuration file using PowerTool Pro, the software must be configured to the correct communication settings for the intended communication connection. The FM-4, FM-4DN and FM-4PB support a serial communication connection, either RS-232 or RS-485. The FM-4E supports both serial and Ethernet communication connections.

When downloading or uploading a selected configuration file that is open in PowerTools Pro the communication scanner will only scan the configuration file’s Modbus ID and Ethernet address (unless Ethernet change address is clear). Once a connection is established, that connection (Comm port used, port number, modbus ID and Ethernet address) is saved, a second download, upload or reconnect will bypass the scanner and use this previously defined communication path. To change the communication path use the Change Path toolbar button.

The communication connection may be selected in the Upload Drive Configuration, Download to Device IDx or the Change

Path dialog boxes. From the Device menu, choose Upload Drive, Download or Path Change to open the dialog box or the toolbar buttons can also used, see below.

Upload Drive

Uploading is the process of reading information back from the drive to the PowerTools Pro configuration file views.

To upload information from a drive, click on the Upload All button, on the PowerTools Pro toolbar or from the

Device

menu, choose Upload All or Upload Drive. The Upload Drive Configuration dialog box will open, all

communication connections are scanned and the results appear. In Figure 27, it shows that one device on COM 1

17

FM-4 Programming Module Reference Manual

. was found, an EN-204 drive with a FM-4DN module. The Upload Drive Configuration dialog box contains the following information for every device found:

• Ip Address/COM

• Modbus Address ID

• Drive Type

• Module Type

• Communication Options

• Base/Drive Revision

• Module Revision

• Module Serial Number

• Drive Serial Number

Figure 27: Upload Drive Configuration Dialog Box

Select the device to upload and click Upload.

Downloading

Downloading is the process of sending the configuration created with PowerTools Pro from the PC to the FM-4 module.

Changes made in PowerTools Pro will not take effect until the information has been downloaded or the Update to RAM button has been clicked.

To download information to a FM-4, click the Download button on the PowerTools Pro toolbar or from the Device menu, choose Download. The Download to Device IDx dialog box will open, all communication connections are

scanned and the results appear. In Figure 28, one device on COM port 1 was found, it’s a EN-204 with FM-4DN

module. The Upload Drive Configuration dialog box contains the following information for every device found:

• Ip Address/COM

• Modbus Address ID

• Drive Type

• Module Type

• Communication Options

• Base/Drive Revision

• Module Revision

• Module Serial Number

18

Operational Overview

• Drive Serial Number

Figure 28: Download to Device ID 1 Dialog box

Select the device to download to and click OK.

Change Path Connection

This function allows the user to change the drive and Ip address/Com port used for download and upload. It is used when the user has already selected one Ip address.Com port and wishes to change to another.

The dialog box provides the user with communication information available on the Modbus and Ethernet network (if appropriate). This information contains:

• Ip Address/COM

• Modbus Address ID

• Drive Type

• Module Type

• Communication Options

• Base/Drive Revision

• Module Revision

• Module Serial Number

• Drive Serial Number

19

FM-4 Programming Module Reference Manual

Figure 29: Change Path Dialog Box

Select the device in the list and then click OK. The communication connection path will then be displayed in the status bar at the bottom of PowerTools Pro window.

NVM Options for Uploading and Downloading

Uploading

When uploading from a FM-4 module, the values that were last downloaded are uploaded and put into a PowerTools Pro configuration file. At the completion of the upload, the user will be asked if they wish to upload the NVM values. This dialog box is shown below.

By selecting Yes, the values of all parameters stored in NVM will be uploaded and entered into the PowerTools Pro file values. If No is selected, the values entered into the PowerTools Pro file will remain the same as those that were last downloaded to the FM-4 module.

Downloading

When downloading to the FM-4 module the user will be required to select how to handle the NVM parameters upon downloading. The dialog box asking the user to select one of three options for the download is shown below.

20

A description of each of the options is as follows:

Overwrite

– This option will overwrite all the parameters stored in NVM with the current values in the user configuration

(PowerTools Pro file). The values that are in NVM prior to the download will be lost.

Operational Overview

Update

– This option will upload the current NVM parameter values from the FM-4 module and enter them into the user configuration (PowerTools Pro file). Once the NVM values have been stored in the file, the file is fully downloaded.

Keep

– This option will download the entire user configuration, but then NVM parameters will be restored to the value prior to download. This is similar to the Update option, but the Keep option does not upload the NVM values into the user configuration (PowerTools Pro file).

The following table shows an example of how these options work:

Before

Download

Overwrite

Option

After Download

Update Option

Keep Option

PT Pro file value for

Index.0.Vel

NVM value for

Index.0.Vel

150

500

150

150

500

500

150

500

Updating to RAM

The Update to RAM button can be used to send changes to the FM-4 module without performing a complete download. The Update to RAM button is found in the PowerTools Pro toolbar. This operation will send only those changes that have been made since the last Update to RAM or a Device>Download to the FM-4 module was done.

The changes will take effect immediately upon clicking on the button.

The parameters will be sent to the FM-4 module without stopping motion or disabling the drives. Because of this, it is important to use caution when changing motion parameters while the motor is in motion.

The Update to RAM button saves the parameters only to RAM and not to Non-Volatile Memory (NVM). Therefore, if the system power is removed, any changes made using the Update to RAM button will be lost. In order to save changes to NVM, a full-download must be performed.

The flowchart below describes a typical process using the Update to RAM to make changes, and then downloading when complete to save changes to NVM.

Figure 30: Update to RAM Flow Chart

The Update to RAM button operates according to the following rules:

If no parameters have been modified by the user, the Update to RAM button will be disabled.

If the user modifies a parameter that does not require a full download, the Update to RAM button will be enabled.

If while the button is enabled, the user modifies a parameter that requires a full download, the Update to RAM button will become disabled.

When the user clicks on the Update to RAM button, all the modified parameters are transmitted to the FM-4 module. Once transmitted, the button will become disabled again until another parameter is changed.

If the user performs a full download while the button is enabled, when the download is complete, the Update to RAM button will be disabled.

21

FM-4 Programming Module Reference Manual

If the user modifies parameters, and disconnects, the update button will be disabled, and the changes will not be sent.

Options/Preferences/Ptools Operation

Communications Tab

This tab allows the user to set-up the serial communication baud rate. The drive baud rate and PowerTools Pro baud rate must match, default drive baud rate = 19200. The Enable Scan group allows the user to select which communications connections are scanned when doing any communication operations. Windows allows up to 256 COM ports. PowerTools Pro scans the

Windows registry to find all the defined COM ports. The scanner sends commands down each of the COM ports to find the drives. Default = All ports are scanned. The user also has the control of which Modbus node address are scanned when doing any communication operations The range is 1 to 247 but since it’s not practical from a time stand point to scan all nodes in the range the default is 1 to 4 node addresses. This scan range can be changed by the user.

Figure 31: Communications Tab

PopUps Tab

The options in this dialog box controls the dialog boxes that the user encounters when uploading and downloading the FM-

4 configuration file.

22

Operational Overview

Figure 32: Preferences-PopUps Tab

Download Section:

Ignore saving file on Ptools/Drive revision conversion.

On a download PowerTools Pro checks the firmware revision of the module that it is about to be downloaded to and is required to make changes to files that are to be downloaded to older firmware revisions. This check box allows the user to avoid saving the newer file before converting it to a previous revision.

Overwrite – Reset the NVM configuration.

When this option is selected the “Overwrite” function will default on every download to the module. This function will overwrite the entire FM-4 configuration including user defined NVM parameters as set in the NVM setup area of PowerTools

Pro.

Note

It is required to Overwrite the Non-Volatile Memory on the first download to the module since no Non-Volatile Memory parameters have been loaded into the drive on initial startup.

Update – Upload the values into the current Update PowerTools configuration.

When this option is selected the “Update” function will Update the NVM on every download to the module. Upon download the Update function uploads the configured NVM from the drive and places the data into the PowerTools Pro configuration file. The software then downloads this newly updated file to the module.

Keep – Remember the values, and restore them after the download.

This option was created to allow users to save the values that have been changed via HMI, PLC or internally in a program so long as they have been added to the NVM list. When this option is selected PowerTools Pro will poll the drive on download for all of the values that have been added to the NVM list. PowerTools Pro then stores these values into a temporary memory location and after the program download is complete PowerTools Pro reinstates these values to the parameters before the drive can be enabled.

Ask on each download.

This option was created for users who want control of whether they will overwrite or keep the NVM on download. When this option is selected, PowerTools Pro will display a pop-up window that gives the user the option to Overwrite, Update, or Keep as described above.

23

FM-4 Programming Module Reference Manual

Upload Section:

Always convert Application to latest Ptool capability.

When this option is selected, PowerTools Pro will automatically update an uploaded file to match the current functionality of PowerTools Pro.

Always leave Application matching Module capability.

When this option is selected, PowerTools Pro will default to upload and display the configuration to match the firmware revision and capabilities of the module.

Ask on each upload.

When this option is selected, PowerTools Pro will default to asking the user to convert the application to the latest PowerTools

Pro capability, or leave the application to match module capability.

Upload Non-Volatile Memory (NVM) Section:

Always upload NVM

When this option is selected, PowerTools Pro will default on an upload to uploading all of the parameters that have been mapped to the NVM and updating the display of these parameters in PowerTools Pro.

Always bypass NVM upload

When this option is selected, PowerTools Pro will not upload the NVM and the values that were originally downloaded to the drive will be displayed in the PowerTools Pro configuration.

Ask on each upload

When this option is selected, PowerTools Pro will default to asking the user via a dialog box whether to upload the NVM or to bypass the NVM upload.

Motor DDF Tab

The Motor DDF tab controls which .ddf files PowerTools Pro will use when working in the configuration file. The standard ddf files contain a list of motors that can be purchased from Control Techniques and their parameters. This tab gives the advanced user the capability to create their own standard motor ddf file. Never save a newly created user standard ddf file as

StdMotor.ddf because it will be overwritten with the next release of PowerTools Pro. The user’s ddf file name would be enter into the Standard Motor DDF Name text box for the correct drive type, see below.

24

En, MDS, Epsilon Motor DDF Section:

Use the standard Motor DDF file

Select this check box to use the standard motor ddf file.

Operational Overview

Standard Motor DDF Name

The name of the standard motor ddf file is entered in the text box, the information in this file will be used to setup the configuration file, the default is stdmotor.ddf.

User Motor DDF Name

When a custom motor is created this is the name of the motor ddf file where the information is stored, default is motor.ddf.

Ep Motor DDF Section

Standard Motor DDF Name

The name of the standard motor ddf file for Epsilon EP drives.

Unidrive SP Motor DDF Section

Use the SP Standard Motor DDF file

Select this check box to use the standard motor ddf file with the Unidrive SP.

SP Standard Motor DDF Name

The name of the standard motor ddf file is entered in the text box, default is spstdmotor.ddf.

SP User Motor DDF Name

When a custom motor is created this is the name of the motor ddf file where the information is stored, default is spmotor.ddf.

Secure Downloading

The Secure Download feature allows the user to download a configuration that prevents anyone from uploading the file, or going online with the system. This is used to protect a file from being accessed by unauthorized personnel. If a secure file is downloaded to the system, all diagnostics capabilities in the software are lost. The only way to go online with the system again is to download the original (non-secure) file over the secure version, or to download a completely new file.

Before performing a secure download, the file must first be saved in the secure file format. To do this, open the file you wish to save in the secure format using PowerTools Pro. Then on the File menu, click SaveAs. The following SaveAs dialog box should appear.

In this dialog box, select the “Save also as secure download format” check box located at the bottom of the dialog box, then click Save. Doing this will save the file in BOTH the standard file format (.fm4), as well as in the secure file format (.fm4s).

The “s” at the end of the file extension stands for “secure”. The secure file will be saved to the same directory as the standard file.

To perform the Secure Download, close all open files in PowerTools Pro. Then on Device menu, click Secure Download, as shown below.

25

FM-4 Programming Module Reference Manual

A dialog box will then open asking the user to select the secure file that they wish to download. Select the secure file that was just saved, then click Open. This will download the secure file to the target device.

A secure file (.fm4s) cannot be opened or modified. The file extension cannot be changed to allow the user to open it. The secure file is only valid for use by the secure download function. If a user attempts to upload a secure file, a message will appear indicating that the file residing in the system has been protected by the user. An example of this is shown below.

Brake Operation

The brake is operational when the Brake.Disengaged parameter is wired to an output. It is expected that this output is then physically wired to the Motor's brake. The standard operation for brake is to engage the brake when the drive is disabled. The drive’s LED diagnostic display shows the little "b" when the brake is engaged. The Brake can further be controlled by the

Brake controls Brake.Activate and Brake.Release. The Brake.Release overrides all conditions (drive disable and

Brake.Activate) to insure the brake is disengaged. The Brake Activate parameter allows the user to engage the brake while the drive is enabled. However, you need to be careful because Brake.Activate does not stop motion commands.

The table below shows the relationship between the Brake sources and destinations.

Brake.Activate

Brake.Release

Drive Enable

Off Off Off

Off

On

Off

Off

On

Off

On x

Off

On

On x

Brake.Disengaged

Brake Status Drive Diagnostic Display

Off Enabled b

On

Off

Disabled

Enabled b

Off

On

Enabled

Disabled

Note

No motion should be commanded while the brake is engaged.

Brake Release

The Brake.Release destination function will release the brake under all conditions. When this function is active, the Brake output will be on (that is, release brake). This function overrides all other brake control, thus allowing the brake to be released while a fault is active or the power stage is disabled. See also Brake source function.

Brake Activate

The Brake.Activate destination function, when active, will engage the brake unless overridden by the Brake Release function.

This function lets you externally engage the brake while allowing the drive to also control the brake during fault and disabled conditions.

Brake Disengaged

The Brake.Disengaged source function is used to control the motor holding brake. If the Brake function is off, the brake is mechanically engaged. When the brake is engaged, the diagnostic display on the front of the drive will display a “b”.

The drive outputs are limited to 150 mA capacity, therefore, a suppressed relay is required to control motor coil. Control

Techniques offers a relay, model # BRM-1.

26

Operational Overview

How Data Capture Works

Data Capture is a mechanism to capture data and display that data graphically. The capture mechanism is part of the drive and captures drive data as fast as 100 usec. Data is captured in a circular 8 K byte buffer. The format is fixed at 4 channels of

32 bit words for a total of 512 time samples. The circular buffer is continuously loaded until the trigger condition (or command abort) stops loading data. The capture mechanism follows three buffer states - Filling Buffer, Waiting for trigger, and

Triggered.

At the start of the Run command, the buffer starts to fill (filling the whole buffer). The buffer must be completely filled before the trigger is armed. Once the buffer is filled, the buffer state will display - Waiting for Trigger. When the trigger is detected, the data capture is stopped (triggered). The sampling rate is based on the trajectory update rate. The sample rate can be adjusted in multiples of the trajectory update rate. PowerTools displays this in the form of seconds. At the update sampling, a new set of data is overwritten into the circular buffer and the trigger is checked.

For Data Capture, the update rate for EN drives is 100 usec. For MDS drive modules the update rate is 100 usec for switching frequency of 10 kHz and is 200 usec for 5 kHz. The FM-4 module passes data to the drive at the user selectable trajectory update rate of 800, 1200 or 1600 usec. This means if the Data Capture rate is faster then the FM-4 module trajectory update rate the user will be sampling data faster than it is changing.

The trigger detection checks the data level. It does not specially look for an edge. Once the buffer is filled the trigger is armed and the check for trigger level is started. Since the drive is looking back in the buffer at data captured during the fill, the trigger condition may already exist. If that is so, the drive immediately transitions to the trigger state. If not, the drive continues the data capture cycle of sample and trigger check until the trigger is detected at the edge of the data transition.

When the Trigger Falling Edge check box is selected the trigger is detected when the data transitions below the trigger level.

When sampling digital inputs and outputs, the data captured is binary bit mapped. The state of all the digital signals in the group selected are encoded into one 32 bit word. When this is graphed it is displayed as an analog signal. To trigger on this bit map data, the trigger mechanism is changed to a mask. The user can select one of the bits to trigger on.

The captured data is uploaded when the UploadPlot button is pressed. Once uploaded, PowerTools plots the data in graph window. Data is also saved in a data file named, PtProGraphData.csv. This data file can be exported to a spread sheet for data manipulation and graphing.

Navigating the Graph Window

The Graph window display can be altered, double-click anywhere in the Graph Window except on the graph area itself. The

Customization dialog box opens and contains tabbed graph options. Many of the graphs attributes, such as colors, line format, etc. can be changed in this box. The graph can also be exported to a file.

Holding the shift key down while moving the mouse allows the user to zoom in on the graph area. Double-click on the graph area and the Graph Coordinate window opens and gives the x/y coordinate of where the mouse point was when doubleclicked.

The Graph window overlaps the data into a Y axis if the next channel has the same units. If the units change for the next channel, a new graph on the Y axis is added to the plot. If None is selected for a channel the drive data capture samples zero for that channel an PowerTools ignores plotting that channel. The Reserved channel selection is for internal use only and also captures zero. The title of the graph matches the application’s name defined on the Setup view.

Graph settings are downloaded to the drive when the Run button is pressed. Only changed values are sent. The graph settings are the same as any application variable. When a variable is changed in a PowerTools view the Update to RAM button is available, indicating the application and drive are out of sync, (Update to RAM remains unavailable if the user changes a variable that requires a reboot. The user then requires a full download). When the Run button is pressed, it does a limited

Update to RAM by downloading the changed graph settings to RAM.

27

FM-4 Programming Module Reference Manual

28

FM-4 Programming Module Reference Manual

Setting Up Parameters

Status View

Status Online Tab

The Status Online tab (see Figure 33) is active when online and consists of the Motor Position group, Motor Velocity group,

Control Loop group, Master Feedback group, and the Torque group.

Figure 33: Status View - Online Status Tab - FM-4E

Motor Position Group

Position Command

Position command (PosnCommand) is the commanded motor position sent to the drive by the FM-4 module. This parameter does not take following error into account. See also PosnFeedback and FollowingError. Units are in user units.

Position Feedback

Feedback position (PosnFeedback) is the actual motor position in user units. PosnCommand minus the PosnFeedback is the

FollowingError.

Following Error

The Following Error is the difference between the Position Command and the Position Feedback. It is positive when the

Position Command is greater than the Position Feedback.

Encoder Position

Motor encoder position in encoder counts (PosnFeedbackInCounts). This position reflects the feedback position of the motor and is not scaled into user units. This is a signed 32 bit value.

Motor Velocity Group

Velocity Command

The Velocity Command (VelCommand) is the velocity that the FM-4 module is commanding the motor to run at. This command is generated by the drive velocity control loop and position loop. It is displayed in user units.

29

FM-4 Programming Module Reference Manual

Velocity Feedback

The Velocity Feedback (VelFeedback) is the feedback (or actual) velocity. It is calculated using the change in position of the motor encoder. It will always return the actual motor velocity - even in synchronized applications in which the master axis is halted during a move.

Control Loop Group

Changing the Trajectory Update Rate can have a major effect on the performance of the servo system. A longer trajectory update rate means that more time is available to process user programs. A shorter update rate means that the control loop is updated more often and provides the most accurate performance. Without proper diagnostics, it can be impossible to tell how much time is being consumed by the control loop update, and how much time is available to run user programs.

The Control Loop group of parameters on the Status Online tab shows the user how much time is available to run programs.

There are two parameters available to help with this. They are as follows:

Control Loop Limit

This parameter shows the lowest measured time difference (in microseconds) between the Trajectory Update Rate and the time taken to process the control loop since the last reset. Certain features in the FM-4 require more time to process (i.e. PLS,

Capture, Compound Indexes), and therefore will cause lower limits. The software records the lowest measured value and displays it as the limit. To reset the limit to the average and continue tracking the lowest value, the user can click on the Limit button. If the Limit reaches 0, a fault will be generated. If a Limit of less then 75 - 100 usec is seen, it is recommended to switch the update rate to the next higher value.

Average Margin

This parameter shows a running average of the difference (in microseconds) between the Trajectory Update Rate and the time taken to process the control loop since the Status Online tab was brought up. The higher the value, the more time available to run user programs. For Averages less than 150 usec, it is recommended to switch the update rate to the next higher value.

Master Feedback Group

Master Position

Used for synchronized motion, this displays the position of the master encoder in units defined on the Master Units View.

Encoder Position

This displays the position of the master encoder in counts.

Master Velocity

This displays the velocity of the master encoder in master units/second.

Torque Group

Torque Command

This displays the torque command value before it is limited. The torque command may be limited by either the Torque Limit

(if the Torque Limit Enable destination is active) or current foldback. Units for this parameter are defined in the Torque Group on the User Units View.

Limited Torque

This is the actual torque commanded to the motor. This value is the result after the TorqueCommand is limited by the current foldback or the TorqueLimit value (if enabled).

Foldback RMS

This parameter accurately models the thermal heating and cooling of the drive and motor. When it reaches 100 percent, current foldback will be activated. See the Diagnostics section for an explanation of foldback.

Shunt Power RMS

This parameter models the thermal heating and cooling of the drive internal shunt. This parameter indicates the percent of shunt capacity utilization. When this value reaches 100 percent, the drive will generate an RMS Shunt Power Fault. This parameter is not applicable to the EN-204 which does not have an internal shunt resistor. This parameter is applicable to the

EN-208 and EN-214.

30

Setting Up Parameters

Information Tab

PowerTools Pro is designed to work with all releases of drive firmware. PowerTools Pro internally uses interface revisions to negotiate and define the application to match the connected drive.

The first line shows the file name and user application for reference.

Drive Information Group

Firmware Part Number

Displays the part number of the drive firmware.

Firmware Revision

Displays the revision of the drive firmware.

Serial Number

Displays the serial number of the drive.

Base Interface Revision

This parameter displays the interface revision of the data parameter structure in the base drive. This revision has a correlation with the features supported by the FM-4 module.

Module Information Group

Firmware Part Number

Displays the part number of the FM-4 firmware.

Firmware Revision

Displays the revision of the firmware in the FM-4 module.

Serial Number

Displays the serial number of the FM-4 module.

Registry Interface Revision

This parameter displays the interface revision of the "Registry" data parameter structure in the FM-4 module. This revision has a correlation with the features supported by the module. On download, both the Registry and Base Interface revisions are used to convert the Power Tools data set to match the module's data structure. In this way Power Tools can support different releases of the FM-4 Flash files. For the most part the user does not need to be concerned over interface revisions.

31

FM-4 Programming Module Reference Manual

Graph View

Figure 34: Graph View

Data Capture Group

Graph State

Run

There are three graph state conditions in the following order: Filling Buffer, Filled. Waiting for Trigger, and Filled and

Triggered.

The Run button commands the drive to begin a high speed data capture of the parameters as selected in each of the four data channels. After the Run command button is activated the buffer will fill up to the trigger offset while the words “Filling

Buffer” appear indicating this Graph State. Once the trigger offset level is reached the words “Waiting Trigger” will appear next to the Graph State indicating that graphical monitor is now ready to be triggered based on the trigger level selected. The

Run

command button may be activated by the letter “R” on the keyboard.

Upload and Plot

The Upload and Plot button will upload captured data from the drive and display this data in the Graph window. The user should wait for the Graph State to read “Filled and Triggered” before the data is uploaded.

Stop

The Stop button stops the data capture with the data captured at that point. You can upload and plot that data. If the buffer is only partially filled you will get a combination of good and bad data. Stop works well as a manual trigger, in place of the configured trigger.

Automatically Re-trigger and Plot Check Box

Select the check box and the Automatically Re-trigger and Plot tells PowerTools to monitor the graph state for the triggered condition. When this condition occurs, it automatically initiates the UploadPlot command, waits for a brief time then initiates the Run button to repeat the cycle. Initial the user must press the Run button to start the auto cycle.

This mechanism is only active when the graph view is displayed, If the user enters a different PowerTools view the auto update will stop and it will restart when returning to the Graph view.

Print

The Print button is used to print the graph in the Graph window.

32

Setting Up Parameters

Timing Group

The sliders can be moved in several different ways.

1. With the mouse pointer over the slider, left click and hold while dragging the slider back or forth to the desire setting.

2. With the mouse pointer over the slider, left click on the slider and then the arrow keys on the PC keyboard can be used to move the slider in fine increments. The Page Up and Page Down keys move the slider in course increments. The Home key will move the slider all the way to the left and the End key will all the way to the right.

Sample Rate

The Sample Rate slider gives the user control of time spacing for the captured date. To give the user a better idea of what this number means, the total number of samples and total capture time is displayed on the bottom of the “Timing” group box.

Trigger Offset

The Trigger Offset slider corresponds to the number of samples that will be included on the graph display and data capture prior to the actual trigger. If the Trigger offset slider is completely to the left (min samples), the data capture and graphing will start at the trigger location. If the slider is completely to the right (max samples) the graph will capture data until the trigger point.

Buffer Upload Size

The Buffer Upload Size slider truncates the drive captured data. If the slider is completely to the right (max) the complete buffer will be uploaded. If the slider is completely to the left, only 1% of the buffer will be uploaded. This parameter does not effect the data capture size, it only defines how much of the buffer will be uploaded.

Data Group

Data Channel 1 - 4 Select List Boxes

The Channel 1 through Channel 4 list boxes give the user options for parameter display. If parameters with the same units are mapped on adjacent channels then the graphical display will show these two parameters overlapped on the same x/y axis.

If it is desirable to have two adjacent Channels with the same units mapped to separate axis on the graph then the selection

(none) should be used on the channel in between these two parameters.

Trigger Radio Buttons

Selecting the radio button will cause the graphical capture to trigger the capture off the selected Channel. The “Trigger Level” text box on the bottom of the display will change units to the selected channel's parameter units. This trigger level may be changed at any time but the change must be sent to the drive via the Update to RAM or Download button. If a manual trigger is desired, set the channel to None and select the corresponding trigger radio button. If no trigger is selected the capture will begin when the Run button is clicked and end at the end of the Sample Rate.

Custom Variable

The Custom Variable text box is only available once the user has selected Custom Variable from the Select list box. This field is used to define what parameter will be plotted on that channel. The Custom Variable can be entered two ways: by just typing any Custom Variable using the program format for the variable, or click the Popup Variables button and the Select Variables from Tree window will open. Then select the variable and drag it over to the channel Custom Variable text box.

Trigger Mask List Box

This list box is only available when Drive Inputs, Drive Outputs, Module Inputs or Module Outputs is selected in the channel select list box and the Trigger radio button is selected for that channel. The Trigger Mask list box will only list the inputs or outputs for the selected channel parameter.

Trigger Falling Edge Check Box

When the Trigger Falling Edge check box is selected, the trigger is detected when the data transitions below the trigger level.

When the Trigger Falling Edge check box is clear, the trigger is detected when the data transitions above the trigger level.

Trigger Level

This is the level at which the graph is triggered. The “Trigger Level” text box will change units to the selected channel's parameter unit. This trigger level may be changed at any time but the change must be sent to the drive via the Update to RAM or Download button.

33

FM-4 Programming Module Reference Manual

Setup View

The Setup View contains all of the primary system setup parameters. These parameters must be setup prior to using your system.

By selecting Setup in the Hierarchy Tree, the Setup view will appear on the right side of the view (see Figure 35). The Setup

view is divided into six groups, with an explanation of each function. The groups are Identification, Configuration, Drive

Encoder Output, Positive Direction, Update Rate and Switching Frequency.

Figure 35: Setup View-FM-4E

Identification Group

The identification group consists of the Device Name and the Target Drive Address for all non-Ethernet FM-4 modules. The

FM-4E (Ethernet) modules will also have IP Address, Subnet and Gateway.

Name

This is a 12-character alpha/numeric user-configured name for this axis. Enter this name for the device currently being set up. Assigning a unique name for each device in the system allows the user to quickly identify a device when downloading, editing, and troubleshooting. All keyboard characters are valid. This will default to Axis 1.

Target Drive Address

This is the Modbus address of the target drive to which the user will download the configuration. The default target drive address is 1.

IP Address (FM-4E Only)

This is a 32-bit identification number for each node on an Internet Protocol network. These addresses are represented as four

8-bit numbers (0 to 255), with periods between them. Each node on the Ethernet network must have a unique IP address.

Subnet (FM-4E Only)

This 32-bit parameter indicates the subnet mask used for this node. The subnet mask is used to group devices that are connected on the same physical connection. For a detailed description of Subnet mask refer to the Industrial Ethernet

Overview section in the FM-4 and FM-4 Connectivity Modules Reference Manual (P/N 400508-04). This parameter is configured via the LCD keypad display or through PowerTools Pro.

34

Setting Up Parameters

Gateway (FM-4E Only)

This 32-bit parameter indicates the default Gateway address for the FM-4E. When attempting to communicate with a device on a different Subnet, the message must go through this gateway to reach it’s destination. For a detailed description of the

Gateway address refer to the Industrial Ethernet Overview section in the FM-3 and FM-4 Connectivity Modules Reference

Manual

(P/N 400508-04). This parameter is configured via the LCD keypad display or through PowerTools Pro.

Configuration Group

E

N

The configuration group consists of list boxes for Drive Type and Line Voltage.

Drive Type List Box

Select the drive model for the system you are currently setting up.

Line Voltage List Box

E Series Only

Line Voltage specifies the applied power and adjusts the internal gains to compensate for it. This parameter has two choices: 115 Vac and 230 Vac. If the Line Voltage is set to 230 Vac when the actual applied voltage is 115 Vac, the motor will be slightly less responsive to commands and load disturbances.

The Line voltage must never be set to 115 Vac if the applied voltage is actually 230 Vac. This can cause drive instability and failure, resulting in property damage.

Drive Encoder Output Group

The drive encoder output group consists of the encoder scaling check box and encoder scaling.

Encoder Scaling Check Box

Select this check box to enable the Encoder Scaling parameter of the Drive Encoder Output.

Encoder Scaling

This parameter defines the encoder resolution (lines per revolution) of the drive's encoder output. This feature allows you to change the drive encoder output resolution in increments of 1 line per revolution up to the density of the encoder in the motor.

If the Encoder Output Scaling parameter is set to a value higher than the motor encoder density, the drive encoder output density will equal that of the motor encoder.

Positive Direction Group

The Positive Direction group consists of a clockwise (CW) Motor Rotation Radio Button or a counter-clockwise (CCW)

Motor Rotation Radio Button.

The motion will move in either CW direction or counter-clockwise CCW direction. Perspective of rotation is defined as you face the motor shaft from the front of the motor.

CW Motor Rotation Radio Button

Select this radio button for applications in which CW motor rotation is considered to be motion in the positive direction

(increasing absolute position).

CCW Motor Rotation Radio Button

Select this radio button for applications in which CCW motor rotation is considered to be motion in the positive direction

(increasing absolute position).

Update Rate Group

Trajectory

This parameter configures the interrupt interval for the FM-4 processor. This defines how often the motion program is interrupted and the Control Loop is processed. In the Control Loop, the feedback information is processed and a new position command is generated. Also in the Control Loop, the I/O is scanned. After Control Loop is complete, all messages are

35

FM-4 Programming Module Reference Manual handled. Messages are Modbus data, DeviceNet data, Keypad/Display information, and are only processed if a message is waiting. If no device is querying data from the FM-4 or sending data to the FM-4, then messages do not take up any time.

Once messages have been processed, the remainder of the interrupt is dedicated to running the motion programs of user programs.

Available selections for Trajectory Update are 800, 1200, and 1600 microseconds. The longer the update, the more time is dedicated to the user programs, and the less time dedicated to servo performance. The shorter the update, the more precise the servo performance, but less time is available to process user programs. Diagnostics are available on the Status Online tab when online with the device to help select the ideal setting. (See description of Control Loop Group of online parameters on

page 30 for further information)

Switching Frequency Group

This parameter defines the switching frequency of the drive. For EN drives, the switching frequency must be 10 kHz and cannot be changed. For MDS, the switching frequency can be modified to change system performance. Available selections are 5 kHz and 10 kHz. For more information on this setting refer to the MDS Reference Manual, P/N 400525-01.

Motor View

The Motor view under Setup view is used for many different functions:

1. To see/verify the motor data for a standard motor that had been selected

2. To create a new motor entry in the .ddf file

3. To Run the Auto-Tune feature

4. To store Auto-Tune results into an existing configuration

The primary function of this view is to define the parameters for the given motor that is to be connected to the drive.

Following is a description of all the different functions on the Motor view.

Figure 36: Motor View

Motor Type List Box

Use this list box to select the motor type. PowerTools Pro software will display all the standard motor models and any user defined motors.

36

Setting Up Parameters

Selecting the wrong motor type can cause instability and may cause property damage to the motor and/or drive.

Use Motor Data From .ddf File Check box

When selecting a motor for use with the drive and FM-4 module, the user has two basic options:

1. Use a motor that already exists in the standard motor definition file (StdMotor.ddf) or custom motor definition file

(Motor.ddf).

2. Create a custom motor that has not been used before.

When selecting option 1 from above (use an existing motor), the user simply selects one of the motors from the Motor Type list at the top of the Motor view. Once the user selects a motor from the Motor Type list, the data for that motor is read from

the pertinent .ddf file and then is displayed in the Motor Parameters column on the Motor view (see Figure 36). The

parameters in this column will be dimmed and unavailable because the motor information comes directly from the .ddf file.

If the user wishes to edit one or more of the parameters read from the .ddf file, it is necessary to clear the “User Motor Data

From .ddf File” check box. Clearing the check box will break the “link” between the motor data displayed on this view, and the motor data in the .ddf file. This is necessary because as soon as the user changes any of the values, it no longer matches the .ddf file, and is now in effect a “custom motor”. When the “User Motor Data From .ddf File” check box is cleared, all of the values in the Motor Parameters column will become available, and the Motor Name will be changed to “New Motor” so that there is no association with the existing motor that was previously selected. The user can now change any of the values as desired and give the motor a new name. Once the values have been changed, the motor data only exists within the active configuration. To save the new values into the .ddf file, the user must click on the Save .ddf Values button on the right side of the view.

Motor Parameters Column

Motor Parameters column is a column of data displayed on the Motor view under the Setup view (See Figure 36). This column

of data contains the values for each of the motor data parameters. The values in this column are unavailable if the “Use Motor

Data From .ddf File” check box is selected. This means that since the data is associated with the .ddf file, it cannot be changed.

The values in this column become available when the “Use Motor Data From .ddf File” check box is cleared. The user can then change one or more of the parameter values because there no longer is a link to the data in the .ddf file.

If the user does edit motor parameter values on this view, those values are only stored within that particular configuration file.

In order to save the values to the .ddf file, the user must click the “Save .ddf Values” button on the right side of the view.

Below are the motor parameter with a brief description.

Motor Name

The motor name is limited to 12 characters and must begin with an alpha character (non-numeric character). This is the motor name that will appear in the “Motor Type” list box above.

Peak Current

Specifies the peak current allowed by the motor. The motor manufacturer typically provides the peak current data.

If a system is “drive limited” (meaning that the motor can handle more current than the drive can deliver), the peak current actually used by the system may be lower than the value specified here.

Continuous Current Rating

Specifies the continuous current allowed by the motor. It is used to determine the drive continuous current and peak current limits. The drive can also limit the continuous current to the motor based on the drive capacity. The motor manufacturer typically provides the continuous current data.

If a system is “drive limited” (meaning that the motor can handle more current than the drive can deliver), the continuous current actually used by the system may be lower than the value specified here.

Motor Poles

Specifies the number of magnetic pole pairs (N-S) on the motor. The supported values are 2, 4, 6, 8, 10, 12, 14 and 16 poles.

The motor manufacturer typically provides the motor pole information.

37

FM-4 Programming Module Reference Manual

Rotor Inertia

This parameter specifies the inertia of the motor rotor. The drive uses this parameter to interpret the “Inertia Ratio” parameter.

“Inertia Ratio” is specified as a ratio of reflected load inertia to motor inertia.

Motor KE

Specifies the Ke of the motor. The units are Vrms/ kRPM. The line-to-line voltage will have this RMS value when the motor is rotated at 1000 RPM. The range is 5.0 to 500.0 Vrms/ kRPM. The motor manufacturer will typically provide the Ke data.

Phase Resistance

Specifies the phase-to-phase resistance of the motor. This value is determined by measuring the resistance between any two motor stator terminals with an ohm meter. The range is.1 to 50 ohms.

Phase Inductance

Specifies the phase-to-phase inductance of the motor.

Max Operating Speed

This parameter specifies the maximum speed of the motor when used with a variable speed drive to achieve velocities over the rated base speed of the motor.

Encoder Lines/Rev

Specifies a coefficient for determining the number of encoder lines per mechanical revolution. The supported values are 1 to

16383. The equation for determining the total number of encoder lines per revolutions is: nLines = n*10x where: nLines = Total number of Encoder Lines n = Motor Encoder Lines per Rev Coefficient x = Motor Encoder Exponent

The total number of encoder lines is used both for commutation and for position/velocity control. To properly commutate the motor, the drive must know the electrical angle (the angle between the motor magnetic field and stator coils).

Encoder Lines/Rev Exponent

Specifies a coefficient for determining the number of encoder lines per mechanical revolution. The supported values are 1 to

16383. The equation for determining the total number of encoder lines per revolutions is: nLines = n*10x where: nLines = Total number of Encoder Lines n = Motor Encoder Lines per Rev Coefficient x = Motor Encoder Exponent

The total number of encoder lines is used both for commutation and for position/velocity control. To properly commutate the motor, the drive must know the electrical angle (the angle between the motor magnetic field and stator coils).

Encoder Marker Angle

Specifies the electrical angle at which the marker (Z) pulse occurs with reference to V commutation tracks. This estimate can be off by as much as 30 °.

TS

when the motor is spun in the encoder reference direction. At power-up the drive obtains an initial estimate of the electrical angle from the status of the U, V and W

When the drive receives the marker pulse, the drive will, within one second, gradually shift the commutation to the more accurate electrical angle specified by this parameter. The system will then operate more efficiently.

Encoder U-track Angle

Specifies the electrical angle at which the rising edge of the U commutation track will occur with reference to VTS when the motor is spun in the encoder reference direction.

At power-up the drive looks at the status of the U, V and W commutation tracks and, using this parameter, obtains a crude (±

30 °) estimate of the electrical angle.

38

Setting Up Parameters

Encoder Reference Motion

Specifies the direction of motion assumed in phase plots of the encoder’s quadrature and summation signals. The supported values are CW(1) and CCW(0). Your encoder may have the same phase plot but is generated from a different direction of rotation. This parameter affects the way the drive interprets the quadrature and commutation signals.

Encoder Type

The supported values for this parameter are 1 and 0. If set to a 1 the drive uses the Encoder Marker angle as well as the

Encoder U Angle for commutation. If this parameter is set to a 0, the drive uses only the Encoder U Angle.

Run Auto-Tune Button

The drive has the ability to run an Auto-Tune operation thereby measuring several different motor parameters. Doing so allows the drive to obtain certain parameters that are not typically provided by the motor manufacturer, and also optimizes other drive parameters to work properly with the connected motor/load.

PowerTools Pro allows the user to initiate the Auto-Tune feature from the Motor view.

The following table shows which parameters must be entered in order to run the Auto-Tune feature, and which parameters are measured by the Auto-Tune.

Motor Parameters

Motor Name

Peak Current

Continuous Current Rating

Motor Poles

Rotor Inertia

Motor Ke

Phase Resistance

Phase Inductance

Max Operation Speed

Encoder Lines/Rev

Encoder Lines/Rev

Exponent

Encoder Marker Angle

Encoder U-Marker

Encoder Reference Motion

Encoder Type

Needed to Run Auto-Tune

Yes

Yes

Yes

Yes

Yes

Yes

Measured by Auto-Tune Mode #

1,2,3

1,2,3

1,2,3

1,2,3

1,2,3

3

3

2,3

2,3

All Auto-Tune modes cause motion. It is important to read and understand the warnings and instructions on the Auto-

Tune windows. It is strongly recommended to unload the motor before performing an Auto-Tune.

When online with the drive, to initiate an Auto-Tune, click RunAuto-Tune button. The Auto-Tune dialog box opens and contains warnings and instructions related to the Auto-Tune procedure, as well as selection of the Auto-Tune mode. An example of one of the Auto-Tune windows is shown in Figure 38.

39

FM-4 Programming Module Reference Manual

40

Figure 37: Auto-Tune Dialog Box - Auto-Tune Mode 3

After the Auto-Tune Mode has been selected, click Proceed, to start the Auto-Tune. As the Auto-Tune is executing the gray check boxes will show the progress of the Auto-Tune. When the Auto-Tune is completed the Auto-Tune dialog box closes and the auto-tune results will be in the Values from Drive column on the Motor view.

Auto-Tune Mode 1

Auto-Tune Mode 1 provides the encoder information of the motor. Auto-Tune Mode 1 is the most beneficial tuning by providing parameter values that are difficult to measure or vary the most from common motor specifications. Auto-Tune

Mode 1 will rotate the motor for 1 or more revolutions at a slow speed.

With Auto-Mode 1 the test sequence is Moves 1 through 3 consisting of:

Move #1, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Move #2, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Move #3, Vel = 0.15 Electrical Cycles/sec (approx 1 rev/min), Distance < 1.0 Revolutions of motor, Direction = CW

The parameters measured in Auto-Tune Mode 1 are Encoder Marker Angle, U-track Angle, Encoder Reference Motion and

Encoder Resolution.

As Auto-Tune Mode 1 is executed the test is checked off, Phase 1 Encoder Marker Angle, U Angle, Motion.Resolution

Auto-Tune Mode 2

Auto Tune Mode 2 provides and method to determine the motor resistance and inductance. These are used in the current control loop. It is more accurate to make these measurements with external meters. If you do not have measured motor resistance and inductance, you can use auto tune 2.

Auto Mode 2 is a subset of auto mode 3 running Moves 1 through 3:

Move #1, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Move #2, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Setting Up Parameters

Move #3, Vel = 0.15 Electrical Cycles/sec (approx 1 rev/min), Distance < 1.0 Revolutions of motor, Direction = CW

The parameters measured by Auto-Tune Mode 2 are those tested in Auto-Tune Mode 1 plus Phase Resistance and Phase

Inductance.

As Auto-Tune Mode 2 is executed, the completed portion of the test is checked off,

Phase 1 Encoder Marker Angle, U Angle, Motion.Resolution

Phase 2 Voltage for Phase 3

Phase 3 Resistance and Inductance

Auto-Tune Mode 3

Auto Tune Mode 3 provides a method to determine the motor Ke and Rotor Inertia. These are used in the velocity control loop. It is more accurate to use the Motor Ke and Rotor Inertia from the manufacturer. If you do not have manufacturer provided motor Ke and Rotor Inertia specifications, you can run an Auto-Tune Mode 3.

Auto-Tune Mode 3 runs the motor at 75% max motor velocity. If the load is connected this may cause harm to the system or personnel. It is strongly recommended to unload the motor before performing any Auto-Tune Mode.

Auto-Tune Mode 3 is the full auto-tune running Moves 1 through 5:

Move #1, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Move #2, Vel = Max Motor Vel, Distance < (1 / # of motor poles) motor revs, Either Direction

Move #3, Vel = 0.15 Electrical Cycles/sec (approx 1 rev/min), Distance < 1.0 Revolutions of motor, Direction = CW

Move #4, vel < 0.75 max motor velocity, Time = 4 sec, Direction = CW

Move #5 - #12, vel < 0.75 max motor velocity, Distance = 3 Revolutions of the motor, Direction = CW

As Auto-Tune Mode 3 is executing the completed portion of the test is checked off,

Phase 1 Encoder Marker Angle, U Angle, Motion.Resolution

Phase 2 Voltage for Phase 3

Phase 3 Resistance and Inductance

Phase 4 Motor Ke

Phase 5 Rotor Inertia

Values from Drive Column

The Values from Drive column is a group of parameters that are constantly being read from the drive. The theory of operation is that the user will often perform an Auto-Tune function that reads/measures/calculates data. The results of those measurements are read from the drive and displayed in the Values from Drive column. Once they are displayed in PowerTools

Pro (in the Values From Drive column) the user can apply those values to the Motor Parameters column by clicking on the

Apply to Config. button, in the middle of the Motor view (this button looks like a series of arrows pointing from the Values from Drive column towards the Motor Parameters column).

The values in the Values from Drive column are not saved as part of the configuration file. To save these values, the user must use the “Apply to Config” button to save them.

This column is only functional when online with the drive/FM-4 module. When offline, the values in the Values from Drive column will all read zero.

Apply to Config. Button

When the user runs the Auto-Tune feature the results of the Auto-Tune and displayed in the Values from Drive column of the

Motor view and the measured parameter values are only saved in the Drive NVM, and not in the FM 4 module. Therefore, in order to store the new parameter values in the FM module, the Auto-Tune parameter values must be applied to the configuration file. When the user clicks Apply to Config button the values in the Values From Drive column are transferred into the Motor Parameters column. The configuration file then can be saved to disk. The new parameter values must be downloaded by downloading the entire configuration file using Device > Download.

41

FM-4 Programming Module Reference Manual

Save .ddf Values Button

Once the user has entered the data for the motor they are using, they may or may not wish to save the motor data to the

Motor.ddf file so it can be easily recalled at a later time. If the user does not save the motor data to the Motor.ddf file, then the motor data will only reside in the specific application configuration file that it has been entered into.

In order to save the motor data to the Motor.ddf file, click the Save .ddf Values button. This takes all the parameter values and writes them to the Motor.ddf file.

When saving to the .ddf file, if PowerTools Pro finds that a motor already exists with the same name, the User Defined Motor

Name Conflict dialog box will appear. The user must then decide how to proceed with saving the motor data .ddf file.

User Defined Motor Name Conflict Dialog Box

The purpose of this dialog box is to resolve conflicts between the application’s motor settings and those defined in the .ddf file.

The User Defined Motor Name Conflict dialog box opens during the following conditions:

1. From the Motor view, click the Save .ddf values button and the motor already exists with the same name but has different motor parameters

2. Opening an application (or uploading a application), where the Use Motor data from the .ddf file check box is select but the data in the application no longer matches the .ddf file.

This occasionally occurs when a newer version of PowerTools Pro is installed and the parameters for the standard motors has been updated in the .ddf file.

If the motor name does not exist in the .ddf file, it will be written into the file.

42

Figure 38: The User Defined Motor Name Conflict Dialog Box

The User Defined Motor Name Conflict dialog box presents the user with four options on how to proceed with saving the motor data. Those four options are:

Create new motor entry In .ddf File

The user can select to keep the existing data and create a new entry into the motor.ddf file with a different name. After selecting this option, the user simply enters a new name in the Please enter a new motor name text box. Then click OK, the data will be written to the .ddf file using the new motor name.

Overwrite existing .ddf file motor entry

The user can select to overwrite the existing data in the .ddf file with the current data in the Motor Parameters column. If this option is selected, the data in the .ddf file will be overwritten and the overwritten data will be lost forever. The overwritten data cannot be recovered.

If the user attempts to overwrite data for a Standard Motor (in the stdmotor.ddf file), the operation will be canceled and the user will be notified that they cannot proceed. The figure below shows the error message that will be produced when the user

Setting Up Parameters attempts to overwrite a standard motor. In this case, the user would need to change the motor name before saving to the .ddf file.

Load and use motor parameters from matching motor in .ddf file

If this option is selected, the motor data in the Motor.ddf or stdmotor.ddf file for the matching Motor Name will overwrite the data in the Motor Parameters column. After this option is selected, the “Use Motor Data From .ddf File” check box will be selected, and all the parameter values will be unavailable.

Retain existing Motor Parameters without saving to .ddf

If the user selects this option, the values in the Motor Parameters column will not be written to the motor.ddf file, and the values will only reside within the configuration file. The specific motor data values will not be available for selection in the

Motor Type list box because they are not saved to the .ddf file. The “Save .ddf Values” operation is in effect canceled.

Existing Motor Names List Box

This list box is part of the User Defined Motor Name Conflict dialog box and contains all the names of the motors that exist in the motor.ddf and stdmotor.ddf files. When selecting a new name, it is important to select a name that is not already displayed in this list box.

Parameters Not Matching List

This list is part of the User Defined Motor Name Conflict dialog box and displays the parameter value(s) from the Motor

Parameters column that do not match the equivalent parameter value in either the motor.ddf or stdmotor.ddf files, for the motor with the matching name.

This helps the user to determine whether they wish to overwrite, cancel, or create a new motor with this Save .ddf Values operation.

User Units View

The User Units View is used to scale the desired application units into known values. All information for distance, velocity, and accel/decel units are set up here and used throughout the system setup.

By selecting User Units in the Hierarchy Tree, the User Units View will appear on the right (see Figure 39).

43

FM-4 Programming Module Reference Manual

Figure 39: User Units View

Distance Group

Units Name

This is a 10-character name for the distance user units the user wants to use in the application.

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all distance and position parameters throughout the configuration. Using a high number of decimal places will improve position resolution, but will also limit the range of absolute position. You can select from zero to six decimal places of accuracy.

Note

When the number of decimal places are changed in an existing configuration file the Index accel and decel parameters need to be checked.

Scaling

A Characteristic Distance and Length must be established to allow the FM-4 module to scale user units back to actual motor revolutions. This scaling factor is as follows:

Characteristic Distance

This is the distance the load travels (in user units) when the motor travels the characteristic length (in motor revolutions).

Characteristic Length

This is the distance the motor travels (in whole number of revolutions) to achieve one characteristic distance of load travel.

Distance Scaling Examples:

A 1.5" diameter pulley is used to drive a conveyor belt, and the user wishes to use units of inches instead of revolutions.

Units Name — Set to Inches

Decimal Places — Set to desired accuracy 0.000

In one revolution of the motor (or pulley), the belt will travel a distance of one pulley circumference.

= 1.5" x π

44

Setting Up Parameters

= 1.5 x 3.14...

= 4.712 inches / revolution

If the user decides to put a 5:1 reducer on the system, the user simply needs to change the Characteristic Length.

Now the belt travels 4.71" in 5 motor revolutions.

Keep in mind that the characteristic length is always a whole number and the valid range is from 1 to 2000.

Note

User Units may affect end motor speed and could cause trajectory faults.

Because of internal math in the FM-4, some user unit combinations may cause module or drive trajectory faults. The maximum motor velocity allowed by the drive is detailed under the distance section of the User Units View and is labeled

“User Unit Limited Speed”. When the user unit setup is altered in such a way that the maximum motor speed allowed by the drive is less than the maximum speed allowed by the chosen motor, the readout of maximum motor speed allowed by the drive changes to have a red background. If a configuration is downloaded to the FM-4 with a red background on the “User

Unit Limited Speed”, the drive will obtain a trajectory fault at speeds near this velocity. To alleviate this issue, simply remove decimal places from your user units, and/or change the characteristic distance (numerator) of your scaling parameters to be a smaller number that it was. The red background indicating module trajectory faults will go away when the user unit setup is scaled for a realistic accuracy based on the encoder counts per revolution.

Velocity Group

Enable Separate Distance Units Check Box

If selected (enabled), separate distance and velocity units, name and scaling will be enabled. If not enabled, the velocity units, name and scaling will be defined by the Distance Group.

Scaled Distance Name

If the user wants the velocity units to have a different distance scaling than the distance units a name can be entered here up to 10 characters. For example, the user distance units name could be inches while the velocity units name is feet per minute.

Velocity Distance Units Scale Factor

This parameter scales the Velocity Distance Units back to actual distance units. To do this, enter the number of distance user units that are equal to one velocity scaled distance unit.

Separate Distance Units Example:

A user has an application using a leadscrew with a 0.5"/turn lead. The user wants to have Distance Units of Inches, but wants

Velocity Units of Feet so motion can be programmed in feet/minute.

Distance Units Name — Inches

Enable Separate Distance Units — Select check box (enabled)

Scaled Distance Name — Feet

Velocity Distance Units Scale Factor — # of Distance Units / 1 Scaled Distance Unit

1 Foot = 12 Inches

Velocity Distance Units Scale Factor = 12

Time Scale List Box

The time can be one of two values: seconds or minutes. This selection sets the real-time velocity time scale.

45

FM-4 Programming Module Reference Manual

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all realtime velocity parameters throughout the software. Using a high number of decimal places will improve velocity resolution, but will also limit the maximum velocity. You can select from zero to six decimal places of programming resolution.

Acceleration Group

Time Scale List Box

From this list box, select the acceleration time scale to be used for all real-time profiles. The time scale selected will be used for both acceleration and deceleration parameters. You can select from milliseconds or seconds.

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all realtime accel/decel parameters throughout the software. Using a high number of decimal places will improve accel/decel resolution, but will also limit the maximum accel/decel rate. You can select from zero to six decimal places of programming resolution.

Torque Group

Units Name

10-character name for the torque user units.

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all torque parameters throughout the software. Using a high number of decimal places will improve torque resolution, but will also limit the maximum torque. You can select from zero to six decimal places of programming resolution.

Scaling

The amount of torque in user torque units will be set equal to the Percent Continuous Current. This parameter is used to scale the actual torque back into the user defined units. The units of this parameter are % ContinuousCurrent. This scaling factor is used along with the user torque to establish a relationship between torque user units and actual torque.

Master Units View

Master Units View provides the setup parameters for use with synchronized motion. This setup window determines how the encoder signals are interpreted and establishes the scaling for all master units (master distance, master velocity, etc.).

46

Figure 40: Master Units View

Setting Up Parameters

Encoder Setup Group

Master Source

Master Source (MasterAxis.Source) indicates the source of the master encoder input.

FM-4E Only

, select Custom Variable, the Module Variable text box will became available to enter a parameter. The custom variable can be entered two ways: by just typing the parameter into the text box using the program format for the variable, or click the Popup Variables button and the Select Variables from Tree window will open. Select the variable and drag it over to the Module Variable text box.

Select Drive to use the 44-pin Command connector on the front of the drive.

Select Module to use the Sync input connector on the FM-4 module.

FM-4E Only

, select Virtual Master.Counts to use the Virtual Master as the Master Source.

Module Variable - FM-4E Only

The Module Variable (MasterAxis.ModuleSource) text box is only available once the user has selected Custom Variable from the Master Source list box. This field is used to define what parameter will be used as the Master Source. The Module Variable can be entered two ways: by just typing any parameter using the program format for the variable, or click the Popup Variables button and the Select Variables from Tree window will open. Select the variable and drag it over to the Module Variable text box.

Master Polarity

Master Polarity defines the direction of the master encoder that corresponds to a positive master position change.

Master Interpretation

Master Interpretation determines how the incoming pulses are seen to generate the synchronized motion command. This setting allows you to choose the appropriate signal type to match the device generating the master input pulses.

Drive Input Signal

Drive Input Signal is selected based on whether the incoming pulses are Differential (default) or Single Ended.

Sync Output Connector Group

Output Source

Output Source determines which signal will be sent to the Sync Output connector on the FM-4 module. If Motor Encoder

(default) is selected, then the encoder signals from the motor that the FM-4/drive is controlling will be sent out the FM-4 Sync

Output connector. If Drive Encoder Input is selected, then the synchronization signals sent to the Drive 44-pin command connector will be sent to the FM-4 Sync Output connector. If Module Encoder Input is selected, then the same signal coming into the FM-4 Sync Input connector will be sent out the Sync Output connector.

Master Position Setup Group

Define Home Position

Define Home Position is the value that the Master Position Feedback will be set to when the MasterAxis.DefineHome destination is activated. After the MasterAxis.DefineHome has been activated, the MasterAxis.AbsolutePosnValid source will activate.

Rotary Rollover Check Box

If selected, the rotary rollover feature for the Master Axis will be enabled.

Rotary Rollover

If enabled, the Master Position will rollover to zero at the value specified here. As the master encoder counts up, the master position feedback will increase until it reaches the Rotary Rollover value and then reset to zero and continue to count up. If rotating in the negative direction, the master position feedback will decrease until it reaches zero, and then start over at the

Rotary Rollover value.

Master Distance Units Group

The parameters in this group are used to establish the scaling of the master axis into user units.

47

FM-4 Programming Module Reference Manual

Units Name

This is a text string up to 12 characters that will be used to define the units of distance traveled by the master axis for incoming synchronization signals.

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all distance and position parameters used in synchronized motion throughout the software. Using a high number of decimal places will improve position resolution, but will also limit the maximum position. You can select from zero to six decimal places of programming resolution.

Scaling

The scaling factor is defined as MasterAxis.CharacteristicDistance / MasterAxis.Counts. The numerator (top value of the scaling fraction) is the Characteristic Distance. The denominator (bottom value of the scaling fraction) is the # of Counts.

The Characteristic Distance is the number of Master Distance Units that will be traveled per number of counts in the bottom of the fraction. The Counts parameter is the number of incoming pulses it takes to travel the characteristic distance.

Master Velocity Units Group

Decimal Places

Decimal Places determines the number of decimal places to be used in the velocity parameter for all synchronized motion.

Master Acceleration Units Group

Decimal Places

The number of decimal places set in this parameter determines the number of digits after the decimal point used in all realtime accel/decel parameters used for synchronized motion throughout the software. Using a high number of decimal places will improve accel/decel resolution, but will also limit the maximum accel/decel rate. You can select from zero to six decimal places of programming resolution.

Master Position Filter Group

The master position filter is designed for applications where the master encoder input requires smoothing due to low resolution or high gain. These applications include low speed masters, low resolution master encoders, and large follower to master gear ratios.

Filters inherently introduce phase shift (or delay) in the followers response to the master position, velocity and acceleration.

The FM-4 provides Feedforward compensation to correct for these delays introduced by the filter.

The user may set the number of filter samples to be used to “smooth” the master encoder velocity. The more samples used by the filter, the smoother the master velocity signal, however, the more positional delay introduced by the filter. This means that more filtering will cause more position error between master and follower. Feedforward is used in conjunction with the filter to provide accurate positioning performance while still maintaining smooth motion.

The table below can be used to best determine the proper filter settings for your application.

# of

Samples

Disabled

4

8

16

Feedforward OFF

One update of phase shift

(not velocity dependent)

No Filtering

Small Lag (function of speed),

Low Filtering

Medium Lag (function of speed),

Medium Filtering

Large Lag (function of speed),

High Filtering

Feedforward ON

No delay,

No Filtering

Poor at low speed,

Low Filtering

Good at low speed,

Medium Filtering

Best at low speeds,

High Filtering Smoother

Increasing Lag with FF Off

Reduced Lag

Filter parameters cannot be changed using the “Update to RAM” feature. Changes must be fully downloaded before taking effect.

48

Setting Up Parameters

The gray box in the table above denotes the default setting for the master filter parameters.

Enable Check Box

The Enable check box is used to turn on or turn off the Master Position Filter. If selected, the filter is turned on (active) and the user must select the number of samples used by the filter. If clear, the filter is not used.

Samples

Defines the number of samples used by the filter to smooth the master signal. Increasing the number of samples increases smoothness, but also increases lag. See Filter table above to select proper setting.

Enable Feedforward Check Box

The Enable Feedforward check box is used to turn on or turn off feedforward. If selected, feedforward is active. If the check box is clear, feedforward is not used.

Virtual Master View - FM-4E Only

The Virtual Master View is used to create a simulated encoder output. It generates an encoder stream of counts without the actual operation of a motor. This count can be used by the drive itself as an input to the Master Source (MasterAxis.Source).

It can also be transmitted to other drives through the Sync Encoder Output connector and into their Master Sync Input connector.

Figure 41: Virtual Master View - FM-4E Only

Virtual Master View Enabled

Enable Virtual Master Check Box

Enable Virtual Master check box (VirtualMaster.VirtualMasterEnable) by default is clear. Select the check box to enable the virtual master feature.

Virtual Master Setup Group

Distance

Distance (VirtualMaster.Dist) is the incremental distance virtual master will move, in user units, if the virtual master is initiated as an index.

Velocity

Velocity (VirtualMaster.Vel) is the maximum virtual velocity that will be attained by the virtual master. This parameter is in user units.

49

FM-4 Programming Module Reference Manual

Acceleration

Acceleration (VirtualMaster.Accel) is the acceleration rate, in user units, that the virtual master will use to accelerate. This parameter is used when in either jog or indexing mode.

Deceleration

Deceleration (VirtualMaster.Decel) is the deceleration rate, in user units, that the virtual master will use to decelerate in either jog or index mode.

Marker Count

The encoder marker pulses are simulated and this parameter (VirtualMaster.MarkerCount) specifies the number of

VirtualMaster.Counts per encoder marker pulse generated.

Virtual Master Conversion Ratio Group

Scaling

Converts the user units distance into virtual counts.

VirtCnts

The numerator (top value of the scaling fraction) is the VirtualMaster.CharacteristicLength. The characteristic length is the number of virtual counts that will be generated per the distance, in user units, defined by the denominator (bottom number of the scaling fraction).

Distance (UserUnits)

The denominator (bottom value of the scaling fraction) is VirtualMaster.CharateristicDistance, in user units, and is used with

VirtualMaster.CharacteristicLength to create the virtual master conversion ratio.

For example: If the user sets the numerator to 10,000 and the denominator to 1 revs, then 10,000 virtual counts will be sent out when the virtual master produces 1 rev of virtual motion.

Feedrate Group

FeedRate Override

This parameter (VirtualMaster.FeedRateOverride) is used to scale the Virtual Master counts. It can be described as “scaling in real time”. The default setting of 100% will allow all counts to occur in real time. A seeing of 50% will scale time so that all counts are half as fast as they are at 100%. A setting of 200% will scale time so that all count run twice as fast as they would at 100%. Feed Rate Override is always active, and this parameter may be modified via Modbus, Ethernet, or in a program.

FeedRate Decel/Accel

FeedRate Decel/Accel (VirtualMaster.FeedRateDecelerationTime) specifies the ramp used when velocity changes due to a change in the FeedRate Override value. The units of FeedRate Decel/Accel are seconds/100%. Therefore, the user must specify the amount of time (in seconds) to accelerate or decelerate 100% of programmed feedrate.

Position View

The Position View allows you to set up and view the parameters related to drive positioning. In Figure 42, Position has been

selected in the Hierarchy Tree. The right side of the view is divided into groups. An explanation of the groups and their functions is provided below.

50

Setting Up Parameters

Figure 42: Position View - FM-4E

Settings Group

Define Home Position

This is the value to which the position command will be set when the Define Home destination is activated. This is used in applications which do not use a home routine, but require a known reference point. The units are defined on the User Units

View.

In Position

The In Position (InPosn) source will activate at the end of a move if the absolute value of following error is less than or equal to the In Position Window for the In Position Time.

In Position Window

The absolute value of the Following Error must be less than or equal to this value at the end of an index in order for the InPosn source to activate. This window is set in units specified in the User Units View.

For example:

The In Position window is set to 0.0025 revs. At the end of an index, the following error is calculated to be 0.0012 revolutions. Therefore, the InPosn source will activate.

In Position window is set to .001 inches. If at the end of an index, the following error is calculated to be .0015 inches, then the InPosn source will not activate.

In Position Time

This is the amount of time in seconds that commanded motion must be complete and the absolute value of the following error must be less than the In Position Window for the InPosn source to activate. If set to zero (default), then InPosn will activate as soon as motion stops and the following error is less than the In Position Window parameter.

Limits Group

Enable Following Error Check Box

Select this check box to enable (or disable if the check box is clear) the Following Error Limit. If enabled, a fault will be generated if the absolute value of the following error ever exceeds the value in the following error parameter. If disabled, a fault will never be generated.

Following Error

Following Error is the difference between the Position Command and the Position Feedback. It is positive when the Position

Command is greater than the Position Feedback. If the absolute value of the following error exceeds the value you enter here,

51

FM-4 Programming Module Reference Manual the drive will generate a Following Error Fault (F). All accumulated Following Error will be cleared when the drive is disabled.

The Following Error Limit is defined in user units.

Enable Software Travel Limits Check Box

Select this check box to enable (or disable if clear) the software travel limits. If disabled, the software travel limits are not monitored.

Software Travel Limits

Software Travel limits can be used to limit machine travel. They are often setup inside the hardware travel limits to add another level of security or protection from exceeding the machines travel limits. The FM-4 module constantly monitors the feedback position, and if this position exceeds the values entered for Software Travel Limit + or -, then the drive will decel to a stop. Software Travel Limits are not functional unless the Absolute PosnValid source is active. AbsolutePosnValid is active upon successful completion of a home or the DefineHome destination is activated.

To recover from a software travel limit, a jog may be commanded in the opposite direction of travel. For example, if a software travel limit - is hit, then the axis can be jogged in the + direction.

Software Travel Limit +

If the absolute position is greater than or equal to this value the Software Travel Limit Plus Active source shall activate.

A rising edge occurs when the absolute position is greater than or equal to the parameter Software Travel Limit +. A falling edge will be generated as soon as the above is not true.

Software Travel Limit -

If the absolute position is less than or equal to this value the Software Travel Limit Minus Activate shall activate.

A rising edge occurs when the absolute position is less than or equal to the parameter Software Travel Limit -. A falling edge will be generated as soon as the above is not true.

Rotary Group

Rotary Rollover Check Box

Select this check box to enable (or disable if clear) the rotary rollover feature.

Rotary Rollover

This parameter is used in rotary applications and determines the position at which the internal position counter will be reset to zero.

Example:

The user has a rotary table application with distance user units of degrees, 360.00 degrees/1 rev. The Rotary Rollover would be set to a value of 360°.

The motor is traveling in the positive direction. As the feedback position reaches 359.999 and continues on, the feedback position will reset (or roll-over) to zero. If the motor changes direction and travels in the negative direction, the position will rollover at 0 to 359.999 degrees and count down. The resolution of the rotary rollover point is determined by the Distance

Units Decimal Places parameter on the User Units view in the PowerTools Pro software.

If an absolute index is used with a non-zero rotary rollover point, the FM-4 module will calculate the shortest path to its destination and move in the required direction.

To force the motor to run a certain direction, use the Rotary Plus or Rotary Minus type of indexes.

Online Tab (not shown)

While online, the following real-time data will be displayed.

Motor Position Group

Position Command

This is the commanded position in user units generated by the FM-4 module.

52

Setting Up Parameters

Position Feedback

This is the feedback position of the motor in user units.

Following Error

The Following Error is the difference (in user units) between the Position Command and the Position Feedback. It is positive when the Position Command is greater than the Position Feedback.

Encoder Position

The motor position in encoder counts since power up when the value was set to zero. This is a signed 32-bit value.

Velocity View

The Velocity View allows the setup of feedrate override details.

By selecting Velocity in the Hierarchy Tree, the Velocity View will appear on the right (see Figure 43).

Figure 43: Velocity View

Settings Group

FeedRate Override

This parameter is used to scale all motion. It can be described as scaling in real time. The default setting of 100% will allow all motion to occur in real time. A setting of 50% will scale time so that all moves run half as fast as they do at 100%. A setting of 200% will scale time so that all moves run twice as fast as they would at 100%. FeedRate Override is always active and affects all motion, including accels, decels, dwells, and synchronized motion. This parameter may be modified via Modbus or in a program.

FeedRate Decel/Accel

The FeedRate Decel/Accel parameter specifies the ramp used when velocity changes due to a change in the FeedRate

Override value. The units of FeedRate Decel/Accel are Seconds/100% of FeedRate. Therefore, the user must specify the amount of time (in seconds) to accelerate or decelerate 100% of FeedRate.

Examples:

Feedrate Override is set to 100% (default). The user wishes to slow down motion to 50% of programmed velocity. If FeedRate

Decel/Accel is set to 1 Sec/100%, when the FeedRate Override parameter is changed to 50%, it will take 0.5 seconds to decelerate to 50% velocity.

Decel/Accel Time = FeedRate Decel/Accel * % Change in FeedRate

= (1 Sec/100%) * (100% - 50%)

53

FM-4 Programming Module Reference Manual

= 0.5 Seconds

A user wishes to accelerate from 100% programmed velocity to 175% in 0.5 Seconds. Therefore, the value they need to enter for Feedrate Decel/Accel is calculated as follows:

FeedRate Decel/Accel = Decel Time/ % Change in FeedRate

= (0.5 Sec) / (175% - 100%)

= 0.5 Sec / 75%

= (0.5 Sec) / (100% * 75%)

= 0.66 Sec / 100%

Online Tab (not shown)

If online, this view will show the limits group and the velocity group.

Velocity Group

Velocity Command

The Velocity Command is the actual command generated by the FM-4 module to the motor in user units.

Velocity Feedback

This parameter is the actual feedback motor velocity in user units.

Ramps View

The Ramps View allows the user to define various accel/decel ramps used under typical application conditions. By selecting

Ramps in the Hierarchy Tree, the Ramps View will appear on the right (see Figure 44).

Figure 44: Ramps View

Settings Group

Acceleration Type

The Acceleration Type list box display the various acceleration types: 5/8 S-Curve, 1/4 S-Curve, Linear, and S-Curve.

This is used to select the acceleration/deceleration type for all motion (homes, jogs and indexes). The “S-Curve” ramps offer the smoothest motion, but lead to higher peak acceleration/deceleration rates. “Linear” ramps have the lowest peak acceleration/deceleration rates but they are the least smooth ramp type. “5/8 S-Curve” ramps and “1/4 S-Curve” ramps use

54

Setting Up Parameters smoothing at the beginning and end of the ramp but have constant (linear) acceleration rates in the middle of their profiles.

The “5/8 S-Curve” is less smooth than the “S-Curve” but smoother than the “1/4 S-Curve”.

S-Curve accelerations are very useful on machines where product slip is a problem. They are also useful when smooth machine operation is critical. Linear ramps are useful in applications where low peak torque is critical. Below is a comparison of the 4 ramp types:

S-Curve: Peak Acceleration = 2 x Average Acceleration

5/8 S-Curve: Peak Acceleration = 1.4545 x Average

1/4 S-Curve: Peak Acceleration = 1.142857 x Average Acceleration

Linear: Peak Acceleration = Average Acceleration

Honor Distance Enable Group - FM-4E Only

User Ramps/Auto Calculate Ramps

The user has the ability to select one of two ramp control types for the entire motion control system. By default, User Ramps is selected, The user can change the ramp controls in PowerTools Pro and perform a download to make the change, or the parameter AutoCalcRampsEnable can be turned On or Off within a program. To enable User Ramps, AutoCalcRampsEnable should be turned Off, and to enable Auto Ramps, AutoCalcRampsEnable should be turned On. Once a motion profile is in progress, changes to this parameter will be ignored until the next motion is initiated. See the description of each of the ramp types below.

User Ramps Radio Button

Prior to the introduction of this feature, User Ramps was the only ramp control type available. When User Ramps are enabled, the Acceleration or Deceleration ramp entered by the user will ALWAYS be used during a motion profile, even if that means the motor must overshoot the entered stopping position. Under this circumstance, the acceleration or deceleration ramp would be honored, and therefore the motor may need to reverse directions after coming to a stop in-order to reach the user entered target position. This scenario most often occurs when using Compound or Blended Index instructions within a program. During Compound or Blended indexes, the user occasionally does not enter an aggressive enough acceleration or deceleration ramp to reach the target velocity within the specified distance. See Figure 46 and Figure 47 below for examples of how User Ramps work. For more information on Index.#.CompoundInitiate and/or Index.#.BlendInitiats, see the programming section of this manual.

Auto Calculate Ramps Radio Button

When Auto Calculate Ramps is selected the drive will automatically calculate the necessary ramp to reach the target velocity within the user specified distance without any overshoot. In this scenario, the user entered acceleration of deceleration rate is ignored, See the figures below for examples of how Auto Calculate Ramps work.

Index 0

Index 1

Distance

(Revs)

20

3

Velocity

(RPM)

1250

500

Accel

(RPM/sec)

2000

500

Decel

(RPM/sec)

3000

500

55

FM-4 Programming Module Reference Manual

= Index 0

= Index 1

V

1

1250

500

3

4

2

t

Compound Index

User Ramps

Blended Index

User Ramps

Compound Index

Auto Ramps

Blended Index

Auto Ramps

1. Index.1.Accel specified by user is used to decelerate from Index.0.Vel, to Index.1.Vel, but overshoots since ramp is not aggressive enough to reach Index.1.Vel within Index.1.Dist of 3 Revs.

2. Index.1 begins at Index.1.Vel but since Index.1.Decel specified by user is not aggressive enough to decelerate to zero velocity within Index.1.Dist of 3 Revs slight overshoot occurs.

3. Index.1 begins at Index.0.Vel and ramp is automatically calculated to reach zero speed within Index.1.Dist of 3 Revs without any overshoot. If Index.1.Accel and or Decel were aggressive enough to reach zero speed within 3 Revs, they would have been used instead of automatically calculating the ramp.

4. Index.1 begins at Index.1.Vel and ramps is automatically calculated to reach zero speed within Index.1.Dist of 3 Revs without any overshoot. If Index.1.Decel was aggressive enough to reach zero speed within 3 Revs, it would have been used instead of automatically calculating the ramp.

Figure 45: Ramps Examples of a Fast Index to a Slower Index

56

Setting Up Parameters

Index 0

Index 1

Distance

(Revs)

5

20

Velocity

(RPM)

500

1250

Accel

(RPM/sec)

1000

2000

Decel

(RPM/sec)

1000

2000

= Index 0

= Index 1

V

1250

1

4

2

3

500

t

Compound Index

User Ramps

Blended Index

User Ramps

Compound Index

Auto Ramps

Blended Index

Auto Ramps

1. Index.0.Accel specified by user is used to accelerate up to Index.0.Vel. Index.0.Accel is aggressive enough to reach

Index.0.Vel within Index.0.Dist of 5 Revs. Since indexes are compounded together, Index 1 begins at Index.0.Vel.

2. When indexes are Blended, Index 0 should end at velocity of Index 1, but Index.0.Accel is not aggressive enough to reach

Index.1.Vel within Index.0.Dist of 5 Revs. Therefore, entire distance of Index 0 is used to accelerate towards

Index.1.Vel.

3. Acts the same as the Compound with User Ramps because Index.0.Accel entered by user is aggressive enough to reach

Index.0.Vel of 500 RPM. If Index.0.Accel entered by the user was not aggressive enough to reach 500 RPM within 5

Revs, necessary ramp would be calculated.

4. Acceleration ramp is automatically calculated to reach Index.1.Vel within Index.1.Dist of 5 Revs. If user had entered a ramp aggressive enough to reach Index.1.Vel within 5 Revs, no automatic ramp calculation would be required, and the user entered acceleration rate would be followed.

Figure 46: Ramps Examples of a Slow Index to a Faster Index

Ramps Group

Stop Deceleration

The value you enter here defines the deceleration rate which is used when the Stop destination is activated. The default is 100

RPM/second.

The Stop destination is found in the Ramps Group in the Assignments view.

Feedhold Decel/Accel

When the Feedhold destination is activated, the motor will decelerate to a stop in the time specified by the

FeedholdDecelTime parameter. When feedhold is cleared, the motor will accelerate back to speed in the same specified period of time.

Feedhold is a means to halt the motor within a velocity profile and then return to the profile later at the exact same place in the profile. Feedhold does not ramp and does not decelerate in terms of velocity. Instead, it stops by decelerating time. For

57

FM-4 Programming Module Reference Manual example, if the motor is running at 50 revs/second and feedhold is activated with 2 seconds specified in the

FeedholdDecelTime parameter, then the motor will actually slow and stop in 2 seconds as measured time (on a time/velocity profile) goes from 100% to 0%.

Travel Limit Decel

The value entered here is the deceleration ramp that is used when a software or hardware travel limit is hit.

Torque View

The Torque View allows you to edit torque level and limit parameters as well as view real-time torque values when online.

By selecting Torque in the Hierarchy Tree, the Torque View will appear on the right (see Figure 47). The right part of the

window is divided into groups. An explanation of the groups and their functions is provided below.

Figure 47: Torque View

Settings Group

Torque Level

This parameter sets the activation point for the Torque Level Active source. If set to 100%, the Torque Level Active source will activate any time the Torque Command reaches or exceeds 100% continuous. This parameter is specified in Torque User

Units.

Limits Group

Torque Limit

This parameter sets the value to which the Torque Command will be limited when the Torque Limit Enable destination is active. To make the Torque Limit always active, assign the Torque Limit Enable destination to the Initially Active source on the Assignments view.

Peak Torque

Displays the Peak Torque for the motor drive combination setup in the Setup View.

Online Tab

If online, this view will show the Torque Command, Limited Torque, Foldback RMS, and Shunt Power RMS.

58

Setting Up Parameters

Distance Recovery View - FM-4E Only

When initiating gear or cam using the Master Axis to provide synchronization, distance is lost as we must follow the acceleration limitations. This distance can be recovered when at velocity by adding a distance recovery index on top of the gear operation or cam. This view defines the limits of that recovery index.

Gearing uses distance recovery after accelerating from zero to a locked state. Camming uses distance recovery after using the

Resume process.

Figure 48: Distance Recovery View - FM-4E Only

Gear and Camming Distance Recovery Group

Enable Distance Recovery Check Box

The Enable Distance Recovery Check box (DistanceRecovery.DistanceRecoveryEnable) is clear (disabled) by default. Select the check box to enable the additive distance recovery index feature.

Velocity

This parameter (DistanceRecovery. Vel) is the velocity limit of the distance recovery index in user units.

Acceleration

Acceleration (DistanceRecovery. Accel) is acceleration rate for the distance recovery index in user units.

Deceleration

This (DistanceRecovery. Decel) is the deceleration rate for the distance recovery index in user units.

Tuning View

The Tuning View allows you to modify tuning parameters based on specific application information.

By selecting Tuning in the Hierarchy Tree, the Tuning View will appear on the right (see Figure 49). The right part of the

window is divided into groups. An explanation of the groups and their functions is provided below.

For help on calculating tuning parameters and more in-depth tuning information, turn to “Tuning Procedures” on page 229.

59

FM-4 Programming Module Reference Manual

Figure 49: Tuning View

Load Group

Inertia Ratio

Inertia Ratio specifies the load to motor inertia ratio and has a range of 0.0 to 50.0. If the exact inertia is unknown, a conservative approximate value should be used. If you enter an inertia value higher than the actual inertia, the resultant motor response will tend to be more oscillatory.

Friction

This parameter is characterized in terms of the rate of friction increase per 100 motor RPM. If estimated, always use a conservative (less than or equal to actual) estimate. If the friction is completely unknown, a value of zero should be used. A typical value used here is less than one percent.

Low Pass Filter Group

The Low Pass Filter will reduce machine resonance due to mechanical coupling and other flexible drive/load components by filtering the command generated by the velocity loop.

Low Pass Filter Enable Check box

When this check box is selected it enables a Low Pass Filter to be applied to the output of the velocity command before the torque compensator.

Low Pass Frequency

This parameter defines the Low Pass Filter cut-off frequency. Signals exceeding this frequency will be filtered at a rate of 40 dB per decade. The default value is 600Hz.

Tuning Group

Response

The Response adjusts the velocity loop bandwidth with a range of 1 to 500 Hz. In general, it affects how quickly the drive will respond to commands, load disturbances and velocity corrections. A good value to start with (the default) is 50 Hz. The maximum value recommended is 80 Hz.

Enable Feedforwards Check Box

When feedforwards are enabled, the accuracy of the Inertia and Friction parameters is very important. If the Inertia parameter is larger than the actual inertia, the result could be a significant overshoot during ramping. If the Inertia parameter is smaller than the actual inertia, following error during ramping will be reduced but not eliminated. If the Friction parameter is greater

60

Setting Up Parameters than the actual friction, it may result in velocity error or instability. If the Friction parameter is less than the actual friction, velocity error will be reduced but not eliminated.

Position Error Integral Group

Time Constant Check Box

When this check box is selected it enables the Time Constant parameter.

Time Constant

Position Error Integral is a control term, which can be used to compensate for the continuous torque required to hold a vertical load against gravity. It is also useful in low speed applications, which have high friction.

The user configures this control term using the “Position Error Integral Time Constant” parameter. This parameter determines how quickly the drive will correct for in-position following error. The time constant is in milliseconds and defines how long it will take to decrease the following error to 37 percent of the original value. In certain circumstances the value actually used by the drive will be greater than the value specified here.

Min Time Constant = 1000/Response

For example, with “Response” set to 50, the minimum time constant value is 1000/50 = 20 msec.

Faults View

The Faults View displays any active faults when online. Figure 50 below shows the Faults view offline.

Figure 50: Faults View - Offline

When online and a fault is detected, the Faults window opens, showing the fault condition and allows the fault to be reset or ignored. Pressing Reset attempts to reset the fault if the cause of the fault has been removed. Pressing Ignore just closes the faults window.

61

FM-4 Programming Module Reference Manual

Figure 51: Faults Window

When online, the Active Faults window, Reset button and Power Up group window become active. There will also be three tabs that appear, Fault Log, Fault Counts, and Drive Fault Log.

Figure 52: Faults View Online - Faults Log Tab

Active Faults Group

The Active Faults group contains the Active Faults window.

Active Faults Window

This window displays any active faults in the system. Those faults which do not require a reboot can be cleared by clicking

on the Reset button. For more detailed fault information, refer to “Diagnostics and Troubleshooting” on page 237.

Power Up Group

These parameters will be active when online with the drive.

Power Up Count

This parameter shows the numbers of times the drive that the FM-4 is attached to has been powered up since the last reset be the factory.

Power Up Time

This parameter shows the time, in hours, since the drive was last powered up.

Total Power Up

This parameter shows the total time that the drive has been powered up since reset by the factory.

62

Setting Up Parameters

Fault Log Tab

The Fault Log tab is visible when online and consists of a list of the ten most recent faults detected by the drive or module.

These are saved in non-volatile memory to be preserved during power down.

Faults are listed in reverse order of occurrence-the most recent fault is listed first, and older faults are pushed off the list.

Fault Code

The fault code has the same description of the fault that is or was reported in the Active Faults window.

Fault Sub Code

The fault subcode applies to only a few faults and provides some additional information about the fault when available. When there is no additional information for the fault, OK is displayed.

Power Up (Counts)

This is the module’s power up counter at the time of the fault.

Time (Hours.Minutes)

This is the drive’s total power up time in tenths of an hour at the time of the fault.

Fault Counts Tab

Figure 53: Fault View - Fault Counts Tab

The Fault Counts tab is visible when online and consists of a list of all supported faults and the number of times each fault has been detected. Most of the counts start at zero following a power up or a configuration download.

63

FM-4 Programming Module Reference Manual

A few faults are saved in non-volatile memory so that the total number of times they have occurred can be easily viewed.

These faults tend to have hardware significance.

Fault Code

This is the faults parameter name.

Fault Counts

This is the number of times that the fault has occurred.

Clear Module Counts button

Pressing this control button will zero the Fault Counts of all module faults.

Drive Fault Log Tab

Figure 54: Faults View - Drive Fault Log Tab

The Drive Fault Log tab is visible when online and consists of a list of the ten most recent faults detected by the drive. These are saved in the drive’s non-volatile memory to be preserved during power cycles. Faults are listed in reverse order of occurrence so that the most recent is listed first.

Fault Code

The fault code has the same description of the fault that is or was reported in the Active Faults window.

Power Up (Counts)

This is the Drive Power Up Counts when the fault was detected.

Time (Hours.Minutes)

This is the Drive Power Up Time when the fault was detected.

Setup NVM View

At power-down, parameters can be saved to Non-Volatile Memory (NVM). See the “How Communications Work” section of the “Operational Overview” chapter for more details. In PowerTools Pro, you can customize which parameters will be saved in non-volatile memory.

64

Setting Up Parameters

Figure 55: Setup NVM View

NVM Warning: Assigning parameters to NVM could shorten the life of your FM-4 or FM-4!

The Non-Volatile memory list displays the parameters that will be saved so they can be restored after a powerdown. A command to store these parameters into the NVM is given to the module whenever a parameter on the list changes value (via a program or a communications network). Currently the NVM in the FM-4 is rated at a minimum, 1 million writes.

Therefore, do not add parameters to the NVM list if these parameters will be changing more than an average of 1 time every

30 seconds.

Devices / Vars Group

PLS View

The PLS View allows users to define Programmable Limit Switches (PLS) for advanced machine operation.

By selecting PLS in the Hierarchy Tree, the PLS View will appear on the right (see Figure 56).

65

FM-4 Programming Module Reference Manual

66

Figure 56: PLS View

A PLS can be used to turn on or off a bit based on feedback position, commanded position, or master feedback position. Eight global PLS’s are available for a single application. To operate a PLS, first it must be enabled (see the PLS enable destinations in the assignments view) and then the Absolute Position Valid source must be active. Each PLS has its own OnPoint and Off

Point, as well as a Rollover Point.

The terms OnPoint and Off Point assume movement in the positive direction. Those labels should be reversed if traveling in the negative direction.

Number of PLS Points

This parameter determines the number of PLS Points that will be used. Count always begins with 0, so 5 points will be 0 to

4. Up to eight PLS points may be used simultaneously.

Source

The source list box is used to select the source for the individual PLS and reference its OnPosn and OffPosn to determine the

PLS.#.Status parameter. The source of a PLS can be assigned to the motor axis (MotorPosnFeedback, MotorPosnCommand) or a master synchronization signal (MasterPosnFeedback). The FM-4E can also use the real time clock from the drive’s builtin microprocessor (FreeRunTime). The term motor axis refers to the motor being controlled by the FM-4/drive combination.

The source list box is used to select the source for the individual PLS.

On Point

PLS.#.Status will be active when the selected source position is between the PLS.#.OnPosn and the PLS.#.OffPosn. Assume that the PLS.#.Direction is set to "Both". When traveling in the positive direction and the feedback position executes the

OnPosn, the PLS.#.Status will activate. As the motor continues in the same direction, the PLS.#.Status will deactivate when feedback position reaches or exceeds the OffPosn. If motor travel changes to the negative direction, the PLS.#.Status will activate when the feedback position reaches the OffPosn, and will deactivate when it continues past the OnPosn. All on/off positions are defined in user units.

PLS.#.Status will be active if:PLS.#.OnPosn < Feedback Position ≤ PLS.#.OffPosn

Setting Up Parameters

Off Point

PLS.#.Status will be active when the selected source position is between the PLS.#.OnPosn and the PLS.#.OffPosn. Assume that the PLS.#.Direction is set to "Both". When traveling in the positive direction and the feedback position reaches the

OnPosn, the PLS.#.Status will activate. As the motor continues in the same direction, the PLS.#.Status will deactivate when feedback position reaches or exceeds the OffPosn. If motor travel changes to the negative direction, the PLS.#.Status will activate when feedback position reaches the OffPosn, and will deactivate when it continues past the OnPosn.

PLS.#.Status will be active if:PLS.#.OnPosn < Feedback Position ≤ PLS.#.OffPosn

If using negative values for your OnPosn and OffPosn, the most negative value should go in the OnPosn parameter, and the least negative value should go in the OffPosn.

If the PLS has a rollover point, and the OnPosn is greater than the OffPosn, the PLS will be active whenever the position feedback is not between the On and Off positions, and in-active whenever the position feedback is between the two positions.

However, the PLS.#.Status will not turn on until it reaches the OnPosn the first time.All on/off positions are defined in user units.

Direction

This parameter specifies the direction of motion that a particular PLS output will function. If set to Both, the PLS will activate regardless of whether the motor (or master motor) is moving in the positive or negative direction. If set to Plus, the PLS will activate only when the motor is moving in the positive direction. If set to Minus, the PLS will activate only when the motor is moving in the negative direction.

For example: A flying cutoff or flying shear application may use this feature to activate the PLS to fire the knife only when the axis is moving in the positive direction.

If accessing this parameter from a network, the following table displays values for this 16-bit inter.

0

1

2

3

N/A

Both

Plus

Minus

Rotary Enable

This parameter is used to enable the RotaryRolloverPosn for this PLS.

Rollover Point

This parameter is the absolute position of the first repeat position for this PLS. When enabled it causes the PLS to repeat every time this distance is passed. The repeating range begins at an absolute position of zero and ends at the

RotaryRolloverPosn.

For example, in a rotary application a PLS could be setup with an OnPosn of 90 degrees and an OffPosn of 100 degrees. If the RotaryRolloverPosn is set to 360 degrees the PLS would come on at 90, go off at 100, go on at 450 (360+90), go off at

460 (360+100), go on at 810 (2*360+90), go off at 820 (2*360+100), and continue repeating every 360 degrees forever.

FM-4E Only

- Example: if the source of the PLS is FreeRunTime, this parameter is the time of the first repeat for this PLS.

When enabled it causes the PLS to repeat every time this time is passed. The repeating range begins at the beginning of the trajectory update rate and ends at the RotaryRolloverPosn.

Capture View

Many applications require the ability to accurately capture a position at an exact moment in time so that the motion profile can be repeatably time accurate. The FM-4E module allows for this by using the Capture component. The Capture component is fully controlled by the user through the Assignments View or through the Programs View. When the capture is activated,

67

FM-4 Programming Module Reference Manual the following parameters are captured and stored: Time, Command Position, Feedback Position, and Master Feedback

Position.

Figure 57: Capture View

The user must determine which signals are used to enable, activate, and then reset the Capture component. A

CaptureTriggered destination is then available to indicate to the user that data has been captured and is available for use.

CaptureEnable

CaptureActivate

CaptureReset

Time

Command Position

Feedback Position

Master Position

CaptureTriggered

68

Captured Data

Figure 58: Capture Component

A detailed description of all the Capture parameters is below.

CaptureEnable

The CaptureEnable is used to enable or “arm” the capture component. If the CaptureEnable is not active, then the

CaptureActivate has no effect, and the CaptureTriggered remains inactive. Once the CaptureEnable is activated, the Capture component is ready and waiting for a CaptureActivate signal to capture data. CaptureEnable is a read-only destination on the

Assignments view, and is accessible through a user program.

Setting Up Parameters

CaptureActivate

If the Capture component is enabled and has been reset (CaptureTriggered is inactive), then the rising edge of

CaptureActivate will capture the four data parameters and cause CaptureTriggered to be activated. If the Capture component is not enabled, or has not been reset, the CaptureActivate will be ignored.

CaptureReset

The CaptureReset is used to reset or re-arm the capture component after it has been activated. If the capture has been activated, the CaptureTriggered destination will be active. The capture component cannot capture data again until it has been reset. The capture component will automatically reset itself if the CaptureEnable signal is removed.

CaptureTriggered

The CaptureTriggered signal is read-only and indicates that the Capture component was activated and that data has been captured. CaptureTriggered will activate on the leading edge of CaptureActivate if the Capture component is enabled and reset. Capture Triggered will remain active until CaptureReset is activated.

Name

You can assign a descriptive name to each capture, making the setup easier to follow. The length of the text string is limited by the column width with a maximum of 12 characters. Simply double click on the Name field of any capture’s line to assign a name to it.

Capture Number

This parameter defines the number of Capture objects available. Maximum is eight.

Captured Data

The data that is acquired by the position capture is available to be used as variables in a program. The four parameters can be accessed as follows:

Capture.#.CapturedTime

The time, in microseconds, from a free-running 32-bit binary counter at which CaptureTriggered activated.

Capture.#.CapturedPositionCommand

The command position, in user units, at the time when CaptureTriggered activated.

Capture.#.CapturedPositionFeedback

The feedback position, in user units, at the time when CaptureTriggered activated.

Capture.#.CapturedMasterPostion

The master axis feedback position, in master axis distance units, at the time when CaptureTriggered activated.

69

FM-4 Programming Module Reference Manual

The captured data remains in these parameters until the capture component is reset and CaptureActivate is activated. When the capture component is reset and CaptureActivate is activated, the data related to the previous capture will be over-written by the most recent capture data.

Figure 59: Capture Timing Diagram

Figure 61 is a timing diagram that shows how the different capture related sources and destinations function. The three numbers located on the diagram are associated to the following three notes respectively:

1. The CaptureActivate has no effect when the CaptureTriggered is active. CaptureActivate is ignored until the capture component has been reset.

2. When CaptureEnable is deactivated, CaptureTriggered is deactivated, and the capture component is automatically reset.

The captured data is retained until the capture component is re-enabled and CaptureActivate is activated.

3. CaptureActivate has no effect while the capture component is not enabled.

Assignments that Automatically Use Position Capture

Certain assignments (Sources or Destinations) automatically generate position capture data internally without using the capture component. This data is used by the drive, but is not directly available to the user like the capture component data.

Following is a list of assignments that automatically generate or use captured data.

Sources that generate capture data:

Drive Inputs 1-8

– The Epsilon EP-P drive Inputs 1-8 are constantly monitored by the processor, and when activated will automatically capture related data. The processor controls all resetting requirements. The capture only occurs on the rising edge of an input. When the input is activated, the captured data will automatically be passed to the destination that it is assigned to. The destination may then use the captured data to accurately initiate motion (if it is a motion-related destination).

Motor Encoder Marker

– The rising edge of the motor encoder marker pulse will automatically capture data. This will allow the user to accurately initiate motion on the rising edge of the motor encoder marker pulse. The falling edge of the marker pulse does not capture data.

Master Encoder Marker

– The rising edge of the master encoder marker pulse will automatically capture data. This allows the user to accurately initiate motion on the rising edge of the master encoder marker pulse. The falling edge of the marker pulse does not capture data.

Index/Jog Command Complete

– Activation of the command complete signal at the end of indexes and jogs will automatically capture data. A subsequent index, jog, or dwell can then use the captured data to start itself extremely accurate at the end of the previous motion.

Index/Jog At Velocity

– Activation of the command complete signal at the end of indexes and jogs will automatically capture data. A subsequent index, jog, or dwell can then use the captured data to start itself extremely accurately at the end of the previous motion.

PLS Status

– A rising or a falling edge of a Global PLS will automatically capture data for use in initiating motion. In order to accurately initiate motion from a Global PLS, an assignment can be made from PLS.#.Status to the initiate destination.

70

Setting Up Parameters

Destinations that use captured data:

Index/Jog Initiates

– When one of the sources listed above is assigned to an Index or Jog Initiate, the captured information is automatically applied to the index starting point. This offers extremely high accuracy for initiation of motion, which is beneficial especially in synchronized applications.

Index.#.SensorTrigger

– The sensor trigger destination used in registration indexes can use captured data to accurately calculate the ending position of the index based on the Registration Offset parameter. The Offset distance is added to the captured position to get the accurate stopping position for the registration index.

Queues View

Many applications require the ability to store data in a temporary memory location as the data comes in. The user then has access to the data for use in a program or other operation. The FM-4 modules use an object called a queue to store data in this way. The queue is a first-in-first-out (FIFO) type memory device. In other words, the first piece of data put into the queue is the first piece of data to come out of the queue. The user has complete control over what data is stored in the queue, and when to put data into the queue, as well as when to remove it from the queue.

Figure 60: Queues View

71

FM-4 Programming Module Reference Manual

Clear

Compare

Enable

Queue Object

Data[ ]

Size

Offset

Full Level

Comparitor Select

Name

Exit

Empty

Full

Overflow

72

Data In

Queue Data = X

Data Out

Y = Queue Data

Figure 61: Queue Object and Components Diagram

A detailed explanation of each of the queue components is as follows:

Queue Data

The queue data is loaded into the queue by statements in the user program. Two types of data are most often used with the queue: Position Feedback, and Master Position Feedback.

Queue Size

This is the maximum number of elements that can be stored in the queue. If more pieces of data than this number are in the queue at a time, then a Queue Overflow source will activate.

Queue Offset

The Queue Offset is the value that is added to the Queue Data and then compared to the selected source to determine when the Queue Exit event activates. For instance, if the source in selected source is set to Feedback Position, and the Queue Offset is set to 10, and the user puts the value 5 into the queue, the Queue Exit source will activate when the Feedback Position is greater than or equal to 5 + 10 or 15.

Full Level

The amount of data in the queue is constantly monitored and the Queue Full source will activate when the number of pieces of data in the queue exceeds the Full Level parameter. This is only a flag and does not indicate a fault of any kind.

Source

The Source determines which parameter the sum of the Queue Data and Queue Offset are compared to in order to activate the Queue Exit function. If set to FeedBackPosn (Position Feedback), the sum of the data and offset are compared to the

Position Feedback parameter. If set to MasterPosn (Master Position), then the sum is compared to the Master Feedback

Position parameter, and if set to CommandPosn (Command Position), then the sum is compared to the Motor Commanded

Position.

Name

You can assign a descriptive name to each queue, making the setup easier to follow. The length of the text string is limited by the column width with a maximum of 12 characters. Simply double click on the Name field of any queue’s line to assign a name to it.

Number of Queue Units

This selects the number of Queues available. Maximum of eight.

Setting Up Parameters

Queue Sources and Destinations

Sources

Queue Exit

This source activates when the Comparitor Select parameter is greater to or equal to the sum of the data entered into the queue, and the queue offset.

Queue Empty

This source is active if no data is stored in the queue. It will become inactive when the first piece of data is loaded into the queue and remain inactive until all data has been removed from the queue.

Queue Full

The Queue Full source will activate if the number of pieces of data in the queue equals or exceeds the Full Level parameter.

The source will deactivate when the number of pieces of data in the queue is less than the Full Level.

Queue Overflow

This source activates when there is no more room in the queue to store data. The maximum number of pieces of data is determined by the Queue Size parameter.

Destinations

Queue Clear

This destination automatically clears all of the data out of the queue. The cleared data is not saved and there is no way to recover the cleared data. This is typically activated on power-up of the system to make sure no old data remains in the queue.

Queue Compare Enable

The Compare Enable causes the comparitor internal to the queue to function. If the Compare Enable is inactive, then the

Queue Exit source will never activate. If activated, then the Queue Exit source will activate when the Queue Data plus the

Queue Offset is greater than or equal to the Comparitor Select parameter.

To fully understand the operation of the queue, the following diagram has a more detailed view of the Queue object.

73

FM-4 Programming Module Reference Manual

QueueClear

Set # of Queue Objects = 0 and clear data in queue

IF (# of Queue

Objects = 0)

IF (# of Queue

Objects = or > Full Level)

QueueEmpty

QueueFull

Data In

Queue

Size

Full

Level

Source Select:

MasterPosn

FeedbackPosn

CommandPosn

Data Out

QueueExit

CompareEnable

Queue Offset

Sum

Exit Position

IF (# of Queue

Objects = Queue Size)

QueueOverflow

Figure 62: Detailed Queue Diagram

Timers View - FM-4E Only

The Timer View is used to configure necessary parameters to use Timer objects within an application. Timers are used in many different types of applications to accurately control the timing of a given machine event with respect to one or more previous events. For example: When a digital input turns on, we want to start a program exactly 500 msec later. Or, when an index is complete, we want to hold an output on for exactly 2.000 seconds.

There are several different types of Timers available to the user based on the task they are trying to achieve.

74

Setting Up Parameters

Figure 63: Timers View - FM-4E Only

Number of Timers

This parameter determines the number of Timer objects that are available in the configuration. Use the spin control to change the number of Timers from 1 to 8. The Timers are numbered with a base number of 0. This means that if there are 5 Timers available, they will be numbered 0 through 4.

The number of Timers in the configuration can only be modified while offline.

Timer Name

The user can assign a descriptive name to each Timer, making the configuration easier to follow. The length of the text string is limited by the column width, with a maximum of 12 characters. Spaces are not allowed in the name, but underscores are.

Simply click on the name field to modify the individual Timer Name.

Timer Type

There are several types of Timers available that help you to achieve different tasks. Use the combo box in the Type column to change the individual Timer Type. The Enable is not shown in the diagrams below. Assume in all cases the TimerEnable is ON. Select from these Types:

Edge ON Timer

With this type of timer, when the input of the timer activates, the internal clock begins to count. When the Preset time is reached, the Output of the timer turns ON.

75

FM-4 Programming Module Reference Manual

In the case of the Edge type timer, once the rising-edge occurs on the Input, it doesn't matter what happens to the state of the

Input after that. The Output will always turn ON when the Preset Time is reached (unless the Reset activates before the Preset

Time is reached). The Timer Output will remain ON until the Reset is activated or the TimerEnable is deactivated.

Figure 64: Edge On Timer - Timing Diagram

Level ON Timer

With this type of timer, when the Input of the timer activates, the internal clock begins to count. When the Preset time is reached, the output of the timer turns ON. If the Input of the timer turns OFF before the output turns ON, then the internal clock stops counting and the output will not turn ON. The whole sequence begins again the next time the Input turns ON.

This means that the Input must remain ON for the duration of the Preset Time in order for the Output to turn ON.

The Level On Timer does not use the Reset, but rather, the Output will remain ON as long as the Input remains ON. When the Input turns OFF, the Output will automatically turn OFF.

76

Figure 65: Level On Timer - Timing Diagram

Edge OFF Timer

With this type of timer, when the Input of the timer activates, the Output turns ON automatically. When the Input turns OFF, the internal clock begins to count. Once the Preset time is reached, the Output of the timer turns OFF. As soon as the Input turns OFF, it does not matter what happens to the state of the Input, the Output will turn OFF when the Preset time is reached.

The Output will remain OFF until the Reset is activated.

Setting Up Parameters

Note that if the Input is already ON when the Reset activates, the Output will not automatically activate at that point. The timer controller must see a rising edge on the Input to activate the Output.

Figure 66: Edge Off Timer - Timing Diagram

Level OFF Timer

With this type of timer, when the Input of the timer activates, the Output turns ON automatically. When the Input turns OFF, the internal clock begins to count. Once the Preset time is reached, the Output of the timer turns OFF. If the Input turns ON again before the Preset time is reached, the clock resets to zero and waits again for the Input to turn OFF before starting the count.

The Level Off Timer does not use the Reset, but rather, the Output will remain OFF as long as the Input remains OFF.

Figure 67: Level Off Timer - Timing Diagram

Cumulative ON Timer

This type of timer works exactly like the Level ON Timer, except that if the Input turns OFF before the Preset time is reached, the elapsed time is not reset. The total time that the Input is ON is added together such that when the total time of the Input

77

FM-4 Programming Module Reference Manual being ON reaches the Preset time, the Output turns ON. Figure 6 below shows an example timing diagram of the Cumulative

On Timer.

Figure 68: Cumulative ON Timer, No Reset - Timing Diagram

Additionally, a Reset signal can be used to clear the cumulative timer and restart it at zero. The figure below shows an example of this.

78

Figure 69: Cumulative ON Timer with Reset - Timing Diagram

Cumulative OFF Timer

This type of timer works exactly like the Level OFF Timer, except that with this type of timer, when the Input of the timer activates, the output turns ON. When the Input turns off, the internal clock begins to count. Once the Preset time is reached,

Setting Up Parameters the Output of the timer turns OFF. If the Input turns ON again before the Preset time is reached, the clock resets to zero and waits again for the Input to turn OFF before resuming the count again.

Figure 70: Cumulative OFF Timer - Timing Diagram

Additionally, a Reset signal can be used to clear the cumulative timer and restart it at zero. The figure below shows an example of this.

Figure 71: Cumulative OFF Timer with Reset - Timing Diagram

Watchdog Timer

With this type of timer, when the Enable of the timer activates, the internal clock begins to count. If a rising edge is seen on the Input before the Preset Time is reached, the Elapsed Time is set to zero and the internal clock again starts counting immediately. The duration that the Input remains on does not have any effect on the Output. If at any point, the Elapsed Timer

79

FM-4 Programming Module Reference Manual reaches Preset time, the Output turns ON. The Output will remain ON until the Timer Reset is activated. If a rising edge is seen on the Input while the Output is ON, it will be ignored and the Elapsed Time will NOT be reset.

Figure 72: Watchdog Timer - Timing Diagram

One Shot

With this type of timer, when the Input activates, the internal clock begins to count. Once the Preset time is reached, the

Output of the timer turns ON. If the Input of the timer turns OFF before the Output turns ON, then the internal clock keeps counting and the Output will turn on when Preset time is reached. If the Output is active and a rising edge of the Input timer is received the Output will be reset. The Output will activate once the Preset time has past.

In the case of the One Shot type timer, once the rising-edge occurs on the Input, it does not matter what happens to the state of the Input after that during the Preset time. When past the Preset time and the Output is still active and a rising-edge occurs on the Input the timer will reset. The Output deactivates and will not become active until the Preset time has past.

Input

Output

Active

Preset Preset Preset

80

Figure 73: One Shot Timer - Timing Diagram

Timer Timebase

This parameter is used to select the desired Timebase for each timer object. If you want to control the Timer using actual time

(seconds, or milliseconds, or microseconds) then the Timebase should be set to Realtime. Realtime is the default setting for the Timebase of each Timer object. When using Realtime, the Preset value of the Timer is entered in units of seconds. For example, after a program has run, you wish to hold an output active for ten seconds. This is an example that uses Realtime.

Setting Up Parameters

However, if you wanted to hold that same output active for ten revolutions of the Master Encoder instead of ten seconds, you set the Timebase to Synchronized. This means that you are using the master encoder position to control the duration of the

Timer rather than actual Time. When the Timebase of the Timer is set to Synchronized, the Preset is entered in units of Master

Distance rather than units of Time.

Use the combo box in the Timebase column to change the individual Timer Timebase settings.

Timer Preset

This parameter is used to control the actual duration of the timer delay.

If the Timebase is set to Realtime, the user specifies the Preset value in units of seconds with resolution of 1 microsecond

(0.000001 seconds). If the Timebase is set to Synchronized, the Preset value is set in units of Master Distance and the resolution is dependant upon the Master Distance Units Decimal Places configured on the master Units view.

Once a timer has begun timing, if the Preset is modified, it is ignored until the next time the timer starts.

The Preset value must always be positive and can range from 0 to 2147483647 with the decimal place removed (example:

0.000000 to 2147.483647 with six decimal places).

Timer "Elapsed Time"

This is a read only parameter available on the Online tab that acts as feedback to the user to indicate how much of the Preset time has expired. This value starts at zero and counts up to the Preset value.

This parameter has the same resolution as the Preset parameter.

If a Timer is Reset or Enable deactivates, this value is zeroed out automatically. Once the Preset time is reached, the Elapsed

Time will remain at its full preset value until the Timer is Reset, the Enable deactivates, or the Output deactivates.

Timer Signals/Events

The Timer objects has several inputs and outputs that are available on the Assignments view, or within a user program. A block diagram of the Timer object is seen in Figure 76 below.

Input Events

TimerEnable

Timer.#

Output Events

TimerActive

TimerInput

TimerReset

Preset

Type

Timebase Elapsed Time

TimerOutput

Figure 74: Timer Object Block Diagram

Input Events / Destinations

The following signals are available in user programs and as Destinations on the Assignments view.

Timer.#.TimerEnable

The Timer Enable event is level sensitive (not edge only) and is used to enable the Timer object. If a timer is not Enabled, the Output will never activate regardless of the state of the Input.

81

FM-4 Programming Module Reference Manual

When the TimerEnable is deactivated, all output events associated with that Timer object will also deactivate and Elapsed

Time will be set to zero.

All timer types use the Enable even though it is not shown in the individual timing diagrams. See examples of how

TimerEnable affects timer functionality in Figure 77 and Figure 78.

Figure 75: Timer Enable with Edge ON Timer

82

Figure 76: Time Enable with Level ON Timer

Timer.#.TimerInput

The Timer Input event is level sensitive (not edge only) and is used to define when the Timer starts counting against the Preset

(along with the Timer Type). See the various timing diagrams in Figure 66 through Figure 75 to see how the Timer Input affects the Timer Output.

Timer.#.TimerReset

The Timer Reset event is used to reset the ElapsedTime to zero and deactivate the TimerOutput and TimerActive. Level On and Level Off timer types do not utilize the reset, as they reset automatically based on the state of the Input.

The Reset is a self-clearing function meaning that the reset occurs on the rising edge of the Reset input, and internally the reset is set off. Therefore a timer can immediately begin counting again even if the user holds the Reset input ON.

Additionally, when resetting a timer in user program, the user must only set the Reset ON, and the controller will automatically set it off. There is no reason for the user to force the Reset OFF within the program.

Output Events / Destinations

The following signals are available in user programs and as Sources on the Assignments view.

Setting Up Parameters

Timer.#.TimerOutput

The Timer Output state is controlled by the Timer Input, the Timer Type, and the other configuration settings of the Timer object. See the various timing diagrams in Figures 2 through 10 to see how Timer Output functions.

The Timer Output can be assigned to multiple Destinations on the Assignments view just as any other Output Event.

Timer.#.TimerActive

The TimerActive event is used as an indicator that the Timer is actively counting (i.e. In the case of an OFF Timer, the Active event would not activate until the Input turns OFF.).

In the case of Cumulative timers, the Active does not remain on even though the Elapsed Time may be non-zero, if the timer is not currently counting.

When a timer reaches the user defined Preset time, the Output activates, and the Active event turns OFF.

See the timing diagrams for each of the Timer Types for examples of how TimerActive behaves.

Using Timers within Programs

Timers can be used within user programs without the need for assignments. Following are some examples of using Timer functions within a program.

To start a Timer in a program, you must do the following:

Timer.#.Input = ON

The user must also turn the Input off as necessary to control the timer:

Timer.#.Input = OFF

To use the output of a Timer within a program:

Wait For Timer.#.Output = ON (or = OFF)

To change the value of a Timer Preset in a program:

Timer.#.Preset = 12.345 'Seconds

To check if a timer is running:

If (Timer.#.Active = ON) Then

Some code

.

.

Endif

To wait for a Timer to start running:

Wait For Timer.#.Active = ON

Other examples:

If((Timer.#.Active=ON) AND (Timer.#.ElapsedTimer<0.500)) Then

Some code

.

.

Endif

If ((Timer.#.Output = ON) AND (Index.#.CommandComplete)) Then

Timer.#.Reset = ON 'Self-resetting - No need to turn OFF

Endif

Variables View

Variables allow the user to store data related to their system into a parameter, which the user can name. The user must define each user variable by giving it a name, resolution (number of decimal places), and initial value. All user variables are signed

32-bit parameters. Setup for the Variables is done on the Variables view located under the Devices / Vars group in the

Hierarchy Tree. The User Variables view is shown in Figure 77.

83

FM-4 Programming Module Reference Manual

Figure 77: Variables View

The following parameters are part of the Variables definition:

Name

This is a twelve-character string that allows the user to assign a descriptive name to the parameter. Spaces are not allowed in the name of a user variable.

Decimal

This parameter defines the number of digits (up to 6) to be used after the decimal point for the specific variable. This is the maximum resolution that the parameter will have.

Initial Value

This is the initial value of the user variable that will be used on power up. If the user variable has been configured as a Save to NVM parameter, then the value in NVM will overwrite the initial value on power up.

Adding and Deleting Variables

The default number of variables is ten. To add more user variables, click on the up arrow next to the “Number of User

Variables” box on the User Variables view. The maximum number of user variables is 500.

Only the last variable in the list can be deleted. To delete the last variable, simple click on the down arrow next to the “Number of User Variables” box.

User variables are all of a Global type, meaning that they can be accessed from any program.

Online Tab (not shown)

While online with the FM-4, an online tab will be shown on the lower half of the User Variables view. This online tab will show the current value of each of the user variables.

Using Variables in a Program

Once setup, variables can be used inside a program in calculations, motion profile setup, or any other user-desired function.

To access variables, click on the Drag in Variables button in the user program toolbar. Variables is a branch in the Drag In

Variables

selection box.

84

Setting Up Parameters

Bits View

Bits act just like Variables except that they allow the user to store bit level parameters rather than 32-bit parameters. The user may customize each Bit by giving it a Name and an Initial Value.

The Name for each bit may be up to 12 characters in length, and must start in an alpha character (non-numeric character).

Spaces are not available in the Name for a Bit, however the underscore character ("_") may be used.

The Initial Value for each Bit is configured using a check box for the specific bit. To make the Initial Value “On” or “Active”, simply enable the check box for that bit. The default value for each Bit will be “Off” or “Inactive”.

Bits are configured on the Bits view as shown in Figure 78.

User Bits may be accessed on the User Program. Several examples of this are shown below.

Bit.Raise_Table = ON

Wait For Bit.Vacuum_ON = OFF

Wait For Bit.RunPart_A OR Bit.RunPart_B OR Bit.RunPart_C

If (Bit.RunPart_A = ON AND Bit.Vacuum_ON = OFF) Then

Call Program.1

Endif

Bits are turned on by setting them equal to ON, TRUE, YES, SET, or ENABLE (not case sensitive), and can be deactivated by setting them equal to OFF, FALSE, NO, CLEAR, or DISABLE. Setting an individual bit equal to 1 or 0 in a user program will cause a red dot error. The Boolean values listed above must be used.

Figure 78: Bits View

Adding and Deleting Bits

Bits can be added or deleted in groups of 32-bits. Individual bits cannot be added or deleted. The default number of Bits available is 32. To add an additional 32 bits, simply click on the up arrow next to the “Number of Bit Registers” box at the

top of the Bits view (see Figure 78).

To decrease the number of Bits by 32, click on the down arrow next to the “Number of Bit Registers” box. When decreasing the number of Bits, it is always the last 32 bits in the list that will be eliminated.

85

FM-4 Programming Module Reference Manual

32-bit Bit Register and Bit Masking

When using different communications protocols (i.e. DeviceNet, Profibus, Modbus), it is often desirable to access groups of

Bits in a single parameter, rather than having to access them individually. In the FM-4 module it is possible to access 32 Bits in a single parameter. This parameter is named BitRegister.#.Value. Because some of the 32 Bits may be used by the program, and should not be modified from the network communications, it is possible to “Mask Off” certain bits. Masking bits prevents them from being modified in the program when the 32-bit parameter is written to.

When a Bit Register (group of 32 Bits) is written to, the value is then logic-AND’ed with the mask to determine the resulting state of each of the 32 individual bits. If the individual bit value of the 32-bit mask is “1”, then the corresponding bit from the written 32-bit parameter is passed through, and the resulting value stored in the specific bit will be the written bit value. If the bit value of the 32-bit mask is “0”, then that particular bit is blocked (or masked), and the resulting bit value does not change, (Original Value AND NOT 32-Bit Mask) or (Value Written over Network AND 32-Bit Mask). An example of this is shown below.

Original

Value

Bit #31 15 0

1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0

Value written over network

0 1 1 0 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 1 0 1 0 1 0 1 1 0

32-bit Mask

0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Result stored in each bit

1 1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 1 1 1 0 1 0 1 0 1 0 0

Figure 79: Writing to the User Bit Register

The Mask is only used when WRITING to the 32-bit parameter, BitRegister.#.Value. When reading the 32-bit value, all bits are read regardless of the mask.

86

Setting Up Parameters

FM-3/4

Network

Master

Write

Read

Written data is AND’ed with the Mask and then written into 32-bit Value.

Read data is read directly from the

32-bit Value and bypasses the Mask.

Mask

Value

AND

Figure 80: User Bits Read/Write Process

Configuring the Bit Mask Register

The Bit Mask is a 32-bit parameter that can be configured through Power Tools Pro, in the User Program, or over the communications network. The default value for the Mask register is 0xFFFFFFFF (HEX), or all bits ON. To change the Mask

value using PowerTools Pro, navigate to the Mask tab on the Bits view, see Figure 81.

In the Bits Mask view, each bit of the Mask can be set to 0 or 1 individually. ON (or 1) is indicated by a shaded square, and

OFF (or 0) is indicated by an empty square. Bit 31 is the most significant bit in the word, and bit 0 is the least significant bit.

If the bit is shaded, it means that particular bit will be passed through when written.

Each additional group of 32 Bits that are added, a new Mask parameter will appear for that group. Mask 0 will control the mask for Bits 0 through 31. Mask 1 will control the mask for Bits 32 through 63. This sequence repeats for each additional

32 bits that is added.

87

FM-4 Programming Module Reference Manual

Figure 81: Bits Mask View

To configure the mask in a user program, the parameter named BitRegisiter.#.ValueMask is written to. The mask can be written to using Hexadecimal based values or decimal based values. To write a hexadecimal value to the parameter, the hex value must be preceded with the characters "0x". To write a decimal value to the parameter, normal notation is used. For examples of writing the Mask to a value in a program, see below.

For example: BitRegister.1.ValueMask = 0xFFFF0000

This example writes a 1 into all bits of the upper sixteen bits, and 0 into each of the lower sixteen bits using hexadecimal value. To write the same value using decimal notation, the following instruction would be used.

For example: BitRegister.1.ValueMask = 4294901760

This instruction would also write a 1 into each of the upper sixteen bits, and a 0 into each of the lower sixteen bits.

Packed Bits - FM-4E Only

Packed Bits are 16-bit words configured by the user to read and write groupings of bit-level parameters (booleans and input/ output events). Packed Bits are broken into Control Word(s) and Status Word(s). These words, once configured, can then be accessed via communication networks and/or within user programs to handle the bits as desired.

Control Words

A master device such as a PLC or HMI writes to the Control Word(s) as a 16-bit word. The data within that word is then broken into individual bits and written to the bit-level parameters that the user has mapped (see Figure 84). Note that if one of the bit-level parameters within the control word is modified from some other means (i.e. a user program or an Assignment), that the value of that parameter is not written into the Control Word value. For example, if a user initiates a Jog Plus within

88

Setting Up Parameters a user program, Bit0 of the Control Word in the Figure 84 below would not automatically change to 1. Bit0 will only be 1 if the master device sets that bit when writing to the Control Word.

ControlWord.0

PLC

HMI

Modbus, EtherNet I/P,

Profibus, DeviceNet

Bit7

Bit8

Bit9

Bit10

Bit11

Bit12

Bit13

Bit14

Bit15

Value

Bit0

Bit1

Bit2

Bit3

Bit4

Bit5

Bit6

Jog.0.PlusActivate

Jog.0.MinusActivate

Home.0.Initiate

Index.0.Initiate

Index.1.Initiate

Program.0.Initiate

Program.0.Stop

Stop

Feedhold

Figure 82: Control Words Communications Example

Status Words

Status Words are read by the master device as a 16-bit word. The drive assembles the bit-level parameters mapped by the user into 16-bit words for efficient transfer of status information to the master (see Figure 85 below).

StatusWord.0

PLC

HMI

Modbus, EtherNet I/P,

Profibus, DeviceNet

Value

Bit0

Bit1

Bit2

Bit3

Bit4

Bit5

Bit6

Bit7

Bit8

Bit9

Bit10

Bit11

Bit12

Bit13

Bit14

Bit15

DriveOK

PowerStageEnabled

Jog.0.CommandInProgress

Jog.0.CommandComplete

Home.0.CommandComplete

Index.0.CommandComplete

Index.0.Accelerating

Index.0.AtVel

Index.0.Decelerating

Program.0.ProgramRunning

Program.0.ProgramComplete

Figure 83: Status Word Communication Example

89

FM-4 Programming Module Reference Manual

Packed Bits Control Words View

Control Words handle data being written to the user defined drive bit-level parameters. The user configures the Control

Word(s) by dragging-and-dropping the desired bit-level parameters they wish to write into the Control Word mapping. Figure

86 below shows the Packed Bits Control Words view onto which the user has dragged several motion initiate parameters.

90

Figure 84: Packed Bits Control Words View

Enable Packed Bits Control and Status Words Check Box

In order to use the Pack Bits Control Word and Status Word mapping, the function must be enabled by activating the Enable

Packed Bits Control and Status Words checkbox. If the checkbox is clear, the view remains blank (default). If the checkbox is selected, then the mapping tree appears which allows the user to configure the Control Word(s) as desired. This checkbox enables both Control Words and Status Words, and the two cannot be enabled/disabled independently.

Number of Control Words

The user can specify the number of desired 16-bit Control Words for the application. This parameter is adjustable from 1 to

4 words (1 default) using the arrows next to the box. The Number of Control Words cannot be adjusted while online with the device. If online, the user must disconnect communications and then adjust the number of control words.

Control Word Setup Tab

The Control Word Setup Tab is used to map the desired bit-level parameters onto the existing control word(s). The parameters can be mapped using one of two methods:

Drag and Drop: Using the Drag and Drop method, the user navigates the parameter tree, which as been pre-filtered to only show bit-level parameters, to find the desired parameter they wish to control (write to). Once the desired parameter is found, the user left-clicks and hold on the desired parameter. While still holding the left-button down, the user drags the parameter onto the desired bit of the desired Control Word. Then the left-button is released. Doing so will map the selected bit parameter to the selected Control Word bit.

Add Button: Using the Add Button method, the user navigates the parameter tree to find the desired parameter they wish to control. Once the desired parameter is found, the user left clicks on the parameter to highlight it. Then the user clicks on the desired bit of the Control Word to highlight it. Once both are highlighted, the Add button on the right side of the view (see

Figure 86 above) should become enabled. Simply click the Add button and the highlighted parameter will be assigned to the highlighted bit on the Control Word.

Setting Up Parameters

To delete parameters from the Control Word, simply drag and drop the parameter off the control word (see explanation above), or highlight the desired parameter to delete, and click the Delete button on the right side of the view.

Note

Parameters can be mapped while online, but cannot be sent to the drive using the Update to RAM function. Therefore, any changes to Control Word mapping requires a full download.

Online Status Tab (Available Online Only)

While online with the drive, the user can monitor the Control Words value (see Figure 87 below). The data is displayed in binary form for each individual bit of the Control Word(s), as well as hexidecimal and decimal format for each Control Word.

Figure 85: Control Word Online Status View

91

FM-4 Programming Module Reference Manual

Using Pack Bits Control Words

Once the Control Word(s) have been configured by the user, they can be utilized by fieldbus communications (i.e. Modbus,

EtherNet I/P, Profibus, DeviceNet, etc.) or within a user program. Figure 88 shows an example in which the user will write to the Control Word 0 and 1 via Ethernet I/P.

Figure 86: Using Ethernet to Communicate to the Control Words 0 and 1

Pack Bits Status Words View

Status Words work to pass bit-level status information from the drive back to the master device as a 16-bit word(s). The user configures the Status Word(s) by dragging-and-dropping the desired bit-level parameters they wish to read onto the Status

92

Setting Up Parameters

Word mapping. Figure 89 below shows the Packed Bits Status Words view onto which the user has dragged several status parameters.

Figure 87: Pack Bits Status Words View

Enable Packed Bits Control and Status Words

In order to use the Pack Bits Control Word and Status Word mapping, the function must be enabled by activating the Enable

Packed Bits Control and Status Words checkbox. If the checkbox is unchecked, the view remains blank (default). If the checkbox is checked, then the mapping tree appears which allows the user to configure the Status Word(s) as desired. This checkbox enables both Control Words AND Status Words, and the two cannot be enabled/disabled independently.

Number of Status Words

The user can specify the number of desired 16-bit Status Words for the application. This parameter is adjustable using the spinner control from 1 to 4 words (1 default). The Number of Status Words cannot be adjusted while online with the device.

If online, the user must disconnect communications and then adjust the number of status words.

Status Word Setup Tab

The Status Word Setup Tab is used to map the desired bit-level parameters onto the existing status word(s). The method for mapping parameters to the Status Word(s) is the same as for the Control Words. See the Drag and Drop and Add Button methods described in the Control Words section above.

To delete parameters from the Status Word, simply drag and drop the parameter off the status word (see explanation above), or highlight the desired parameter to delete, and click the Delete button on the right side of the view.

Note

Parameters can be mapped while online, but cannot be sent to the drive using the Update to RAM function. Therefore, any changes to Status Word mapping requires a full download.

93

FM-4 Programming Module Reference Manual

Online Status Tab (Available Online Only)

While online with the device, the user can monitor the Status Word value (see Figure 90). The data is displayed in binary form for each individual bit of the Status Word(s), as well as hexidecimal and decimal format for each Status Word.

Figure 88: Pack Bits Online Status Tab

Using Pack Bits Status Words

Once the Status Word(s) have been configured by the user, they can be utilized by fieldbus communications (i.e. Modbus,

EtherNet I/P, Profibus, DeviceNet, etc.) or within a user program. Figure 91 below shows an example in which the user will read Status Word 0 from the drive via Ethernet I/P.

94

Figure 89: Configuring Ethernet to Communicate Status Word 0 from the Drive

Setting Up Parameters

I/O Setup Group

The I/O Setup group contains views that control input and output functions as well as other drive functions. These views are as follows: Selector, Assignments, Input Lines, Output Lines, Analog Inputs, and Analog Outputs. These can be viewed by expanding I/O Setup then simply clicking on any one of the setup views underneath the I/O Setup.

Assignments

External control capability is provided through the use of assignments to the Sources (Drive Inputs and Module Inputs) or the

Destinations (Drive Outputs and Module Outputs). Assignments provide a mechanism for the user to define the internal and external dynamic control structure to separate complex motion profiles. These functions directly correspond to any input or output line on the drive or the FM-4 module. External controllers, such as a PLC or other motion controllers, may be connected to affect or monitor the device’s operation.

The drives are equipped with five optically isolated input lines (one dedicated to a Drive Enable function) and three optically isolated output lines. The FM-4 module has an additional eight input and four output lines.

The drive’s input and output lines can be accessed through the removable 10-pin I/O connector (J6), or through the 44-pin command connector (J5). The FM-4 input and output lines are located on the front of the FM-4 module.

All inputs and outputs are configured as sourcing and are designed to operate from a +10 to 30 Vdc power source. The user is responsible for limiting the output current to less than 200 mA for each digital output.

Assignments View

The Assignments View not only displays information but also makes assignments regarding the source and the destination.

Figure 90: Assignments View

The Assignments View is used to tie a source to a destination. Destinations are functions that need to be triggered, such as

Index Initiates, Program Initiates, Jog Initiates and so on.

Sources are located on the left side of the Assignment View and reflect events that occur in the drive. These events are based on drive activity. By expanding individual groups, you will see more detailed parameters. For example, if you expand the

95

FM-4 Programming Module Reference Manual

Inputs source group, you will see DriveInput.1 through ModuleInput.8, as shown in Figure 90. You can use these events to

trigger certain actions (or destinations) on the right side of the view.

To make an assignment in the FM-4 module occur, you must tie a source to a destination. Any source can be tied to any destination to create the desired system operation.

Creating An Assignment:

Various methods can be used to tie a source (such as DriveInput.1) to a destination, such as Index.0.Initiate.

Drag and Drop Method

First, position the mouse pointer over the source on the left to assign to the destination on the right. Press the left mouse button while over the source, and hold the button down. While holding the left button down, drag the source until the pointer is positioned over the desired destination and release the left mouse button.

Destinations can also be dragged over to sources.

Assign Button Method

Click on both the source and destination you wish to assign to each other. Once both are selected, the Assign button in the

lower left corner of the view will become enabled. Click the Assign button to complete the assignment. Figure 91 shows the

source and destination highlighted, and the Assign button has just been clicked.

Once an assignment has been made, you will see the “Assigned to..” and the “Set From” columns be filled in for the specific sources and destinations. This indicates what destination(s) an individual source has been assigned to, and what source(s) an individual destination is assigned to.

Any source can be assigned to up to ten different destinations maximum. Any destination can have as many sources as desired assigned to it.

Deleting An Assignment

Delete Button Method

Click on both the source and destination you wish to delete. Once both are selected, the Delete button will become available.

Click the Delete button to remove the assignment.

Right Click Method

Position the pointer over the specific assignment to delete then right click. A selection box will appear. From this selection box, choose Delete.

After either of these procedures, the assignment will disappear.

Drag and

Drop Method

96

Figure 91: Tying a Source to a Destination

Setting Up Parameters

Assignment Polarity

The active state of an assignment can be programmed to be Active Off, Active On, or Custom using PowerTools Pro. Making an assignment “Active On” means that the destination will be active when the source it is assigned to becomes active, and is inactive when the source is inactive. Making an assignment “Active Off” means that the destination will be active when the source it is assigned to is inactive, and will be inactive when the source is active.

The polarity of the assignment can also be changed to Custom when required. Custom polarity allows you to make a destination activate and deactivate based on two different sources.

Note

Destination functions which initiate motion (Jog.PlusInitiate, Jog.MinusInitiate, Index.#.Initiate, and Home.#.Initiate) cannot be set “Active Off”.

Default polarity for a new assignment is Active On. Two methods will change the polarity of an assignment.

Polarity Button Method

Click on either the Source or the Destination your wish to change the polarity for. Once highlighted, the Polarity button will become available in the lower right corner of the view. Click on the Polarity button and change the settings as desired in the

Polarity dialog box. Click OK to apply the changes.

Right Click Method

Position the pointer over the specific assignment you with to change polarity for and click the right mouse button. A selection box will appear. From this selection box, choose Polarity. A Polarity edit box will appear. Change the Polarity settings as desired and click OK to apply the changes.

User Level

The User Level filters the available assignments. The User Level is changed on the Options menu at the top of the PowerTools toolbar. Choose Options/Preferences/User Levels. Easy mode filters out all but the most commonly used sources and destinations. Detailed mode filters out less, expanding the list of sources and destinations for more complex configurations.

Too Much mode does not filter at all and provides all sources and destinations.

Only Show Assigned

This check box removes the unassigned sources and destinations from this view. It allows the user to quickly see how many sources and destinations have been assigned.

Assignments that Automatically Use Position Capture

Certain assignments (Sources or Destinations) automatically generate position capture data internally for greater performance and accuracy. This captured data is used by the FM-4 module, but is not directly available to the user. Following is a list of assignments that automatically generate or use captured data.

Sources that generate capture data

Module Inputs

– The FM-4 Module Inputs (not base drive inputs) are constantly monitored by the processor, and when activated will automatically capture related data. The processor controls all resetting requirements. The capture only occurs on the rising edge of an input. When the input is activated, the captured data will automatically be passed to the destination that it is assigned to. The destination may then use the captured data to accurately initiate motion (if it is a motion-related destination).

Motor Encoder Marker

– The rising edge of the motor encoder marker pulse will automatically capture data. This will allow the user to accurately initiate motion on the rising edge of the motor encoder marker pulse. The falling edge of the marker pulse does not capture data.

Master Encoder Marker

– The rising edge of the master encoder marker pulse will automatically capture data. This allows the user to accurately initiate motion on the rising edge of the master encoder marker pulse. The falling edge of the marker pulse does not capture data.

Index/Jog Command Complete

– Activation of the command complete signal at the end of indexes and jogs will automatically capture data. A subsequent index, jog, or dwell can then use the captured data to start itself extremely accurately at the end of the previous motion.

97

FM-4 Programming Module Reference Manual

Index/Jog At Velocity

– Activation of the command complete signal at the end of indexes and jogs will automatically capture data. A subsequent index, jog, or dwell can then use the captured data to start itself extremely accurately at the end of the previous motion.

PLS Status

– A rising or a falling edge of a Global PLS will automatically capture data for use in initiating motion. In order to accurately initiate motion from a Global PLS, an assignment can be made from PLS.#.Status to the initiate destination.

Destinations that use captured data:

Index/Jog Initiates

– When one of the sources listed above is assigned to an Index or Jog Initiate, the captured information is automatically applied to the index starting point. This offers extremely high accuracy for initiation of motion, which is beneficial especially in synchronized applications.

Index.#.SensorTrigger

– The sensor trigger destination used in registration indexes can use captured data to accurately calculate the ending position of the index based on the Registration Offset parameter. The Offset distance is added to the captured position to get the accurate stopping position for the registration index.

Selector View

The Selector view is located under I/O Setup in the Hierarchy Tree on the left of the view.

98

Figure 92: Selector View

The selector allows conservation of the number of input lines by using a binary input conversion to decimal. The binary select lines are set up by assigning sources to the Selector.Select destinations on the Assignments view. In most cases, hardware

inputs are assigned to the Selector.Select functions (see Figure 93).

Based on the status of the binary select lines, a Selector.Selection source will be active when the Selector.SelectorInitiate destination is activated.

At the top of the Selector view, the Selector Input Destinations scroll box defines how many binary select lines will be used.

The number of Selector.Selections is a direct result of the number of select lines. The formula is as follows:

# of selections = 2 n

where n is the number of select lines.

The maximum number of select lines is eight.

Once you have determined how many select lines you want, the assignments to these Selector.Select lines must then be made in the Assignments view.

Setting Up Parameters

Figure 93: Assignment View

For example, if we entered 3 for the number of Selector Input Destinations, we would have 8 selection lines

(Selector.Selection0 through Selector.Selection7). The Selector.Selection number that is activated is determined by the status of the Selector.Select lines when the Selector.Selector Initiate bit is activated. Each select line has a specific binary value.

The binary value is determined as follows:

S n

x 2 n where S n

= Status of Selector.Select line n

Sn = 0 if Selector.Select line n is inactive, and

Sn = 1 if Selector.Select line n is active

The sum of all the binary values determines which Selector.Selection line will be active.

The following examples demonstrate how to determine which Selector.Selection will activate based on the Selector.Select lines.

Example 1:

If Selector.Select2 is active, Selector.Select1 is inactive, and Selector.Select0 is active, then the total binary value is as follows:

S

2

= 1, S

1

= 0, and S

0

= 1. Therefore,

Total Binary Value = (1 x 2

2

) + (0 x 2

1

) + (1 x 2

0

)

Total Binary Value = 4 + 0 + 1

Total Binary Value = 5

Therefore, when Selector.SelectorInitiate activates, then Selector.Selection5 will activate.

99

FM-4 Programming Module Reference Manual

Example 2:

If Selector.Select2 is inactive, Selector.Select1 is active, and Selector.Select0 is active, then the total binary value would be as follows:

S

2

= 0, S

1

= 1, and S

0

= 1. Therefore,

Total Binary Value = (0 x 2

2

) + (1 x 2

1

) + (1 x 2

0

)

Total Binary Value = 0 + 2 + 1

Total Binary Value = 3

Therefore, Selector.Selection3 would activate.

The Selector.Select lines can change without any action until the Selector.SelectorInitiate destination is activated.

Selector.Selection sources can be tied to any destination in the Assignments view. Figure 93 shows the four selection lines

being tied to Index 0 through Index 3 initiates. By doing this, we could initiate up to four indexes with only two select lines and a selector initiate. This can help minimize the number of inputs required to initiate a large number of indexes or programs.

Input Lines View

The Input Lines View displays any functions that have been assigned to the drive or module hardware inputs. See Figure 94.

Note

No assignments can be made using the Input Lines View, assignments are only displayed in the Input Lines View.

100

Figure 94: Input Lines View

Two functions can be performed on the Input Lines view.

Name

You can assign a descriptive name to each input and make the setup easier to follow. The length of the text string is limited by the column width with a maximum of 12 characters. Simply double click on the Name field of any input line to assign a name to it.

Debounce

You can program a “Debounce Time” to any input line, which means the motion profile will need to be steady for at least the debounce time before it is recognized. This feature helps prevent false triggering in applications in noisy electrical environments. At the end of the debounce time, the next action can occur.

Setting Up Parameters

Figure 95: Input Line Diagram

If the Input Line attached to the home sensor is debounced, the actual rising edge of the Home Sensor is used to determine the Home Reference Position (the debounce time ensures a minimum pulse width).

Output Lines View

The Output Lines View displays any functions that have been assigned to the drive or module hardware outputs. See Figure

96.

Figure 96: Output Lines View

Names

Descriptive text names can be assigned to individual output lines to make the setup easier to follow.

Analog Inputs View

The drive has one Analog input channel. The FM-4 module is able to use the analog input located on the drive. The analog input accepts a +10 to -10 V signal. The drive has a 12-bit over sampled to 14-bit analog to digital converter (A/D), which is used to transform the analog voltage to a usable parameter in the FM-4 module. The analog input is scanned by the drive every 100 microseconds and the module at the trajectory update rate.

The analog input is scaled from +10 V to -10 V range to either the units of the selected variable or to the defined units. A linear scale with offset is defined by entering two points on the scale, a min and max to correlate the user unit to analog voltage. The actual minimum and maximum range of either user unit or analog voltage does not need to be entered as the algorithm will extrapolate the range.

101

FM-4 Programming Module Reference Manual

Figure 97: Analog Inputs View

Enable Channel Check Box

By default, the analog input channel is not enabled meaning that the drive is not reading the A/D value read by the analog circuit. If the check box is clear, the channel is not enabled and the configuration parameters for the analog input are unavailable and therefore have no effect.

To enable the analog input, simply select the Enable Channel check box, and the configuration parameters will become available to edit. With the channel enabled, the trajectory loop update will transfer data from the drive into

DriveAnalogInput.RawValue as volts and into DriveAnalogInput.ValueIn scaled. If Enable Module Destination check box is selected (DriveAnalogInput.ModuleDestinationEnable is set) it will also load the selected module destination variable with scaled data.

Enable Module Destination Check Box

If the check box is selected (enabled), the user units and decimal places are then defined by the module variable selected. The selected variable will be updated every trajectory loop update along with DriveAnalogInput.RawInput and

DriveAnalogInput.ValueIn.

If disabled (check box is clear), the user units and decimal places are defined by the values entered into User Units and

Decimal Places text boxes on the Analog Input view. The DriveAnalogInput.RawValue and DriveAnalogInput.ValueIn will be updated every trajectory update.

User Units

This parameter allows the user to enter a 12 character string to be used as units for the analog input parameter.

Decimal

This parameter defines how many digits (up to six) are used after the decimal place for the user unit scaled analog input parameter. This defines the maximum resolution of the analog input parameter.

Module Variable

When Enable Module Destination check box is selected, PowerTools Pro displays this text box that the user can enter any module parameter using the program format for that variable.

When the Popup Variables... button is pressed, the Select FM Variables window will open containing a list of variables that can be dragged and dropped into the Module Variable text box.

102

Setting Up Parameters

Bandwidth

This parameter sets the low-pass filter cutoff frequency applied to the analog input. Signals exceeding this frequency will be filtered at a rate of 20 db per decade.

Set Maximums Group

Maximum Value

This parameter is used for user unit scaling. Enter the maximum value in analog user units to which the maximum analog voltage should correspond.

Maximum Voltage

Enter the maximum voltage that will be seen on the analog input terminals. The user can enter the value in this text box by hand, or set the analog source to it’s maximum value with just a click of the “Set Max Voltage to Measured” button next to the text box.

Set Max Voltage To Measured Button

Click this button to read the current value on the analog channel and enter it into the Maximum Voltage text box.

Minimum Value

Enter the minimum value in analog user units that the minimum analog voltage should correspond to.

Minimum Voltage

Enter the minimum voltage that will be seen on the analog input terminals. The user can enter the value in this text box by hand, or set the analog source to it’s minimum value with just a click of the “Set MinVoltage to Measured” button next to the text box.

A/D Voltage

This parameter is visible while online. It is the raw analog input in Volts.

ValueIn

This parameter is visible while online. This is the results of the analog value scaled to the user unit value.

Read Max/Min Voltage Settings

This button is not functional for the FM-4 module.

Analog Outputs View

The drive has two 10-bit Analog Outputs that may be used for diagnostics, monitoring or control purposes. These outputs are referred to as Channel 1 and Channel 2. They can be accessed from the command connector on the drive or from the output

pins located on the front of the drive. See “Drive Faults” on page 242 for more information.

When Module Variable is selected from the Source list box, a FM Var text box and Popup Variables... button appear. When this button is pushed the variables window will open and the user can then select a variable from the list and drag it over to the FM Var text box to assign it to the analog channel. This allows any module variable to be output on the analog channel after being assigned.

The analog output is scaled from the units of the selected variable to the +10/-10 volt range of the Analog Output. It is a linear scale with offset defined by entering two points on the scale, a minimum and maximum to correlate the user units to analog voltage. The actual minimum and maximum range of either user unit or analog voltage does not need to be entered as the algorithm will extrapolate the ranges.

103

FM-4 Programming Module Reference Manual

104

Figure 98: Analog Outputs View

Enable Channel Check Box

By default, the analog output channels are not enabled meaning that a value is not being sent to the analog circuit. When the channel is disabled (check box is clear), the configuration parameters for that analog output are unavailable and therefore have no effect. To enable the output, simply select the Enable Channel check box, and the configuration parameters will become available to edit.

If the user wishes to control the Analog Output through other means, it is necessary to clear the Enable Channel check box.

Source

Allows the user to create a direct connection from a Source parameter to the Analog Output. The current value of the parameter selected as the Source will directly determine the value of the Analog Output signal. The Source list box contains a list of predefined parameters to select from.

FM Var

The Module Variable parameter is only available once the user has selected Custom Variable from the Source list box above.

This text box is used to define what parameter will control the Analog Output. The selected module parameter will directly determine the value of the analog output based on the Max and Min scaling values entered on this view. The parameter is entered here in program format or see Popup Variables Button, below.

Popup Variables Button

Click this button to open the Select FM Variables window. Select the variable and then drag the variable over to the FM Var text box to assign the variable to the Analog output channel.

Maximum Value

The analog output is a linear interpolation of the selected module variable between the minimum and maximum specified end points. Each end point is specified as the user value and the corresponding output value at that point. The number of decimal places for both values is taken from the selected module variable. MaxUserValue is the maximum user unit value which corresponds to the maximum analog output value.

Maximum Output

The analog output is a linear interpolation of the selected module variable between the minimum and maximum specified end points. Each end point is specified as the user value and the corresponding output value at that point. The number of decimal places for both values is taken from the selected module variable. MaxOutputValue is the maximum analog output value which corresponds to the maximum user value.

Setting Up Parameters

Minimum Value

The analog output is a linear interpolation of the selected module variable between the minimum and maximum specified end points. Each end point is specified as the user value and the corresponding output value at that point. The number of decimal places for both values is taken from the selected module variable. MinUserValue is the minimum user unit value which corresponds to the minimum analog output value.

Minimum Output

The analog output is a linear interpolation of the selected module variable between the minimum and maximum specified end points. Each end point is specified as the user value and the corresponding output value at that point. The number of decimal places for both values is taken from the selected module variable. MinOutputValue is the minimum analog output value which corresponds to the minimum user value.

Feedback

Analog Output Feedback is the Analog output voltage to be sent out after scaling the selected source parameter.

Motion Group

All motion parameters related to Jogs, Homes, Indexes and Gearing are located in the Motion hierarchy group.

Motion views will use units that correspond to Realtime or Synchronized motion. This choice is made on each motion view.

The units are customized in the Setup Group: Realtime units are defined on the User Units View, and Synchronized units are defined on both the User Units View and the Master Units View.

Each of the motion views, when online, have an Online tab that displays feedback information and provides buttons to initiate motion.

Jog View

Jogging produces rotation of the motor at controlled velocities in a positive or negative direction. The jog is initiated with the

Jog.#.Initiate destination or from a program.

Figure 99: Jog View

Jog Number

This box allows you to select between Jog0 and Jog1 setup views.

105

FM-4 Programming Module Reference Manual

Jog Name

This is a descriptive character string which can be assigned to the specific jog. Giving a name to a jog can make the motion setup easier to follow.

Time Base

This list box allows the user to select between a jog that is based on time (Realtime) as defined by user units, normally in seconds, or a time based on Master position via an external encoder (Synchronized) set in the Master Units View.

Jog Velocity

This parameter specifies the target jog velocity for the individual Jog. The motor will run at this velocity when jogging with an assignment or through a program. This value is a signed number. The direction of the jog is determined by the sign of the jog velocity as well as using the Jog.PlusInitiate or the Jog.MinusInitiate.

Jog Acceleration

This is the acceleration ramp used when initiating this individual Jog. If S-Curve ramps are used, then this is the average acceleration rate for the entire ramp. The units for the acceleration are setup in the Setup - User Units view in PowerTools Pro.

Jog Deceleration

This is the deceleration ramp used when stopping this individual Jog. If S-Curve ramps are used, then this is the average deceleration rate for the entire ramp. The units for the deceleration are setup in the Setup - User Units view in PowerTools Pro.

Jog Sources and Destinations

Sources

Jog.AnyCommandComplete

The Jog.AnyCommandComplete source will activate when either Jog0 or Jog1 completes its deceleration ramp, and reaches zero commanded velocity. It will deactivate when any Jog is initiated again. If the Stop destination is used during a Jog, then the Jog.AnyCommandComplete will not activate.

Jog.#.Accelerating

This source is active while a jog is accelerating to its target velocity. Once the Jog reaches the target velocity, the

Jog.#.Accelerating source will deactivate.

Jog.#.AtVel

This source activates when the individual jog reaches its target velocity. It deactivates when a jog deceleration ramp begins.

Jog.#.CommandInProgress

The Jog.#.CommandInProgress source is active throughout an entire jog profile. The source activates at the beginning of a jog acceleration ramp, and deactivates at the end of a jog deceleration ramp.

Jog.#.CommandComplete

The Jog.#.CommandComplete source will activate when the specific jog completes its deceleration ramp. It will remain active until the specific jog is initiated again. If the Stop destination is used during a Jog, then the Jog.#.CommandComplete will not activate.

Jog.#.Decelerating

This source is active while a jog is decelerating from its target velocity. Once the Jog reaches zero velocity (or its new target velocity), the Jog.#.Decelerating source will deactivate.

Destinations

The following destination functions can be found in the Assignments view under the I/O setup group:

Jog.PlusActivate

When this destination is activated, jogging motion will begin in the positive direction. The jog velocity is determined by which jog (Jog0 or Jog1) is active or not. A jog stops when this destination is deactivated. If the jog velocity is negative,

Jog.PlusActivate will cause the motor to jog in the negative direction.

106

Setting Up Parameters

Jog.MinusActivate

When this destination is activated, jogging motion will begin in the negative direction. The jog velocity is determined by which jog (Jog0 or Jog1) is active or not. A jog stops when this destination is deactivated. If the jog velocity is negative,

Jog.MinusActivate will cause the motor to jog in the positive direction.

Jog.Select0

This destination is used to select between Jog0 and Jog1. When the Jog.Select0 destination is not active, the target velocity for the jog is the Jog.0.Velocity. If the Jog.Select0 destination is active, the target velocity of the jog is the Jog.1.Velocity.

Jog.Select0 can be toggled “On” or “Off” while jogging. Jog acceleration and deceleration ramps are used to ramp between jog velocities.

Below is a description of jog operation using these destinations.

Note

In the table below Jog.0.Velocity = 100 RPM and Jog.1.Velocity = -500 RPM.

Jog.PlusActivate

Off

On

Off

On

Off

On

On

All Jog destinations are level sensitive.

Jog.MinusActivate

On

On

On

Off

Off

On

Off

Jog.Select0

On

Off

On

Off

Off

Off

On

Motion

0 RPM

+100 RPM

-100 RPM

-500 RPM

+500 RPM

0 RPM

0 RPM

Figure 100: Jog Activation

107

FM-4 Programming Module Reference Manual

0

Figure 101: Jog Select Details

If the Jog direction is reversed, the Jog.#.Decel value will be used to decelerate the motor to zero speed and then the

Jog.#.Accel will be used to accelerate to the new (opposite sign) velocity.

Note

The Jog destinations cannot be initiated when any other motion type (homing, indexing, or programs) is in progress.

If both jog input functions are “On” there is no motion after a jog deceleration (they effectively cancel each other). The drive’s display will show “R”, for ready.

If the device is jogging with the Jog.PlusActivate destination active and the Jog.MinusActivate destination activates, the motor will behave the same as if it would if Jog.PlusActivate just deactivated.

The Stop destination (found under the Ramps group in the Assignments view) will override the Jog operation and decelerate the motor to zero speed at the stop deceleration rate.

If the motor reaches a Travel Limit, you can Jog off the Travel Limit in the opposite direction. (Use Jog.PlusActivate to move off a Travel Limit -).

108

Setting Up Parameters

Home View

The Home is used in applications in which the axis must be precisely aligned with some part of the machine. The Home is initiated with the Home.#.Initiate Destination or from a program.

Figure 102: Home View

Home Number

The Home Number parameter displays which home sequence you are editing and allows you to scroll through multiple home sequences using the up and down arrows. The first release only allows for one home sequence.

Name

Allows you to assign a descriptive name to the home sequence up to 10 characters in length.

Home Reference

This parameter determines the signal used as the reference. The parameter can have one of three different values: 'Sensor',

'Marker', or 'Marker then Sensor'. When the home reference is 'Sensor' the rising edge of the 'Home.#.SensorTrigger' destination is used to establish the home position. When the home reference is 'Marker' the rising edge of the motor encoder's marker channel is used to establish the home position. When the home reference is 'Sensor then Marker' the home position is established using the first marker rising edge after the Home.#.SensorTrigger destination activates.

Time Base

Selects the Time Base for the home move velocity and acceleration/deceleration. Real-time and sync are the allowed selections.

Velocity

Sets the target velocity for the home. The polarity determines the home direction. Positive numbers cause motion in the positive direction and negative numbers cause motion in the negative direction in search of the home reference.

Acceleration

Average Acceleration rate used during the home. Units are specified on the User Units View.

Deceleration

This is the average Deceleration rate used at the end of the Home move in user units.

109

FM-4 Programming Module Reference Manual

If on sensor... Group

These radio buttons determine how the system reacts if the Home.#.SensorTrigger is already active when the home is initiated.

’Back off before homing’ Radio Button

If this radio button is selected, the drive will back off the sensor before beginning the home. It does this by moving the direction opposite to that specified by the sign of the home velocity. It continues moving in this direction at the target home velocity until the sensor goes deactivates. The motor then decelerates to a stop and performs a standard home.

’Go forward to next sensor’ Radio Button

If this radio button is selected, then the system will ignore the sensor that is active when the home is initiated, and move in the proper direction until the first low to high transition of the Home Reference signal.

Home Offset Group

The Home Offset group has two buttons, the calculated Offset Radio Button and the Specified Offset Radio Button.

Calculated Offset Radio Button

The calculated offset is defined as the distance traveled during deceleration ramp from the home velocity to a stop plus the distance traveled at the home velocity for 1600µs. This extra distance is used to guarantee that the motor will not need to backup after the deceleration ramp.

Specified Offset Radio Button

The specified offset allows the user to choose an exact offset from the Home Reference point. The commanded motion will stop at exactly the offset distance away from the reference point as specified. If the specified offset is smaller than the calculated offset, the motor will decelerate to a stop and then back up to its final offset position.

Limit Distance

LimitDistEnable

This check box enables the specified Home Limit Distance.

The Limit Distance parameter places an upper limit on the incremental distance traveled during a home. If no home reference is found in this distance, the motor will decelerate to a stop at the limit distance and activate the Home.#.LimitDistHit source.

End of Home Position

This parameter defines the position at the completion of the home. This defaults to 0.0 such that at the end of a home, the

Feedback Position and the Commanded Position are set to 0.0. If you wish your Feedback Position to be something other than

0.0 at the end of a home, then enter the exact desired position here.

110

Setting Up Parameters

Below is a diagram of a home using the "Back off before homing" radio box, a Home Reference of "Sensor", and using a

"Calculated Offset".

Off On

Home

Sensor

Input

On

Off

Velocity

Back off

Sensor Move

Time

Start of Normal

Home Routine

Home Reference

Position

Figure 103: Home Reference Position

Home Sources and Destinations

Sources

Home.AbsolutePosnValid

This source is activated when a Home is successfully completed. It indicates that the device has been homed properly. It is will be deactivated by the Home.#.Initiate destination, an encoder fault, a reboot, or when the device is powered down, unless using Auxiliary Logic Supply (ALP).

Home.AnyCommandComplete

This source is activated when any home motion command is completed. If a drive stop destination is activated before the home has completed, this source will not activate. It will be deactivated when another home is initiated.

Home.#.Accelerating

This source is active while a home is accelerating to its target velocity. Once the home reaches the target velocity, the

Home.#.Accelerating source will deactivate. This source will also activate during the "back off sensor" motion before the actual home.

Home.#.AtVel

This source activates when the home reaches its target velocity. It deactivates when a home deceleration ramp begins.

Home.#.AtVel will not be activated during the "back off sensor" portion of the home.

Home.#.CommandComplete

The Home.#.CommandComplete source will activate when the specific home completes its deceleration ramp. It will remain active until the specific home is initiated again. If the drive stop destination is used during a home, then the

Home.#.CommandComplete will not activate.

Home.#.CommandInProgress

Activated when the Home is initiated and remains active until all motion related to the Home has completed.

Home.#.Decelerating

This source is active while a home is decelerating from its target velocity. Once the home reaches zero velocity (or its’ new target velocity), the Home.#.Decelerating source will deactivate. This source will also activate during the "back off sensor" motion before the actual home.

111

FM-4 Programming Module Reference Manual

Home.#.LimitDistHit

This source is activated when the home reference is not found before the Home Limit Distance is traveled. It will remain active until the home is initiated again.

Destinations

Home.#.Initiate

The Home.#.Initiate destination is used to initiate the home function. The Home is initiated on the rising edge of this function.

The device will not initiate a Home if there is an Index, Jog, or Program in progress, or if the Stop destination is active or if a travel limit is active.

Home.#.SensorTrigger

This destination is required to be used if you are homing to a sensor. This destination is edge sensitive. The home position is determined when the Home Sensor destination is activated.

If the device receives a Home.#.Initiate input while the Home.#.SensorTrigger is active, you can choose to have the motor

“back-off” of the home sensor before it initiates the home function, or move forward to the next sensor.

If debounce is used on the hardware input that the Home.#.SensorTrigger is assigned to, the debounce determines the length of time the input must be active to be considered a valid input. The rising edge of the sensor is still used for the reference position. This maintains accuracy while providing the ability to ignore false inputs.

112

Setting Up Parameters

Index View

An index is a complete motion sequence that moves the motor a specific incremental distance or to an absolute position. The index is initiated with the Index.#.Initiate destination or from a program.

Figure 104: Index View

Index Number

The Index Number parameter selects the index number with a scroll box.

Index Name

The User can specify an Index name of up to 12 alphanumeric characters. This allows assigning a descriptive name to each index indicating different machine operations.

Index Type

Select the index type from Incremental, Absolute, Correction (FM-4E only), Posn Track Cont. (FM-4E only), Posn Track

Once (FM-4E only), Registration, Rotary Plus, or Rotary Minus. Click the down arrow on the parameter list box to select the desired type of Index profiles, as follows:

Incremental Indexes run a specified distance from the current position.

Absolute Indexes move to an exact position with respect to the home reference point. The absolute index could run in either a clockwise (CW) or counterclockwise (CCW) direction dependent on the current position when it is initiated.

FM-4E Only

- Correction Indexes are used to follow a dynamic fieldbus or analog value that changes the index distance of the index prior to and during the index motion. Correction indexes use incremental distance values. The index distance value can be updated via Fieldbus, by simply writing to the index distance parameter. If the analog input's Destination Variable is set to an Index Distance parameter, the index's distance value will be updated by the Analog to Position scaling found in the

Analog Input view. See Analog Input view.

FM-4E Only

- Posn Tracker indexes are used to follow a dynamic fieldbus or analog value that changes the end point of the index prior to and during the index motion. Position Tracker indexes use absolute position values. The position value can be

113

FM-4 Programming Module Reference Manual updated via fieldbus, by simply writing to the index position parameter. If the analog input's Destination is set to an Index number, the index's position value will be updated by the Analog to Position scaling found in the Analog Input view.

A Registration Index runs at the specified velocity until a registration sensor is seen or until it reaches the Registration Limit

Distance. If a Registration Sensor is seen, then the index runs an additional Registration Offset distance.

Rotary Plus and Rotary Minus type indexes are typically used in applications which use rotary rollover. These absolute indexes are forced to run in a specific direction regardless of the starting point.

TimeBase

This list box selects the Time Base for the index velocity and acceleration/deceleration. Realtime and Synchronized are the allowed selections.

Distance/Position

The Distance/Position parameter is a signed value which specifies the distance the index will travel (incremental index) or the absolute position the index will move to (absolute index). In the case of an incremental index, this parameter also determines the direction the index will travel. If an index type of Registration is selected, then this is a limit distance, or the maximum distance the index will travel if a registration sensor is not seen.

Velocity

This sets the target velocity for the index profile. The velocity parameter is unsigned and must be greater than zero. Direction of the index is not determined by the velocity, but by the Distance/Position parameter.

Acceleration

Average Acceleration rate used during the index. Units are specified on the User Units view.

Deceleration

The Deceleration parameter specifies the deceleration value to be used during the index in user units.

Timed Indexes

A Timed Index allows the user to specify the amount of time in which to perform an index rather than specifying the Velocity,

Acceleration, and Deceleration. The processor in the FM-4 will automatically calculate the necessary velocity, accel, and decel in order to achieve the programmed distance in the specified time. A Timed Index can not be compounded into or out of.

All index types can be specified as a Timed Index, except for Registration type indexes. This is because a registration index does not have a specified distance or absolute position. During a registration type index, the registration sensor could activate at any time, and therefore it is impossible to calculate the necessary velocity, accel, and decel. If Registration type is selected, then the Time check box will become disabled.

Based on the Distance entered (or Position for Absolute indexes) and the Time value specified, the calculations could result in extremely high Velocities, Accels, and Decels. To avoid damage to mechanical parts, or potentially dangerous situations, the user is allowed to enter the Maximum Velocity, Acceleration, and Deceleration used for the calculations. The results of the firmware calculations will never exceed the maximum values specified.

Figure below shows a screen capture in which the Time check box has been enabled. Notice how the parameters which normally say Velocity, Acceleration, and Deceleration have changed to say Max. Velocity, Max. Acceleration, and Max.

114

Setting Up Parameters

Deceleration. When the Time check box is enabled, these parameters automatically become maximums for use in the calculations.

Figure 105: Time Check Box Enabled

If the values for Max.Velocity, Max.Acceleration, and Max.Deceleration are such that the distance cannot be covered in the specified time, the Index.ProfileLimited flag will activate when the index is initiated, indicating the index cannot be performed as desired. The internal calculation are performed only when the index is initiated, and therefore is the only time the flag will activate. The Index.ProfileLimited flag will remain active until cleared using the Index.ResetProfileLimited assignment or program instruction. In this situation, the index will still operate, but the time will be extended. In other words, the profile will be performed using the maximums values and still cover the specified distance, but not in the specified time.

The units for the Time parameter depend on the current setting of the Time Base parameter. If Time Base is set to “Realtime”

(default), then the units for the Time parameter are Seconds.The user can program the index time with resolution of 0.001

Seconds (or milliseconds). If Time Base is set to “Synchronized”, the units for the Time parameter are defined by the Master

Distance Units found on the Master Units view.

Doing a synchronized Timed Index means that the user can specify the master distance in which the index should be performed. This can be very useful in many synchronized motion applications.

The internal calculations are designed to calculate a triangular profile (all accel and decel) The ratio of acceleration to deceleration will be the same ratio as Max. Acceleration to Max. Deceleration parameters. For example, if the deceleration is desired to be twice the acceleration, a number twice the value of max acceleration would we entered for maximum deceleration. If the Maximum Velocity is low enough such that the profile will become trapezoidal (some duration at max velocity). Even in trapezoidal moves, the same ratio of acceleration and deceleration is maintained.

The calculations are based on the assumption that Feedrate Override is set to 100%. If set to greater that 100%, the motor could run in excess of the specified Max. Velocity.

115

FM-4 Programming Module Reference Manual

116

Max Velocity

Max Decel

Max Accel

Trapezoidal

Move

Index.ProfileLimited activates for this profile

Triangle

Move

Time

Figure 106: Timed Index Profiles

Enable Index PLS

This check box enables (when checked) or disables the Index PLS function.

An Index PLS is similar to a global PLS (explained in the PLS View section), but is incremental in nature. The Index PLS has On and Off points just like a global PLS, but the On and Off points are specified as an incremental distance from the start of the index, instead of absolute positions. Each index has its own On and Off points, and the Index.#.PLSStatus is only updated when Index# is run. The direction of the PLS does not matter, the Index.#.PLSStatus will activate and deactivate the same incremental distance from the start of the index.

PLS On Point

This parameter is an incremental distance from the start position of the index, at which the PLS.#.Status will become active.

It is an unsigned value in user units. The On Point must always be less than the Off Point.

PLS Off Point

This parameter is an incremental distance from the start position of the index, at which the PLS.#.Status will deactivate. It is an unsigned value in user units. The Off Point must always be greater than the On Point. If the Off Point is larger than the

Distance parameter in an Incremental type of index, the PLS Status will never deactivate until the index is run again.

Example 1:

Index 0 is an Incremental index with a distance of 5 Revs. The PLS On Point is set to 1 Rev, and the PLS Off Point is set to

4 Revs. A home is completed, and Position Feedback is equal to 0.0 Revs.

If Index 0 is run, the Index.0.PLSStatus will activate when the feedback position reaches 1 Rev and remain active until feedback position reaches 4 Revs, and deactivate. At the end of Index 0, position feedback is equal to 5 Revs. If we initiate

Index 0 again, Index.0.PLSStatus will activate 1 Rev into the index, or at 6 Revs. It will remain active until position feedback reaches 9 Revs, and deactivate. This index could be run over and over again, and Index.0.PLSStatus will activate 1 Rev from the starting position and deactivate 4 Revs from the starting position every time.

Example 2:

Index 1 is an Incremental index with a distance of -10 revs. The PLS On Point is set to 4 Revs, and the PLS Off Point is set to 6 Revs. A home is completed, and Position Feedback is equal to 0.0 Revs.

If Index 1 is run, the Index.1.PLSStatus will activate when the position feedback reaches -4 Revs (or 4 Revs from the start of the index). Index.1.PLSStatus will then deactivate when position feedback reaches -6 Revs (or 6 Revs from the start of the index). If Index 1 is run again, Index.1.PLSStatus will activate and deactivate at -14 Revs and -16 Revs respectively.

Index PLS’s can be used on any type of an index.

If an index is so short (possible in the case of an absolute index) that it reaches the On Point, or incremental distance, into the index, but never reaches the Off Point, the Index.#.PLSStatus will remain active until the index is run again.

Similarly, if the index is so short that it never reaches the On Point, the Index.#.PLSStatus will never activate.

Registration Tab Parameters

The following parameters are only used if Registration is selected as the Index Type.

Setting Up Parameters

’Analog’ or ’Sensor’ Radio Buttons

Select one of these radio buttons to determine what signal will be used as your registration trigger.

If ’Sensor’ is selected, a source must be assigned to the Index.#.SensorTrigger. Typically a proximity sensor is wired to a hardware input, and therefore a module or drive input source is assigned to the Index.#.SensorTrigger, but any source can be used.

If ’Analog’ is selected, one of the analog signals must be selected in the analog list box. Available selections are Analog In,

Torque Command, or Torque Feedback. Then a comparison operator must be selected from the operator list box. Available selections are > (greater than) and < (less than). Last, an analog value must be entered for comparison.

Registration to Analog Input Value

If Analog In is selected from the list box, the value of the drive Analog Input is used as the registration signal. When the value of the analog input reaches a value that satisfies the comparison operator, the sensor trigger will activate. Units for the registration value will match the units configured on the Analog Inputs view when Analog In selected.

Registration Offset

The incremental distance the motor will travel after a valid registration sensor or analog limit value has been detected. This is a signed parameter; so if an index is travelling in the negative direction, the offset needs to be negative and continue in the same direction. If the registration offset is zero or less than the decel distance shown on the calculations tab, the motor will decelerate at the programmed rate and then back up to the specified offset distance from the trigger position.

Enable Registration Window

This check box enables (if checked) the Registration Sensor Valid Window. When active, only registration marks that occur inside the registration window are seen as valid.

Window Start

This parameter defines the start of the Registration Sensor Valid Window relative to start position of this index. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. The

Registration Window Start position (or distance) should be less than the Registration Window End position. If a registration sensor is seen outside of this window (not between the WindowStart and WindowEnd positions) then it will be ignored.

Window End

This parameter defines the end of the Registration Sensor Valid Window relative to start position of this index. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. The

Registration Window End position (or distance) should be greater than the Registration Window Start position. If a registration sensor is seen outside of this window (not between the WindowStart and WindowEnd positions) then it will be ignored.

Example:

Index 0 is defined as a Registration type of index. The user wants the index to run at velocity for 10 Revs, or until the Torque

Feedback reaches 50% continuous torque and then continue for another 0.5 Revs.

In the Limit Distance parameter, enter 10.0

On the registration tab, select the Analog radio button.

In the analog list box, select Torque Command

In the comparison operator list box, select ">"

In the analog value parameter, enter 50 (Units are established on the User Units view)

In the Registration Offset parameter, enter 1.5

This index would accelerate up to its’ target velocity, and run at speed until one of the following:

The Limit Distance is approaching, and the index decels down to zero velocity, completing the move at the Limit Distance.

At this point, the Index.#.LimitDistHit source would activate. Or,

The Torque Command reaches or exceeds 50% continuous, and the index continues at speed before decelerating to zero velocity at the registration point plus the Registration Offset distance.

If the Registration Offset distance is in the opposite direction from the move, or is so short that the motor cannot stop in the specified distance at the programmed deceleration rate, the motor will decelerate with the programmed ramp, and then backup to the specified position (registration point + the Registration Offset).

117

FM-4 Programming Module Reference Manual

Index Sources and Destinations

Sources

Index.AnyCommandComplete

Active when any index motion command is completed. If a stop is activated before the index has completed, this destination will not activate. Deactivated when any new index command is initiated.

Index.#.Accelerating

This source is active while an index is accelerating to its’ target velocity. Once the index reaches the target velocity, or begins to decelerate, the Index.#.Accelerating source will deactivate.

Index.#.AtVel

This source activates when the target index velocity is reached. If Feedrate override is changed or FeedHold is activated

AtVelocity shall remain active. Index.#.AtVel will deactivate at the start of any deceleration or acceleration. During a synchronized index, this source could be active even without any motor motion if the master axis stops.

Index.#.Command Complete

The Index.#.CommandComplete source will activate when the specific index completes its deceleration ramp. It will remain active until the specific index is initiated again. If the drive stop destination is used during an Index, then the

Index.#.CommandComplete will not activate.

Index.#.Command In Progress

The Index.#.CommandInProgress source is active throughout an entire index profile. The source activates at the beginning of the index acceleration ramp, and deactivates at the end of the index deceleration ramp. During a synchronized index, this source could be active even without any motor motion if the master axis stops.

Index.#.Decelerating

This source is active while an index is decelerating from its’ target velocity. Once the index reaches zero velocity, or its’ next target velocity, the Index.#.Decelerating source will deactivate.

Index.#.LimitDistHit

Activated when the registration sensor is not found before the Limit Distance is traveled. If the Registration Window is enabled the sensor must be activated inside the window to be recognized.

Index.#.PLSStatus

Controlled by the PLSOn and PLSOff Points which are relative to the distance commanded since the start of the index.

Activated when index distance command is in between the PLSOn point and PLSOff points.

Index.ProfileLimited

For timed indexes, if the values for Max. Velocity, Max. Acceleration, and Max. Deceleration are such that the distance cannot be covered in the specified time, the Index.ProfileLimited flag will activate when the index is initiated, indicating that the index cannot be performed as desired. The Index.ProfileLimited flag will remain active until cleared using the

Index.ResetProfileLimited assignment or program instruction. In this situation, the index will still operate, but the time will be extended. In other words, the profile will be performed using the maximums values and still cover the specified distance, but not in the specified time.

Destinations

Index.ResetProfileLimited

If a timed index was not able to complete in the specified time, the Index.ProfileLimited source will activate.

Index.ResetProfileLimited is used to clear the ProfileLimited flag and acknowledge that the index did not complete in the specified time. This can be activated through an assignment, or through a user program. This function is edge-sensitive, so holding it active will not prevent ProfileLimited from activating.

Index.#.Initiate

The Index.#.Initiate destination is used to initiate the specific index. The Index is initiated on the rising edge of this function.

An Index cannot be initiated if there is an Home, Jog, or Program in progress, or if the Stop destination or if a travel limit is active. It can be activated from an assignment or from a program.

118

Setting Up Parameters

Index.#.Sensor Trigger

If registration to Sensor is selected, when this destination activates, motor position is captured and is used as the registration point for registration type indexes.

Adding and Deleting Indexes

Adding or removing indexes from the user configuration can be done in three ways. Indexes may only be added or deleted while offline.

Toolbar button Method

The Add Index button (shown below) will add a new index to the user configuration. Indexes are added in sequential order.

Clicking on the button will add an index and bring you to the Index setup view allowing you to enter the index parameters.

The Delete Index button (shown below) will delete an index from the user configuration. The highest numbered index will automatically be deleted unless a different index is selected on the Indexes heading screen. To delete a specific index, click on the Motion\Indexes branch in the Hierarchy Tree. From this view, select the specific Index you wish to delete, and then click on the Delete Index button.

PowerTools Menu Bar Method

Adding an Index

From the PowerTools Pro menu bar, select Edit/New/Index. An index will be added in sequential order and you will be brought to the Index setup view allowing you to enter the index parameters.

Deleting an Index

Navigate to the Indexes View, and select the Index you wish to delete. From the PowerTools Pro menu bar, select Edit/Delete/

Index. The selected Index will be deleted from the configuration.

Right Click Method

Adding an Index

Navigate to the Indexes View. Position the mouse pointer in the right side of the view and right-click the mouse. A selection box will appear allowing the user to add a New Index or Delete an Index. Click on New Index and an index will be added in sequential order and that Index’s setup view will open allowing the user to enter the index parameters.

Deleting an Index

Navigate to the Indexes View. Select the Index you wish to delete, and then right-click the mouse. A selection box will appear allowing the user to add a New Index or Delete an Index. Click on Delete Index and the selected index will be deleted from the configuration.

119

FM-4 Programming Module Reference Manual

Gearing View

Figure 107: Gearing View - FM-4, FM-4DN, and FM-4PB

Figure 108: Gearing View - FM-4E

Use Scale Check Box - FM-4E Only

Select this check box (Gear.UseScaleEnable) to enable the Scaling feature and disable Gear Ratio. Scaling allows the user to use irrational ratios such as 1.0/7.0 that were not possible with the single parameter ratio (Gear.Ratio). Scaling is defined as follows:

Scaling =

Gear.ScaleNumerator (User Units)

Gear.ScaleDenominator (Master Units)

120

Setting Up Parameters

Gear Ratio

Gearing is used to fix the motion of the motor to the motion of the master axis signal at a specified ratio. This is commonly called “electronic line shafting” or “electronic gearing”. To gear the motor to the master axis, a ratio must be specified as a relationship between follower distance units and master distance units. The ratio is as follows:

Gear Ratio =

# of Follower Distance Units

1 Master Distance Unit

The ratio (Gear.Ratio) is defined as the number of follower distance units to move the motor per master distance unit of travel.

Gearing is used to fix the motion of the motor to the motion of the master axis signal at a specified ratio. This is commonly called “electronic line shafting” or “electronic gearing”. To gear the motor to the master axis, a ratio must be specified as a relationship between follower distance units and master distance units. The ratio is as follows:

By default, gearing does not use acceleration or deceleration ramps with respect to the master encoder. This means that once gearing is activated, peak torque is available to try to achieve the specified gear ratio. Therefore, if the master axis is already in motion when gearing is activated, the control loop will attempt to accelerate the motor to the programmed ratio within one update (800µsec < update rate <1600 µsec). Analogously, when gearing is deactivated, the motor will use peak torque to bring the motor to a stop without a deceleration ramp.

Direction - FM-4E Only

Direction allows the user to select which master axis command the follower is going to follow and the choices are

Bidirectional, ComMinus and ComPlus.

Bidirectional

The follower will follow both the plus and minus master axis command.

ComMinus

The follower will follow only the minus master axis command.

ComPlus

The follower will follow only the plus master axis command.

Acc/Dec Group

Acceleration and Deceleration ramps may be enabled on the Gearing view as seen in Figure 107 above (B3 firmware or later

is required for Accel / Decel). If enabled, the accel and decel ramps are specified in units of Follower Units / Velocity Time

Base / Acceleration Time Base. Note that this is a Realtime ramp. Therefore, the time that it takes to reach the programmed

ratio depends on how fast the master is traveling when gearing is activated. Figure 109 below demonstrates that the faster the

Master Velocity, the longer it will take to reach the programmed ratio. If the Master Axis is not moving when gearing is initiated, then the follower locks into its programmed gear ratio instantly (no acceleration time required).

121

FM-4 Programming Module Reference Manual

Figure 109: Gearing Acceleration Ramp Description

The GearRatio can be changed on the fly (while in motion), but acceleration or deceleration must be enabled to use ramps to achieve the new ratio. If gearing accel and/or decel ramps are not enabled, the motor will attempt to achieve the new ratio in one trajectory update (800<t<16000 microseconds).

Initiating Gearing Motion

Gearing can be activated through an Assignment, or from a program instruction (Gear.Initiate). If initiated from an assignment, the Gear.Activate destination is a level-sensitive event. This means that gearing will be active as long as the source to which it is assigned is active. If gearing from a program, the Gear.Stop instruction is used to stop the gearing motion.

Stopping Gearing Motion

The method used to stop gearing motion depends on how the gearing was initiated. If gearing was initiated using an

Assignment, then simply deactivating the Gear.Active destination will cause gearing motion to stop. If gearing was initiated from within a program, then the Gear.Stop command must be used to stop gearing.

Distance Recovery when Gearing - FM-4E Only

If accel ramps are used, the gear will lag the master when Gear.AtVel is activated. The total lag distance will be stored in parameter Gear.RecoveryDist. This parameter value can be loaded in to Index.#.Dist and that Index is ran on the other profile.

An alternative method is to enable the Distance Recovery feature on the Distance Recovery view. With Distance Recovery enabled.

Camming View - FM-4E Only

Electronic cams provide a non-linear motion function for a single axis. The basic motion can best be illustrated in Figure 111 of a mechanical cam and cam follower (or slave).

122

Setting Up Parameters

MASTER

AXIS

270

FOLLOWER AXIS

(SLAVE)

315

0

180

225

45

90

135

180

Figure 110: Mechanical Master and Slave Follower

As the master axis (the cam lobe) rotates, the follower axis produces a non-linear motion profile. This same profile can then be produced with a single motor driving a linear axis programmed with an electronic cam.

The cam motion object uses a master/follower principal in a synchronized mode and also has a follower with Realtime mode that allows the follower to travel through its cam table without a physical master axis moving.

Control Techniques provides a Cam as a collection of cam table(s) that can be used individually of chained together to form a full sequence of motion. Each cam table is a user specific sequence of movements whereby the user can specify the master and follower movement along with the interpolation type. Coupled with a user program to monitor the flow, the motion can dynamically be altered by changing the cam table chains selecting a different sequence of tables. You can further adjust the flow by dynamically changing the cam tables themselves or using a cam table time base index to adjust time or distance.

As an alternative, the cam is initiated in the same manor as jogs, home and indexes.

Figure 111: Camming View - FM-4E

123

FM-4 Programming Module Reference Manual

Cam Number

Use the arrows of the spin box to increment or decrement the Cam Number and view the setup information for that Cam number. A maximum of 32 different cam tables can be created.

Name

The user can specify a cam name (Cam.#.Name) of up to 12 alphanumeric characters. This allows assigning a descriptive name to each cam table indicating different machine operations.

Cam Type

Cam type (Cam.#.CamType) allow the user to choose from; Master Follower, Absolute MFI, Incremental MFI, Cubic Spline, or Time Based Index cams. Most data entries are “Absolute” which means each point is an absolute distance from the start of the cam table which is an implied zero, although the starting value does not have to be zero. The Incremental MFI (Master/

Follower/Interpolation) has the entries as distance deltas from point to point which means the point is relative to the previous point.

Master Follower

Master Follower is an Absolute Master Follower with a fixed interpolation type of Linear for each point. This is convenient when there are many points entered or are importing data from a CAD system. A large number of data points are required for smooth motion.

Absolute MFI

Absolute MFI allows a different master, follower, and interpolation for each point in the cam. The values are in reference to the beginning of the cam table (position zero). The master positions must increase from point to point since change in master position must always be increasing.

The position interpolation types that are valid in this mode are:

Linear –

Constant velocity across the complete point.

Square –

Velocity increases or decreases linearly across the point. This means that the position changes quadratic across the point.

S-curve -

The velocity and position change along a sinusoidal shape across the point

Cosine –

The velocity starts and ends at the same velocity, but increases or decreases along a sinusoidal shape in order that the proper final position is achieved

Jerk Free –

The jerk starts and ends at zero. Jerk increases or decreases in smooth transition.

Incremental MFI

Incremental MFI is different from Absolute MFI in that each point is a delta position. This allows values in the middle to be modified.

124

Cam Table Plot Error

Setting Up Parameters

Figure 112: Cam Table View With a Smilely Face

When the Master and Follower parameter values are entered into the cam table the graph is updated to reflect these values.

If PowerTools is unable to plot the graph due to these values a smilely face will appear in the graph area of the view. To correct this error just change parameter values until the smilely face is cleared and the plot appears.

Torque Mode View - FM-4E Only

Torque Mode is a mode where the drive is controlled by torque command rather than a position command. The drive can switch between position and torque mode. Note that when in torque mode, there is no following error.

Torque Mode can be velocity limited. If there is not enough back force to keep the motor velocity below the velocity limit, the torque mode will switch into and out of a velocity limiting mode as needed.

125

FM-4 Programming Module Reference Manual

The Velocity Limiting has values and enables for acceleration and deceleration. This allows for position control integration with compound and blended Indexes. We recommend using the graphical monitor to debug your motion integration.

Figure 113: Torque Mode - Online

Torque Mode Settings Group

Torque Command

This parameter (TorqueMode.TorqueCommand) value is the torque level that will be applied when Torque mode is activated.

Peak Torque

This is a read only parameter displays the peak torque available from the selected drive and motor combination.

Velocity Limiting Settings

Velocity Limit Enable Check Box

This check box (TorqueMode.VelocityLimitEnable) when selected will enable the velocity limiting feature in Torque mode.

Max Velocity

This parameter (TorqueMode.VelocityLimit) value is the maximum limit of the velocity when velocity limit enable is enabled.

Hysteresis

When velocity is limited, this parameter (TorqueMode.TorqueModeHysteresis) is the value that the velocity must drop to before the drive returns to toque mode.

Acceleration Check Box

Select this check box (TorrqueMode.AccelEnable) when an acceleration ramp is desired.

Acceleration

This parameter (TorqueMode.Accel) is the acceleration ramp for the velocity limit feature, when enabled.

126

Setting Up Parameters

Deceleration Check Box

Select this check box (TorrqueMode.DecelEnable) when an deceleration ramp is desired.

Deceleration

This parameter (TorqueMode.Decel) is the deceleration ramp for the velocity limit feature, when enabled.

Multiple Profiles

Motor motion or "Axis" motion may be generated from either of two Profiles: Profile.0 and Profile.1. Each of these Profiles can run any type of motion (i.e. Index, Jog, Gear, etc.) at any time. Both of the Profiles can generate motion simultaneously.

For example while Gearing, an incremental index can be initiated "on top" of the Gear velocity. The sum of both Profiles provides the motors commanded position and this parameter is called PosnCommand.

In order to run motion on both Profiles, a program must be used. To specify which profile a motion object runs on, the On

Profile instruction is used. The default Profile is Profile.0 and therefore it is unnecessary to specify On Profile.0 in user programs. If no Profile is specified, the default profile is used. For example, a user program that initiates an index on Profile.0.

The following two program lines will generate the same result.

Index.0.Initiate

and

Index.0.Initiate On Profile.0

Both of these lines of code will initiate Index 0 on Profile 0. The first one uses Profile 0 because it is the default profile, and the second one uses Profile 0 because it is specified. The On Profile.0 command is completely optional, but may be used for clarity.

To run a motion object on the other profile (Profile 1), we must specify the use of Profile 1. The following program line will perform Index 0 on Profile 1.

Index.0.Initiate On Profile.1

Any motion may be run on either Profile, but running the same motion object on both profiles simultaneously is prohibited.

For example, it is illegal to run Index 0 on Profile 0 and on Profile 1 at the same time.

Illegal:

Index.0.Initate

Index.0.Initiate On Profile.1

Legal:

Index.0.Initiate

Wait For Index.0.CommandComplete

Index.0.Initiate On Profile.1

Any two motion objects can be run on both profiles at the same time. For example, it is legal to run Index 0 on Profile 0 and

Index 1 on Profile 1 at the same time.

Legal:

Index.0.Initiate

Index.1.Initiate On Profile.1

The distance and velocity of the two indexes is summed to generate the overall position command and velocity command for the motor.

All motion run from the Assignments view is automatically run on Profile 0. It is not possible to change the Profile on which motion run from the Assignments view operates. Therefore in order to run motion from both the Assignments view and from a program simultaneously, motion initiated by the program must be run on Profile 1.

127

FM-4 Programming Module Reference Manual

The Profile view allows the user to view the Position Command and Velocity Command for each profile individually. An example of this view is shown below.

Figure 114: Profile View - Online

The following example program code runs Index 0 on Profile 0, Wait for 1 second, and then initiate Index 1 on Profile 1. The diagram shows how the two profiles look individually, and then shows how the motion looks after being summed by the two profiles.

Index.0.Initiate

Wait For Time 1.00 ‘Seconds

Index.1.Initiate On Profile.1

Wait For Index.1.CommandComplete

DriveOutput.1 = ON

128

If using the “On Profile” command on the same line of code as the “Using Capture” command, “Using Capture” should precede the “On Profile” command. Below are example lines of program code that initiate indexes on different profiles using captured data for the starting point.

Initiate Index 1 on Profile 0 using data stored in Capture object 2 as the starting point.

Index.1.Initiate Using Capture.2

Initiate Index 3 on Profile 1 using data stored in Capture object 1 as the starting point.

Index.3.Initiate Using Capture.1 On Profile.1

Setting Up Parameters

Stopping Motion

MotionStop from a Program

The MotionStop command will cause all motion to stop regardless of what type of motion it is, or where it was initiated from.

Upon activation of the MotionStop, all motion will begin to decelerate to a stop using the standard Stop deceleration ramp.

That ramp is defined using the StopDecel parameter. MotionStop is a level sensitive command meaning that as long as it is active, all motion will be stopped and prevented from running. When MotionStop is deactivated, all motion is permitted again. Any motion that is interrupted with the MotionStop command is cancelled, and will not complete when MotionStop deactivates.

The MotionStop command DOES NOT stop any programs. All programs that are active when the MotionStop is activated will continue to run as normal.

All motion stopped using the MotionStop command will stop using a realtime deceleration ramp (even if the timebase of the motion being stopped is synchronized). This can help in applications that use synchronized motion if the master stops and then the user wishes to break out of the synch motion without performing an synchronized deceleration ramp.

Neither the CommandComplete signals from motion objects nor the ProgramComplete signals will activate if they have been stopped using the MotionStop command.

In the example below, Program 0 runs an infinite loop in which Index 5 runs and then waits for half a second and then repeats itself. When Input 2 activates, Index 5 will stop if in progress and the program will loop back to the Index.5.Initiate.

Example: 1

Program 0 – Running on Task 0

Do While TRUE

Index.5.Initiate

Wait For (Index.AnyCommandComplete OR MotionStop = ON)

Loop

Wait For Time 0.50 ‘Seconds

Program 1 – Running on Task 1

Wait For DriveInput.2 = ON

MotionStop = ON

Wait For DriveInput.2 = OFF

MotionStop = OFF

MotionStop from an Assignment

The MotionStop as explained above can also be initiated from an Assignment. MotionStop can be found in the Ramps group of Destinations.

Profile.#.MotionStop from a Program

The Profile.MotionStop instruction is used to stop motion on an individual profile without stopping all motion. Upon activation of the Profile.MotionStop, any motion running on the specified profile will begin to decelerate using the StopDecel ramp down to zero velocity. The deceleration is performed in realtime regardless of the timebase of the active motion. This can be used in applications where motion is being run on both profiles simultaneously, and the user only wishes to stop one of the motion types. For example, an application that uses gearing to follow a master encoder and then uses indexes on the other profile to do correction profiles. The application may call for stopping all correction moves, but continuing the gearing motion. In this application, the user would perform a Profile.MotionStop on the profile doing the correction moves. The below example uses a separate program to control the Profile.Stop.

The Profile.MotionStop instruction does not stop the program that the motion is initiated from.

The Profile.MotionStop is level sensitive so that when it is activated, all motion on that profile will stop, and remain stopped, until the Profile.MotionStop is deactivated. If the Profile.MotionStop is activated, it will stop any motion in progress, and will also prevent any new motion from starting on that profile. No motion will be permitted on that profile until the profile being stopped has come to a complete stop. The motion that was stopped while in progress will not resume when the

Profile.MotionStop is deactivated. Level sensitive motion that is initiated from the Assignments view (i.e. jogging, gearing) will not operate until the activate signal is reset and activated again.

The CommandComplete signal for the motion will NOT activate if the motion was interrupted using the Profile.MotionStop command regardless of motion type. In the example below, Program 0 would be stuck on the Wait For

129

FM-4 Programming Module Reference Manual

Index.AnyCommandComplete instruction if the Profile.MotionStop is used. To avoid this condition, “OR Profile.1.Stop” has been inserted after the Wait For Index.AnyCommandComplete.

Example: 1

Program 0 – Running on Task 0

Gear.Initiate On Profile.0

Do While TRUE

Wait For DriveInput.1 = ON

Index.1.Initiate On Profile.1

Wait For (Index.AnyCommandComplete OR Profile.1.MotionStop)

Loop

Program 1 – Running on Task 1

Do While TRUE

Wait For DriveInput.2 = ON

Profile.1.MotionStop = ON

Wait For DriveInput.2 = OFF

Profile.1.MotionStop = OFF

Loop

Profile.#.MotionStop from an Assignment

The Profile.#.MotionStop as explained above can also be initiated from an Assignment. Profile.#.MotionStop can be found in each Profiler group of destinations.

Network Group

For information on the DeviceNet, Ethernet and Profibus Views, please refer to the FM-3 and FM-4 Connectivity Reference

Manual

(P/N 400508-04).

Modbus RTU/TCP View - FM-4Only

The Modbus RTU/TCP View is used to assign Modbus addresses to individual parameters.

By selecting Modbus RTU/TCP in the Hierarchy Tree, the Modbus RTU/TCP View will appear on the right (see Figure 116).

The right part of the window displays all of the drive parameters. The number of parameters that appear depends on the User

Level.

130

Setting Up Parameters

Figure 115: Modbus View

An external device such as a Human Machine Interface (HMI) or PLC can be used to monitor or edit individual drive parameters. The Epsilon EP-P drive uses a 32-bit Modbus RTU communications protocol.

In order to view or modify a parameter, a Modbus address must be assigned to the specific parameter. To do this, locate the parameter you wish to read/write to or from in the variables list in the middle of the view. Once you have found the proper parameter, click and hold the left mouse button over the parameter. While still holding the button on your mouse, drag the parameter into the Modbus window area on the right of the view. Now let go of the mouse button.

The New Assignment dialog box will appear. This will automatically assign the next available modbus address, or allow you to enter a different Modbus address. Click OK, then you will be able to read or write the parameter at that address.

Figure 116: Modbus New Address Dialog Box

Address ranges are as follows:

Address Range

4xxxx

3xxxx

1xxxx

0xxxx

Accessibility

Read/Write

Read Only

Read Only

Read/Write

Type

Register

Register

Input Bits

Coil

Data Size

32 bit word

32 bit word bit bit

131

FM-4 Programming Module Reference Manual

Any individual Modbus address can be deleted by selecting the parameter you wish to delete, and click on the Remove button.

The address selected will be removed from the list. If you wish to delete all of the Modbus addresses that have been created, then simply click on the Remove All button. All of the addresses will disappear and the Modbus window will be empty.

Some Modbus addresses have been reserved and can not be assigned: 39980-39999 and 49501-49999.

Note

Some configuration software uses a 6 digit addressing base. The first digit is an indication of register or bit type. Thus

400001 in this software is equal to 40001 in Control Techniques Modbus RTU.

Modbus Master View FM-4E Only

Modbus Master provides a method for the Epsilon EP drive to read or write directly to standard compliant Modbus slaves

(such as extended I/O blocks). The process of using this function is to first define the communication path to the slave(s), then use the user program instructions to directly read or write either bits or words to the identified slave(s).

Configuring Modbus Master

The Modbus Master view, RTU Setup tab allows the user to configure the drive's serial (RS-485) port to operate as a Modbus

Gateway and/or as a Modbus Master. Modbus Gateway check box or Modbus Master check box must be selected otherwise the port is configured as a Modbus slave. The RTU configuration comprises of two sets of parameters:

• The serial port configuration (baud, parity and stop bits)

• The timeouts and gaps for data transmission, see Figure 119 Modbus RTU Timing Diagram on page 133.

132

Figure 117: Modbus Master View

Identifying Slaves

Slaves need to be identified before they can be used. The Slaves tab on the Modbus Master view specifies the attributes of the slave(s). The quantity of slaves can be increased or decreased by changing the "number of slaves" field using the up and down arrows. This will add or remove slave entries.

Each slave entry identifies how the drive can reach the slave, its unit ID, data representation and Modbus specific timing

attributes, see Figure 119 Modbus RTU Timing Diagram on page 133 for more details.

Setting Up Parameters

Figure 118: Modbus Master View - Slave Tab

Master

Slave

∆ a ∆ b ∆ c ∆ d

Figure 119: Modbus RTU Timing Diagram

Δ a - Response Gap - Specifies the maximum timeout for the response packet. If a response packet is not detected within this period then the slave device status is set to no_response.

Δ b - Inter Character - Specifies the maximum period for receiving each character of the Modbus packet. If a character is not received during this period, then the master considers the partial packet incomplete, and sets the slave device status to no_response.

Δ c - Inter Frame - Specifies the period of no data transmission indicating the end of the Modbus packet. Modbus specifications generally specify this gap to be 3½ characters wide. If data is received during this period, then it is considered a part of the current data packet.

133

FM-4 Programming Module Reference Manual

Δ d - Message Gap - Specifies idle period between the last packet received and the next packet transmitted. This gap allows for extended quite time for multiple slaves on the same communications path; where slaves may be actively monitoring

Modbus packets and may miss the standard Inter Frame gap.

134

Setting Up Parameters

Modbus View

The Modbus View or Modbus RTU/TCP View is used to assign Modbus addresses to individual parameters.

By selecting Modbus or Modbus RTU/TCP in the Hierarchy Tree, the Modbus or Modbus RTU/TCP View will appear on the right. The right part of the window displays all of the drive parameters. The number of parameters that appear depends on the User Level.

Figure 120: Modbus View - FM-4

135

FM-4 Programming Module Reference Manual

Figure 121: Modbus View - FM-4E Only

An external device such as a Human Machine Interface (HMI) or PLC can be used to monitor or edit individual module parameters. The FM-4 module and drives use a 32-bit Modbus RTU communications protocol.

In order to view or modify a parameter, a Modbus address must be assigned to the specific parameter. To do this, locate the parameter you wish to read/write to or from in the variables list in the middle of the view. Once you have found the proper parameter, click and hold the left mouse button over the parameter. While still holding the button on your mouse, drag the parameter into the Modbus window area on the right of the view. Now let go of the mouse button.

The New Assignment dialog box will appear. This will automatically assign the next available modbus address, or allow you to enter a different Modbus address. Click OK, then you will be able to read or write the parameter at that address.

136

Figure 122: Modbus New Address Dialog Box

Address ranges are as follows:

Address Range

4xxxx

3xxxx

1xxxx

0xxxx

Accessibility

Read/Write

Read Only

Read Only

Read/Write

Type

Register

Register

Input Bits

Coil

Data Size

32 bit word

32 bit word bit bit

Setting Up Parameters

Any individual Modbus address can be deleted by selecting the parameter you wish to delete, and click on the Remove button.

The address selected will be removed from the list. If you wish to delete all of the Modbus addresses that have been created, then simply click on the Remove All button. All of the addresses will disappear and the Modbus window will be empty.

Some Modbus addresses have been reserved and can not be assigned:

39980-39999 and 49501-49999.

Note

Some configuration software uses a 6 digit addressing base. The first digit is an indication of register or bit type. Thus

400001 in this software is equal to 40001 in Control Techniques Modbus RTU.

Modbus Master View

Modbus Master provides a method for the Epsilon EP drive to read or write directly to standard compliant Modbus slaves

(such as extended I/O blocks). The process of using this function is to first define the communication path to the slave(s), then use the user program instructions to directly read or write either bits or words to the identified slave(s).

Configuring Modbus Master

The Modbus Master view, RTU Setup tab allows the user to configure the drive's serial (RS-485) port to operate as a Modbus

Gateway and/or as a Modbus Master. Modbus Gateway check box or Modbus Master check box must be selected otherwise the port is configured as a Modbus slave. The RTU configuration comprises of two sets of parameters:

The serial port configuration (baud, parity and stop bits)

The timeouts and gaps for data transmission, see Figure 119 Modbus RTU Timing Diagram on page 104.

Figure 123: Modbus Master View

Identifying Slaves

Slaves need to be identified before they can be used. The Slaves tab on the Modbus Master view specifies the attributes of the slave(s). The quantity of slaves can be increased or decreased by changing the "number of slaves" field using the up and down arrows. This will add or remove slave entries.

Each slave entry identifies how the drive can reach the slave, its unit ID, data representation and Modbus specific timing attributes, see Figure 119 Modbus RTU Timing Diagram on page 104 for more details.

137

FM-4 Programming Module Reference Manual

Figure 124: Modbus Master View - Slave Tab

Master

Slave

∆ a ∆ b ∆ c ∆ d

138

Figure 125: Modbus RTU Timing Diagram

Δ a - Response Gap - Specifies the maximum timeout for the response packet. If a response packet is not detected within this period then the slave device status is set to no_response.

Δ b - Inter Character - Specifies the maximum period for receiving each character of the Modbus packet. If a character is not received during this period, then the master considers the partial packet incomplete, and sets the slave device status to no_response.

Δ c - Inter Frame - Specifies the period of no data transmission indicating the end of the Modbus packet. Modbus specifications generally specify this gap to be 3½ characters wide. If data is received during this period, then it is considered a part of the current data packet.

Δ d - Message Gap - Specifies idle period between the last packet received and the next packet transmitted. This gap allows for extended quite time for multiple slaves on the same communications path; where slaves may be actively monitoring

Modbus packets and may miss the standard Inter Frame gap.

Setting Up Parameters

DeviceNet View - FM-4DN Only

For those modules that have the DeviceNet option, please refer to the FM-3 and FM-4 Connectivity Reference Manual, P/N

400508-04, which can be found on the Control Techniques MME Power CD.

Profibus View - FM-4PB Only

For those modules that have the Profibus option, please refer to the FM-3 and FM-4 Connectivity Reference Manual, P/N

400508-04, which can be found on the Control Techniques MME Power CD.

Ethernet View - FM-4E Only

For those modules that have the Ethernet option, please refer to the FM-3 and FM-4 Connectivity Reference Manual, P/N

400508-04, which can be found on the Control Techniques MME Power CD.

139

FM-4 Programming Module Reference Manual

140

FM-4 Programming Module Reference Manual

Programming

Programs

Motion Programs are a series of indexes, homes and jogs that have been previously setup. You combine these with other programming steps to create a complex motion profile. Each motion program provides a series of movements in conjunction with other machine functions. The movements are used to perform a particular machine operation.

Multiple programs can be created using PowerTools Pro software and stored in the FM-4. The FM-4 module is capable of storing up to 55 indexes, 99 motion programs, and a maximum of 1024 program steps in the FM-4 Flash Memory. The amount of available Flash Memory determines how many programs, program steps, indexes, etc. that the configuration can hold.

The number of available programs and average number of steps per program are directly related to each other. The memory is setup such that if you require 99 programs (maximum), each program can have an average of 10 program steps each. If the number of programs is reduced to a minimum, you could have as many as 1024 steps in a single program.

FM-4E Only

Expanding Programs in the Hierarchy Tree the user will notice there is three types of programs. Cyclic Programs, User

Programs (Programs), and Real Time Programs.

A Cyclic Program is designed to execute over several update rate cycles, utilizing a specified amount of the update rate time and a specified number of update rate cycles. CyclicProgram.#.EnableProgram must be activated to initiate the

Cyclic Program.

A Real Time Program is designed to execute to completion in a single update rate cycle.

RealTimeProgram.#.EnableProgram must be active to initiate the Real Time Program.

User Programs can be initiated either using the Program.#.Initiate destination or the program instruction. User Programs use as many update rate cycles as needed to complete the program.

Program Toolbar Buttons

Following is a detailed description of each of the buttons found on the Program Toolbar. These buttons will help the user edit programs as well as debug errors and troubleshoot program functionality. Some of these buttons are only available when online with the module.

Undo Last Change

This button will undo the last change made to the program. PowerTools Pro will save up to ten of the last changes performed in the program.

Redo Last Change

This button will redo the last change that was undone. PowerTools Pro will save up to ten of the last changes that have been undone in the program.

Find

This button allows the user to search for a given string inside the program. Modifying several parameters in the Find dialog box (i.e. Search Up, Search Down, Match Case, etc.) can customize the search.

Find Next

This button will find the next instance of the string last searched for. This allows you to quickly find all the matches to your search with out re-entering the selected word.

Book Mark

141

FM-4 Programming Module Reference Manual

This button will insert a bookmark on the line of code on which the cursor is placed. Bookmarks allow the user to mark certain sections of the program for easy access to at a later time. The next BookMark and Previous BookMark buttons can be used to jump from one bookmark to the next very quickly. If this button is clicked when a bookmark already exists on the line of code, the bookmark will be removed.

Next Book Mark

This button will position the cursor on the next available bookmark ahead of the cursor in the program.

Previous Book Mark

This button will position the cursor on the previous bookmark behind the cursor in the program.

Delete All Book Marks

This button will delete all of the bookmarks in the program. To delete only a single bookmark, place the cursor on the line for which you wish to delete the bookmark, and click on the Book Mark button.

Red Dot Help

If a user program contains an error, the realtime program parser will detect it, and place a red-dot next to the line of code with the error. For help on what the particular error is, click on the Red Dot Help button, and then click on the line of code with the red-dot next to it. PowerTools Pro will attempt to give a detailed description of the error.

Red Dot Help can also be used to read the status of a program variable. Click the Red Dot Help button to activate Red Dot help, then click on the variable in the line of code in the program text. The line of code selected must not have a red dot because the error will take precedence.

After clicking on the variable a yellow popup window displays information about the variable.

• When online it will display the current values for the variable

• A short description of the variable is displayed

• It will display the initialization value set in the application by the view settings

• It will display the range for numerical data, selection options for selections, Boolean options for Booleans

• If the variable is read only

Drag In I/O

Clicking on this button will open the Drag In I/O window. From this window, the user can drag Drive and Module Input/

Output lines of text into the program. This feature can be used to minimize the need to type in program statements. The Input or Output state (i.e. =On or =Off) can also be dragged into the program from this window.

Drag In Operands

This button will open the Drag In Operands window. From this window, the user can drag formula Operands (i.e. +, -, /, *) into the program formula.

Drag In Variables

This button will open the Drag In Variables window. From this window, the user can find any variable they wish to use in a program, and simply drag it into the program code. This list will easily allow you to find any of the available pre-defined variables in the FM-4. The available parameters shown in the window depends on the selected Program User Level.

142

Programming

Lock Program

Toggling this button will lock and unlock the program for editing. When locked, the user is not able to modify the program code. After downloading, the program automatically locks to prevent the user from inadvertently changing program statements. To unlock the program, simply click the button.

Run This Program

Clicking on this button will automatically initiate the program that is currently being viewed. The drive must first be enabled in order to run a program. Only available while online.

Program Where Am I?

Clicking on this button will show the line of the program that is currently being executed. A blue arrow will point to the line in the program that was executing when the button was clicked. The arrow will not continue to follow program flow. If the program is not currently running, then the arrow will point to the top of the program, or to the last line of the program that was processed before it was stopped. Only available while online.

Stop All

This button is the same as the Stop destination found in the Assignments view. Clicking on this button will stop all programs and motion. If in motion, the motor will decelerate to a stop using the StopDeceleration ramp value. Only available while online.

Disable Error Check

This button can be used to temporarily disable the program parser. The parser is what detects errors in a user program. When user programs are very large, the parser can take an appreciable amount of time to check the entire program for errors. To avoid this, the user can disable the program parser, enter all of the changes, and then re-enable the parser to check for errors.

Cyclic Program View

The Cyclic Program initiation is synchronized to a multiple of the update rate cycles. Therefore it provides a deterministic cycle time that is repeated automatically. The Cyclic Program executes over multiple update rates and therefore has a reduced program instruction set compared to Real Time programs.

143

FM-4 Programming Module Reference Manual

Figure 126: Cyclic Programs View

Program Name

This is a 12 character string that the user can assign to an individual program. It allows the user to give a descriptive name to the program for ease of use.

Update Rate

This parameter defines the number of Update rates the cyclic program has to finish. This parameter can only be setup on the

Cyclic Program view.

Utilize

Utilize is the percent of the Control Loop time utilized for control loop, Real Time Program and a portion of the Cyclic

Program. When this limit is hit, the cyclic program is suspended until the next control loop. The percentage left over will processes user programs, communications and other processes. To prevent complete starvation of user programs and communications, the execution of the Cyclic Program is spread out over several control loops based on the Utilize percentage.

The drive’s CPU time is allocated between the background processes and the foreground control loop interrupt. The control loop interrupt executes event updates, motion calculations, the complete real time program and a portion of the cyclic program up to the Utilize percentage of the trajectory rate. Then the control loop interrupt is exited and the background processes continue to run.

No matter how low the Utilize percentage is set, the required control loop motion calculations will be completed, the Real

Time Program will run to completion, and at least one cyclic instruction will be executed. If these do not complete, a real time program timeout fault is generated. A Cyclic Program Timeout Fault occurs if the cyclic program has not completed at the next Cyclic Program Initiate.

In actuality the Cyclic Programs are initiated from the control loop but are run outside the control loop interrupt. They run as processes along with user programs, but at a higher priority so cyclic programs are run before any user program. Other processes may run at lower or higher priorities. These include processing the communications. The cyclic programs are suspended and resumed based the utilize percentage and trajectory rate.

144

Programming

User Program View

Click on Programs\Program#, the program view will appear on the right (see Figure 121). The left side (pane) of this view contains the program instructions. The right side of the Programs view contains the Program Toolbar above the program code area.

Figure 127: Programs View

Program Name

This parameter (Program.#.Name) is a 12 character string that the user can assign to an individual program. It allows the user to give a descriptive name to programs for ease of use.

Program Number

This spin box allows the user to create additional programs. Unlike the motion views, to get to Program1 you must use the arrows of the spin box.

Task Number

This parameter (Program.#.TaskNumber) allows programs to run simultaneously. To run one program (for example,

Program1) while another program (Program0) is executing, Program0 will be set for Task Number 0 and select Program1, click on the up scroll arrow of the Program Number to Program 1 then click on the up arrow of the Task Number to number 1.

Use the up and down arrows next to the Task Number to change the Task Number. To create a new Task, simply click on the up arrow until PowerTools Pro asks if you wish to create a new Task. The maximum number is up to four different tasks in a single application.

If the user wishes to operate two programs simultaneously, the two programs must be assigned to two different tasks. Multiple programs can be assigned to the same task if desired, but that means that the two programs cannot be run at the same time. If a given program calls another program, then the calling and the called programs must be on the same task. All programs default to task zero and therefore will not run simultaneously unless specified to do so.

145

FM-4 Programming Module Reference Manual

Run Anytime Enable Check Box (Programs Only)

Some applications require the ability to run a program as soon as a fault occurs or continue running a program even through a fault condition. In order to do this, a program must be classified as "Run Anytime". To define a program to be able to run during a fault or while the drive is disabled, the "Run Anytime" check box must be enabled (selected) in the Program view or Program.#.RunAnytimeEnable can be activated in a program.

Note

If a Program Fault occurs the program will stop executing regardless of the "Run Anytime" setting.

Global Where Am I Check Box (Programs Only)

This parameter (Program.#.GlobalWhereAmIEnable) is used to control the functionality of the Global Where Am I arrow in a user program. If the user activates the Global Where Am I feature by clicking the Global Where Am I button on the

PowerTools Pro toolbar, a blue arrow will follow the program flow on a given task by pointing to the line of the user program that is currently being processed. If the Global Where Am I is active, and one user program calls another user program (using the Call Program instruction), the PowerTools Pro view will automatically switch to the “called program”. In some cases it may be desirable to stop the screen from automatically changing to the “called program”, this can be done by disabling

(clearing) the Global Where Am I Enable check box. When clear, the Global Where Am I feature will not function within the specific program. Each program has its own Global Where Am I Enable check box. By default, all Global Where Am I Enable check boxes are selected (active).

Real Time Program View

The Real Time program is designed to be executed to completion in every update rate cycle. The real time program instruction set is reduced to insure all the operations are completed within the update rate.

Figure 128: Real Time Programs View

Program Name

This is a 12 character string that the user can assign to an individual program. It allows the user to give a descriptive name to the program for ease of use.

146

Programming

Program Multi-Tasking

Many applications require the operation of a background task that operates outside of the main program loop, but must be consistently processed. For instance, a background task that performs calculations for values sent to an operator interface or a background task that monitors parameters for fault detection.

The Epsilon EP-P processor has the ability to execute multiple tasks. Because only one task can be processed at a time, a process called time slicing must be used. Time Slicing is simply splitting the total processing time between multiple tasks.

The processor stops all tasks and updates the control loop every 1600 microseconds (default, update time may be set by user).

Inside the control loop update, the drive updates the motion trajectory, captured data, digital inputs and outputs, and other control parameters. Between each control loop update, the drive processes messages (i.e. Modbus, Ethernet, Faults, etc.) and then runs as much of the user programs as possible until the next control loop update begins. Each update, a different task is processed, and therefore how long it takes a given user program to complete depends how many tasks have been created.

Control Loop Update

Messages

User Program Execution T0 T1

T2

TN

Update Rate

Figure 129: Time Slicing and Multiple Tasking Handling

The task assignment is done on the program view. Figure 121 shows the program view with the Task Number parameter. Use the up and down arrows next to the Task Number to change the value. To create a new Task, simply click on the up arrow until PowerTools Pro asks if you wish to create a new Task.

The FM-4E module allows up to four different tasks in a single application.

If the user wishes to operate two programs simultaneously, the two programs must be assigned to two different tasks. Multiple programs can be assigned to the same task if desired, but that means that the two programs can not be run at the same time.

If a given program calls another program, then calling and the called programs must be on the same task. All programs default to task zero and therefore will not run simultaneously unless specified to do so.

Timing Diagrams

In Figure 123 the update rate is set to 1600 microseconds (Found on the Setup View). The first routine to be processed in the update rate is the control loop update. Next, all messages will be handled. If no message has been sent from a Modbus master and no faults are active, then this step is skipped. After all messages are processed, then execution switches to the user programs. The user programs are assigned to tasks, and the tasks are handled in ascending order starting with task 0. If a task has been assigned, but not initiated, then that task can be skipped. After 1600 microseconds has passed, the task is stopped, and the process is repeated using the next available task. Once each task has been processed (depends on how many have

147

FM-4 Programming Module Reference Manual been assigned by the user), the whole process starts over at the first task. This process is accurate as long as no program is blocked. The following figure shows examples of user programs and task numbers and how the drive processes them.

Control Loop + User Program on one Task

Control Loop

User Program T0 T0 T0 T0 T0 T0

Update Rate

Control Loop + User Programs on two Tasks

Control Loop

User Program T0 T1 T0 T1 T0 T1

Update Rate

Control Loop + User Programs on three Tasks

Control Loop

User Program

T0

T1 T2 T0 T1 T2

Update Rate

Control Loop + User Programs on two large Tasks

Control Loop

User Program

T0 T0 T0 T1 T1 T0

Update Rate

Figure 130: Diagram of User Programs with Multiple Tasks

The following three figures are timing diagrams of a cyclic program with different utilization values (showing the effect) and a user program initiated to run on a single task.

148

Programming

Cyclic Program Utilization set to 80%

Control Loop + Cyclic Prog + User Prog on one Task. Cyclic

Program Utilization set to 80% means cyclic program is suspended after 80% of update is reached, then resumed next update

Control Loop

Cyclic Program

User Program

T0 T0 T0 T0 T0 T0

Update Rate

Cyclic Update = 3x Update Rate

Figure 131: Diagram of User Program and a Cyclic Program

Cyclic Program Utilization set to 50% Same as above except Cyclic Program Utilization is set to 50% instead of 80%. Note that Cyclic Program takes an extra update rate cycle to complete

Control Loop

Cyclic Program

User Program T0 T0

T0

Update Rate

Cyclic Update = 3x Update Rate

Figure 132: Diagram of User Program and a Cyclic Program

T0 T0

T0

149

FM-4 Programming Module Reference Manual

Cyclic Program Utilization set to 40%

Same as above except Cyclic Program Utilization is set to 40%. In this scenario, Cyclic Program cannot complete within 3 updates and so Overrun Error occurs in next update. Need less code in Cyclic

Prog, higher Utilization setting, or Larger Cyclic Update Rate setting

Control Loop

Cyclic Program

User Program

T0 T0

Overrun Error

Update Rate

Cyclic Update = 3x Update Rate

Figure 133: Diagram of User Program and a Cyclic Program

The following two figures are timing diagrams of a cyclic program with different utilization values (showing the effect) and a user program initiated to run on several tasks.

Cyclic Program Utilization set to 70%

Control Loop + Cyclic Prog + User Progs on two Tasks. Cyclic

Program Utilization set to 70% means cyclic program is suspended after 70% of update is reached, then resumed next update

Control Loop

Cyclic Program

User Program T0 T1 T0 T1

Update Rate

Cyclic Update = 3x Update Rate

Figure 134: Diagram of User Programs on Two Tasks and a Cyclic Program

T0 T1

150

Programming

Cyclic Program Utilization set to 70%

Control Loop + Cyclic Prog + User Progs on three Tasks. Note how when the number of Tasks is the same as the Cyclic Program

Update Rate setting, some programs get shortchanged. This should be avoided by changing the Cyclic Program Update Rate

Control Loop

Cyclic Program

User Program T0 T1 T2 T0 T1 T2

Update Rate

Cyclic Update = 3x Update Rate

Figure 135: Diagram of User Programs on Three Tasks and a Cyclic Program

The two figures show how the Real Time program is executed prior to the user program and how the size of the Real Time program effects the time left in the update rate for the user program to complete.

Control Loop + Real Time Prog + User Prog on one Task

Control Loop

Real Time Program

User Program

T0

Update Rate

T0 T0

Figure 136: Diagram of User Program and a Real Time Program

T0 T0 T0

151

FM-4 Programming Module Reference Manual

User program can be "choked" if too much code is put into real time program

152

Real Time Program

Update Rate

Figure 137: Diagram of User Program and a Real Time Program

When the Real Time program is to large and can not be completed in the update rate time the drive will fault.

Real Time program must complete every update rate. If too much code is put in realitime program, overrun error can occur

Overrun Error

Real Time Program

Update Rate

Figure 138: Diagram of User Program and a Real Time Program

Figure 133 shows how the Real Time program finishes and the two task user programs are processed.

Control Loop + Real Time Prog + User Progs on two Tasks

Control Loop

Real Time Program

User Program T0

Update Rate

T1 T0 T1

Figure 139: Diagram of User Programs on Two Tasks and a Real Time Program

T0 T1

Programming

The following three figures show how the drive processes Real Time, Cyclic, and User Programs with different number of tasks.

Cyclic Program Utilization set to 80%

Control Loop + Real Time + Cyclic + User Program on one Task.

Cyclic Program Update Rate set to 4x Trajectory Update Rate and

Utilization set to 80%.

Control Loop

Real Time Program

Cyclic Program

User Program T0 T0

T0

T0 T0

T0

T0

Update Rate

Cyclic Update = 4x Update Rate

Figure 140: Diagram of User Program, a Real Time Program and a Cyclic Program

Cyclic Program Utilization set to 80%

Control Loop + Real Time + Cyclic + User Programs on two Tasks.

Cyclic Program Update Rate set to 4x Trajectory Update Rate and

Utilization set to 80%.

Control Loop

Real Time Program

Cyclic Program

User Program

T0 T1 T0 T1 T0 T1

Update Rate

Cyclic Update = 4x Update Rate

Figure 141: Diagram of User Program on Two Tasks, a Real Time Program and a Cyclic Program

T0

153

FM-4 Programming Module Reference Manual

Control Loop + Real Time + User Programs on three Tasks.

Cyclic Program fUpdate Rate set to 4x Trajectory Update Rate and

Utilization set to 80%.

Control Loop

Real Time Program

Cyclic Program

User Program

Update Rate

Cyclic Update = 4x Update Rate

Figure 142: Diagram of User Programs on Three Tasks, a Real Time Program and a Cyclic Program

Program Instruction Types

Program Flow Instructions

Break

For Switch instruction, break stops the instruction execution flow and continues execution after the EndSwitch instruction.

A break is required to prevent the Case instruction flow continuing the executing through to the next case or default instructions.

For "Do While” instruction, break stops the instruction execution flow and continues execution after the Loop instruction.

For the “For Count" instruction, break stops the instruction execution flow and continues execution after the Next instruction.

Call Program

This program flow instruction is used to call another program. When the called program finishes the controller picks up where it left off in the program that called it. This is often used when a section of code is used in multiple places in a program. By moving the code to another program and calling that program the total number of program lines can be reduced. This can also make the program easier to understand. Care should be taken not to “nest” more than four program calls due to processor stack overflow. Therefore, no more than four different programs should be called without returning to the original program.

In the diagram below, => Represents a Call Program instruction

Program0=>Program1=>Program2=>Program3=>Program4 => NO MORE THAN 4!

Example:

Call Program.10

Example:

Call Program.100

‘Program 10 contains a complex home

‘routine.

‘Program 100 contains a “teach position”

‘routine.

154

Programming

Case:

When the Switch expression value and the case number instruction match, all the instructions that follow the case instruction up to a Break or EndSwitch are executed. This includes instructions following the next case instructions and the default instruction found. Duplicate "Case number" are not allowed.

Default:

The default is an optional statement within the Switch instruction. It must follow all the case instruction within a Switch instruction. When none of the case instruction numbers match the switch expression value the program instructions following the Default instruction are executed. They are also executed if there is no break instruction in the previous case statements.

Do While/Loop

This program instruction is used for repeating a sequence of code as long as an expression is true. To loop forever use

“TRUE” as the test expression as shown in the third example below. The test expression is tested before the loop is entered.

If the test expression is evaluated as False (0) the code in the loop will be skipped over.

Logical tests (AND, OR, NOT) can be used in the Do While/Loop instruction. Parenthesis “()” can be used to group the logical tests.

Examples:

Do While ModuleInput.1=ON

Loop

Index.1.Initiate

Dwell For Time 1.000

‘Repeat the three lines of code below

‘as long as ModuleInput.1 is ON.

‘Incremental,Dist=5.250in,Vel=10.0in/s

‘seconds

Do While (ModuleInput.1=ON AND ModuleInput.2=OFF)

‘Repeat the three lines of code below

‘as long as ModuleInput.1 is ON and

Loop

Index.1.Initiate

Dwell For Time 1.000

‘ModuleInput.2=OFF.

‘Incremental,Dist=5.250in,Vel=10.0in/s

‘seconds

Do While (TRUE)

Loop

Index.1.Initiate

Dwell For Time 1.000

‘Repeat until the program is halted

‘Incremental,Dist=5.250in,Vel=10.0in/s

‘seconds

Else

This program flow instruction is used in conjunction with the If/Then/Endif instruction. If the If/Then test condition evaluates to true the code after the If/Then and before the Else is executed. If the test evaluates to false the code between the Else and the Endif is executed.

Examples:

If DriveInput.1=ON Then ‘The following two lines are executed if

‘DriveInput.1=ON

Else

DriveOutput.1=ON

DriveOutput.2=OFF

‘The following two lines are executed if

‘DriveInput.1=OFF

DriveOutput.1=OFF

DriveOutput.2=ON

Endif

If (ModuleInput.5=ON) Then

Jog.0.Vel = 1.0 ‘in/s

Else

Jog.0.Vel = 0.1 ‘in/s

Endif

‘Set fast velocity if ModuleInput.5 = ON

‘Set slow velocity if ModuleInput.5 = OFF

End

This program flow instruction is used to halt the execution of the program. It can be used in multiple places within the program. It is not required on the last line of every program. It is implied that after the controller executes the last line of code

155

FM-4 Programming Module Reference Manual in a program the program will halt. It is commonly used inside of If/Then/Endif constructs to end the program if a certain condition has been met.

For example:

If DriveInput.1=OFF Then

End

Endif

For example:

If DriveInput.1=ON Then

DriveOutput.1=ON

End

Endif

For Count/Next

This instruction is used to execute section of code a specific number of times.

Examples:

For Count = 1 to 5

Index.1.Initiate

Next

Dwell For Time 1.000

For Count = 1 To 10

Wait For ModuleInput.1 = ON

‘Incremetal,Dist=5.250in,Vel=10.0in/s

‘seconds

Next

Index.0.Initiate

‘Incremetal,Dist=5.000in,Vel=50in/s

Wait For Index.AnyCommandComplete

ModuleOutput.1=ON

Wait For Time 1.000

ModuleOutput.1=OFF

‘Turn ModuleOutput.1 On

‘seconds

‘Turn ModuleOutput.1 Off

End

This program flow instruction is used to halt the execution of the program. It can be used in multiple places within the program. It is not required on the last line of every program. It is implied that after the controller executes the last line of code in a program the program will halt. It is commonly used inside of If/Then/Endif constructs to end the program if a certain condition has been met.

For example:

If DriveInput.1=OFF Then

End

Endif

For example:

If DriveInput.1=ON Then

DriveOutput.1=ON

End

Endif

Formula

This program instruction can be used to enter a formula or assignment into a program. All FM-4 parameters are available for use in a formula. They may be dragged and dropped into a formula, but the program User Level will determine how many appear for dragging and dropping (see the section on User Level in the Setting Up Parameters chapter). Formulas can also be created by simply typing them into the program. This instruction was created to inform the user that formulas can be used in a program.

For example:

Index.1.Vel = 20.0

Index.0.Dist = Index.2.Dist + 0.1

ModuleOutput.1 = ON

156

Programming

Index.0.Accel = (Index.0.Accel*1000)+5.00

If/Then/Endif

This is a program flow control instruction used to selectively run a section of code only if a logical test condition is true. If the test evaluates to true the code between the If/Then and Endif lines is executed. If the test evaluates to false the code is not executed and the program skips to the next line of code after the Endif.

Logical tests (AND, OR, NOT) can be used in the If/Then/Endif instruction. Parenthesis “()” can be used to group the logical tests.

Examples:

If DriveInput.1=ON Then ’Turn Outputs 1 On and 2 Off if Drive

’Input.1 is ON.

DriveOutput.1=ON

DriveOutput.2=OFF

Endif

If (DriveInput.1=ON AND DriveInput.2=OFF) Then

‘Turn Outputs 1 On and 2 Off if Drive

‘Input.1 is ON and DriveInput.2 is OFF

DriveOutput.1=ON

DriveOutput.2=OFF

Endif

If (ModuleInput.2=ON) Then

Jog.0.PlusInitiate

Wait For ModuleInput.2=OFF

Jog.Stop

Endif

‘Jog+ when ModuleInput.2=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

If (ModuleInput.3=ON) Then

Jog.0.MinusInitiate

Wait For ModuleInput.3=OFF

Jog.Stop

Endif

‘Jog- when ModuleInput.3=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

Wait For

This program flow instruction is used to halt program execution until an expression becomes true. Once the expression becomes true the program continues on with the next line of code.

Logical tests (AND, OR, NOT) can be used in the Wait For instruction. Output events (DriveInput=ON, AtVel, etc.) as well as comparisons (PosnFeedback > 1234, VelFeedback < 100, etc.) can be used in a Wait For instruction.

Examples:

Wait For (ModuleInput.1=ON AND ModuleInput.2=OFF)

Index.0.Initiate

Wait For Index.AnyCommandComplete

If (ModuleInput.2=ON) Then

Jog.0.PlusInitiate

Wait For ModuleInput.2=OFF

Jog.Stop

Endif

‘Jog+ when ModuleInput.2=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

If (ModuleInput.3=ON) Then

Jog.0.MinusInitiate

Wait For ModuleInput.3=OFF

Jog.Stop

Endif

‘Jog- when ModuleInput.3=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

Wait For (MasterAxis.PosnFeedback > 1000.00)

DriveOutput.1 = ON

Wait For (VelFeedback > 50.00)

DriveOutput.2 = ON

157

FM-4 Programming Module Reference Manual

Wait For Time

This program instruction is used to halt program execution for a specified period of time. This instruction is not a motion instruction and can be used while a motion instruction is executing. Units: Seconds, Resolution: 0.001 seconds

A comment is automatically inserted after the “Wait For Time” instruction which notes that the time is in units of seconds.

The comment starts with the apostrophe ‘ character.

Examples:

Wait For Time 5.000

‘seconds

Do While (TRUE)

Index.1.Initiate

Wait For AtVel

‘Repeat until the program is halted

‘Incremental,Dist=25.250in,Vel=10.0in/s

‘Turn Output 1 ON for 1 second, after the ‘index reaches its’ target velocity

DriveOutput.1=ON

Wait For Time 1.000

DriveOutput.1=OFF

‘seconds

Loop

Wait For Index.AnyCommandComplete

BitAnd

This operator may be used when it is desirable to AND each individual bit of a 32-bit parameter. var.var2 = var.var0 bitand var.var1

For example: if var.var0 = 1000 and var.var1 = -1 var.var0 = 0000000000000000000001111101000b var.var1 = 1111111111111111111111111111111b var.var2 = 0000000000000000000001111101000b

BitOr

This operator may be used when it is desirable to OR each individual bit of a 32-bit parameter.

var.var2 = var.var0 bitor var.var1

For example: if var.var0 = 1000 and var.var1 = -10000 var.var0 = 0000000000000000000001111101000b var.var1 = 1111111111111111101100011110000b var.var2 = 1111111111111111101101111111000b

Label:

The Label: instruction is used in conjunction with the GoTo instruction to cause program flow to transfer to a specified location within a program. The destination label is allowed to be above or below the GoTo instruction within the same program. It is not possible to GoTo a label outside of the program containing the GoTo instruction, nor is it possible to use a

GoTo/Label: to exit out of a For Count/Next loop. In either of these conditions, a RedDot error will be generated.

The Label to which program flow transfers is a string of up to 50 characters in length and can be made up of any alphanumeric character. The label name must not start with a number, and must end with a colon character “:”. When using the Label: instruction, a “:” will be automatically inserted for the user.

Labels are not case sensitive.

Examples:

Start:

Index.1.Initiate

Wait For Index.AnyCommandComplete

If (DriveInput.2 = ON) Then

GoTo Start:‘ Go to Start label if Input2 on

EndIf

DriveOutput.1 = ON

End

158

Programming

See GoTo instruction for additional examples.

GoTo

The GoTo instruction is used in conjunction with the Label: instruction to cause program flow to transfer to a specified location within a program. The destination label is allowed to be above or below the GoTo instruction within the same program. It is not possible to GoTo a label outside of the program containing the GoTo instruction, nor is it possible to use a GoTo/Label: to exit out of a For Count/Next loop. In either of these conditions, a RedDot error will be generated.

The Label to which program flow transfers is a character string up to 50 characters in length and can be made up of any alphanumeric character. The label name must not start with a number, and must end with a colon character “:”.

Labels are not case sensitive.

Examples:

Do While (TRUE)

If (DriveInput.1 = ON) Then

GoTo RunIndex1:

Else

GoTo RunIndex2:

EndIf

RunIndex1:

Index.1.Initiate

GoTo EndLoop:

RunIndex2:

Index.2.Initiate

EndLoop:

Wait For Index.AnyCommandComplete

Loop

‘Go to RunIndex1 label

‘Go to RunIndex2 label

‘If Input.1 is on, resume here

‘GoTo EndLoop label

‘If Input.1 is off, resume here

See the Label: instruction for additional examples.

Program Math Functions

Cos

This trig function can be used in formulas from within a program. Example: var.var0 = Cos(var.var1). Returns the trigonometric cosine in degrees. Cos(x) x is in degrees and accurate to 6 decimal places.

Sin

This trig function can be used in formulas from within a program. Example: var.var0 = Sin(var.var1). Returns the trigonometric sine in degrees. Sin(x) x is in degrees and accurate to 6 decimal places.

Tan

This trig function can be used in formulas from within a program. Example: var.var0 =Tan(var.var1). Returns the trigonometric tangent in degrees. Tan(x) x is in degrees and accurate to 6 decimal places.

ArcCos

This trig function can be used in formulas from within a program. Example: var.var0 = ArcCos(var.var1). Returns the trigonometric ArcCos in degrees. The ArcCosine is the angle whose cosine is the given number.

ArcSin

This trig function can be used in formulas from within a program. Example: var.var0 = ArcSin(var.var1). Returns the trigonometric ArcSin in degrees. The ArcSin is the angle whose Sine is the given number.

ArcTan

This trig function can be used in formulas from within a program. Example: var.var0 = ArcTan(var.var1). Returns the trigonometric ArcTan in degrees. The ArcTan is the angle whose Tan is the given number.

Modulus

Returns the remainder (Modulus) resulting when a numerator is divided by a denominator. The result has the same sign as the denominator. The floating-point operators are NOT rounded to integers as would be in the Mod operator.

Example 1: Modulus(5,1.4) Returns 0.8

159

FM-4 Programming Module Reference Manual

Example 2: Modulus(5,-1.4) Returns -0.6

Example 3: Modulus(-5,1.4) Returns 0.6

Example 4: Modulus(-5,-1.4) Returns -0.8

The exact mathematical function for the Modulus function is as follows:

Modulus(x,y) = x - (FLOOR (x/y)) * y

Where FLOOR is defined as rounding the argument down to the next whole integer value towards negative infinity.

Example: FLOOR(-3.5715) = -4

The FLOOR function itself is not available to the user within a user program.

Motion Instructions

Dwell For Time

This motion instruction is used to pause program execution for a very precise amount of time. It operates as a motion instruction – similar to an index, home or jog. Like all other motion instructions it will not start until the preceding motion instruction has completed. A “Wait for Index.AnyCommandComplete” is not required. Likewise, any subsequent motion commands will wait and start after the dwell has completed. The total time required to complete a sequence of indexes and

“Dwell For Time” instructions is extremely repeatable.

The “Dwell For Time” instruction is in units of seconds with a resolution of milliseconds (0.000 seconds).

If you want to pause the program while an index is executing you should use a “Wait for Time” instruction described below.

A comment is automatically inserted after the “Dwell For Time” instruction which notes that the dwell time is in units of seconds. The comment starts with the ‘ character.

Examples:

Do While (TRUE)

Index.0.Initiate

Loop

Dwell For Time 1.000

‘Incremetal,Dist=25.000in,Vel=25in/s

‘Seconds

Do While (TRUE)

Index.0.Initiate

Dwell For Time 1.000

Index.1.Initiate

Loop

Dwell For Time 0.500

‘Incremetal,Dist=25.000in,Vel=25in/s

‘Seconds

‘Incremental,Dist=15.000in,Vel=25in/s

‘Seconds

Dwell for Master Dist

This motion instruction is used to pause program execution for a precise change in distance on the master encoder signal. This is typically used in synchronized motion applications. This dwell does not begin until all other motion has completed. When the dwell begins, program flow will wait until the specified master distance has passed. The units for the dwell value are specified in the Master Units View.

Example:

Do While (TRUE)

Loop

Index.0.Initiate

Dwell For MasterDist 12.00

‘Synch,Incr,Dist=5.0 Inches,Vel=1 Inches/MstrInch

‘MstrInch

IndexInitiate by Expression:

This motion instruction is used to initiate a single index. The index is preset to include an acceleration up to speed, a run at speed and a deceleration to a stop. IndexInitiate by expression is used to initiate different indexes with the same line of code in a program.

One notable change from a standard Index.#.Initiate is that Wait for Index.AnyCommandComplete” line of code normally inserted after the initiate will not be inserted after IndexInitiate by Expression. No comments will be added to this instruction as the index selected can change anytime before the initiate command is encountered.

The following example will initiate index.0, wait for complete, initiate index.1, wait for complete, index.2... etc.

160

Programming

Example:

var.var0 = 0 a: indexinitiate var.var0

Var.var0 = 1 + var.var0

wait for index.anycommandcomplete

goto a:

CompoundIndexInitiate by Expression:

This motion instruction is used to vary the index numbers making up a compound index. No comments will be added to this instruction as the index selected can change anytime before the initiate command is encountered.

The following code will continuously compound initiate index.0 and index.1 in a loop.

Example:

a: if var.var0 = 0 then var.var0 = 1 else var.var0 = 0 endif

CompoundIndexInitiate var.var0

goto a:

Gear.Stop

Gear.Stop will stop gearing motion that has been initiated from a program.

Example:

Gear.Initiate

Wait for DriveInput.2=ON

Gear.Stop

Gear.Initate

Gear.Initiate will initiate gearing from a program. Gearing will remain active until the Gear.Stop command is used.

Example:

Gear.Initiate

Wait for DriveInput.2=ON

Gear.Stop

Home.Initiate

This program instruction is used to initiate the home.

A comment is automatically inserted after the Home.Initiate instruction which shows key data about the particular home. The comment starts with the apostrophe ‘ character.

A “Wait For Home.AnyCommandComplete” instruction is not required because the home is actually a program which already has a “Wait For” instruction.

Example:

Home.0.Initiate

‘Sensor,Offset=2.000in,Vel=-10.0in/s

Index.Initiate

This program instruction is used to initiate a single index. The index is preset to include an acceleration up to speed, a run at speed and a deceleration to a stop.

A comment is automatically inserted after the index instruction which shows key data about the particular index. The comment starts with the apostrophe ‘character.

A “Wait For Index.AnyCommandComplete” instruction is also automatically inserted after each index. This insures that the index has completed before the program continues on to the next line of code. It is also possible make the program wait until the index is complete and the following error is less than a specified amount. This is accomplished by changing the “Wait

For Index.AnyCommandComplete” to “Wait For InPosn”. The In Position Window is configured in the Position view.

Examples:

Index.0.Initiate

‘Incremental,Dist=5.000in,Vel=2.0in/s

161

FM-4 Programming Module Reference Manual

Wait For Index.AnyCommandComplete

Index.37.Initiate

Wait For InPosn

‘Absolute,Posn=120.60mm,Vel=50.2mm/s

Index.CompoundInitiate

This program instruction is used to initiate an index which has no deceleration ramp. The index accelerates or decelerates towards the next index velocity using the next index acceleration ramp. The index will finish at velocity. The program then moves on to the next index. It smoothly transitions into the second index without stopping. The second index then ramps to its pre-configured velocity. Multiple indexes can be “compounded” to create a complex velocity profile. The last index in a complex profile must have a deceleration ramp. This is accomplished using a standard Index.Initiate rather than a

Index.CompoundInitiate. The final index will honor the deceleration ramp. If the last index is not long enough to perform a decel ramp at the programmed rate, the motor will backup at the end of the last index.

Each index can be used in multiple places as both a standard index with a deceleration ramp, and a compound index without a deceleration ramp. The program instruction (Index.0.Initiate or Index.0.CompoundInitiate), not the index itself, determines whether or not the index will execute a deceleration ramp. For example, Index.0 can be used multiple times in multiple programs. It can be initiated at different times using the Index.0.Initiate instruction and the Index.0.CompoundInitiate instruction.

A comment is automatically inserted after the index instruction which shows key data about the particular index. The comment starts with the apostrophe ‘ character.

Examples:

Complex Velocity Profile

Index 0 Index 1 Index 2

Time

Index.0.CompoundInitiate

Index.1.CompoundInitiate

‘Incremental,Dist=5.000in,Vel=50in/s

‘Incremental,Dist=20.000in,Vel=75in/s

Index.2.Initiate

Wait For Index.AnyCommandComplete

‘Incremental,Dist=10.000in,Vel=30in/s

Figure 143: Index Velocity Profile

162

Programming

Drive Output 2

Drive Output 1

ON

OFF

ON

OFF

Complex Velocity Profile

Index 0 Index 1 Index 2

Time

Index.0.CompoundInitiate ‘Incremetal,Dist=5.000in,Vel=50in/s

DriveOutput.1=ON ‘Turns ON immediately after Index.0 is started

Index.1.CompoundInitiate ‘Incremental,Dist=20.000in,Vel=75in/s

DriveOutput.2=ON ‘Turns ON immediately after Index.1 is started

Index.2.Initiate ‘Incremental,Dist=10.000in,Vel=30in/s

DriveOutput.3=ON ‘Turns ON immediately after Index.2 is started

Wait For Index.AnyCommandComplete

DriveOutput.1=OFF ‘Turns OFF after Index.2’s command is completed

DriveOutput.2=OFF ‘Turns OFF after Index.2’s command is completed

DriveOutput.3=OFF ‘Turns OFF after Index.2’s command is completed

Figure 144: Index Velocity Profile with Drive Outputs

Jog.Stop

This program instruction is used to halt jogging using the deceleration ramp setup for the currently operating jog.

Examples:

Wait For ModuleInput.2=ON

Jog.0.MinusInitiate

Wait For ModuleInput.2=OFF

Jog.Stop

‘Wait for “Jog –“ input to turn on

‘Vel=27.2in/s

‘Wait for “Jog –“ input to turn off

‘Decelerate to a stop

Do While(TRUE)

If (ModuleInput.2=ON) Then

Jog.0.PlusInitiate

Wait For ModuleInput.2=OFF

Jog.Stop

Endif

‘Repeat until the program is halted

‘Jog+ when ModuleInput.2=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

If (ModuleInput.3=ON) Then

Jog.0.MinusInitiate

Wait For ModuleInput.3=OFF

Jog.Stop

Loop

Endif

‘Jog- when ModuleInput.3=ON

‘Vel=20in/s

‘Stop when the input goes OFF

‘Decelerate to a stop

Jog.PlusInitiate

This program instruction is used to initiate jogging in the positive direction. The Jog.Stop instruction is used to stop jogging motion.

A comment is automatically inserted after the Jog.PlusInitiate instruction which shows key data about the particular jog. The comment starts with the apostrophe ’ character.

163

FM-4 Programming Module Reference Manual

Examples:

Jog.0.PlusInitiate

Jog.1.PlusInitiate

‘Vel=27.2in/s

‘Sync,Vel=1.000in/in

Jog.MinusInitiate

This program instruction is used to initiate jogging in the negative direction. The Jog.Stop instruction is used to stop jogging motion.

A comment is automatically inserted after the Jog.MinusInitiate instruction which shows key data about the particular jog.

The comment starts with the apostrophe ‘ character.

Examples:

Jog.0.MinusInitiate

Jog.1.MinusInitiate

‘Vel=27.2in/s

‘Sync,Vel=1.000in/in

Motion Modifiers

Using Last

When the Using Last instruction is inserted after a motion initiate instruction, the time (or master position in synch motion) of the last command complete is used as the starting point of the motion profile. Whenever a motion profile is complete, the time/position is automatically captured behind the scenes. The Using Last instruction simply references this “automatically” captured time or position.

The FM-4 module performs motion based on a concept called the timeline. The timeline allows for accurate and repeatable motion with respect to a single point in time. The timeline guarantees that all motion profiles occur at the right time with respect to each other.

If Index0 takes 3 seconds to complete, and Index1 takes 5 seconds to complete, by initiating Index0 and then Index 1 in a program, the user would expect these profiles to take a total of 8 seconds to complete. It is possible though, that because of processor timing, Index.1 does not start at exactly the same time Index0 is complete. Therefore, the two profiles could take slightly more than 8 seconds to complete. Although the amount of time lost is extremely small (less than 5 milliseconds), over a long period of time, this lost time can accumulate.

Keeping the timeline intact is most important in applications using synchronized motion. This is because in synchronized motion, time is replaced by master encoder motion. If time is lost in a synchronized motion application, then master distance is lost, and the follower position is off with respect to the master.

Prior to A7 firmware in the FM-4 module the user had no control over the timeline. If a motion initiate command was seen within 5 milliseconds from the last time a motion profile was completed, the processor assumed that the user wanted to initiate the motion from the exact ending point of the last profile. Because of this, the processor would adjust the current motion profile to compensate for the lost time, therefore keeping the timeline intact. The user may or may not have been aware that this was happening. If no motion initiate was commanded within 5 milliseconds of the last motion complete point, then the timeline was broken and started over again on the next motion profile.

Example:

Index.0.Initiate

Dwell For Time 1.000 Using Last

Index.1.Initiate Using Last

‘Index0,Incrmntl,Dist=1.5revs

‘Index1,Incrmntl,Dist=3.5revs

Adding and Deleting Programs

Programs can be added or removed from the user configuration in three ways. Programs may only be added or deleted while offline.

Toolbar button Method

Add Program button

The Add Program button (shown below) will add a new program to the user configuration. Programs are added in sequential order. Clicking on the button will add a program and bring you to the program-editing view allowing you to enter program instructions.

164

Programming

Delete Program button

The Delete Program button (shown below) will delete a program from the user configuration. The highest numbered program will automatically be deleted unless a different program is selected on the Programs heading screen. To delete a specific program, click on the Programs branch in the Hierarchy Tree. From this view, select the specific program you wish to delete, and then click on the Delete Program button.

Power Tools Menu Bar Method

Adding a Program

From the PowerTools Pro menu bar, select Edit/New/Program. A program will be added in sequential order and you will be brought to the program-editing view allowing you to enter program instructions.

Deleting a Program

Navigate to the Programs view on the Hierarchy Tree, and select the program you wish to delete. From the PowerTools Pro menu bar, select Edit/Delete/Program. The selected Program will be deleted from the configuration.

Right Click Method

Adding a Program

Navigate to the Programs view in the Hierarchy Tree. Position your mouse pointer on the right side of the view and rightclick. A selection menu will appear allowing you to add a New Program or Delete a Program. Click on New Program and a program will be added in sequential order and you will be brought to the program-editing view allowing you to enter program instructions.

Deleting a Program

Navigate to the Programs view in the Hierarchy Tree. Select the program you wish to delete and then right-click on your mouse. A selection menu will appear allowing you to add a New Program or Delete a Program. Click on Delete Program and the selected program will be deleted from the configuration.

Run Anytime Programs

The FM-4 programming environment has been designed to automatically stop all programs when a fault occurs (regardless of what type of fault). Some applications require the ability to run a program as soon as a fault occurs of continue running a program even through a fault condition. In order to do this, a program must be classified as “Run Anytime”. To define a program to be able to run during a fault or while the drive is disabled, the “Run Anytime” check box must be selected in the

Program view. Figure 145 shows an example of the “Run Anytime” check box after it has been selected.

165

FM-4 Programming Module Reference Manual

Figure 145: Program View (FM-4E) with “Run Anytime” Check Box Enabled

When a fault occurs, the drive will still be disabled, and no motion will be possible. For this reason, it may be necessary to reset the fault in the “Run Anytime” program prior to running motion again. If a motion instruction is processed while the drive is disabled, the program will stall on that particular line of the program, but the program will not stop.

Certain conditions will still cause a program designated as “Run Anytime” to stop. These conditions are listed below:

• Stop Function is activated

• “Run Anytime” program has a program fault

Multiple programs may be configured as “Run Anytime” programs and can be called from a program the same as any other program. If a “Run Anytime” program calls another program which is not configured to run anytime while the drive is faulted or disabled, the task will be stopped.

Resetting Faults in “Run Anytime” Programs

To reset a fault from a “Run Anytime” program, use Fault.Reset = ON command in the user program. The Fault.Reset command does not clear all types of faults. Some faults require power to be cycled in order to clear the fault. For more information on the method used to clear individual faults, see the Diagnostics and Troubleshooting section.

After using the Fault.Reset command in a user program, use a Wait For Time 0.100’seconds command to give the drive time to clear the fault and re-enable the drive before initiating motion. If this is not done, the motion will be initiated before the drive is disabled. and the instruction will be ignored.

Example Programs

Out and Return - Simple

Description: Move out to an absolute position and return

Index.2.Initiate

Index.1.Initiate

Wait For Index.AnyCommandComplete

‘Absolute,Posn=10.000in,Vel=5.0in/s

‘Absolute,Posn=0.000in,Vel=10.0in/s

166

Programming

Out and Return – More Complex

Description: Home, Wait For an input, Move out to an absolute position, set an output, dwell for 1 second, clear the output, return to home position, repeat the out and return sequence until the stop input halts the program.

Home.0.Initiate ‘Sensor,Offset=0.000in,Vel=-10.0in/s

ModuleOutput.1=ON ‘Set the “At Position 1” output

Do While (TRUE)

Wait For ModuleInput.2=ON

ModuleOutput.1=OFF

Index.2.Initiate

Wait For InPosn

ModuleOutput.2=ON

Wait For Time 1.000

ModuleOutput.2=OFF

Index.1.Initiate

Wait For InPosn

Loop

ModuleOutput.1=ON

‘Repeat until the program is halted

‘Wait for the “Go” Input

‘Clear the “At Position 1” output

‘Absolute,Dist=10.000in,Vel=5.0in/s

‘Set the “At Position 2” output

‘Seconds

‘Clear the “At Position 2” output

‘Absolute,Dist=0.000in,Vel=10.0in/s

‘Set the “At Position 1” output

Punch a Hole in a Web a Specified Distance Beyond a Registration Mark

Description: Index a web to a position 2 inches beyond a registration mark. Then fire a solenoid to punch a hole in the web.

Wait for a sensor to indicate that the punch is in the down position. Retract the solenoid. Wait until it is sensed in the up position.

Do While (TRUE)

Index.0.Initiate

Wait For InPosn

ModuleOutput.1=ON

Wait For ModuleInput.2=ON

Loop

ModuleOutput.1=OFF

Wait For ModuleInput.3=ON

‘Repeat until the program is halted

‘Registration,Offet=2.0in,Dist=20in,Vel=20in/s

‘Fire the punch solenoid

‘Wait for the “down” indicator

‘Retract the punch solenoid

‘Wait for the “up” indicator

Registration Index to Place a Product on a Conveyor After Each Lug

Registration Index (synchronized) to find the front edge of product, wait for input from a lug sensor and repeat.

Do While (TRUE)

Index.0.Initiate

‘Repeat until the program is halted

‘Sync,Registration,Offset=0.500,

‘Dist=50.000,Vel=1.000in/in

‘Registration move to product sensor.

‘Go to head of next product.

Loop

Wait For Index.AnyCommandComplete

Wait For ModuleInput.2=ON ‘Wait for lug sensor on master conveyor.

Elevator (Accumulator) with 100 Stop Positions

Home, when an input goes on move down to the next position. When the bottom position is reached, move back to home when the input goes on.

Home.0.Initiate

‘Sensor,Offset=0.00mm,Vel=100mm/s

Do While (TRUE)

For Count = 2 To 100

Wait For ModuleInput.2=ON

Index.2.Initiate

Wait For InPosn

Next

Wait For ModuleInput.2=ON

Index.1.Initiate

Loop

Wait For InPosn

‘Repeat until the program is halted

‘Step to positions 2 - 100

‘Wait for “Go” input

‘Incremetal,Dist=2.00mm,Vel=100mm/s

‘Wait for “Go” input

‘Absolute,Dist=0.00mm,Vel=1000mm/s

167

FM-4 Programming Module Reference Manual

Simple Jogging within a Program

Jog+ when DriveInput.2 goes ON and stop when it goes off. Jog- when DriveInput.3 goes ON and stop when it goes off. This could also be accomplished using the Jog input functions when there is no program running.

Do While (TRUE)

If(DriveInput.2=ON) Then

Jog.0.PlusInitiate

Wait For DriveInput.2=OFF

Jog.Stop

Endif

If (DriveInput.3=ON) Then

Jog.0.MinusInitiate

Wait For DriveInput.3=OFF

Loop

Jog.Stop

Endif

‘Repeat until the program is halted

‘Jog+ when DriveInput.2=ON

‘Vel=20in/s

‘Stop jogging when DriveIput.2 goes OFF

‘Decelerate to a stop

‘Jog- when DriveInput.3=ON

‘Vel=20in/s

‘Stop jogging when DriveInput.3 goes OFF

‘Decelerate to a stop

Rotary Table with “Calibrated” Stop Positions

Home the axis, wait for an input and then index to 3 different stop positions (absolute positions), wait for an input between indexes. The InPosn output function could be assigned to an output to indicate when the axis has completed the index and the following error is less than a specified amount. Since the indexes are to absolute positions they can be adjusted to “calibrate” the stop positions to account for mechanical non-linearity in the particular rotary table. A rollover position of 360.00 degrees would be entered into the setup view so that the system would take the shortest path (across the rollover) during the last move.

Home.0.Initiate

‘Sensor,Offset=0.0deg/s,Vel=-1000deg/s

Do While (TRUE)

Wait For ModuleInput.1=ON

Index.2.Initiate

Wait For InPosn

Wait For ModuleInput.1=ON

Index.3.Initiate

Wait For InPosn

Wait For ModuleInput.1=ON

Index.1.Initiate

Loop

Wait For InPosn

‘Repeat until the program is halted

‘ModuleInput.1 is the “Go” input

‘Absolute,Dist=120.07deg,Vel=1000deg/s

‘Absolute,Dist=239.95deg,Vel=1000deg/s

‘Absolute,Dist=0.03deg,Vel=1000deg/s

Flying Cutoff/Shear

Flying cutoff or flying shear application to perform synchronized out and return indexes which repeat every 100 inches of master travel.

Part Length = 100 inches

Knife Travel Distance = 20 inches

PLS.0 is used to initiate Index.0 every 100 inches. PLS.0 has an “ON” point at 0.000 inches and an “OFF” point at 90.000 inches. PLS.0 has a rollover position of 100.000 inches. The rollover position is used to set the part length. The source for

PLS.0 is the master axis. The PLS is configured in the PLS view. The PLS output does not necessarily need to be connected to an output line on the drive or module because it is used within the program to initiate an index.

An Index PLS is used to fire the cutoff knife. The Index PLS is connected to Output #1 on the drive. The Index PLS is configured in the index setup view. The Index PLS for Index.1 has an “ON” point 2.000 inches into the index and an “OFF” point 18 inches into the index.

Home.0.Initiate

‘Sensor,Offset=1.000in,Vel=-5.0 in/s

MasterAxis.DefineHome=ON

PLS.0.Enable=ON

Do While (TRUE)

Wait For DriveInput.1=ON

If PLS.0.Status = ON Then

‘Set the master position to 0.0

‘Turn on PLS.0

‘Repeat until the program is halted

‘Input 1 is used as a “hold” input.

‘If the PLS is already on you are too late.

ModuleOutput.4=ON‘Set a “Too Late” output

End‘Drop out of the program

168

Programming

Endif

Wait For PLS.0.Status=ON ‘Start the Index when PLS.0 goes on

‘(every 100 inches).

Index.1.Initiate

Index.0.Initiate

‘Incremental,Sync,Dist=20.0in,Vel=1.0in/in

‘Absolute,Sync,Dist=0.0in,Vel=2.0in/in

Loop

Wait For Index.AnyCommandComplete

Synchronized Jog with Manual Phase Adjustment

The motor controls a lugged conveyor belt which is synchronized to another lugged conveyor belt. Jog.0 is configured as a

“Synchronized” jog using the setup software. The program first homes the follower and then waits for an input from a sensor on the master axis lugs. When the input comes on the follower starts the synchronized jog. If the home is setup correctly the follower will be in perfect phase when it gets up to speed. If the follower gets out of phase with the master the operator can manually bring the it back into phase using “Advance” and “Retard” inputs. The program adjusts the phase of the follower axis by adjusting the jog velocity (Jog.0.Vel) when the operator hits one of the phasing inputs.

Home.0.Initiate

Jog.0.Vel=1.000

‘Sensor,Offset=2.25in,Vel=10in/s

‘follower inches/master inch

Wait For ModuleInput.1=ON

Jog.0.PlusInitiate

Do While (TRUE)

If (ModuleInput.2=ON) Then

Jog.0.Vel=1.100

Wait For ModuleInput.2=OFF

Jog.0.Vel=1.000

Endif

If (ModuleInput.3=ON) Then

Jog.0.Vel=0.900

Wait For ModuleInput.3=OFF

Jog.0.Vel=1.000

Endif

‘Start when a master lug is detected

‘Sync,Vel=1.000in/in

‘Repeat until the program is halted

‘Phase Advance when ModuleInput.2=ON

‘follower inches/master inch

‘follower inches/master inch

‘Phase Retard when ModuleIput.3=ON

‘follower inches/master inch

‘follower inches/master inch

Loop

Auger Filler with Inputs to Adjust the Fill Amount

Incremental indexes are used to squirt a specified amount of food product into a box. Inputs are used to adjust the index distance. It would be much simpler to adjust the index distance with an OIT-3165 operator interface panel, but inputs could be used as described below.

ModuleOutput.3=OFF

ModuleOutput.4=OFF

Do While (TRUE)

If (ModuleInput.2=ON) Then

Index.1.Initiate

‘Incremental,Dist=16.00oz,Vel=16.0oz/s

Wait For Index.AnyCommandComplete

Endif

‘Repeat until the program is halted

‘Fill a box if the “Go” input is on.

‘Increase the fill amount once every time ModuleInput.3 is pressed

If((ModuleInput.3=ON) AND (ModuleOutput.3=OFF)) Then

Index.1.Dist = Index.1.Dist + 0.10‘ounces

ModuleOutput.3=ON

‘ModuleOutput.3 is used to make sure that the distance is

‘incremented only once each time ModuleInput.3 is pressed.

If (Index.1.Dist > 20) Then

ModuleOutput.1=ON

Else

‘Long index output

ModuleOutput.1=OFF

Endif

Endif

169

FM-4 Programming Module Reference Manual

If((ModuleInput.3=OFF) AND (ModuleOutput.3=ON)) Then

ModuleOutput.3=OFF

Endif

‘Decrease the fill amount once every time ModuleInput.4 is pressed.

If ((ModuleInput.4=ON) AND (ModuleOutput.4=OFF)) Then

Index.1.Dist = Index.1.Dist - 0.10 ‘ounces

ModuleOutput.4=ON

‘ModuleOutput.4 is used to make sure that the distance is

‘incremented only once each time ModuleInput.4 is pressed.

If (Index.1.Dist < 12) Then

ModuleOutput.2=ON

Else

‘Short index output

ModuleOutput.2=OFF

Endif

Endif

If((ModuleInput.4=OFF) AND (ModuleOutput.4=ON)) Then

ModuleOutput.4=OFF

Loop

Endif

Sequence Learn and Playback

This example consists of three programs. The first program is used to learn 3 positions using “Jog+”, “Jog-“, “Jog Fast” and

“Learn” inputs. The second program is called several times by the first program. The third program steps through the learned positions

Learn Program (Program 0)

Home.0.Initiate

‘Sensor,Offset=0.000in,Vel=-10in/s

Index.1.Initiate

Wait For Index.AnyCommandComplete

‘Move to position 1

Call Program.1

If (ModuleInput.1=ON) Then

Index.1.Dist = PosnCommand

‘Program 1 allows the axis to be jogged

‘into position

‘Learn the new position if the “Learn”

‘input is on

‘Read the Position Command into Index.1’s

‘absolute position.

Endif

Wait For ModuleInput.1=OFF

Wait For ModuleInput.2=OFF

‘Wait until the “Learn” input goes off

‘Wait until the “Skip” input goes off

Index.2.Initiate

Wait For Index.AnyCommandComplete

‘Move to position 2

Call Program.1

If (ModuleInput.1=ON) Then

Index.2.Dist = PosnCommand

‘Program 1 allows the axis to be jogged

‘into position

‘Learn the new position if the “Learn”

‘input is on

‘Read the Position Command into Index.2’s

‘absolute position.

Endif

Wait For ModuleInput.1=OFF

Wait For ModuleInput.2=OFF

‘Wait until the “Learn” input goes off

‘Wait until the “Skip” input goes off

Index.3.Initiate

Wait For Index.AnyCommandComplete

‘Move to position 3

Call Program.1

If (ModuleInput.1=ON) Then

‘Program 1 allows the axis to be jogged

‘into position

‘Learn the new position if the “Learn”

170

Index.3.Dist = PosnCommand

‘input is on

‘Read the Position Command into Index.3’s

‘absolute position.

Endif

Wait For ModuleInput.1=OFF

Wait For ModuleInput.2=OFF

‘Wait until the “Learn” input goes off

‘Wait until the “Skip” input goes off

Subroutine for Jogging the Axis into the Desired Position (Program 1)

‘Allow jogging until either the “Learn” input (ModuleInput.1)

‘or the “Skip” input (ModuleInput.2) goes ON.

Do While ((ModuleInput.1=OFF) AND (ModuleInput.2=OFF))

If (ModuleInput.3=ON) Then ‘Jog+ if the Jog+ input is on

Jog.0.PlusInitiate

‘Vel=0.1in/s

Do While (ModuleInput.3=ON)

If (ModuleInput.5=ON) Then

Jog.0.Vel = 1.0

Else

Jog.0.Vel = 0.1‘in/s

Endif

Loop

‘in/s

‘ModuleInput.5 = “Jog Fast”

Jog.Stop

Endif

If (ModuleInput.4=ON) Then

Jog.0.MinusInitiate

‘Stop jogging when the Jog+ input goes off.

‘Jog- if the Jog- input is on

‘Vel=0.1in/s

Do While (ModuleInput.4=ON)

If (ModuleInput.5=ON) Then

Jog.0.Vel = 1.0

Else

Jog.0.Vel = 0.1

Endif

Loop

Loop

Jog.Stop

Endif

Playback Program (Program 2)

Home.0.Initiate

‘ModuleInput.5 = “Jog Fast”

‘in/s

‘in/s

‘Stop jogging when the Jog+ input goes off.

‘Sensor,Offset=0.000in,Vel=-10in/s

‘Repeat until the program is halted

‘Absolute,Posn=1.000in,Vel=5in/s

‘Turn on ModuleOutput.1 for 1 second

‘seconds

Do While (TRUE)

Index.1.Initiate

Wait For InPosn

ModuleOutput.1=ON

Wait For Time 1.000

ModuleOutput.1=OFF

Index.2.Initiate

Wait For InPosn

ModuleOutput.1=ON

Wait For Time 1.000

ModuleOutput.1=OFF

Index.3.Initiate

Wait For InPosn

Loop

ModuleOutput.1=ON

Wait For Time 1.000

ModuleOutput.1=OFF

‘Absolute,Posn=20.000in,Vel=7in/s

‘Turn on ModuleOutput.1 for 1 second

‘seconds

‘Absolute,Posn=5.250in,Vel=10in/s

‘Turn on ModuleOutput.1 for 1 second

‘seconds

Programming

171

FM-4 Programming Module Reference Manual

172

FM-4 Programming Module Reference Manual

Parameter Descriptions

This section lists all programmable and feedback parameters available. The parameters are listed alphabetically by variable name

(shown in italics below the on screen name) and give a description. Range is dynamic and depends on User Unit scaling. The units of the parameters are dynamic and depend on selected User Units.

Absolute Position Valid

AbsolutePositionValid

This source is activated when either the DefineHome destination is activated, or any home is successfully completed (sensor or marker found). This source is deactivated if the drive is rebooted, an encoder fault occurs, the drive is powered down, or a home is re-initiated.

Accelerating

Accelerating

This source is active when the FM-4 module is executing an acceleration ramp. A normal index consists of 3 segments:

Accelerating, At Velocity, and Decelerating. The Accelerating source will be set (active) during this acceleration segment regardless of whether the motor is speeding up or slowing down. Therefore, this source can sometimes be active when the motor is decelerating. This could be true when compounding indexes together.

Acceleration Type

AccelType

This parameter is used to select the accel/decel type for all motion (homes, jogs and indexes). The “S-Curve” ramps offer the smoothest motion, but lead to higher peak accel/decel rates. “Linear” ramps have the lowest peak accel/decel rates but they are the least smooth ramp type. “5/8 S-Curve” ramps and “1/4 S-Curve” ramps use smoothing at the beginning and end of the ramp but have constant (linear) accel rates in the middle of their profiles. The “5/8 S-Curve” is less smooth than the

“S-Curve” but smoother than the “1/4 S-Curve”. S-Curve accelerations are very useful on machines where product slip is a problem. They are also useful when smooth machine operation is critical. Linear ramps are useful in applications where low peak torque is critical. Below is a comparison of the 4 ramp types:

• S-Curve: Peak Accel = 2 x Average Accel

• 5/8 S-Curve: Peak Accel = 1.4545 x Average Accel

• 1/4 S-Curve: Peak Accel = 1.142857 x Average Accel

• Linear: Peak Accel = Average Accel

Acceleration Decimal Places

AccelUnits.Decimal

This parameter is the decimal point location for all real-time accel./decel. ramps.

Acceleration Time Scale

AccelUnits.TimeScale

This parameter is the time units for accel./decel. ramps. Possible selections are milliseconds or seconds.

At Velocity

AtVel

This source is active when the FM-4 module is executing a constant velocity motion segment. One example would be during an index. The source would activate after the motor has finished accelerating up to speed and before the motor begins to decelerate to a stop. A normal index consists of 3 segments: Accelerating, At Velocity, and Decelerating. This source is active during the At Velocity segment, and is activated based on the commanded velocity, not the feedback velocity. During synchronized motion, AtVel can be active without actual motor movement.

173

FM-4 Programming Module Reference Manual

Bit Number Value

Bit.B#

This read/write bit may be used in a program as an intermediary variable bit controlled by the user. Bit.B# is one of 32 bits that make up the BitRegister parameter. Assigned to communication networks such as DeviceNet, Profibus and Modbus,

Bit.B# may be used to transfer events that have occurred in a PLC to the FM-4/4 program.

Note

When the value of Bit.B# is changed, the value of BitRegister.#.Value is changed as well.

Bit Register Number Value

BitRegister.#.Value

This parameter is made up of the combination of the 32 Bit.B#. The BitRegister.#.Value. The BitRegister.#.Value register may be accessed bitwise by using Bit.B#, or double word-wise by using BitRegister.#.Value.

Bit Register Number Value Mask

BitRegister.#.ValueMask

This parameter is the Mask for the BitRegister.#.Value. Each bit location is set to either transfer the current data in the corresponding bit location of BitRegister.#.Value (by setting the bit location to 1) or to clear the current data in

BitRegister.#.Value (by setting the bit location to 0).

Brake Activate

Brake.Activate

This destination, when activated, engages the brake. This is simply used to manually engage the brake outside of the normal brake operation. This is level sensitive.

Brake Disengaged

Brake.Disengaged

This source is used to control the motor holding brake. When it is "off" the brake is mechanically engaged. When the brake is engaged, the diagnostic display on the front of the drive will display a "b". The drive and module outputs are limited to 150 mA capacity, therefore, a suppressed relay is required to control the brake coil. Model BRM-1 may be used.

Brake Release

Brake.Release

This destination will release the brake under all conditions, even when Brake.Activate is engaged. When this input function is active, the Brake.Disengaged output function (source) will be activated. This is used as a manual brake override.This is level sensitive.

Clear Following Error

ClearFollowingError

Clear Following Error is a destination found in the Position group on the Assignments view. When this destination is activated, any following error that has accumulated will be erased. Following Error is cleared by setting the commanded position to the feedback position, automatically resulting in a zero following error. The FM module will deactivate the Clear

Following Error destination as soon as Following Error is zero.

Commanding Motion

CommandingMotion

This source activates when VelCommand is non-zero.

174

Parameter Descriptions

Commutation Angle Correction

CommutationAngleCorrection

The difference between the electrical angle as determined at power up from the U, V, and W commutation tracks and the electrical angle as determined from the marker pulse or UVW transitions. This value will be zero until the marker pulse is detected or UVW transition is detected.

Commutation Track Angle

CommutationTrackAngle

This parameter is derived directly from the state of commutation tracks and the Encoder U Electrical Angle parameter.

Commutation Voltage

CommutationVoltage

This parameter is used to determine commutation angle accuracy. When queried it returns the value of the direct axis voltage.

The value is given as a percentage of 1/2 the bus voltage.

Decelerating

Decelerating

This source is active when the FM-4 module is decelerating. A normal index consists of 3 segments: Accelerating, At

Velocity, and Decelerating. Decelerating follows the accelerating segment and the At Velocity segment. When indexes are compounded to create a complex motion profile, only the last index may contain a decelerating segment.

Define Home

DefineHome

This destination is used to set the Commanded Position to the value specified in the DefineHomePosn variable. On the rising edge of this input function the absolute position is set equal to the DefineHomePosn and the AbsolutePosnValid output function (source) is activated.

Define Home Position

DefineHomePosn

The DefineHome parameter is used to set the motors absolute position to the value stored in the DefineHomePosn variable.

On the rising edge of the DefineHome function the Commanded Position is set equal to the DefineHomePosn and the

AbsolutePosnValid source is activated.

Acceleration - FM-4E Only

DistanceRecovery.Accel

This parameter in user units is the acceleration rate for the distance recovery index.

Deceleration - FM-4E Only

DistanceRecovery.Decel

This parameter in user units is the deceleration rate for the distance recovery index.

Enable Distance Recovery - FM-4E Only

DistanceRecovery.DistanceRecoveryEnable

Select the checkbooks to enable the additive distance recovery index feature.

Velocity - FM-4E Only

DistanceRecovery.Vel

This parameter, in user units, is the velocity limit of the distance recovery index.

175

FM-4 Programming Module Reference Manual

Characteristic Distance

DistUnits.CharacteristicDist

This parameter is the distance the load travels (in user units) when the motor travels the characteristic length (in motor revolutions). This parameter is used along with the DistUnits.CharacteristicLength to establish the relationship between user distance and actual motor travel distance. See the section on the User Units View in the Setting Up Parameters chapter.

Characteristic Length

DistUnits.CharacteristicLength

This parameter is the distance the motor travels (in whole number of revolutions) to achieve one characteristic distance of load travel. This parameter is used along with the DistUnits.CharacteristicDist to establish the relationship between user distance and motor travel distance. See the section on the User Units View in the Setting Up Parameters chapter.

Distance Decimal Places

DistUnits.Decimal

This parameter is used to select the number of decimal places used in the DistUnits.CharacteristicDist. Using a high number of decimal places will improve positioning resolution, but will also limit the maximum travel distance. The number of decimal places set in this parameter determines the number of decimal places used in all distance parameters throughout the software. You can select from zero to six decimal places of accuracy.

Distance Units Name

DistUnits.Name

This is a text variable which is used as the label for the distance/position user units. It can be up to 12 characters in length.

Drive Ambient Temperature

DriveAmbientTemp

This parameter should be set to reflect the ambient air temperature near the drive heatsink during normal operation. This will determine the amount of regenerative power that can be dissipated by the EN drive's internal shunt resistor. When that calculated value is exceeded by the Shunt Power RMS parameter a shunt fault will occur. Valid only for EN-208 and EN-214 drives.

Drive Analog Output Feedback

DriveAnalogOutput.#.Feedback

Displays the Output voltage from one of the two analog outputs found on the 3-pin connector on the front of the drive or on the drive command connector.

Drive Enable Status

DriveEnableStatus

This source is active when the drive is enabled.

Drive Input Debounced

DriveInput.#.Debounced

This displays the state of the input after the debounce is taken into account.

Drive Input Debounce Time

DriveInput.#.DebounceTime

The Drive Input Debounce Time parameter is the minimum time a digital input must be steady in order to be recognized by the FM-4 module. This feature helps prevent false triggering in applications in electrically noisy environments.

176

Parameter Descriptions

Drive Input Force

DriveInput.#.Force

Input can be forced either On or Off. This parameter is the state to which the input will be forced when the ForceEnable bit is activated.

Drive Input Force Enable

DriveInput.#.ForceEnable

If DriveInput.#.ForceEnable parameter is activated, then the state of the DriveInput.#.Force bit will override the current input state.

Drive Input Name

DriveInput.#.Name

This is a text string up to 12 characters that can be assigned to a given input. It allows the user to use application specific terminology in naming digital inputs.

Drive Input Raw

DriveInput.#.Raw

This displays the raw state of the digital input without debounce or forcing to override the raw status.

Drive Input Status

DriveInput.#.Status

This source is the state of the input after debounce and forcing are taken into account.

Drive Output Force

DriveOutput.#.Force

A drive output can be forced either On or Off with this parameter. If the ForceEnable bit is activated, the DriveOutput.#.State will be set to this value.

Drive Output Force Enable

DriveOutput.#.ForceEnable

If DriveOutput.#.ForceEnable parameter is activated, then the state of the DriveOutput.#.Force bit will override the current output state.

Drive Output Name

DriveOutput.#.Name

This is a text string up to 12 characters that can be assigned to a given output. It allows the user to use application specific terminology in naming digital outputs.

Drive Output State

DriveOutput.#State

This destination sets the current state of an output line.

Drive Output Encoder Scaling

DriveOutputEncoder.Scaling

This parameter allows scaling of the drive encoder output resolution in increments of one line per revolution. Allowable range is from one line per revolution up to the actual density of the encoder in the motor. If the Encoder output scaling is set greater than the motor encoder density the output scaling will be equal to the motor encoder density.

177

FM-4 Programming Module Reference Manual

Drive Output Encoder Scaling Enable

DriveOutputEncoder.ScalingEnable

When on, this parameter enables the use of the drive encoder output scaling feature.

Drive Serial Number

DriveSerialNumber

This displays the serial number of the Drive to which the FM-4 module is attached.

Active Fault

Fault.#.Active

The specified fault is active. See the help index for more information on faults and recovery from them.

Fault Counts

Fault.#.Counts

The module stores the total number of times the specific fault has occurred since it was manufactured.

Drive Faults Bitmap

Fault.DriveFaultsBitmap

This parameter is a 32-bit register which holds all of the drive fault status bits. Following is a list of all drive faults and their associated bit numbers:

0 = Encoder state fault

1 = Encoder hardware fault

2 =

3 = Drive power module fault

4 = Low DC bus fault

5 = High DC bus fault

8 = ISR overrun fault

9 = Drive trajectory fault

10 = Sync fault

18 = Drive over speed fault

19 = Drive invalid configuration fault

20 = Drive power up self test fault

21 = NVM Invalid

24 = Motor overtemperature fault

25 = Drive Over Temp

29 = Auto Tune

All other bits are not used. A "1" in these bit locations indicates the specific fault is active, and a "0" is inactive.

Drive OK

Fault.DriveOK

Active when there are no faults. Inactivated when any fault except travel limits occur. Drive enable has no effect on this event.

178

Parameter Descriptions

Faulted

Fault.Faulted

Any fault will activate this event.

Module Faults Bitmap

Fault.ModuleFaultsBitmap

This parameter is a 32-bit register which holds all of the module fault status bits. Following is a list of all module faults and their associated bit numbers:

1 = Module invalid configuration fault

2 = Module NVM invalid fault

3 = Module power up self test fault

4 = Module following error fault

5 = Module travel limit plus

6 = Module travel limit minus

7 = Module program fault

8 = No Program

9 = DN Connection Time Out

10 = DN Bus Off

11 = DN Duplicate Mac ID

12 = Module Trajectory

13 = PB Parameterization fault

14 = PB Watchdog fault

15 = PB Configuration

All other bits are not used. A "1" in these bit locations indicates the specific fault is active, and a "0" is inactive.

Reset Faults

Fault.Reset

Resets faults that do not require a power down. This event is "or"ed with the reset button on the drive.

Fault Log - Fault Type

FaultLog.#.FaultType

This is the fault identifier for the current fault log entry. It is a read only parameter for the logged fault.

It may hold a value for any fault supported by the device. They are the same as the faults listed on the Assignments View for

Faults.

Code

05

08

09

0A

00

01

03

04

FM-4

EncoderStates

EncoderHardware

PowerModule

LowDCBus

HighDCBus

IsrOverrun

TrajectoryFault

Synchronization

179

FM-4 Programming Module Reference Manual

Code

1A

1E

20

21

22

23

10

13

14

15

18

19

27

28

29

2A

2B

24

25

26

2C

2D

2E

2F

FM-4

WatchdogTimer

OverSpeed

InvalidConfiguration

PowerUpSelfTest

RMSShuntPower

MotorOverTemperature

OverTemperature

Auto-Tune

WatchdogTimer

InvalidConfiguration

NVMInvalid

PowerUpTest

FollowingError

TraveLimitPlus

TraveLimitMinus

ProgramFault

NoProgram

DevicenetConnTimeout

DevicenetBusOffInt

DevicenetDupMacId

TrajectoryFault

ProfibusParameterizationFlt

ProfibusWatchdogFault

ProfibusConfigurationFault

Fault Log - Power Up Count

FaultLog.#.PowerUpCount

This is the module power up count at the time that the fault occurred.

Fault Log - Power Up Time

FaultLog.#.PowerUpTime

This is the module power up time when the fault occurred.

Fault Log - Sub Fault

FaultLog.#.SubFault

The sub-fault value at the time the fault occurred.

Fault Log - Valid Entry

FaultLog.#.ValidEntry

Flag to indicate that the log entry is valid. The flag is cleared for all fault entries when the fault log is cleared.

Module Power Up Count

FaultLog.ModulePowerUpCount

The number of times the module has been powered up.

Enable Feedforwards

FeedforwardsEnable

This parameter may be setup on the Tuning view or through a program, and enables feedforward compensation. When feedforwards are enabled, the accuracy of the Inertia and Friction settings are very important. If the Inertia setting is larger

180

Parameter Descriptions than the actual inertia, the result could be a significant overshoot during ramping. If the Inertia setting is smaller than the actual inertia, following error during ramping will be reduced but not eliminated. If the Friction is greater than the actual friction, it may result in velocity error or instability. If the Friction setting is less than the actual friction, velocity error will be reduced, but not eliminated.

Feedhold

Feedhold

When this destination is activated the motor will decelerate to a stop in the time specified by the FeedholdDecelTime parameter. When it is deactivated the motor will accelerate back up to the programmed speed in the same amount of time.

It is used to hold motion without cancelling the move in progress. If a feedhold is activated during an index the motor will come to a halt, but the index's velocity command remains at the velocity it was at before the feedhold was activated. When the feedhold is deactivated time will ramp back up and the index will continue on to its programmed distance or position.

Feedhold affects indexes, homes, and programs. A jog is not affected by the feedhold unless it is initiated from a program.

This is level sensitive.

Feedhold Deceleration Time

FeedholdDecelTime

When Feedhold destination is activated the motor will decelerate to a stop in the time specified by the FeedholdDecelTime parameter. While the feedhold destination is active, the motion profile is stopped.

FeedRate Deactivate

FeedRateDeactivate

This destination allows the user to deactivate the FeedRate Override feature. When FeedRate Deactivate is enabled, FeedRate

Override will be disabled and all index or home motion will operate at its programmed velocity. When FeedRate Deactivate is disabled, FeedRate Override will be enabled, and index and home motion is subject to scaling by the FeedRate Override parameter. The default value for FeedRate Override is 100%, so even when FeedRate Override is enabled, default motion will run at programmed velocity.

FeedRate Override

FeedRateOverride

This parameter is used to scale all motion. It can be described as “scaling in real time.” The default setting of 100% will allow all motion to occur in real time. A setting of 50% will scale time so that all motion runs half as fast as it runs in real time. A setting of 200% will scale time so that all motion runs twice as fast as it would in real time. FeedRate Override is always active, and this parameter may be modified via Modbus or in a program. When changed, the new value takes effect immediately.

Foldback Active

FoldbackActive

This source (output function) is active when the drive is limiting motor current. If the Foldback RMS exceeds 100 percent of the continuous rating, the current foldback circuit will limit the current delivered to the motor to 80 percent of the continuous rating.

Foldback RMS

FoldbackRMS

This read-only parameter accurately models the thermal heating and cooling of the drive. When this parameter reaches 100 percent, current foldback will be activated.

Following Error

FollowingError

Following Error displays the difference between the Position Command and the Position Feedback.

181

FM-4 Programming Module Reference Manual

Enable Following Error

FollowingErrorEnable

This parameter can be setup from the Position view or from a program. When enabled, a following error fault will be generated if the absolute value of the Following Error exceeds the Following Error Limit.

Following Error Limit

FollowingErrorLimit

This parameter is used when the FollowingErrorEnable bit is set. This limit is compared to the absolute value of the

FollowingError. If the FollowingError is greater than the FollowingErrorLimit, a following error fault will be generated.

Friction

Friction

This parameter is characterized in terms of the rate of friction increase per 100 motor RPM. If estimated, always use a conservative (less than or equal to actual) estimate. If the friction is completely unknown, a value of zero should be used. A typical value used here is less than one percent.

Gear Accel

Gear.Accel

This parameter sets the acceleration of the realtime gearing ramp. Gear.Accel units are in Follower Units/Velocity Time Base/

Acceleration Time Base. The Gear.Accel functions only when the follower is ramping its speed up to meet the Masters at the specified Gear.Ratio.

Gear Accel Enable

Gear.AccelEnable

Gear.AccelEnable is a Destination that when it is "on" allows a gear to run a specified accel ramp after the gearing command is turned on.

Gear Accelerating

Gear.Accelerating

If Gear.AccelEnable is activated, this source is activated during the time between Gear.Initate = On and Gear.AtVel = On.

Gear Activate

Gear.Activate

The Gear.Activate destination is used to start gearing from an assignment. It is a level-sensitive function, which means that as long as Gear.Activate is active, gearing will be in progress. When deactivated, gearing motion will come to a stop without deceleration. This function is only available through the Assignments view. When gearing from a program, the Gear.Initiate instruction is used.

Gear at Velocity

Gear.AtVel

The Gear.AtVel source indicates that the motor is running at the programmed gear ratio. In early releases of Gearing, acceleration and deceleration will not be used with gearing, so this source will always be active when gearing is active.

Gear Command Complete

Gear.CommandComplete

This source will activate when gearing has been stopped, and will remain active until the gear is initiated again. Gearing does not use a deceleration ramp, so this source will activate immediately after a Gear.Activate destination is deactivated.

182

Parameter Descriptions

Gear Command In Progress

Gear.CommandInProgrees

This source will activate when Gearing is initiated either from a program or through an assignment. The source will remain active as long as gearing is in operation. This source can be active even if the motor is not in motion as long as gearing is active.

Gear Decel

Gear.Decel

This parameter sets the deceleration of the realtime gearing ramp. Gear.Decel units are in Follower Units/Velocity Time Base/

Acceleration Time Base. The Gear.Decel functions only when the follower is ramping its speed down after the gearing function has turned off.

Gear Decel Enable

Gear.DecelEnable

Gear.DecelEnable is a Destination that when it is "on" allows a gear to run a specified decel ramp after the gearing command is turned off.

Gear Decelerating

Gear.Decelerating

If Gear.DecelEnable is activated, this source is activated during the time between Gear.Initate = Off and

Gear.CommandComplete = On.

Gear Initiate

Gear.Initiate

Gearing can be activated through an assignment, or from a program instruction, Gear.Initiate. If initiated from an assignment, the Gear.Activate destination is a level-sensitive event. This means that gearing will be active as long as the source to which it is assigned is active. If gearing from a user program, the Gear.Stop instruction is used to stop the gearing motion. The gearing function must be stopped by the same method that started it. If it is started from an assignment, then it must be stopped from an assignment or if started in a user program, it must be stopped in a user program.

Gear Recovery Distance

Gear.RecoveryDist

This variable measures the distance the follower loses from the master. This distance lost is measured between a Gear Initiate and the Gear At Velocity.

Gear Stop

Gear.Stop

Gear.Stop will stop gearing motion that has been initiated from a program using Gear.Initate.

Graph Run

GraphRun

This instruction allows the user to enable the graph from a user program. It is similar to pressing the Run button on the Graph view. This instruction will wait until the graph buffer is full, then it exits into the looking for trigger state.

Graph.TriggerState

TriggerState

This parameter is used to control the Graph function from within a program.

0 = Filling Buffer: The whole buffer must be filled with selected data before trigger sampling starts

183

FM-4 Programming Module Reference Manual

1 = Filled - Waiting Trigger: Continue putting data into the buffer, check back into previous sampled data for the trigger condition

2 = Manually Triggered: User pressed the stop button, the buffer will have what ever data is available

3 = Filled and Triggered: Stop loading buffer, trigger is found and offset data after the trigger is in the buffer ready for upload

Graph.TriggerState2

Graph State

This parameter is read-only and can be used in a program to show the state the graph is in.

0 = Filling Buffer: The whole buffer must be filled with selected data before trigger sampling starts

1 = Filled - Waiting Trigger: Continue putting data into the buffer, check back into previous sampled data for the trigger condition

2 = Manually Triggered: User pressed the stop button, the buffer will have what ever data is available

3 = Filled and Triggered: Stop loading buffer, trigger is found and offset data after the trigger is in the buffer ready for upload

Any Command Complete

Home.AnyCommandComplete

This source is active when any home motion command is completed, if a stop is activated before the home has completed the function will not be activated. Inactivated when a home command is executed.

Acceleration

Home.#.Accel

This parameter sets the average Acceleration rate used during the home, units are specified on the User Units page.

Accelerating

Home.#.Accelerating

Active during any acceleration while the specified home is in progress. Accelerating may turn off and on again based on the type of Home selected. Accelerating will activate during the Home back off sensor motion.

At Velocity

Home.#.AtVel

This source is activated when the home velocity is reached when a the specified home is in progress. It will activate and deactivate base on the home. Home At Velocity will not be activated during back off sensor portion of the home.

Calculated Offset

Home.#.CalculatedOffset

The Calculated offset is the distance travelled during the deceleration ramp from the home velocity to a stop. Calculated by

PowerTools.

Command Complete

Home.#.CommandComplete

This source is active when the specified home command is completed, if a stop is activated before the home has completed the function or if the Home Limit Distance has been exceeded it will not be activated. Inactive when a home command is executed.

Command In Progress

Home.#.CommandInProgress

This source is activated when the Home is initiated and remains active until all motion related to the Home has completed.

184

Parameter Descriptions

Deceleration

Home.#.Decel

The Deceleration ramp parameter is used during all the home moves specified in user units.

Decelerating

Home.#.Decelerating

This source is active during any deceleration while the specified home is in progress. Decelerating will turn off and on based on the type of Home selected. Decelerating will activate during the Home back off sensor motion.

End of Home Position

Home.#.EndPosn

This parameter defines the drive position at the completion of a home. Typically used to define the machine coordinate home position.

Initiate

Home.#.Initiate

When activated, this destination will initiate the specified home. Home will not initiate if an index, jog, program, or stop is currently active.

Limit Distance

Home.#.LimitDist

This parameter places an upper limit on the incremental distance traveled during a home. If no home reference is found the motor will decelerate to a stop at the limit distance and activate the Home.#.LimitDistHit event.

Enable Limit Distance

Home.#.LimitDistEnable

This parameter enables the specified Home.#.LimitDist. If not enabled, the home will run indefinitely until the home reference is found.

Limit Distance Hit

Home.#.LimitDistHit

This source is activated when the home sensor is not found before the Home Limit Distance is traveled.

Name

Home.#.Name

User name for the specified home.

Home Offset Type

Home.#.OffsetType

Selects calculated or specified home offset. Calculated offset is the distance traveled during the deceleration ramp from the home velocity. The specified offset allows the user to choose an exact offset from the Home Reference.

If On Sensor

Home.#.OnSensorAction

If the home sensor input is active when the home is initiated, this parameter determines the direction of motion. Two selections are possible. If "Back off before homing" is selected, the motor will turn in the opposite direction of the home until the home sensor is clear and then begin the home. If "Go forward to next sensor" is selected, the motor will turn in the commanded direction until the next rising edge of the sensor is seen. If using Modbus to view or modify this parameter, 1=

Back off before homing, 0 = Go forward to next sensor.

185

FM-4 Programming Module Reference Manual

Home Reference

Home.#.Reference

This parameter determines how the reference position is determined. The parameter can have one of three different values:

'Sensor', 'Marker', 'Sensor then Marker'. When the home reference is 'Sensor' the rising edge of the 'Home Sensor' input function is used to establish the reference position. When the home reference is 'Marker' the rising edge of the motor encoder's marker channel is used to establish the reference position. When the home reference is 'Sensor then Marker' the reference position is established using the first marker rising edge after the Home Sensor input function goes active.

Sensor Trigger

Home.#.SensorTrigger

This destination is usually a sensor input used as a reference for the home. This event is only used if the home is defined by sensor or by sensor and marker.

Specified Offset

Home.#.SpecifiedOffset

The specified offset parameter allows the user to specify an exact offset relative to the Home Reference. The commanded motion will stop at exactly the offset distance away from the sensor or the marker as specified.

Time Base

Home.#.TimeBase

The time base selects either realtime, which allows velocities, acceleration and deceleration to be based on real time, or synchronized, which allows for an external synchronization signal.

Velocity

Home.#.Vel

This parameter sets the target velocity for all of moves in the home. The sign determines the home direction. Positive numbers cause motion in the positive direction and negative numbers cause motion in the negative direction in search of the home sensor.

Any Command Complete

Index.AnyCommandComplete

This source is active when any index motion command is completed. If a stop is activated before the index has completed, this destination will not activate. Deactivated when any index command is initiated.

Index Profile Limited

Index.ProfileLimited

For timed indexes, if the values for Max. Velocity, Max. Acceleration and Max. Deceleration are such that the distance cannot be covered in the specified time, the Index.ProfileLimited flag will activate when the index is initiated. The

Index.ProfileLimited flag will remain active until cleared using the Index.ResetProfileLimited assignment or program instruction. In this situation, the index will still operate, but the time will be extended. In other words, the profile will be performed using the maximum values and still cover the specified distance, but not in the specified time.

Index Reset Profile Limited

Index.ResetProfileLimited

If a timed index was not completed in the specified time, the Index.ProfileLimited source will activate.

Index.ResetProfileLimited is used to clear the ProfileLimited flag and acknowledge that the index was not completed in the specified time. This can be activated through an assignment, or through a user program. This function is edge-sensitive, so holding Reset Profile Limited active will not prevent ProfileLimited from activating.

186

Parameter Descriptions

Acceleration

Index.#.Accel

This parameter is the average Acceleration rate used during the index. Units are specified on the User Units view in the

PowerTools Pro software.

Accelerating

Index.#.Accelerating

This source is active while an index is accelerating to its target velocity. Once the index reaches the target velocity, or begins to decelerate, the Index.#.Accelerating source will deactivate.

Analog

Index.#.AnalogLimitType

Select the analog parameter (i.e. Torque Command) to compare to the AnalogLimitValue. Satisfying the comparison triggers the index registration event.

Limit Value

Index.#.AnalogLimitValue

This preset value is compared to the selected AnalogLimitType to determine the registration point.

At Velocity

Index.#.AtVel

This source activates when the target index velocity is reached. If Feedrate override is changed or FeedHold is activated

AtVelocity shall remain active. Index.#.AtVel will deactivate at the start of any deceleration or acceleration. During a synchronized index, this source could be active even without any motor motion if the master axis stops.

Command Complete

Index.#.CommandComplete

The Index.#.CommandComplete source will activate when the specific index completes its deceleration ramp. It will remain active until the specific index is initiated again. If the Stop destination is used during an Index, then the

Index.#.CommandComplete will not activate.

Command In Progress

Index.#.CommandInProgress

The Index.#.CommandInProgress source is active throughout an entire index profile. The source activates at the beginning of the index acceleration ramp, and deactivates at the end of the index deceleration ramp.

Compound Initiate

Index.#.CompoundInitiate

When activated will initiate the specified Index to compound into the next index in the program. Only allowed in a program.

Deceleration

Index.#.Decel

This parameter is the Average Deceleration rate used during the index. Units are specified on the User Units page.

Decelerating

Index.#.Decelerating

This source is active while an index is decelerating from its target velocity. Once the index reaches zero velocity, or its next target velocity, the Index.#.Decelerating source will deactivate.

187

FM-4 Programming Module Reference Manual

Distance

Index.#.Dist

This parameter is the Incremental distance that the index will travel or the absolute position for the specified index in user units. If an index type of Registration is selected, then this is a limit distance, or the maximum distance the index will travel if a registration sensor is not seen.

Index Time

Index#.IndexTime

This parameter is used in conjunction with the Index.TimeIndexEnable parameter. If TimeIndexEnable is activated, then this is the time in which an index should complete its programmed distance. The units for this parameter depend on the current setting of the TimeBase parameter for the specific index. If TimeBase is set to “Realtime” (default), then the units are

Seconds. The user can program the index time with resolution on 0.001 Seconds (or milliseconds). If TimeBase is set to

“Synchronized”, the units defined by the Master Distance Units found on the Master Units view.

Initiate

Index.#.Initiate

The Index.#.Initiate destination is used to initiate the specific index. The Index is initiated on the rising edge of this function.

An Index cannot be initiated if there is an Home, Jog, or Program in progress, or if the Stop destination or if a travel limit is active. It can be activated from an assignment or from a program.

Limit Distance Hit

Index.#.LimitDistHit

This source is activated when the registration sensor is not found before the Limit Distance is traveled. If the Registration

Window is enabled the sensor must be activated inside the window to be recognized.

Name

Index.#.Name

The user can specify an Index name of up to 12 characters.

Enable PLS

Index.#.PLSEnable

When Activated, this parameter enables the PLS (programmable limit switch) function for the specified index. It can be controlled from index view check box or from a program.

PLS Off Point

Index.#.PLSOffDist

This an incremental distance from the start of the index to the Index PLS off point. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. Index.#.PLSStatus will be active if the distance traveled from the start of the index is greater than the Index.#.PLSOnDist and less than the Index.#.PLSOffDist.

PLS On Point

Index.#.PLSOnDist

This an incremental distance from the start of the index to the Index PLS On Point. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. Index.#.PLSStatus will be active if the distance traveled from the start of the index is greater than the Index.#.PLSOnDist and less than the Index.#.PLSOffDist.

188

Parameter Descriptions

PLS Status

Index.#.PLSStatus

Controlled by the PLSOn and PLSOff Points, this is relative to the distance commanded since the start of the index.

Index.#.PLSStatus will be active if the distance traveled from the start of the index is greater than the Index.#.PLSOnDist and less than the Index.#.PLSOffDist.

Registration Offset

Index.#.RegistrationOffset

This parameter is the Distance the motor will travel after a valid registration sensor or analog limit value has been detected.

Registration Type

Index.#.RegistrationType

This selects either sensor or analog as the registration mark for a registration index.

Enable Registration Window

Index.#.RegistrationWindowEnable

This check box enables (if checked) the Registration Sensor valid Window. When active, only registration marks that occur inside the registration window are seen as valid.

Window End

Index.#.RegistrationWindowEnd

This parameter defines the end of the Registration Sensor Valid Window relative to start position of this index. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. The

Registration Window start position is greater than or equal to the Registration point and less than the Registration Window

End position. If a registration sensor is seen outside of this window (not between the WindowStart and WindowEnd positions) then it will be ignored.

Window Start

Index.#.RegistrationWindowStart

This parameter defines the start of the Registration Sensor Valid Window relative to start position of this index. This is an unsigned value and is relative only to starting position of this index. Index direction does not affect this parameter. The

Registration Window start position is greater than or equal to the Registration point and less than the Registration Window

End position. If a registration sensor is seen outside of this window (not between the WindowStart and WindowEnd positions) then it will be ignored.

Registration Sensor

Index.#.SensorTrigger

If registration to Sensor is selected, when this destination activates, motor position is captured and is used as the registration point for registration type indexes.

Time Base

Index.#.TimeBase

The time base selects either realtime, which allows velocities, acceleration and deceleration to be based on real time, or synchronized, which allows for an external synchronization signal.

Index Timed Index Enable

Index.#.TimedIndexEnable

This parameter is used in conjunction with the Index.#.IndexTime parameter. If Index.#.TimedIndexEnable is active, then the programmed Velocity, Acceleration, and Deceleration will be used as maximum values, and the Index Time parameter will determine how long it takes to perform an index.

189

FM-4 Programming Module Reference Manual

Velocity

Index.#.Vel

This parameter sets the target velocity of the specific index. The units for this parameter are specified in the User Units Setup view. When an index is initiated, it will ramp up to this velocity at the specified acceleration rate and run at speed until it decelerates to a stop (assuming the index is not compounded).

Inertia Ratio

InertiaRatio

This specifies the load to motor inertia ratio. For example, a value of 25.0 specifies that the load inertia is 25 times the inertia of the motor.

Initially Active

InitiallyActive

This source, when assigned to a destination, will activate the destination on power-up or upon FM-4 module reset.

InitiallyActive can be assigned to any destination that does not create motion (i.e. indexes, jogs, homes, programs).

In Position

InPosn

This source activates when commanded velocity is zero and the absolute value of the following error is less than the

InPosnWindow for at least the amount of time specified in the InPosnTime parameter.

In Position Time

InPosnTime

This parameter is the minimum amount of time, in seconds, that commanded motion must be complete and the absolute value of the following error is less than the InPosnWindow parameter for the InPosn source to activate. If set to zero (default), then

InPosn will activate as soon as motion stops and the following error is less than the In Position Window parameter.

In Position Window

InPosnWindow

The absolute value of the following error must be less that this value at the completion of a move for the InPosnTime before

InPosn will activate.

Any Command Complete

Jog.AnyCommandComplete

The Jog.AnyCommandComplete bit will activate when either Jog 0 or Jog 1 completes its deceleration ramp and reaches zero commanded speed. It deactivates when another jog is initiated.

Minus Activate

Jog.MinusActivate

This destination is used to initiate jogging motion in the negative direction using the jog parameters of the jog selected by the

Jog select input function. Jogging will continue as long as the destination is active. The motor will decelerate to a stop when the destination is deactivated. This is level sensitive.

Plus Activate

Jog.PlusActivate

This destination is used to initiate jogging motion in the positive direction using the jog parameters of the jog selected by the

Jog select input function. Jogging will continue as long as the destination is active. The motor will decelerate to a stop when the destination is deactivated. This is level sensitive.

190

Parameter Descriptions

Select

Jog.Select0

This destination is used to select between the jogs. It is used along with the Jog.PlusActivate and Jog.MinusActivate destinations. If the Jog.Select0 destination is not active then the Jog.0 setup parameters will be used for jogging. If the

Jog.Select0 input function is active, the Jog.1 setup parameters will be used for jogging. If the Jog.Select destination is changed during jogging motion the axis will ramp smoothly from the previously selected jog velocity to the new jog velocity using the specified jog acceleration. This is level sensitive.

Stop

Jog.Stop

This is used only in programs to halt jogging motion. Jogging motion is initiated in programs using the Jog.#.MinusActivate or Jog.#.PlusActivate instructions, and using the Jog.Stop will cause the motor to decelerate to a stop at the Jog.#.Decel rate for the jog that is active.

Acceleration

Jog.#.Accel

This parameter is the average acceleration ramp for the specific jog.

Accelerating

Jog.#.Accelerating

This source is active while a jog is accelerating to its target velocity. Once the jog reaches the target velocity, the

Jog.#.Accererating bit will turn off.

At Velocity

Jog.#.AtVel

This source activates when the particular jog has reached its target velocity. It deactivates when accelerating or decelerating to another target jog velocity.

Command Complete

Jog.#.CommandComplete

The Jog.#.CommandComplete source activates when the specific Jog completes its deceleration ramp and reaches zero commanded speed. It deactivates when the specific Jog is initiated again.

Command In Progress

Jog.#.CommandInProgress

The Jog.#.CommandInProgress source is high throughout an entire jog profile. The bit goes high at the start of a jog acceleration ramp, and turns off at the end of a jog deceleration ramp.

Deceleration

Jog.#.Decel

This parameter is the average deceleration ramp for the specific jog.

Decelerating

Jog.#.Decelerating

This source turns on at the beginning of a jog deceleration ramp and turns off at the completion of the ramp.

191

FM-4 Programming Module Reference Manual

Initiate Minus

Jog.#.MinusInitiate

This is used inside a program to initiate a specific jog. When this bit is active, jogging motion will be initiated in the negative direction at the specified jog velocity.

Initiate Plus

Jog.#.PlusInitiate

This is used inside a program to initiate a specific jog. When this bit is active, jogging motion will be initiated in the positive direction at the specified jog velocity.

Time Base

Jog.#.TimeBase

The time base selects either realtime, which allows velocities, acceleration and deceleration to be based on real time, or synchronized, which allows for an external synchronization signal.

Velocity

Jog.#.Vel

This parameter specifies the velocity used for jogging with the Jog.PlusActivate and Jog.MinusActivate destinations or the

Jog.#.PlusInitiate and Jog.#.MinusInitiate inside a program. The units for this parameter are specified in the User Units view.

Line Voltage (EN ONLY)

LineVoltage

This parameter is used to calculate critical internal gains. There are two possible value: 115 Vac or 230 Vac. A value of 115

Vac should not be used if the actual line voltage is 230 Vac, otherwise damage to the EN drive may result. The default value is 230 Vac.

Low Pass Filter Frequency Enable

LowPassFilterEnable

This parameter enables a low pass filter applied to the output of the velocity command before the torque compensator. The low pass filter is only active in Pulse and Velocity modes, not in Torque mode.

Low Pass Filter Frequency

LowPassFilterFrequency

When enabled this parameter defines the low pass filter cut-off frequency. Signals exceeding this frequency will be filtered at a rate of 40 dB per decade. The default value is 600Hz. The low pass filter is only active in Pulse and Velocity modes, not in Torque mode.

BaudRate

Modbus.BaudRate

Modbus baudrate for the FM module and drive.

Modbus Id

Modbus.ModbusId

Modbus ID # for the FM module and drive.

Debounced

ModuleInput.#.Debounced

This is the state of the input after the debounce is taken into account.

192

Parameter Descriptions

Module Input Debounce Time

ModuleInput.#.DebounceTime

The Module Input Debounce Time parameter is the minimum time a digital input must be on in order to be recognized by the

FM-4 module. This feature helps prevent false triggering in applications in electrically noisy environments.

Module Input Force

ModuleInput.#.Force

Input can be forced either On or Off. This bit is the state to which the input will be forced when the ForceEnable bit is activated.

Module Input Enable Force

ModuleInput.#.ForceEnable

If ModuleInput.#.ForceEnable is True (or On), then the state of the ModuleInput.#.Force bit will override the current input state.

Module Input Name

ModuleInput.#.Name

This is a text string up to ten characters that can be assigned to a given input. It allows the user to use application specific terminology in naming digital inputs.

Module Input Raw

ModuleInput.#.Raw

This is the raw state of the digital input without debounce or forcing to override the raw status.

Module Input Status

ModuleInput.#.Status

This source is the state of the input after debounce and forcing are taken into account.

Module Input Bit Mask

ModuleInput.InputBitMap

This parameter is a 32-bit register which reflects the current state of all drive and module inputs. A single bit is dedicated to each input. All undefined bits are always zero. Following is a list of all module inputs and their associated bit numbers:

0 = ModuleInput.1

1 = ModuleInput.2

2 = ModuleInput.3

3 = ModuleInput.4

4 = ModuleInput.5

5 = ModuleInput.6

6 = ModuleInput.7

7 = ModuleInput.8

16 = DriveEnableStatus

17 = DriveInput.1

18 = DriveInput.2

19 = DriveInput.3

20 = DriveInput.4

193

FM-4 Programming Module Reference Manual

Module Output Force

ModuleOutput.#.Force

A module output can be forced either On or Off. If the ForceEnable bit is activated, the ModuleOutput.#.State will be set to this value.

Module Output Enable Force

ModuleOutput.#.ForceEnable

If ModuleOutput.#.ForceEnable is activated, then the state of the ModuleOutput.#.Force bit will override the current output state.

Module Output Name

ModuleOutput.#.Name

User assigned name to the hardware output.

Module Output State

ModuleOutput.#State

This destination sets the current state of an output line.

Module Serial Number

ModuleSerialNumber

This is the FM-4 module serial number.

Motion Stop

MotionStop

This destination is used to stop all motion operating without stopping programs. MotionStop can be activated through an assignment, or in a user program. This function is level sensitive, meaning that as long as MotionStop is active, all motion will be prevented. If a program has a motion statement, the program will wait on that line of code until the MotionStop function has been deactivated. If motion is in progress when MotionStop is activated, the profile will decelerate to zero velocity at the deceleration rate specified in the Stop.Decel parameter. All motion will stop using a realtime deceleration, regardless of the motions original timebase.

Motor Type

MotorType

This parameter is used to select the motor type.

Name

Name

User name for this FM-4 axis can have a length up to 12 characters. This can be used to help differentiate setup files.

Packed Bits Control Word Value

PackedBits.ControlWord.#.Value

When accessing the Packed Bits Control Words for network mapping or use in a program, the Value parameter is what holds the data. When used in a program, the "PackedBits." and the ".Value" portions of the parameter name are optional. Therefore, to write to the Control Word Value in a program, the following lines of code are all interchangeable:

PackedBits.ControlWord.0.Value = 5

PackedBits.ControlWord.0 = 5

ControlWord.0.Value = 5

ControlWord.0 = 5

194

Parameter Descriptions

Packed Bits Status Word Value

PackedBits.StatusWord.#.Value

When accessing the Packed Bits Status Words for network mapping or use in a program, the Value parameter is what holds the data. When used in a program, the "PackedBits." and the ".Value" portions of the parameter name are optional. Therefore, to read the Status Word Value in a program, the following lines of code are all interchangeable:

Var.MyVar = PackedBits.StatusWord.0.Value

Var.MyVar = PackedBits.StatusWord.0

Var.MyVar = StatusWord.0.Value

Var.MyVar = StatusWord.0

PLS Direction

PLS.#.Direction

This parameter specifies the direction of motion that a particular PLS output will function. If set to Both, the PLS will activate regardless of whether the axis is moving in the positive or negative direction. If set to Plus, the PLS will activate only when the axis is moving in the positive direction. If set to Minus, the PLS will activate only when the axis is moving in the negative direction. A flying cutoff or flying shear application may use this feature to activate the PLS to fire the knife only when the axis is moving in the positive direction.

PLS Off Point

PLS.#.OffPosn

PLS.#.Status will be active when the selected source position is between the PLS.#.OnPosn and the PLS.#.OffPosn. The terms On and Off assume you are traveling in a positive direction. Assume that the PLS.#.Direction is set to "Both". When traveling in the positive direction and the position feedback reaches the OnPosn, the PLS.#.Status will activate. As the motor continues in the same direction, the PLS.#.Status will deactivate when feedback position reaches or exceeds the OffPosn. If motor travel changes to the negative direction, the PLS.#.Status will activate when position feedback reaches the OffPosn, and will deactivate when it continues past the OnPosn. The important thing to remember is that the PLS.#.Status will be active if between the PLS On and Off points.

If using negative values for the OnPosn and OffPosn, the most negative value should go in the OnPosn parameter, and the least negative value should go in the OffPosn.

If the PLS has a rollover point, and the OnPosn is greater than the OffPosn, the PLS will be active whenever the axis is not between the On and Off positions, and inactive whenever the axis is between the two positions. However, the PLS.#.Status will not turn on until it reaches the OnPosn the first time.

PLS On Point

PLS.#.OnPosn

PLS.#.Status will be active when the selected source position is between the PLS.#.OnPosn and the PLS.#.OffPosn. The terms On and Off assume the motor is traveling in a positive direction. Assume that the PLS.#.Direction is set to "Both".

When traveling in the positive direction and the position feedback reaches the OnPosn, the PLS.#.Status will activate. As the motor continues in the same direction, the PLS.#.Status will deactivate when feedback position reaches or exceeds the

OffPosn. If motor travel changes to the negative direction, the PLS.#.Status will activate when position feedback reaches the

OffPosn, and will deactivate when it continues past the OnPosn. The important thing to remember is that the PLS.#.Status will be active if between the PLS On and Off points.

If using negative values for your OnPosn and OffPosn, the most negative value should go in the OnPosn parameter, and the least negative value should go in the OffPosn.

If the PLS has a rollover point, and the OnPosn is greater than the OffPosn, the PLS will be active whenever the axis is not between the On and Off positions, and inactive whenever the axis is between the two positions. However, the PLS.#.Status will not turn on until it reaches the OnPosn the first time.

PLS Enable

PLS.#.PLSEnable

This destination is used to enable an individual PLS. A PLS can be enabled though the Assignments view in PowerTools Pro or from a program. If enabled, the PLS will begin to function as soon as the drive has been homed or a DefineHome

195

FM-4 Programming Module Reference Manual destination has been activated. Master Posn Valid must be active (Master Define Home is activated) if using a master signal for PLS source.

PLS Rollover Enable

PLS.#.RotaryRolloverEnable

This parameter is used to enable the RotaryRolloverPosn for the individual PLS.

PLS Rollover Position

PLS.#.RotaryRolloverPosn

This parameter is the absolute position of the first repeat position for this PLS. When enabled it causes the PLS to repeat every time this distance is passed. The repeating range begins at an absolute position of zero and ends at the RotaryRolloverPosn.

For example in a rotary application a PLS could be setup with an OnPosn of 90 degrees and an OffPosn of 100 degrees. If the RotaryRolloverPosition is set to 360 degrees the PLS would come on at 90, go off at 100, go on at 450 (360+90), go off at 460 (360+100), go on at 810 (2*360+90), go off at 820 (2*360+100), and continue repeating every 360 degrees forever.

PLS Source

PLS.#.Source

PLSs can be assigned to three different sources: MotorPosnFeedback, MotorPosnCommand, or MasterPosnFeedback. This parameter determines which position signal the PLS uses to reference its OnPosn and OffPosn in order to determine its

PLS.#.Status parameter.

PLS Status

PLS.#.Status

This source is active when the position of the PLS source (motor or master) is greater than or equal to the OnPosn and less than the OffPosn.

Positive Direction

PositiveDirection

This bit is used to select which direction of motor rotation is considered motion in the positive direction. Select from CW or

CCW.

Position Command

PosnCommand

Position command sent to the EN drive by the FM-4 module. This parameter does not take following error into account. See also PosnFeedback and FollowingError. Units are in user units.

Position Error Integral Enable

PosnErrorIntegralEnable

This parameter is used to enable the position error integral compensation. See also Position Error Integral Time Constant.

Position Error Integral Time Constant

PosnErrorIntegralTimeConstant

Position Error Integral parameter is a control term, which can be used in Pulse mode to compensate for the continuous torque required to hold a vertical load against gravity or to minimize following error.

The user configures this control term using the “Position Error Integral Time Constant” parameter. This parameter determines how quickly the drive will correct for in-position following error. The time constant is in milliseconds and defines how long it will take to decrease the following error to 37 percent of the original value. In certain circumstances the value actually used by the drive will be greater than the value specified here.

Min Time Constant = 1000/Response

For example, with “Response” set to 50, the minimum time constant value is 1000/50 = 20 msec.

196

Parameter Descriptions

Position Feedback

PosnFeedback

Feedback position is the actual motor position in user units. PosnCommand minus the PosnFeedback is the FollowingError

Position Feedback In Counts

PosnFeedbackInCounts

Motor encoder position in encoder counts since power up. This position reflects the feedback position of the motor and is not scaled into user units. It can be used to confirm the exact position of the motor in applications where precise positioning is required.

Power Stage Enabled

PowerStageEnabled

This source (output function) is active when the drive's power stage is enabled.

Power Up Count

PowerUpCount

Number of times the drive has been powered up since it was manufactured.

Power Up Time

PowerUpTime

Time elapsed since last drive power-up. The units is minutes.

Any Complete

Program.AnyComplete

This source is activated when any program ends normally. If a program ends due to a fault or the stop destination, this source does not activate. Deactivates when any program is initiated.

Initiate

Program.#.Initiate

When activated, this destination initiates the specified program unless an index, home, or jog is already executing, a stop is active, or a program is already executing with the same task number.

Name

Program.#.Name

This is a character string which the user can assign to an individual program. It allows the user to give a descriptive name to programs for ease of use.

Program Complete

Program.#.ProgramComplete

This source is activated when a specific program ends normally. If the program ends due to a fault or the stop destination, this source does not activate. Deactivates when the specific program is initiated again.

Stop

Program.#.Stop

This destination is used to stop a specific program from processing. It can be used to halt a program that is currently in operation, or to prevent a program from initiating. If a program has initiated some motion, and the program is stopped while that motion is still in progress, the motion will NOT be stopped. The motion initiated by the stopped program will continue until it is complete (i.e. indexes), or until it is stopped by another program (i.e. jog,gear). This function is edge sensitive meaning that when the Program.#.Stop activates, the specified program will be stopped, but not prevented from starting again.

197

FM-4 Programming Module Reference Manual

Response

Response

The Response parameter adjusts the velocity loop bandwidth with a range of 1 to 500 Hz. In general, it affects how quickly the drive will respond to commands, load disturbances and velocity corrections. A good value to start with (the default) is 50

Hz.

Rotary Rollover Enable

RotaryRolloverEnable

This parameter is used in applications with a predefined repeat length. One example would be a rotary table with a rotary rollover position of 360 degrees. The position will rollover to zero when the axis position gets to 360 degrees. (358, 359,

359.999, 0.0000, 1, 2, and so on.) The rollover point is defined to be exactly the same position as 0.

Selector Input Destinations

Selector.SelectLinesUsed

The selector is a binary to decimal decoder. This parameter selects the number of destinations (input lines) to be used by the selector. The number of lines used determines the number of sources (selections) that can be made by the selector; that is 2 input lines can select 4 destinations (selections), 5 input lines can select 32 destinations. Range is 1 to 8.

Select

Selector.#.Select

This source selects Binary inputs to the selector, usually assigned to input lines. This is level sensitive.

Selection

Selector.#.Selection

This source selects Decimal outputs from the selector, assigned to indexes, homes or programs.

Initiate

Selector.SelectorInitiate

When this destination is activated, the selector checks the status of all Selector.Select destinations to determine which

Selector.Selection to activate.

Shunt Active

ShuntActive

This source is active when the drive's internal shunt is active (conducting current).

Shunt Power RMS

ShuntPowerRMS

This parameter models the thermal heating and cooling of the drive internal shunt. This parameter indicates the percent of shunt capacity utilization and is based on the Heat Sink RMS value. When this value reaches 100 percent the drive will generate an RMS Shunt Power Fault. This is only applicable to the EN-208 and EN-214.

Enable Software Travel Limits

SoftwareTravelLimitEnable

Software travel limits can be used to limit machine travel. They are often setup inside the hardware travel limits to add a level of protection from exceeding the machines travel limits. The SoftwareTravelLimitMinusActive source (output function) is active when the SoftwareTravelLimitMinusPosn is reached or exceeded. Motion is halted using the TravelLimitDecel whenever a hardware or software travel limit is hit or exceeded. Software travel limits are not active unless Absolute Position

Valid is active.

198

Parameter Descriptions

Software Travel Limit Minus Activate

SoftwareTravelLimitMinusActive

The SoftwareTravelLimitMinusActive source is active when the SoftwareTravelLimitMinusPosn is reached or exceeded.

Motion will come to a stop using the TravelLimitDecel ramp. Software travel limits are not active unless enabled and

Absolute Position Valid is active.

Software Travel Limit Plus Activate

SoftwareTravelLimitMinusPosn

The SoftwareTravelLimitMinusActive source will activate when the SoftwareTravelLimitMinusPosn is reached or exceeded.

Motion will come to a stop using the TravelLimitDecel. Software travel limits are not active unless enabled and Absolute

Position Valid is active.

Software Travel Limit Plus Active

SoftwareTravelLimitPlusActive

The SoftwareTravelLimitPlusActive source is active when the SoftwareTravelLimitPlusPosn is reached or exceeded. Motion will come to a stop using the TravelLimitDecel ramp. Software travel limits are not active unless enabled and Absolute

Position Valid is active.

Software Travel Limit Plus Position

SoftwareTravelLimitPlusPosn

The SoftwareTravelLimitPlusActive source is active when the SoftwareTravelLimitPlusPosn is reached or exceeded. Motion is halted using the TravelLimitDecel whenever a hardware or software travel limit is hit or exceeded. Software travel limits are not active unless enabled and Absolute Position Valid is active.

Start Up

StartUp

This source can be used to trigger an event to occur on startup (when the FM-4 module powers up or is rebooted). This source is typically used to initiate a program or to initiate a home so that a machine will automatically home on power up or reboot.

StartUp will activate when the FM-4 module has powered up and no faults are active. Startup may take as long as five seconds to activate. Depending on what the Startup source is assigned to, the drive may need to be enabled to perform the function.

If the drive is not enabled, the startup source cannot initiate programs or motion. The source will remain active until the FM-

4 module is powered down.

Stop

Stop

Activate this destination to stop all motion and programs. If Stop is activated when a Jog, Index, Home or Program is in progress, they will decelerate to zero speed at the Stop Decel ramp. When Stop is active, all Jog, Home, Index and Program initiate destinations will be ignored. When it is deactivated, all level sensitive and active input functions (Jog.0.PlusActivate,

Jog.0.MinusActivate, etc.) will become operational. For example, if the Jog.PlusActivate input function is active when the

Stop input function is deactivated, the Jog.Plus motion will initiate using the acceleration found in the Jog.0.Accel parameter.

This is level sensitive.

Stop Deceleration

StopDecel

Deceleration rate used when the Stop destination is activated.

Torque Command

TorqueCommand

This parameter is the torque command value before it is limited. The torque command may be limited by either the Torque

Limit (if the Torque Limit Enable destination is active) or current foldback.

199

FM-4 Programming Module Reference Manual

Limited Torque Command

TorqueCommandLimited

This is the actual torque commanded to the motor. This value is the result after the TorqueCommand is limited by the current foldback or the TorqueLimit value (if enabled).

Torque Level

TorqueLevel

This parameter is compared to the TorqueCommand. If the absolute value of the TorqueCommand is greater than or equal to the TorqueLevel the TorqueLevelActive source is activated. This parameter is specified in Torque User Units.

Torque Level Active

TorqueLevelActive

This source is used to indicate that the absolute value of the TorqueCommand is greater than or equal to the TorqueLevel setting.

Torque Limit

TorqueLimit

This is the level to which the TorqueCommand will be limited when the TorqueLimitEnable input function is active.

Torque Limit Active

TorqueLimitActive

Active when the TorqueCommand is greater than the TorqueLimit and the TorqueLimitEnable input function is active.

Torque Limit

TorqueLimitEnable

This destination is used to enable the TorqueLimit. This is level sensitive.

Travel Limit Deceleration

TravelLimitDecel

This parameter defines the ramp used to decelerate the motor to a stop when any travel limit is activated.

Travel Limit Disable

TravelLimitDisable

TravelLimitDisable can be used from the Assignments view, or through a user program. It can be used to temporarily disable the travel limit fault capability of the FM-4 module. When TravelLimitDisable is activated, the FM-4 module travel limits

(hardware or software) are no longer valid. If disabled using a program, the travel limits will automatically be re-enabled when the program ends, if they haven’t already been enabled. This feature is typically used when a machine must use one of its limit switches as a home switch. The user disables the travel limits, then homes to the limit switch, and then re-enables the travel limit.

Torque Limit

TorqueLimitEnable

This destination is used to enable the TorqueLimit. This is level sensitive.

Travel Limit Minus Activate

TravelLimitMinusActivate

This destination is used to activate the travel limit minus fault. It should be assigned to the travel limit minus sensor. When it is activated the drive will decelerate to a stop using the deceleration rate defined in the TravelLimitDecel parameter. This is level sensitive.

200

Parameter Descriptions

Travel Limit Minus Active

TravelLimitMinusActive

This source is active when the TravelLimitMinusActivate is active.

Travel Limit Plus Activate

TravelLimitPlusActivate

This destination is used to activate the travel limit plus fault. It should be assigned to the travel limit plus sensor. When it is activated the drive will decelerate to a stop using the deceleration rate defined in the TravelLimitDecel parameter. This is level sensitive.

Travel Limit Plus Active

TravelLimitPlusActive

This source is active when the TravelLimitPlusActivate is active.

Decimal Places

TorqueUnits.Decimal

This parameter is the decimal point location for user torque units.

Units Name

TorqueUnits.Name

The User can specify a torque unit name of up to 12 characters. Default is % Cont.

Percent Continuous

TorqueUnits.PercentContinuousCurrent

This parameter is the denominator of torque scaling factor. This is an amount of continuous current in percent that is equal to the TorqueUnits.Torque parameter.

Torque

TorqueUnits.Torque

This parameter is the numerator of the torque scaling factor. This is an amount of torque in Torque User Units that is equivalent to one unit of PercentContinuousCurrent (denominator of scaling factor). This scaling factor is used to relate actual current or torque to user units.

Variable Decimal

Var.Var#.Decimal

This parameter specifies the number of decimal placed of resolution that this particular user variable will use. Minimum value is 0 (default), and the maximum number of decimal places in 6 (0.000000). When assigning the value of a User Variable to different parameters, make sure that the parameter and the User Variable have the same number of decimal places.

Variable Value

Var.Var#.Value

This parameter specifies the current value of a user variable. In a program, the ".Value" portion of the parameter name can be left off. For example:

Var.Var0.Value = 12345 is the same as Var.Var0 = 12345

When assigning the value of a User Variable to different parameters, make sure that the parameter and the User Variable have the same number of decimal places.

201

FM-4 Programming Module Reference Manual

Velocity Command

VelCommand

The Velocity Command is the velocity that the FM-4 module is commanding the motor to run at. This command is generated by the drive velocity control loop. It is displayed in user units.

Velocity Feedback

VelFeedback

This is the feedback (or actual) velocity. It will always return the actual motor velocity, even in synchronized applications in which the master axis is halted during a move.

Decimal Places

VelocityUnits.Decimal

This parameter is used to select the number of decimal places used in velocity units scaling. Using a high number of decimal places will improve velocity resolution, but will also limit the maximum velocity. This parameter is selectable between 0 and

6 decimal places. The number of decimal places set in this parameter determines the number of decimal places used in all velocity parameters throughout the PowerTools Pro software.

Scaling

VelocityUnits.DistVelScale

Velocity units can be scaled to different from distance units, i.e. user distance units are inches and velocity units are feet per minute, instead of inches per minute. To do this, simply enter 12 to set 1 foot equal to 12 inches (1 velocity unit = 12 distance units). Range is 1 to 1000, integers only.

Units Name

VelocityUnits.Name

If the user wants the velocity units to have a different distance scaling than the distance units a name can be entered here up to 12 characters, e.g. user distance units are inches and velocity units are feet per minute.

Scaling

VelocityUnits.ScalingEnable

This parameter enables separate velocity and distance user units, name and scaling. If disabled, the velocity units, name and scaling will be defined by the Distance group.

Time Scale

VelocityUnits.TimeScale

Velocity time scale can be set to user units per second or user units per minute, used for all real-time velocities throughout the PowerTools Pro software.

Acceleration - FM-4E Only

VirtualMaster.Accel

This parameter is the acceleration rate, in user units, that the virtual master will use to accelerate. This parameter is used when in either jog or indexing mode.

Scaling - FM-4E Only

VirtualMaster.CharacteristicDistance

The denominator (bottom value of the scaling fraction) is the VirtualMaster.CharacteristicDistance and is used with

VirtualMaster.CharacteristicLength to create the virtual master conversion ratio. Converting the user units distance into virtual counts.

202

Parameter Descriptions

Scaling - FM-4E Only

VirtualMaster.CharacteristicLength

The numerator (top value of the scaling fraction) is the VirtualMaster.CharacteristicLength and is used with

VirtualMaster.CharacteristicDistance to create the virtual master conversion ratio scaling. Converting the user units distance into virtual counts.

Scaling =

Virtual MasterCharacteristicLength

VirtualMaster.CharacteristicDistance

Deceleration - FM-4E Only

VirtualMaster.Decel

This parameter is the deceleration rate, in user units, that the virtual master will use to decelerate. This parameter is used when in either jog or indexing mode.

Distance - FM-4E Only

VirtualMaster.Dist

This parameter is the incremental distance virtual master will move, in user units, if the virtual master is initiated as an index.

FeedRate Decel/Accel - FM-4E Only

VituralMasterFeedRateDecelerationTime

This parameter specifies the ramp used when velocity changes due to a change in the FeedRate Override value. The units of

FeedRate Decel/Accel are seconds/100%. Therefore, the user must specify the amount of time (in seconds) to accelerate or decelerate 100% of programmed feedrate.

FeedRate Override - FM-4E Only

VirtualMaster.FeedRateOverride

This parameter is used to scale the Virtual Master counts. It can be described as “scaling in real time”. The default setting of

100% will allow all counts to occur in real time. A seeing of 50% will scale time so that all counts are half as fast as they are at 100%. A setting of 200% will scale time so that all count run twice as fast as they would at 100%. Feed Rate Override is always active, and this parameter may be modified via Modbus, Ethernet, or in a program.

Marker Count - FM-4E Only

VirtualMaster.MarkerCount

The encoder marker pulses are simulated and this parameter (VirtualMaster.MarkerCount) specifies the number of

VirtualMaster.Counts per encoder marker pulse generated.

Velocity - FM-4E Only

VirtualMaster.Vel

This parameter is the maximum virtual velocity that will be attained by the virtual master. This parameter is in user units.

Enable Virtual Master - FM-4E Only

VirtualMaster.VirtualMasterEnable

Enable Virtual Master check box by default is clear. Select the check box to enable virtual master

(VirtualMaster.VirtualMasterEnable = ON).

203

FM-4 Programming Module Reference Manual

204

FM-4 Programming Module Reference Manual

Installation

Basic Installation Notes

You are required to follow all safety precautions during start-up such as providing proper equipment grounding, correctly fused power and an effective Emergency Stop circuit which can immediately remove power in the case of a malfunction. See the “Safety Considerations” section for more information.

Mechanical Installation

The FM-4 module detects and verifies the drive serial number when its attached to an drive. If an FM-4 module is moved from one drive to another, it will detect the difference in serial numbers and generate an Invalid Configuration fault.

Two aligning tabs, a locking latch and a 100-pin connector are used to attach the FM-4 module to a drive. All electrical connections between the FM-4 module and the drive are accomplished with the single connector located on the rear of the

FM-4 module.

Continue pressing the FM against the drive until the latch clicks into the slot on the top of the drive.

4

1

Grip the FM firmly on each side.

3

Gently press the

FM against the drive, aligning the

100-pin connector.

2

Insert the aligning tabs into the slots on the drive.

Figure 146: Attaching the FM-4 Module to an EN Drive

Do not attach or detach the FM-4 module when power is applied to the drive. It could cause drive instability.

205

FM-4 Programming Module Reference Manual

Press down on the latch located on the top of the FM.

2

Grip the FM on each side of the LCD.

1

Gently pull the FM away from the drive. A slight rocking motion may be used to loosen the FM's connector.

3

4

Continue pulling the top of the FM away from the drive until the connector clears the drive. Lift the

FM out of the aligning tab slot and away from the drive.

Figure 147: Detaching the FM-4 Module from the Drive Connections

Do not attach or detach the FM-4 module when power is applied to the drive It could cause drive instability and may cause property damage.

Electrical Installation

Input/Output Wiring

The FM-4 Module is equipped with eight optically isolated input lines and four optically isolated output lines. They are designed to operate from a +10 Vdc to 30 Vdc source. All inputs and outputs are configured as sourcing. The user is responsible for choosing a load that will limit each output current to less than 200 mA.

The input lines, output lines and I/O power connectors are on removable terminal blocks. 18 to 24 AWG stranded wire is recommended.

A single power supply can be used to power the I/O on both the drive and the FM-4 module, however, it must be wired to both the drive and the FM-4 module because I/O power is not passed through the connector on the back of the FM-4 module.

Alternatively, separate power supplies can be used to power the I/O on the drive and the FM-4 module, as long as they share a common ground.

206

Installation

Function Module

2.8 k

7

8

5

6

3

4

1

2

3

4

1

2

* A high speed diode (such as a 1N4000) is required for inductive loads such as a relay, solenoid or contactor.

Load

Load

Load

*

*

*

10 - 30

+ Vdc -

Single Point

PE Ground

J6

10 to 30

Vdc

2.8 k

INPUT

OUTPUT

I/O Supply +

10 to 30 Vdc

Drive

+

10 - 30

Vdc

-

*

Load

*

Load

*

Load

* A high speed diode (such as a 1N4000) is required for inductive loads such as a relay, solenoid or contactor.

Single Point

PE Ground

Figure 148: Input/Output Sourcing Wiring Diagram (FM-4 module/EN drive shown)

Modbus Communications

The drive’s serial communication protocol is Modbus RTU slave with a 32 bit data extension. The Modbus protocol is available on most operator interface panels and PLC’s.

Max baud rate

Start bit

Stop bit

Parity

Data

Serial Communications Specifications

19.2k (default)

1

2 none

8

Control Techniques’ Motion Interface panels are supplied with a Modbus master communications driver.

207

FM-4 Programming Module Reference Manual

Software Installation

PowerTools Pro software was designed for users who need access to all setup options and diagnostic information for the drive.

The software provides access to all commonly used drive parameters.

PC System Configuration

Minimum Required:

• Windows® 98, 2000, 2003, 2008, XP (32-bit) (service pack 2), or Vista (32-bit)

• Serial port

• Mouse

• CD-ROM drive

• Microsoft® Internet Explorer v 7.0 or greater

Recommended:

• 1 GB or more of RAM for Windows 2000, 2003, 2008 and XP. 2 GB for Vista

• Up to 45 MB of hard disk space required for a full installation; 15 MB for minimum installation

Optional:

• Windows-compatible printer

• Modem and Internet access

• Ethernet card - FM-4E only

Preparing for PowerTools Pro Installation

• Close all programs and turn off virus protection software to prevent installation conflicts

• If you have another version of PowerTools on your computer and do not want to overwrite that version, change the default installation folder for PowerTools during installation setup

• To avoid overwriting programs you have customized or created, place them into a separate folder before you install

Installing PowerTools Pro

You must be running Microsoft Windows 98, Microsoft Windows 2000, 2003, 2008, XP or Vista to install this software.

1. Insert the MME Power CD into the CD-ROM drive. The Power CD should auto start, navigate to the software page where the PowerTools Pro installation link will be found. If the Power CD doesn’t auto start use Windows Explorer to navigate to the CDROM drive and open the HELP.TXT file for addition information.

2. When prompted, install the software on to your hard drive following the instructions on your screen.

Installation will take a few minutes. The install program automatically:

• Creates the directory on your hard drive named:

C:\...\Control Techniques\PowerTools Pro - (version#)

• Creates a new Windows group called "Control Techniques".

• Loads PowerTools Pro into the Control Techniques\PowerTools Pro directory.

Note

To complete the installation for Windows 98, 2000, 2003, 2008, XP and Vista, you may be required to restart Windows.

Refer to the readme.txt file located at the end of the installation for more information.

If You Need Help with Installation

If you encounter problems while installing PowerTools Pro software, call Technical Support at (952)995-8033 (24 hour assistance).

208

Installation

Starting and Exiting PowerTools

Starting the Software

1. Click the Start button on the taskbar at the bottom left of the screen.

2. Click on the Programs selection. The Programs menu appears.

3. Click on the “Control Techniques” folder icon.

4. Click on the “PowerTools Pro” folder icon.

5. Click on the PowerTools Pro program icon.

Opening a New File

To start a new file or configuration, select File from the menubar, and then select New. You may also click on the File New button on the toolbar. The New dialog box will appear prompting the user to select FM-4 Setup or other FM-4 module

depending on the model number (see figure 149).

Figure 149: New Configuration Dialog Box

If the module is intended solely for Modbus communications (FM-4 printed on front panel), then select FM-4 Setup. If the module is DeviceNet compatible (FM-4DN printed on front panel), then select FM-4DN Setup. If the module is Profibus compatible (FM-4PB printed on front panel), then select FM-4PB Setup. If the module is intended for Ethernet communications (FM-4E printed on front panel), then select FM-4E Drive Setup.

This will create a new file in which you will construct the entire FM-4 setup.

Exiting the Software

Choose File from the menubar, then click Exit. If you are using the keyboard, press the shortcut key combination Alt+F, X.

If you made changes, PowerTools displays an Alert dialog box asking whether you want to save your current work. Click Yes or press Enter to save your work, or click No to quit without saving.

Accessing Help

PowerTools views and dialog boxes provide a Help button. This retrieves help for that particular subject and provides details to assist the user in the use of each view or dialog box. Also, provided is a index-based help system. There is the ability to search the online help using a keyword. Lastly, PowerTools has context sensitive help capability.

Online Help displays detailed procedural and reference information. It contains some information that does not appear in this manual.

To display Help in PowerTools, do one of the following:

• Press F1.

209

FM-4 Programming Module Reference Manual

• Choose a command from the Help menu.

• Click the Help button on a dialog box or view.

• Click the Help button on the toolbar.

• Click the Context Sensitive Help button on the toolbar and then the field on the view.

210

FM-4 Programming Module Reference Manual

Quick Start

The quick start guide provides information on the basic operation and functions of the FM-4 module. The quick start steps cover only the most basic steps required to setup a FM-4 module for use with a drive.

Basic Setup Steps

Step 1: Opening a New Configuration Window

To open a new configuration window, click either on the New File button at the left end of the PowerTools Pro toolbar, or

click on File-New from the menu as shown in Figure 150.

Figure 150: Opening a new Configuration

This opens a new offline configuration window allowing you to setup all FM-4 parameters. The communication status remains “offline” until the configuring is complete and you download the application to the FM-4 module.

Step 2: Enter All Setup Data

Setup View

The opening window of PowerTools Pro is divided into two areas. The left side contains the configuration Hierarchy Tree, which acts as a navigation frame. Some elements in the Hierarchy Tree can be expanded to show more detailed setup views.

Elements with a plus sign (+) to the left of them may be expanded for added detail.

To expand the element, place the mouse pointer over the plus sign (+) and click the left mouse button. The group then expands to show the setup views underneath it. To collapse the expanded group, click on the minus sign (-) located to the left of the group heading.

To select one of the individual setup views, click on the element in the Hierarchy Tree. The element will then be highlighted,

and the right side of the window will show all setup parameters for that subject. Figure 151 shows the Setup view.

211

FM-4 Programming Module Reference Manual

Figure 151: Setup View

On this view, you must enter the following parameters before entering other setup views:

Drive Type

– Select, from the list box, the type of drive to which the FM-4 module is attached.

E

N

E Series Only

Line Voltage

– Select, from the list box, the line voltage applied (115 Vac or 230 Vac).

Target Drive Address

– Enter the Modbus address for this drive/FM-4 system. PowerTools Pro will download the configuration to that specific drive only.

Please take the time to check that these parameters are correct.

Motor View

On this view, the motor type for the application is selected from the Motor Type list box or a custom motor can be created.

User Units View

Determine which types of units the drive should use to measure motion and enter them on this view. Figure 152 shows the

Setup group in the Hierarchy Tree expanded with User Units selected.

212

Quick Start

Figure 152: User Units View

Now set up the parameters in the Distance group on the User Units view. The Tab key is used to easily jump through the available parameters. After entering data in a field, press the Tab key to move to the next parameter. The parameters you must fill out are as follows:

Units Name

– Enter the character string you wish to use for your distance units.

Decimal Places

– Enter the number of digits after the decimal place you wish to use in all distance parameters throughout the software (i.e. index distances/positions, PLS On/Off points). Use the Up/down arrows to increase or decrease the number of digits.

Distance Units Scaling

– Enter the number of User Units the motor/load travels for each revolution of the motor. You must enter the numerator and the denominator for this scaling factor.

Note

User Units may affect end motor speed and could cause trajectory faults.

Because of internal math in the FM-4, some user unit combinations may cause module or drive trajectory faults. The maximum motor velocity allowed by the drive is detailed under the distance section of the User Units View and is labeled

“User Unit Limited Speed”. When the user unit setup is altered in such a way that the maximum motor speed allowed by the drive is less than the maximum speed allowed by the chosen motor, the readout of maximum motor speed allowed by the drive changes to have a red background. If a configuration is downloaded to the FM-4 with a red background on the “User

Unit Limited Speed”, the drive will obtain a trajectory fault at speeds near this velocity. To alleviate this issue, simply remove decimal places from the user units, and/or change the characteristic distance (numerator) of the scaling parameters to be a smaller number. The red background indicating module trajectory faults will go away when the user unit setup is scaled for a realistic accuracy based on the encoder counts per revolution.

Master Units View

Use this view to setup parameters for synchronized motion.

Position View

The Settings group on this view sets the Define Home Position.

213

FM-4 Programming Module Reference Manual

Figure 153: Position View

To set up Following Error Limit and Software Travel Limits, fill out the following parameters in the Limits Group:

Enable Following Error

– This check box enables (when selected) and disables the following error fault capability. If selected, a following error fault is generated whenever following error exceeds the value entered in the parameter text box.

If clear, a following error fault will never be generated.

Following Error Limit

– If Following Error meets or exceeds this value, a Following Error Fault will be generated.

Enable Software Travel Limits

- This check box enables (when selected) and disables the software travel limits. If enabled, the software travel limits are not active unless the Absolute Position Valid Source is active. (For more information please see

Software Travel Limits information in the Setting Up Parameters section on page 52)

Software Travel Limit + and -

- If the position feedback ever exceeds these values when traveling in a positive or negative direction, the motor will come to a stop at the Travel Limit Decel rate defined on the Ramps view.

Velocity View

This view sets up the feedrate override velocity. If your application does not call for an overall scaling factor, leave this at the default of 100%.

Ramps View

Deceleration rate to be used if a travel limit is encountered must be setup on the Ramps view.

214

Quick Start

Figure 154: Ramps View

Travel Limit Decel

– The deceleration ramp is used if either a Software or Hardware Travel Limit is encountered. The deceleration units of the ramp are defined in the User Units view under the Acceleration group.

Torque View

If the application calls for specific torque levels and limits, use the parameters on this view.

Tuning View

Control Techniques’ Drives are designed to handle a 10:1 inertia mismatch without a tuning requirement. If you have calculated and know the inertia mismatch, the value can be entered on the Tuning view for ideal drive response and velocity regulation.

Figure 155: Tuning View

Inertia Ratio

- This parameter is the ratio between the reflected inertia of the load and the inertia of the motor rotor. For assistance in calculating the Inertia ratio, see the Determining Tuning Parameter Values section of this manual.

PLS View

Use this view to setup Programmable Limit Switches (PLS), if the application requires them. They are assigned in the same way as the Assignments views in Step 3 below.

215

FM-4 Programming Module Reference Manual

Step 3: Making Assignments

The Assignments view is found by expanding the I/O Setup group in the Hierarchy Tree. The Assignments define how the system operates. Sources, located on the left side of the view, are functions or events that activate based on drive/motor activity. Destinations, located on the right side of the view, are functions that need to be triggered or activated (i.e. Index

Initiate, Program Initiate, etc.).

The example application requires initiating three indexes using three separate hardware inputs. Therefore, the Input Sources need to be assigned to the Index Initiate Destinations.

To make an assignment, position the mouse pointer over the Source that will be assigned to a Destination, click and hold the left mouse button. While still holding the button, drag the mouse pointer over to the Destination and release the button. The

“Assigned To” and the “Set From” columns should then reflect the assignments that have been made. Figure 156 shows the

Assignments view with these assignments made.

216

Drag and

Drop Method

Figure 156: Making Assignments

The Input Lines view shows the assignments that have been made to the Inputs group of Sources on the Assignments view.

Notice that a Name can be associated to each input line. Each input line can also have a debounce time.

Name

– This 12-character string allows a descriptive name assigned to an input line. This makes the configuration easier to follow.

Debounce

– This is the minimum time a specific input must be on, for recognition by the drive/FM-4 module. This helps prevent false triggering for applications in electrically noisy environments. The units for this parameter are seconds, with resolution of 0.001 seconds.

The Output Lines view shows assignments that have been made to the Outputs group of Destinations on the Assignment view.

Assignments to this view are made in the same way as assignments to the Input Lines view. After all assignments have been

made, the Output Lines view may look like Figure 157.

Quick Start

Figure 157: Output Lines View

A name can also be given to each hardware output line. Figure 157 shows how to enter a name for an individual output line.

Name

– This 12-character string allows a descriptive name assignment to an output line. This makes the configuration easier to follow.

Step 4: Setting Up Motion Parameters

Now that all of the assignments have been made, you next setup the jog, home, and index definitions. To do this, it is necessary to expand the Motion group in the Hierarchy Tree.

Jog Setup

The Jog views allow the user to setup any jogs required by the application. Select either the Jog0 or Jog1 to enter the specific

Jog parameters. Figure 158 shows Jog1 setup view (renamed Jog Fast). Once in the individual jog views, the up and down

arrows next to the Jog Number parameter can be used to scroll between the jog views. The following jog parameters have been defined on this view:

Jog Name

- Jog0 has been named Jog Slow and Jog1 named Jog Fast. This is a 12-character string that allows you to give a descriptive name to a jog profile.

Jog Velocity

– Is the target velocity for the Jog profile. If the Jog.Select0 destination is inactive, the Jog0 velocity is the target velocity, if Jog.Select0 is active, then Jog1 velocity is used.

Jog Acceleration

– Is the average acceleration rate used when accelerating to the target velocity.

Time Base

– This list box allows the user to select the time base for the individual jog. The options are Realtime or

Synchronized.

Figure 158: Jog Setup View

217

FM-4 Programming Module Reference Manual

Jog Deceleration

- Is the average deceleration rate used when decelerating to zero speed or to the new target velocity.

Home Setup

Next, select the Home view from the Hierarchy Tree. Figure 159 shows the Home view and its associated home parameters.

Home Reference

– Determines what signal is used as the home reference. The available options are an external sensor, the encoder marker pulse, or both. If sensor is selected, the home profile will travel at its target velocity until the

Home.0.SensorTrigger is activated.

Velocity

– Is the target velocity for the home move. The home move travels at this velocity, until the home reference is seen and then stops. If the motor overshoots the sensor, a reverse move is initiated. Other functions may cause additional motion.

Acceleration

– Is the average acceleration rate used to accelerate to the target velocity.

Figure 159: Home Setup View

Deceleration

- Is the average deceleration rate used to decelerate from the target velocity to zero velocity at the completion of the home.

Home Offset

– By selecting a specified offset, the home will travel at a set velocity until the home reference signal is detected, then travel an additional set distance, before coming to a stop. The deceleration ramp begins at the proper time, to ensure the home completes precisely at the specified offset distance after the home reference was detected. In order to decelerate to a stop immediately upon detecting the home reference, select the “Calculated Offset” radio box.

Limit Distance

– Is the maximum incremental distance the home move will travel without seeing a home reference signal.

If the home move does travel this distance without seeing a home reference, it will come to a stop exactly at this point, and the Home.0.LimitDistHit source will activate. If the box is left unchecked, the home move will continue without limit, until a home reference is seen.

Index Setup

Next, setup any indexes required by your application. Select one of the indexes from the Hierarchy Tree. Figure 160 shows

Index0.

218

Quick Start

Figure 160: Index Setup View (Absolute Type)

Indexes use the following parameters:

Index Name

- Is a 12-character string that gives a descriptive name to an index.

Index Type

– Selects the desired type of index from the list box. An Absolute index means the load will travel to an exact position with respect to the home reference point. This index will cause motion in either a positive or negative direction depending on current position of the load with respect to the home reference point. An Incremental index means that the load travels an exact distance from the start of the index.

Position/Distance

– If using an absolute index, this is the desired final position after the index is complete. If using an incremental index, then this is the distance you want the load to move from the start of the index. This is a signed value.

Velocity

– This is the target velocity of the index profile. The velocity parameter is unsigned and is always greater than zero.

Direction of the index is not determined by the velocity, but by the Distance/Position parameter.

Acceleration

– Is the average acceleration rate used when accelerating to the target index velocity.

Deceleration

- Is the average deceleration rate used when decelerating to zero speed, or to the new target velocity.

219

FM-4 Programming Module Reference Manual

Figure 161: Index Setup View (Incremental Type)

Now that all of the motion parameters are setup, the jogs and indexes can be initiated through assignments to hardware inputs that were made on the Assignment view.

Step 5: Creating a Program

Now that the drive setup is complete, assignments are made, and motion profiles are defined, a program can be created. To

do this, expand the Program group in the Hierarchy Tree, and select Program 0. Figure 162 shows the programming window

and the available instructions.

220

Quick Start

Drag and

Drop

Figure 162: Program View

The window in the middle of the view allows selection from a list of Program Flow and Motion instructions. To insert an instruction into the programming window, you can use the “drag-and-drop” method also used in making assignments. Simply position your mouse pointer over the instruction you wish to use, click the left mouse button and hold it down. While holding the button down, move your pointer into the programming window, and release the mouse button.

To expand the usable area of the programming view, use the Hide/Show Hierarchy on the PowerTools Pro toolbar. Figure

163 shows this utility. By clicking on the button once, the Hierarchy Tree will be hidden, allowing for a larger programming

window. To show the Hierarchy Tree again, simply click on the button a second time. Clicking on the button alternates between showing and hiding the Hierarchy Tree.

The Hide/Show Hierarchy button can be used on any view in the PowerTools Pro software, but will primarily be of use in the

Programs view and the Assignments view.

Figure 163: Program View (Expanded)

221

FM-4 Programming Module Reference Manual

A comment is automatically inserted after the index instruction, which shows key data about the specific index. Notice comments start with the ‘ apostrophe character.

A “Wait For Index.AnyCommandComplete” instruction is automatically inserted after each Index.Initiate. This ensures that the index has completed before the program continues on to the next line of code.

Once all of the program instructions have been inserted, your program window may look like Figure 163.

Now the program is complete, and is ready to be run. In order to run the program, the drive must be enabled and the setup parameters must be downloaded. Once the download is complete, verify the drive is enabled and initiate your program.

Example Application Start Up

Software Travel Limits

0 20

Home Prox

Figure 164: Example System

In order to make the setup easier to understand in this guide, the guide will use an example setup. The example application used in the quick start guide is a ball screw application (see the drawing above).

The example uses these functions:

3 Indexes (Initiated through Assignments or through a Program)

2 Jogs

1 Home (to Sensor)

1 Program

Software Travel Limits

Following Error Limit

Several Setup Views do not require any setup for this example application, and therefore have been skipped. After opening a new Configuration Window and inputting information on the Setup view and Motor view, move to the User Units view.

User Units View

This example requires use of distance units “Inches” versus the default units “revs”. The example has a linear device that

moves 1.00 Inch per 1 motor Revolution. Figure 166 shows the Setup group in the Hierarchy Tree expanded with the User

Units element selected.

The parameters you must fill out are as follows:

Units Name

– Enter the character string you wish to use for your distance units, such as “Inches” for this example.

Decimal Places

– Enter the number of digits after the decimal place you wish to use in all distance parameters throughout the software (i.e. index distances/positions). The example selects three digits allowing resolution of 0.001 Inches on all distance variables. Use the Up/down arrows to set.

Distance Units Scaling

– Enter the number of User Units the motor/load travels for each revolution of the motor. You must enter the numerator and the denominator for this scaling factor, but for this example, the denominator (bottom portion of the ratio) is at 1.

222

Quick Start

Position View

The example wishes to limit the Following Error to 0.25 Inches or one motor revolution, and the Software Travel Limits of

+20 and 0 Inches.

To setup following error limit and software travel limits, fill out the following parameters in the Limits Group:

Enable Following Error

– Enable this check box.

Following Error Limit

– The example uses a limit of 0.25 Inches.

Enable Software Travel Limits

– Enable this check box.

Software Travel Limit + and - - If the position feedback ever exceeds these values when traveling in a positive or negative direction, the motor will come to a stop at the Travel Limit Decel rate defined on the Ramps view

Tuning View

This example application has an inertia mismatch of 3.5:1 and has been entered as seen in Figure 165.

Figure 165: Tuning View

Making Assignments

Using this process, three individual assignments are made. The example application wants to turn on an output when each

index completes. Therefore, Index Complete sources will be assigned to the hardware Output destinations. Figure 166 shows

this process.

223

FM-4 Programming Module Reference Manual

Drag and

Drop Method

Figure 166: Assignments View

The Input Lines view shows all of the assignments that have been made to the Inputs group of Sources. After all assignments

for the example application have been made, the Input Lines view should look like Figure 167.

224

Figure 167: Input Lines View

Notice that a Name can be associated to each input line. Each input line can also have a debounce time. Figure 167

demonstrates how to enter a debounce time for an input line. The following parameters have been filled in for each input line:

The Output Lines view shows assignments that have been made to the Outputs group of Destinations in the assignment view.

Assignments to this view are made in the same way as assignments to the Input Lines view. After all assignments have been

made for the example application, the Output Lines view will look like Figure 168.

Quick Start

Figure 168: Output Lines View

Home Setup

The example application calls for setup of the following parameters:

Home Reference

–The example calls for a Home to Sensor; therefore, “Sensor” is selected as the home reference. Because

of this selection, the home profile will travel at its target velocity until the Home.0.SensorTrigger is activated. Figure 166,

shows the Home.0.Sensor Trigger has been assigned to ModuleInput.2.

Velocity

– The home move travels at this velocity, until the home reference is seen and then stops. If the motor overshoots the sensor, a reverse move is initiated. Other functions may cause additional motion. The example application uses a Home

Velocity of 20 inches/min.

Acceleration

– Is the average acceleration rate used to accelerate to the target velocity. The example uses an acceleration rate of 100 inches/min/sec.

Index Setup

The example application calls for two Absolute Indexes, and one Incremental Index. Select one of the indexes from the

Hierarchy Tree. Figure 169 shows Index0.

225

FM-4 Programming Module Reference Manual

Absolute Index

226

Figure 169: Index Setup View (Absolute Type)

Indexes 0 and 1 are both Absolute type indexes and use the following parameters:

Index Name

- Is a 12-character string that gives a descriptive name to an index.

Index Type

– Select the desired type of index from the list box. Index0 has been defined as an Absolute type of index. This means the load will travel to an exact position with respect to the home reference point. This index will cause motion in either a positive or negative direction depending on current position of the load with respect to the home reference point.

Position

– Is a signed value that specifies the absolute position for the load at the completion of the index. For absolute indexes, direction of travel is determined by the starting position of the index. Index 0 has a Position of 10 Inches, and Index

1 has a Position of 0 Inches.

Velocity

– Is the target velocity of the index profile. The velocity parameter is unsigned and is always greater than zero.

Direction of the index is not determined by the velocity, but by the Distance/Position parameter. Velocity of the indexes in the example are 100 inches/min.

Acceleration

– Is the average acceleration rate used when accelerating to the target index velocity.

Deceleration

- Is the average deceleration rate used when decelerating to zero speed, or to the new target velocity.

Incremental Index

The following parameters were setup for Index2:

Index Name

- Is a 12-character string that gives a descriptive name to an index.

Index Type

– Select the desired type of index from the list box. Index2 has been defined as an Incremental type of index.

This means that the load travels an exact distance from the start of the index.

Quick Start

Distance

– The distance is a signed value that specifies the distance the load will travel from the start position. The sign of this parameter determines direction of travel for the load. The distance of Position C has been set to 2.5 inches.

Velocity

– Is the target velocity of the index profile. The velocity parameter is unsigned and is always greater than zero.

Direction of the index is determined not by the velocity, but by the Distance/Position parameter.

Acceleration

– Is the average acceleration rate used when accelerating to the target index velocity.

Deceleration

- Is the average deceleration rate used when decelerating to zero speed, or to the new target velocity.

Figure 170: Index Setup View (Incremental Type)

Now that all of the motion parameters are setup, the jogs and indexes can be initiated through assignments to hardware inputs

that were made on the assignment view. See Figure 167 to determine which input is used to activate which functions.

This example specifies that the indexes must be initiated from assignments, as well as from a program. So a program must be created using the guidelines below.

Upon initiating the program, it will wait until DriveInput.1 is activated, then run all three indexes with a 1 second dwell in between each, and then loop back to the top of the program. The program will run continuously, or until the Stop destination is activated.

The example program uses the following instructions:

Do While / Loop

– This program instruction is used to repeat a sequence of code as long as a test expression is true. The test expression is validated before the loop is entered. If the test expression is evaluated as False (0), then the code inside the loop will be skipped over. If the expression is evaluated as True (1), then the code inside the loop will be performed. Upon reaching the Loop instruction, the program flow returns to the Do While instruction, and the expression is evaluated again.

The example program uses an expression of TRUE, which is always evaluated as True (1). Therefore the program will run continuously.

227

FM-4 Programming Module Reference Manual

Wait For

– This program instruction halts program execution until the expression becomes True. Once True, the program continues with the next line of code. The example program uses a Wait For DriveInput.1 so that the program will wait until

DriveInput.1 is activated, then continue on.

Index.Initiate

– This program instruction is used to initiate a single index. When using this instruction, an Index Selection

Box will appear allowing you to select the index you wish to initiate. This selection box is shown in Figure 171.

Figure 171: Index Selection Box

The program is initiated using DriveInput.4 (see Figure 167).

The setup is now complete, and the example is ready to be downloaded.

228

FM-4 Programming Module Reference Manual

Tuning Procedures

The drive uses closed loop controllers to control the position and velocity Travel Limit of the attached motor. These position and velocity controllers and the associated tuning parameters are in effect when the drive is in velocity or pulse mode and have no effect when the drive is in Torque mode.

Many closed loop controllers require tuning using individual user-specified proportional, integral and derivative (PID) gains which require skilled “tweaking” to optimize. The combination of these gains along with the drive gain, motor gain, and motor inertia, define the system bandwidth. The overall system bandwidth is usually unknown at the end of the tweaking process. The drive closes the control loops for the user using a state-space pole placement technique. Using this method, the drive’s position control can be simply and accurately tuned. The overall system’s bandwidth can be defined by a single userspecified value (Response).

The drive’s default settings are designed to work in applications with up to a 10:1 load to motor inertia mismatch. Most applications can operate with this default setting.

Some applications may have performance requirements which are not attainable with the factory settings. For these applications a set of measurable parameters can be specified which will set up the internal control functions to optimize the drive performance. The parameters include Inertia Ratio, Friction, Response and Line Voltage. All the values needed for optimization are “real world” values that can be determined by calculation or some method of dynamic measurement.

PID vs. State-Space

The power of the state-space control algorithm is that there is no guessing and no “fine tuning” as needed with user-specified

PID methods. PID methods work well in controlled situations but tend to be difficult to setup in applications where all the effects of the system are not compensated for in the PID loop. The results are that the system response is compromised to avoid instability.

The drive state-space control algorithm uses a number of internally calculated gains that represent the wide variety of effects present in a servo system. This method gives a more accurate representation of the system and maximizes the performance by minimizing the compromises.

You need only to setup the system and enter three parameters to describe the load and the application needs. Once the entries are made the tuning is complete - no guessing and no “tweaking”. The drive uses these entries plus motor and amplifier information to setup the internal digital gain values. These values are used in the control loops to accurately set up a stable, repeatable and highly responsive system.

Tuning Procedure

Once the initial setup has been completed, you can run the system to determine if the level of tuning is adequate for the application. There are basically four levels of tuning for a drive.

• No Tuning

• Basic Level

• Intermediate Level

• Fully Optimized Level

Each level is slightly more involved than the previous one requiring you to enter more information. If your system needs optimization, we recommend that you start with the Basic Level, then determine if further tuning is needed based on axis performance.

The setup procedures explained here assume that you are using PowerTools FM-4 software or an FM-P.

Initial settings

Set the drive tuning parameters as follows:

• Inertia Ratio = 0

• Friction = 0

• Response = 50

• High Performance Gains = Enabled

229

FM-4 Programming Module Reference Manual

• Feedforwards = Disabled

Tuning steps

If your Inertia Ratio is greater than 10 times the motor inertia go directly to the Intermediate Level tuning.

No Tuning

No tuning will be required in most applications where the load inertia is 10 times the motor inertia or less.

Basic Level

Adjust Response to obtain the best performance.

Intermediate Level

1. Calculate or estimate the load inertia. It is always better to estimate low.

2. Disable the drive.

3. Enter the inertia value calculated into the Inertia Ratio parameter.

4. Set the Line Voltage to the applied voltage (default is 230 Vac).

5. Leave all other tuning parameters at the initial values.

6. Enable the drive and run the system.

7. Adjust Response to obtain the best performance.

Fully Optimized Level

1. Determine the actual system parameters.

2. Disable the drive.

3. Enter the parameters.

4. Line Voltage set to the applied voltage (default is 230 Vac).

5. Enable the drive and run the system.

6. Adjust Response to obtain the best performance.

General Tuning Hints

The Response is normally the final adjustment when tuning. For best performance the Response should be lower with a higher inertia mismatch (>10:1) and higher with a lower inertia mismatch.

If your system has some torsional compliance, such as with a jaw type coupling with a rubber spider, or if there is a long drive shaft, the Response should be decreased. The highest recommended Response with High Performance Gains enabled is 100

Hz.

Also, enabling the Low Pass Filter helps diminish the resonant frequency of torsionally compliant loads. In such cases, using the Low Pass Filter usually allows for higher Response values. The optimum Low Pass Filter frequency is at the frequency of the resonance.

Feedforwards can be enabled if the performance requirements are very demanding. However when using them, make sure the Inertia Ratio and Friction values are an accurate representation of the load. Otherwise, the system performance will actually be degraded or stability will suffer. Enabling the Feedforward makes the system less tolerant of inertia or friction variations during operation.

230

Tuning Procedures

Tuning Parameters

Inertia Ratio

Inertia Ratio specifies the load to motor inertia ratio and has a range of 0.0 to 50.0. A value of 1.0 specifies that load inertia equals the motor inertia (1:1 load to motor inertia). The drives can control up to a 10:1 inertia mismatch with the default

Inertia Ratio value of 0.0. Inertial mismatches of over 50:1 are possible if response is reduced.

The Inertia Ratio value is used to set the internal gains in the velocity and position loops, including feedforward compensation if enabled.

To calculate the Inertia Ratio value, divide the load inertia reflected to the motor by the motor inertia of the motor. Include the motor brake as a load where applicable. The resulting value should be entered as the Inertia Ratio parameter.

I R

=

RLI

MRI

Where:

IR = Inertia Ratio

RLI = Reflected Load Inertia (lb-in-sec

2

)

MI = Motor Inertia (lb-in- sec

2

)

If the exact inertia is unknown, a conservative approximate value should be used. If you enter an inertia value higher than the actual inertia, the resultant motor response will tend to be more oscillatory.

If you enter an inertia value lower than the actual inertia, but is between 10 and 90 percent of the actual, the drive will tend to be more sluggish than optimum but will usually operate satisfactorily. If the value you enter is less than 10 percent of the actual inertia, the drive will have a low frequency oscillation at speed.

Friction

In the drive, this is a viscous friction parameter, characterized in terms of the rate of friction increase per 100 motor RPM.

The range is 0.00 to 100.00 in units of percent continuous torque of the specified motor/drive combination. The Friction value can either be estimated or measured.

If estimated, always use a conservative (less than or equal to actual) estimate. If the friction is completely unknown, a value of zero should be used. A typical value used here would be less than one percent.

If the value entered is higher than the actual, system oscillation is likely. If the value entered is lower than the actual a more sluggish response is likely but generally results in good operation.

Response

The Response adjusts the velocity and position loop bandwidths with a range of 1 to 500 Hz. In general, it affects how quickly the drive will respond to commands, load disturbances and velocity corrections. The effect of Response is greatly influenced by the status of the High Performance Gains.

With High Performance Gains disabled, the actual command bandwidth of the drive system will be equal to the Response value. In this case the load disturbance correction bandwidth is very low (approximately 0.1 Hz). Increasing the Response value will reduce the drive’s response time to velocity command changes but will not affect the response to load or speed disturbances.

When High Performance Gains are enabled, the Response bandwidth is set to the Response value. In this case, it reflects both the velocity command and the load disturbance correction bandwidth. Increasing the Response when the High Performance

Gains are enabled will increase loop stiffness. With High Performance gains enabled, the maximum Response level recommended is approximately 100 Hz.

If the Inertia Ratio and Friction values are exactly correct and the High Performance Gains are enabled, changing the

Response will not affect the damping (percent of overshoot and number of ringout cycles) to velocity command changes or load disturbance corrections but will affect their cycle frequency. The response level generally should be decreased as the load to motor inertia ratio increases or if High Performance Gains are enabled.

231

FM-4 Programming Module Reference Manual

Feedforwards

Feedforward gains are essentially open loop gains that generate torque commands based on the commanded velocity, accel/ decel and the known load parameters (Inertia Ratio and Friction). Using the feedforwards reduces velocity error during steady state and reduces overshoot during ramping. This is because the Feedforwards do not wait for error to build up to generate current commands.

Feedforwards should be disabled unless the absolute maximum performance is required from the system. Using them reduces the forgiveness of the servo loop and can create instability if the actual inertia and/or friction of the machine varies greatly during operation or if the Inertia Ratio or Friction parameters are not correct.

The internal feedforward velocity and acceleration gains are calculated by using the Inertia Ratio and Friction parameters.

The feedforward acceleration gain is calculated from the Inertia Ratio parameter and the feedforward velocity gain is calculated from the Friction parameter.

When Feedforwards are enabled, the accuracy of the Inertia Ratio and Friction parameters is very important. If the Inertia

Ratio parameter is larger than the actual inertia, the result would be a significant velocity overshoot during ramping. If the

Inertia parameter is smaller than the actual inertia, velocity error during ramping will be reduced but not eliminated. If the

Friction parameter is greater than the actual friction, it may result in velocity error or instability. If the Friction parameter is less than the actual friction, velocity error will be reduced, but not eliminated.

Feedforwards can be enabled in any operating mode, however, there are certain modes in which they do not function. These modes are described in the table below.

Operating Mode

Analog Velocity

Preset Velocity

Pulse/Position

Summation

Feedforward Parameters Active

Accel FF

No

Yes

No

No

Vel FF

Yes

Yes

No

Yes

Low Pass Filter Group

The Low Pass Filter will reduce machine resonance due to mechanical coupling and other flexible drive/load components by filtering the command generated by the velocity loop. A check box on the Tuning view enables a low pass filter applied to the output of the velocity command before the torque compensator. The low pass filter frequency parameter defines the low pass filter cut-off frequency. Signals exceeding this frequency will be filtered at a rate of 40 dB per decade. The default value is 600Hz.

Line Voltage (EN Only)

Line Voltage specifies the applied power and adjusts the internal gains to compensate for it. This parameter has two choices

115 Vac and 230 Vac. If the Line Voltage is set to 230 Vac when the actual applied voltage is 115 Vac, the motor will be slightly less responsive to commands and load disturbances.

The Line Voltage must never be set to 115 Vac if the applied voltage is actually 230 Vac. This can cause drive instability and failure, resulting in property damage.

Determining Tuning Parameter Values

For optimum performance you will need to enter the actual system parameters into the drive. This section discusses the methods which will most accurately determine those parameters.

Note

If you have an application which exerts a constant unidirectional loading throughout the travel such as in a vertical axis, the inertia tests must be performed in both directions to cancel out the unidirectional loading effect.

Initial Test Settings

When running the tests outlined in this section, the motor and drive must be operational so you will need to enter starting values.

232

Tuning Procedures

If your application has less than a 10:1 inertia mismatch, the default parameter settings will be acceptable. If the inertial mismatch is greater than 10:1, use the following table for initial parameter settings.

Parameter

Friction

Inertia Ratio

Response

High Performance Gains

Feedforwards

Line voltage

Setting

0.00

1/3 to 1/2 Actual

500/Inertia Ratio

Disabled

Enabled

Actual Applied

Determining Friction

This parameter represents friction that increases proportionally as motor velocity increases. The viscous friction of your system can be determined by reading the percent of continuous torque required to operate the loaded motor at two different speeds.

Consider the following before determining the Friction:

• The most consistent readings can usually be obtained at motor speeds higher than 500 RPM but lower test speeds can be used if necessary.

• If your application has travel limits, it may be helpful to use an external position controller to prevent the axis from exceeding the machine limits. Set up a trapezoidal profile as shown.

• In the procedure below, the Torque Command and Velocity Feedback parameters can be measured using the drive’s analog outputs, PowerTools software or an FM-P.

• With vertical loads the test readings must be taken while traveling in the same direction.

• An oscilloscope may be needed for systems with limited travel moves to measure the rapidly changing torque and velocity signals.

• If your system’s friction changes with operating temperature, perform this procedure at normal operating temperature.

Procedure for Determining Friction:

1. Run the motor at the low test speed (at least 500 RPM).

2. While at speed, note the Torque Command Actual value (TCL).

Note

If the friction loading of your system varies when operating at constant speed, due to a load or spring load that changes as the motor rotates, use the lowest value measured.

3. Repeat Step 1 using a velocity at least two times the low speed.

4. While at speed, note the Torque Command Actual value (TCH).

5. Use the following formula to calculate the friction:

FV

=

( 100 )

(T

CH

T

CL

)

RPM

H

RPM

L

Where:

T

T

CH

CL

= Torque Command Limited value at higher speed

= Torque Command Limited at lower speed

RPM

H

RPM

L

= Higher RPM (velocity)

= Lower RPM (velocity)

FV = Friction value

233

FM-4 Programming Module Reference Manual

The figure below shows the relationship of Torque Command to the Velocity Feedback. There is increased torque during the

Accel ramp (Ta), constant torque (Tc) during the constant velocity portion of the ramp and decreased torque (Td) during the decel ramp.

234

Figure 172: Trapezoidal Velocity Waveform with Torque Waveform

Determining Inertia Ratio

Actual system Inertia Ratio is determined by accelerating and decelerating the load with a known ramp while measuring the torque required.

Consider the following before determining the inertia:

• If your application allows a great deal of motor motion without interference, it is recommended that you use a Preset

Velocity to produce accurate acceleration ramps.

• If your application has a very limited range of motion, it is recommended that you use a position controller to produce the acceleration ramps and to prevent exceeding the axis range of motion.

• The accel and decel ramp should be aggressive enough to require at least 20 percent of continuous motor torque. The higher the torque used during the ramp, the more accurate the final result will be.

• With ramps that take less than 1/2 second to accelerate, read the Diagnostic Analog Outputs with an oscilloscope to measure the Torque Feedback.

• With ramps that take 1/2 second or longer to accelerate, read the Torque Command parameter on the Torque view, while online, or with the Watch Window.

• To best determine the inertia, use both acceleration and deceleration torque values. The difference allows you to drop the constant friction out of the final calculation.

• If your application exerts a constant “unidirectional loading” throughout the travel such as in a vertical axis, the inertia test profiles must be performed in both directions to cancel out the unidirectional loading effect.

• The Torque Command Limited and Velocity Feedback parameters can be measured using the drive’s Analog Outputs,

PowerTools software or an FM-P.

An oscilloscope will be needed for systems with limited travel moves and rapidly changing signals of torque and velocity.

Inertia Measurement Procedure:

Note

The test profile will need to be run a number of times in order to get a good sample of data.

1. Enable the drives and run the test profiles.

2. Note the Torque Command Limited value during acceleration and deceleration.

3. Use the appropriate formula below to calculate the inertia.

Tuning Procedures

For horizontal loads or counterbalanced vertical loads use the following formula:

IR =

(R • Vm (Ta + Td))

2000

− 1

Where:

IR = Inertia Ratio

R = ramp in ms/kRPM

Ta = (unsigned) percent continuous torque required during acceleration ramping (0 - 300)

Td = (unsigned) percent continuous torque required during deceleration ramping

(0 - 300)

Vm = motor constant value from Table 18 below

For un-counter balanced vertical loads use the following formula:

IR =

(R • Vm (Tau + Tud

4000

+ Tad + Tdd))

− 1

Where:

IR = Inertia Ratio

R = ramp in ms/kRPM

Vm = motor constant value from the table below

Tau = (unsigned) percent continuous torque required during acceleration ramping while moving up (against the constant force)

Tdu = (unsigned) percent continuous torque required during deceleration ramping while moving up (against the constant force)

Tad = (unsigned) percent continuous torque required during acceleration ramping while moving down (aided by the constant force)

Tdd = (unsigned) percent continuous torque required during deceleration ramping while moving down (aided by the constant force)

Ramp Units Conversion

If you are using an external position controller to generate motion you may need to connect the ramp units as desired below.

Many position controllers define acceleration in units per sec

2 conversion when entering the information into the formula.

. The formulas above use ms/kRPM. Make sure you make this

Conversion Formula:

MPK

=

10

(RPSS

6

60)

Where:

MPK = accel ramp in ms/kRPM

RPSS = accel ramp in revolutions per second

2

Motor

NT-320

MG-205

MG-208

MG-316

Drive

EN-204

Vm

4.30

4.77

5.11

3.17

Percent Continuous/volt

Scaled Torque Command

Output (default))

30

30

30

30

RPM /volt Scaled Velocity

Command Output (default))

600

600

600

600

235

FM-4 Programming Module Reference Manual

Drive Motor

NT-355

MG-455

MG-490

MG-4120

NT-207

NT-212

MG-205

MG-208

NT-207

NT-212

MG-205

NT-320

NT-330

NT-345

NT-355

MG-316

MG-340

MG-455

NT-345

MG-208

MG-316

NT-320

NT-330

NT-345

EN-208

EN-214

Eb-202

Eb-203

Eb-205

Vm

5.97

2.44

1.85

1.69

7.27

5.37

4.77

3.63

7.27

7.22

4.77

4.63

2.67

4.77

5.50

5.10

5.16

6.87

6.72

5.97

3.17

3.14

2.44

6.72

Percent Continuous/volt

Scaled Torque Command

Output (default))

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

30

RPM /volt Scaled Velocity

Command Output (default))

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

600

236

FM-4 Programming Module Reference Manual

Diagnostics and Troubleshooting

Diagnostic Display

The diagnostic segment display on the front of the drive shows drive status, FM-4 module status, and fault codes. When a fault condition occurs, the drive will display the fault code, overriding the status code. The alphanumeric display on the FM-

4 module provides additional fault information.

The decimal point is “On” when the drive is enabled, and the stop input is not active. This indicates that the drive is ready to run and any motion command will cause motion. Motion commands will not cause motion unless you are Ready (R) and the decimal point is “On”.

Status Codes

Display Indication Status Description FM-4 Keypad Display

Ready

Disabled

The FM-4 and drive system is functioning normally and is ready to execute a motion command.

Power Stage is disabled.

Drive Type Address

Motor Type

Menu Groups

Brake Engaged (Output "Off")

Motor brake is mechanically engaged. This character will only appear if the Brake output function is assigned to an output line.

See Brake Operation section for detailed description of Brake Output function.

Drive Type Address

Motor Type

Menu Groups

Drive Type Address

Motor Type

Menu Groups

RMS Foldback

Stall Foldback

(EN drive only)

Ready to Run

Motor torque is limited to 80 percent.

Drive enabled. No stop input.

Drive Type Address

Motor Type

Menu Groups

Drive output current is limited to 80 percent of drive stall current.

Drive Type Address

Motor Type

Menu Groups

Drive Type Address

Motor Type

Menu Groups

Homing

Indexing

Decelerating from Stop

Jogging

Program

Home is executing.

Program is executing.

Drive Type Address

Motor Type

Menu Groups

Index is executing.

Jog is executing.

Drive Type Address

Motor Type

Menu Groups

Deceleration ramp after the Stop function is activated. The ramp is displayed while decelerating, and the display will go back to normal after completing the decel ramp.

Drive Type Address

Motor Type

Menu Groups

Drive Type Address

Motor Type

Menu Groups

Drive Type Address

Motor Type

Menu Groups

237

FM-4 Programming Module Reference Manual

Fault Codes

A number of diagnostic and fault detection circuits are incorporated to protect the drive. Some faults, such as High DC Bus and Motor Over Temperature can be reset with the Reset button on the front of the drive or the Reset input function. Other faults, such as Encoder Faults, can only be reset by cycling power “Off” (wait until the diagnostics display turns “Off”), then power “On”.

The drive accurately tracks motor position during fault conditions. For example, if there is a Low DC Bus fault where the power stage is disabled, the drive will continue to track the motor’s position provided the logic power is not interrupted.

The +/- Travel Limit faults are automatically cleared when the fault condition is removed.

Segment Display Fault Action to Reset Bridge Disabled FM-4 Keypad Display

Flash Invalid Reprogram the FM’s Flash Yes

Drive or Module

Power Up Test

Drive or Module

NVM Invalid

Invalid Configuration

Cycle Power

Reset Button or Input Line

Reset Button or Input Line

Yes

Yes

Yes

DvPwrUp or

FmPwrUp

DvInvNVM or

FmInvNVM

Inv Cfg

Power Module

High DC Bus

Low DC Bus

Encoder State

Encoder Hardware

Motor Overtemp

RMS Shunt Power

Overspeed

Reset Button or Input Line Yes DvPwr Mod

Reset Button or Input Line Yes Hi Bus

Reset Button or Input Line Yes Low Bus

Cycle Power Yes Enc St

Cycle Power Yes Enc HW

Reset Button or Input Line Yes Mtr Tmp

Reset Button or Input Line Yes Shnt Pw

Reset Button or Input Line Yes Overspd

238

Segment Display Fault

Max Following Error

Diagnostics and Troubleshooting

Action to Reset Bridge Disabled FM-4 Keypad Display

Reset Button or Input Line Yes Flw Err

Travel Limit +/- Auto No

Trav (-)

Trav (+)

All "On"

FM-4

Normally on for one second during power up

Yes

Reset Button or Input Line

Dependent on

Fault

** Fault **

<Fault Description>

DeviceNet or Profibus

(FM-4DN and FM-4PB only)

Dependant on Fault

Dependent on

Fault

**Fault**

<Fault Description>

Drive Overtemp

(MDS only)

Allow drive to cool down,

Cycle Logic Power

Yes DvOvrTmp

Fault Descriptions

Flash Invalid

This fault indicates that the firmware checksum has failed. Use the Tools Program Flash menu item from PowerTools to reprogram/upgrade the firmware stored in flash memory. If this problem persists, call Control Techniques. A common cause would be an interrupted F/W Flash upgrade (cable disconnected during an upgrade process).

Power Up Test

This fault indicates that the power-up self-test has failed. This fault cannot be reset with the reset command or reset button.

NVM Invalid

At power-up the drive tests the integrity of the non-volatile memory. This fault is generated if the contents of the non-volatile memory are invalid.

Invalid Configuration

The FM was not on this drive during its previous power-up and it is not known if the setup data in the FM matches the drive and motor to which the FM is now attached.

This can also happen when a FM is removed from a drive and the drive is powered-up.

To reset the fault, create or open a configuration file with the correct drive and motor selections and download the configuration to the FM or drive. If you are certain that the setup data in the FM or drive matches the system configuration, press and hold the drive’s Reset button for 10 seconds (until the fault is cleared).

Drive instability and resultant property damage may occur to the drive, motor or both if the fault is cleared using the Reset button when the setup data in the FM does not match the current drive and motor.

239

FM-4 Programming Module Reference Manual

Power Module

This fault is generated when a power stage over-temperature, over-current or loss of power stage logic supply occurs. This can be the result of a motor short to ground, a short in the motor windings, a motor cable short or the failure of a switching transistor.

It can also occur if the drive enable input is cycled "Off" and "On" rapidly (>10 Hz).

High DC Bus

This fault will occur whenever the voltage on the DC bus exceeds 440 VDC. The most likely cause of this fault would be an open shunt fuse, a high AC line condition or an application that requires an external shunt (that is, a large load with rapid deceleration).

Low DC Bus

This fault will occur whenever the voltage on the DC bus drops below 96 volts. The most likely cause of this fault is a reduction (or loss) of AC power. A 50 ms debounce time is used with this fault to avoid faults caused by intermittent power disruption.

Encoder State

Certain encoder states and state transitions are invalid and will cause the drive to report an encoder state fault. This is usually the result of noisy encoder feedback caused by poor shielding.

Encoder Hardware

If any pair of encoder lines are in the same state, an encoder line fault is generated. The most likely cause is a missing or bad encoder connection.

Motor Overtemp

This fault is generated when the motor thermal switch is open due to motor over-temperature or incorrect wiring.

RMS Shunt Power

This fault is generated when RMS shunt power dissipation is greater than the design rating of the internal shunt.

Overspeed

This fault occurs when the actual motor speed exceeds the Overspeed Velocity Limit parameter. This parameter can be accessed with PowerTools Pro software.

Max Following Error

This fault is generated when the following error exceeds the following error limit (default following error limit is .2 revs).

With PowerTools Pro you can change the Following Error Limit value on disable in the Position view.

Travel Limit +/-

This fault is caused when either the + or - Travel Limit input function is active.

All "On"

This is a normal condition during power up of the drive. It will last for less than 1 second. If this display persists, call Control

Techniques for service advice.

240

Diagnostics and Troubleshooting

FM-4 Fault

A 4 will be displayed on the diagnostic segment display on the drive when the FM-4 module experiences one of the following faults.

DvTrjFlt

This fault occurs when the drive has received trajectory data from the FM module that indicates a problem or drive following error is extremely large. Check the user units, velocities, accels and decels for correct values.

No Prog

This fault will be displayed on initial power-up indicating that no configuration has been downloaded to the FM module. To clear the fault, download a valid configuration to the FM module.

DrvSyn

This fault occurs when the drive loses timing with the attached FM-4. This issue is generally caused by either a trajectory update rate that is too low (800 or 1200usec), or a processor heavy program causes the program functions to overrun the trajectory update interrupt.

Prog Flt

This fault indicates a FM-4 user program fault. For example the program is attempting to divide by zero, or overflows and math errors caused by numbers that are too large, or non-existing parameters.

Program Invalid

The user program in flash memory will not run. Download the user program again using PowerTools Pro. A common cause of this problem could be an interrupted configuration download, such as a cable being disconnected during the download.

DeviceNet or Profibus Fault

This fault indicates a failure in the DeviceNet or Profibus network. This fault could be caused by a major unrecoverable, minor unrecoverable, or major recoverable. Major faults disable the bridge; minor faults do not disable the bridge and will clear themselves after a timed period. The particular error will be displayed on the FM-4 module keypad display, examples shown below.

Cn Tmout

A connection time-out occurs when a FM-4DN or any other device on the network does not receive a packet of information that it was expecting. Connection time-out faults are self-resetting unless ten are received in a row causing a buss-off condition.

BusOff

This fault occurs when the FM-4DN experiences ten connection time-outs in a row. This situation forces a bus-off fault that is resettable only by cycling logic power on the FM-4DN. Bus-offs are generally caused by either DeviceNet wiring issues, or devices with different baud rate settings residing on the same network.

DupMacID

This fault occurs when the FM-4DN's MacID is the same as another MacID on the network. Logic power must be cycled or an appended program downloaded via PowerTools Pro to the FM-4DN.

Drive Over Temp

This fault is for the MDS only and is generated when the drive thermal switch is open due to drive over-temperature. Check temperature in the enclosure and drive sizing.

241

FM-4 Programming Module Reference Manual

Drive Faults

The Active Drive Faults dialog box is automatically displayed whenever a fault occurs. There are two options in this dialog box: Reset Faults and Ignore Faults.

Resetting Faults

Some drive faults are automatically reset when the fault condition is cleared. Others require drive power to be cycled or the drive to be “rebooted” to be cleared. If you wish to continue working in the PowerTools Pro software without resetting the fault, click the Ignore Fault button.

To reset faults that can be reset with the Reset Faults button, simply click the Reset Faults button in the Drive Faults Detected dialog box or push the Reset button on the front of the drive where the fault occurred.

Viewing Active Drive Faults

To view all active drive faults, select the View Faults command from the Device menu. The dialog box displayed is the same as Active Drive Faults dialog box described above.

Rebooting the Drive

To reboot the drive, cycle power or select Reboot Drive from the Device menu. This command reboots the drive attached to the active Configuration Window.

Error Messages

PowerTools Pro will pop-up an error message box to alert the user to any errors it encounters. These message boxes will describe the error and offer a possible solution.

The terms below appear in a list of common problems you might encounter when working with PowerTools Pro software along with the error message displayed, the most likely cause and solution.

Assign

means to set a value using an equation. For example, x = 2, you are assigning the value of 2 to x.

A Boolean value is a value that represents two states such as On or Off. In the FM-4 there are three variable types that have

Boolean values. They are Boolean Variables, Input Event Variables and Output Event Variables. They all have a Boolean

Value and can be used in equations to assign their Boolean value to another variable or in a conditional test.

In an equation, conditional tests such as (vel > 3.1) become Boolean values.

In FM-4 Programming, unquoted text names are used to represent Boolean constants. Several different names are available.

They all represent the two Boolean states and therefore are interchangeable.

An Expression is a collection of mathematical operands (variables, constants and numbers) and operators( +, -, *, <, >, etc.) that form a value. The right hand side of an equation (to the right of the =) is an expression.

The Parser is an internal component of PowerTools Pro software that reads your program text file and generates executable code used by the FM4 Module firmware. The parser detects errors that are reported to you as Red Dot Error Messages.

Program errors are displayed in the program view in Red Dot Error Messages. They are indicated with red dots. To get further information on the cause of the error, use the program toolbar RedDot Help button. This is an on/off setting that enables error message displays and application help messages.

Non-Programming Error Messages

These messages occur while you are working in a view other than the Program view. The Program view has error messages specific to it, and they are described in a Programming Error Messages section. The popup messages are listed below.

Can Not Add Index, until current is valid.,

Can Not Add Jog, until current is valid.,

Can Not Add Program, until current is valid.

The current view must be valid before you can create a new instance of Index, Jog or Home.

Error: The maximum limit of Instances is reached.

The number of Index instances, Jog Instances and Home Instances is limited. If you attempt to add an instance and the number of existing instances is at the maximum, you will get this message.

242

Diagnostics and Troubleshooting

Programming Error Messages

These Red Dot Error messages occur while you are working in the Program view.

When creating a program, the parser is executed when you left mouse click, when you arrow off the current Line, when you enter the carriage return, when you paste or when you drop a drag source. The parser detects errors and marks the line with a “Red Dot”. To get further information on the cause of the error, use the program toolbar Red Dot Help button. This is an on/off setting that enables error message displays and application help messages.

Problem/Message

Your Application is not valid to download ...

Your Application has ...

A FM-4/FM-4 number’s decimal

Point resolution can not be greater than ten

Cause

There are errors such as “Red Dot” errors in one or more programs that prevent the program from being downloaded to the module.

There are errors such as “Red Dot” errors in one or more programs. The operation (i.e. file save) was completed, however other operations such as download would fail for this application.

The FM-4/FM-4 does not use standard floating point. It uses Integer arithmetic to prevent round off errors. Decimals are used, but decimal point position is handled separately from the integer value. Zero puts the decimal point to the far right.

Ten puts the decimal point at the far left.

A FM-4/FM-4 number’s mantissa must be between -2147483647 and

2147483647

A numeric variable can only be assigned a numeric value

A string variable can only be assigned a quoted text string

Can only compare(>,<,etc) numeric results

The mantissa must be between -2147483648 and

214748364.

The Variable is a numeric. It only accepts types consisting of numeric values.

The Variable is string. It only accepts types consisting of text strings.

This message occurs in conditional Expressions

(i.e. If then). Variables are type identified, so equation and assignments (x = 9) can be verified.

In an expression only numerical values can be compared for greater than and less than conditions.

See message.

Could not find the variable

Could not find the variable defined by program text

Destination Event variables can only be assigned an Event or

Boolean

See message.

The Variable is an Input event. It only accepts types consisting of Boolean, and events.

Program Instance does not Exist

Single value expressions can only be Boolean constants, Events or

Boolean variables

String does not represent a predefined name...

String is not a selection

Syntax error encountered

Text Strings are limited to 12 characters...

The Boolean variables can only be assigned an Event or Boolean value

The destination variable does not accept Data

The destination variable does not accept negative numbers

The destination variable is Read

Only

The destination variable only accepts a numeric value

You attempted the “Call Program.#”, but the program does not exist.

This message occurs in conditional Expressions

(i.e. If then). Variables are type identified, so equation and assignments .(x = 9) can be verified.

The string needs to match one of the defined strings on record in the FM-4 Registry data base.

The string matches one of the defined strings, but that string is not a selection.

Parser Error Message. The Parser can not understand your text sequence.

To change a Name you assign a quoted text string to that name. In FM-4/FM-4, text strings are fixed at 12 characters. If you use fewer than 12 characters, blanks are automatically inserted. An error occurs if you attempt to use more than 12 characters.

The Variable only accepts types consisting of

Boolean, and events.

The Variable’s internal data type attribute was not found.

You attempted to assign a negative number to an unassigned variable .

This message occurs when trying to assign a value to a read only variable.

See message.

Solution

The message will provide more information such as which program is invalid to help the user correct the problem.

The message will provide more information such as which program is invalid to help the user correct the problem.

The decimal point position must be between zero and ten.

The decimal point position must be between zero and ten.

In an expression you can use single variables without a comparison, but , then they must be a Boolean constants,

Events or Boolean variable.

243

FM-4 Programming Module Reference Manual

Problem/Message

The destination variable only accepts a Boolean or Event value

The destination variable only accepts quoted "text"

The destination variable only accepts selection text

The destination variable's resolution is less than the resolution of the number

The number is outside the range of the destination variable

The mix of variable or expressions types can not be added or subtracted

The mix of variable or expressions types can not be compared(=)

The mix of variable or expression types can not be multiplied or divided

The Source Event- <variable name> can only be assigned <max number> times

The Selection variable can only be assigned a Selection value

This instance does not exist

This is not a fully qualified variable

This variable cannot be assigned a selection value

This variable type cannot be assigned a value

The selection is not valid for this variable

Trying to assign a selection variable with bad selection data

Cause

See message.

See message.

See message.

You attempted to assign a number with a greater resolution of decimal points than the variable will accept (i.e. index.0.vel = 2.34567).

You attempted to assign a number that is outside the variable’s range.

This message occurs in equations. Variables are type identified, so equation and assignments (x = 9) can be verified. In an equation only numerical values can be multiplied or divided. Booleans,

Selections, text and events can not be added.

This message occurs in conditional Expressions

(i.e. If then). Variables are type identified, so equation and assignments (x = 9) can be verified.

In an expression numerical, Boolean and event values can be compared for equality conditions.

Selections and text can not be used.

This message occurs in equations. Variables are type identified, so equation and assignments (x = 9) can be verified. In an equation only numerical values can be multiplied or divided. Booleans,

Selections, text and events can not be compared.

The limits to Source Event assignments are the number of destinations assigned to a single Output event is limited. Generally this is three. For

Selections it is one. The Waitfor Instruction temporarily assigns its Output Event Operands.

This is subject to the assignment limitations.

The destination variable only accepts selection values. Selection values are fixed unquoted text.

The selection text must exactly match the available selections of the Destination variable.

This variable is referencing an instance that has not been created in your application. For example

“Index.9.vel” the instance 9 of index has not been defined.

To use a variable it must be fully defined. Some variables are global variables and only the name is defined. Other Variables require a name.name convention. Other variables require an instance number (index.1.vel). All the components identifying the variable must be available to qualify the variable.

The variable that you are attempting to define with a selection does not accept selection values.

The Variable is of a type that does not accept any assignments. A Source Event variable is an example. You can not assign a value to an output event.

The variable that you are attempting to define with a selection does accept selection values. However the selection you are attempting to use is not accepted by this variable.

When checking to see if the selection goes with the destination variable, the source is not a defined selection for the destination variable.

Solution

The User Units setup will allow you to define the desired decimal point resolution.

To determine the range comment out this instruction and use the red dot help on the variable.

To use an Output Event in a Waitfor instruction, there must be at least one free assignment.

Online Status Indicators

Watch Window

PowerTools Pro contains a diagnostic utility called the Watch Window. The Watch Window can be used while PowerTools

Pro is running and the PC is online with the FM-4 module. The Watch Window allows the user to monitor the status of all

the desired system parameters in one location. An example of the Watch Window is found in Figure 173 below.

244

Diagnostics and Troubleshooting

To setup the Watch Window, select Tools\Watch Window from the PowerTools Pro menu. If not online with the module,

Watch Window will be unavailable on the menu. Upon selecting Watch Window, the following window will appear.

Figure 173: Watch Window

The Select Drive Parameters window as seen in Figure 174 allows the user to specify which parameters are to be seen in the

Watch Window. To select a parameter for the Watch Window, simple click once on the parameter and it will be added to the

Watch Window. The parameters already in the Watch Window will be highlighted in the Select Drive Parameters window.

Figure 174: Select Drive Parameters Dialog Box

Once a parameter is added to the Watch Window, its current value or state is constantly monitored. If a parameter in the window changes value or state, it will change to a red color. It will remain red until it hasn’t changed for a period of 4 seconds.

After 4 seconds, the parameter will turn back to black in color. This allows the user to see what has changed recently without looking directly at every parameter.

The following are descriptions of the buttons and controls on the Select Drive Parameters window:

Clear All

By clicking on the Clear All button, all of the parameters in the Watch Window will be erased.

Save Selections

By clicking on Save Selections, the user can save the specific parameters that have been added to the Watch Window. Once the selections have been saved, the Restore Selections button can be used to monitor all the same parameters the next time the user opens the Watch Window. Therefore, if there is a list of helpful diagnostic parameters the user wishes to see when online, those specific parameters can be saved and recalled in the Watch Window at any time. The settings are saved in a file named “fm4watch.wch”.

Restore Selections

By clicking on the Restore Selections button, the Watch Window will be filled with the list of parameters that were last saved using the Save Selections button.

245

FM-4 Programming Module Reference Manual

Select Defaults

The Select Defaults button adds the most commonly used parameters to the Watch Window.

Select I/O

The Select I/O button will add the Drive and Module digital inputs and outputs to the Watch Window.

Close

The Close button will close the Select Drive Parameters window, while the Watch Window will remain open.

Help

The help button will give associated help on the Watch Window setup.

User Level

The User Level setting is a filter for the parameters that are seen in the Select Drive Parameters list. If set to Easy, the parameters used in most basic applications will be seen while the more advanced parameters are hidden. If set to Detailed, the parameters used in more advanced applications will be added to the list. If set to Too Much, then all parameters available in the system will be seen in the list. This allows the user to select the User Level they are most comfortable with to avoid confusion. If a parameter has been selected and the User Level is changed, then the selected parameter will remain selected.

Group

The Group setting allows the user to filter the parameters that are displayed in the Select Drive Parameters window by group.

The Group defaults to “ALL” so that parameters from all groups are seen. If the user wishes to only see those parameters from a specific group, the click on the Group list box and select the group of parameters they wish to see.

Global Where Am I Button

The Program View, when online and executing a program or sequence of programs, can display current program status.

Pressing the Where Am I button on the PowerTools Pro toolbar creates a blue triangle that appears on the line of the program currently being executed.

The Global Where Am I can be used for diagnostics. When the user needs to know where in a complicated program the drive is or when the user wishes to follow the logical flow of the program.

Motion Status

While the drive is online, the name of the program currently running or the motion type currently running will appear in the status bar at the bottom left corner of the PowerTools Pro window.

246

Diagnostics and Troubleshooting

Diagnostic Analog Output Test Points

The drive has two 10 bit Analog Outputs which may be used for diagnostics, monitoring or control purposed. These outputs are referred to as Channel 1 and Channel 2. They can be accessed form the command connector on the drive or from the diagnostic output pins located on the front of the drive. The Analog output source is assigned to the outputs on the Analog

Outputs view.

Channel #2

Analog GND

RESET

10-3 0

VD C

-

RESET

EN Drive

MDS Drive Module

Figure 175: Diagnostic Output Test Points

The DGNE cable was designed to be use with either an oscilloscope or a meter. The wires are different lengths to avoid shorting to each other. However, if signals do get shorted to GND, the drive will not be damaged because the circuitry is protected.

247

FM-4 Programming Module Reference Manual

Yellow

DGNE Cable

Black

(GND)

Blue

D/A

D/A

10 Ohm

DGNE Cable

10 Ohm

Command

Connector (J5)

Figure 176: Diagnostic Cable (DGNE) Diagram

248

FM-4 Programming Module Reference Manual

Specifications

Power consumption: 3 W from drive power supply.

I/O Supply Voltage: 10 Vdc-30 Vdc.

Function

Inputs

Outputs

ON State Voltage

ON State Current

OFF State Voltage

OFF State Current

Max. ON State Voltage

Max. ON State Current

Max. OFF State Current

Dimensions and Clearances

2.5

(63.5)

Electrical Characteristics

10 Vdc-30 Vdc

2 mA-6.5 mA

0 Vdc-3 Vdc

0 µA-400 µA

I/O Supply Voltage -1.5 V

150 mA

100 µA

1.25

(31.75)

7.187

(182.5)

Programming Module

485 +

485 -

SHLD

7

8

4

5

6

1

2

3

4

+

-

1

2

3

249

FM-4 Programming Module Reference Manual

250

AX4-CEN

CDRO

Cable Diagrams

SCSLD-x

Encoder

EN Drive w/ FM-3

EN Drive w/ FM-3

EN Drive

EN Drive w/ FM-3

EN Drive w/ FM-3

EN Drive w/ FM-3

Specifications

251

FM-4 Programming Module Reference Manual

SNCE-XXX Cable

Pin 1

SNCDD-001.5 Cable

A+

A-

Z-

+5 Vdc

GND

B+

B-

Z+

3

5

6

7

1

2

4

8

RED/WHT

YEL/WHT

BLU/WHT

BLK/WHT

YEL

BLU

RED

BLK

DRAIN WIRE

P

P

P

P

B

I

C

J

A

H

D

F

A+

A-

B+

B-

Z+

Z-

+5 Vdc

GND

+A

-A

+B

-B

+Z

-Z

GND

+5 Vdc

1

2

3

5

6

7

8

4

3

1

2

4

5

6

7

8

CONNECTOR END VIEW

Pin

BLK

BRN

RED

ORG

YEL

GRN

BLU

VIO

DRAIN WIRE

P

P

P

P

1

2

3

5

6

7

8

4

Pin removed

3

1

2

4

5

Completely remove pin 4

6

7

8

CONNECTOR END VIEW

Pin

252

SNCO-003 Cable

SNCI-003 Cable

+A

-A

+B

-B

+Z

-Z

GND

Pin removed

1

2

3

5

6

7

8

4

BLK

BRN

RED

ORG

YEL

GRN

BLU

VIO

DRAIN WIRE

P

P

P

P

Pin 1

1

2

3

5

6

7

8

4

+Z

-Z

GND

+5 Vdc

+A

-A

+B

-B

3

5

1

2

8

4

6

7

BLK

BRN

RED

ORG

YEL

GRN

BLU

VIO

DRAIN WIRE

P

P

P

P

Pin 1

.68 MAX.

2.00 MAX.

3

5

1

2

8

4

6

7

Specifications

253

FM-4 Programming Module Reference Manual

SNCLI-003 Cable

+A

-A

+B

-B

+Z

-Z

GND

+5 Vdc

6

7

3

5

8

4

1

2

3

1

2

4

5

BLK

BRN

RED

ORG

YEL

GRN

BLU

VIO

DRAIN WIRE

P

P

P

P

254

Specifications

CMDX-XXX Cable

Pin 1

Pin 1

18

19

23

24

12

16

17

4

6

21

8

9

11

32

33

31

37

38

40

26

14

25

39

27

41

34

43

44

20

36

15

29

28

1

2

3

Note: Inner foil shields are already mechanical connected to outer braid shield by raw cable manufacture.

RED/BLK

PUR/GRN

GRN/PUR

YEL/BLU

BLU/YEL

YEL/BRN

BRN/YEL

PUR/BRN

BRN/PUR

PUR/GRY

GRY/PUR

WHT/BLU

BLU/WHT

BLU/RED

BLK/GRN

GRN/BLK

BLK/BRN

BRN/BLK

PUR/ORG

ORG/PUR

BLK/RED

RED/BRN

BRN/RED

BLK/BLU

BLU/BLK

WHT/ORG

ORG/WHT

PUR/BLU

BLU/PUR

RED/BLU

WHT/RED

RED/WHT

WHT/GRN

GRN/WHT

YEL/GRY

GRY/YEL

Drain Wires

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

1

2

3

40

26

14

15

29

28

43

44

20

36

33

31

37

38

27

41

34

32

11

12

16

17

18

19

23

24

25

39

4

6

21

8

9

Input I/O 1

Input I/O 2

Input I/O 3

Input I/O 4

RS-485+

RS-485-

Some early shipments of this cable have WHT/YEL on pin 6 wire and YEL/WHT on pin 21.

Motor Encoder Output A

Motor Encoder Output A/

Ext Encoder 200mA max +5V

Ext Encoder 200mA max Common

Drive Enable Input

Output I/O 3

Output I/O 2

Output I/O 1

Motor Encoder Output B

Motor Encoder Output B/

Sync Encoder Input Z

Sync Encoder Input Z/

Sync Encoder Input A

Sync Encoder Input A/

24V I/O

OV I/O

24V I/O

OV I/O

Motor Encoder Output Z

Motor Encoder Output Z/

Sync Encoder Input B/

Sync Encoder Input B

Command Input-

Command Input+

Analog out AG 1 and 2

ENV+

Analog out 1+

Analog out 2+

Not Used

Not Used

Note

Some CMDX cables may have White/Yellow and Yellow/White wires in place of the White/Orange and Orange/White shown in the figure above (pins 6 and 21).

255

FM-4 Programming Module Reference Manual

CMDO-XXX Cable

Pin 1

Note: Inner foil shields are already mechanical connected to outer braid shield by raw cable manufacture.

RED/BRN

BRN/RED

ORG/PUR

BLK/RED

RED/BLK

PUR/GRN

GRN/PUR

YEL/BLU

BLU/YEL

YEL/BRN

BRN/YEL

PUR/BRN

BRN/PUR

PUR/GRY

GRY/PUR

WHT/BLU

BLU/WHT

BLK/BLU

BLU/BLK

WHT/ORG

ORG/WHT

PUR/BLU

BLU/PUR

RED/BLU

BLU/RED

BLK/GRN

GRN/BLK

BLK/BRN

BRN/BLK

PUR/ORG

WHT/RED

RED/WHT

WHT/GRN

GRN/WHT

YEL/GRY

GRY/YEL

Drain Wires

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

1

2

3

Input I/O 1

Input I/O 2

4

6

21

Input I/O 3

Input I/O 4

RS-485+

RS-485-

Some early shipments of this cable have WHT/YEL on pin 6 wire and YEL/WHT on pin 21.

8

9

11

12

Motor Encoder Output A

Motor Encoder Output A/

Ext Encoder 200mA max +5V

16

17

18

Ext Encoder 200mA max Common

Drive Enable Input

Output I/O 3

Output I/O 2

38

40

26

14

19

23

24

25

39

Output I/O 1

Motor Encoder Output B

Motor Encoder Output B/

Sync Encoder Input Z

Sync Encoder Input Z/

27

41

34

32

Sync Encoder Input A

Sync Encoder Input A/

24V I/O

OV I/O

24V I/O

33

31

37

OV I/O

Motor Encoder Output Z

Motor Encoder Output Z/

Sync Encoder Input B/

Sync Encoder Input B

Command Input-

15

29

Command Input+

Analog out AG 1 and 2

28

43

ENV+

Analog out 1+

44

20

Analog out 2+

36

Not Used

Not Used

Note

Some CMDO cables may have White/Yellow and Yellow/White wires in place of the White/Orange and Orange/White shown in the figure above (pins 6 and 21).

256

CDRO-XXX Cable

Pin 1

Encoder Output A/

9

Encoder Output A

8

Encoder Output B/

24

Encoder Output B

23

Encoder Output Z/

38

Encoder Output Z

37

Encoder +5VDC Supply

11

Encoder Supply Common

12

I/O Supply+

34

Drive Enable Input

Analog Command Input -

16

14

Analog Command Input +

Diagnostic Output Common

15

29

N/C

Input #4

Output #1

Pulse Input B

Pulse Input B/

Output #2

Output #3

I/O Common -

I/O Supply +

Diagnostic Output 1

Diagnostic Output 2

Pulse Input A/

Pulse Input A

4

19

26

40

18

17

31

33

43

44

41

27

N/C

P

P

P

P

P

P

P

P

P

P

P

P

P

BLU/PUR

PUR/BLU

ORG/PUR

PUR/ORG

BRN/PUR

PUR/BRN

RED/BLU

BLU/RED

GRN/BLK

BLK/GRN

WHT/BLU

BLU/WHT

WHT/RED

RED/WHT

GRY/YEL

YEL/GRY

GRY/PUR

PUR/GRY

BLK/BRN

BRN/BLK

BRN/YEL

YEL/BRN

WHT/GRN

GRN/WHT

GRN/PUR

PUR/GRN

Drain Wire

N/C

Specifications

257

FM-4 Programming Module Reference Manual

TIA-XXX Cable

Pin 1

(Typ) .63"

(Typ) 2 1/2"

DDS-XXX Cable

5

2

3

BLK

WHT

BLU

9

6

7

1

8

3

4

5

2

DB-9 FEMALE

P2

SHELL

DRAIN

WIRE

BLACK

WHITE

BLUE

P3

DB-9 MALE

5

2

3

4

9

GND

485+

485-

9

6

7

1

8

3

4

5

2

DB-9 MALE

P1

GND

RX

TX

485+

485-

Pin 1

5

3

2

258

Specifications

TERM-H (Head) Terminator

TERM-T (Tail) Terminator

Note

See the "Multi-drop Communications" section for resistor values.

259

FM-4 Programming Module Reference Manual

CMDS-XXX Cable

1 1/2" MAX.

3 3/4" MAX.

PE/GND

R

S

T

D

A

B

C

CMMS-XXX Cable

BRAID SHIELD

GRN/YEL

BRN

BLK

BLU

FORM WIRE

1 1/2" MAX.

PE/GND

R

S

T

D

A

B

C

BRAID SHIELD

GRN/YEL

BRN

BLK

BLU

FORM WIRE

260

Specifications

CFCS-XXX Cable

1 1/2" MAX.

3 3/4" MAX.

W/

+5 VDC

GND

MOTOR OVERTEMP

NOT USED

B/

Z

Z/

U

U/

V

V/

W

A

A/

B

E

S

G

R

F

M

U

B

C

N

P

H

K

T

A

V

Z

BLU

ORN

GRN

BRN

BLK

YEL

WHT/BRN

BRN/WHT

WHT/GRY

GRY/WHT

RED/ORG

ORG/RED

RED/BLU

BLU/RED

RED/GRN

GRN/RED

P

P

P

P

P

P

P

P

Pin 1

11

3

12

4

13

5

14

6

1

10

2

15

7

17

9

16

Z

Z/

U

A

A/

B

B/

U/

V

V/

W

W/

+5 Vdc

GND

MOTOR OVERTEMP

NOT USED

261

FM-4 Programming Module Reference Manual

CFCO-XXX Cable

Pin 1

W/

+5 Vdc

GND

MOTOR OVERTEMP

NOT USED

A

A/

B

B/

Z

Z/

U

U/

V

V/

W

1

10

2

11

3

12

4

13

5

14

6

15

7

17

9

16

BLU

ORN

GRN

BRN

BLK

YEL

WHT/BRN

BRN/WHT

WHT/GRY

GRY/WHT

RED/ORG

ORG/RED

RED/BLU

BLU/RED

RED/GRN

GRN/RED

P

P

P

P

P

P

P

P

262

CFOS-XXX Cable

1 1/2" MAX.

3 3/4" MAX.

W/

+5 Vdc

GND

MOTOR OVERTEMP

NOT USED

Z

Z/

U

U/

V

V/

W

A

A/

B

B/

P

M

U

B

C

N

S

G

E

R

F

T

A

V

Z

H

K

BLU

ORN

GRN

BRN

BLK

YEL

WHT/BRN

BRN/WHT

WHT/GRY

GRY/WHT

RED/ORG

ORG/RED

RED/BLU

BLU/RED

RED/GRN

GRN/RED

P

P

P

P

P

P

P

P

Specifications

263

FM-4 Programming Module Reference Manual

264

FM-4 Programming Module Reference Manual

Glossary

µs

Microsecond, which is 0.000001 seconds.

A

Amps.

Amplifier

Servo Drive.

ARMS

Amps Root Mean Squared (RMS).

Axis

The full system to control in a single motor shaft. A single FM-4 module with EN Drive can denote an axis.

AWG

American Wire Gauge.

Baud Rate

The number of binary bits transmitted per second on a serial communications link such as RS-232. (1 character is usually 10 bits.)

Check Box

In a dialog box, a check box is a small box that the user can turn “On” or “Off” with the mouse. When “On” it displays an X in a square; when “Off” the square is blank. Unlike option (radio) buttons, check boxes do not affect each other; any check box can be “On” or “Off” independently of all the others.

Complex Motion

A string of multiple motion commands and logical instructions that form a repeatable operation. For the FM-4, the configuration file defines complex motion by setups, functional assignments and programs.

Compound Motion

The combination of indexes in a row in which the deceleration ramp of the first index goes to the velocity of the secondary index. The first index must be initiated within a program (Index.#.CompoundInitiate).

Configuration

The user-created application. It can be saved as a disk file or downloaded to configure the FM-4 module. It includes all the user-defined setup, assignments and programs.

CRC

Cyclical Redundancy Check, the data transfer error checking mechanism.

Destination

A function (i.e., Stop, Preset) that may be assigned to an input line. In FM-4, the input function is connected to the action through click and drag operations in PowerTools Software on the Assignment View.

Dialog Box

A dialog box is a window that appears in order to collect information from the user. When the user has filled in the necessary information, the dialog box disappears.

DIN Rail

Deutsche Industrie Norm Rail

265

FM-4 Programming Module Reference Manual

DLL

In Microsoft® Windows®, a Dynamic Link Library contains a library of machine-language procedures that can be linked to programs as needed at run time.

Downloading

The transfer of a complete set of parameters from an FM to a drive.

Drive

Servo drive or amplifier.

EEPROM

An EEPROM chip is an Electrically Erasable Programmable Read-Only Memory; that is, its contents can be both recorded and erased by electrical signals, but they do not go blank when power is removed.

EMC

Electromagnetic Compatibility. The relative immunity of a drive to the effects of electromagnetic fields.

EMI - Electro-Magnetic Interference

EMI is noise which, when coupled into sensitive electronic circuits, may cause problems.

Firmware

The term firmware refers to software (i.e., computer programs) that are stored in some fixed form, such as read-only memory

(ROM).

Flash

Another type of EEPROM.

Flash File

In the FM-4 module, this file loads the firmware into the drive and function module. Flash files can field upgrade the firmware.

FM

Function Module - device which is attached to the front of the drive to provide additional functionality.

Global Where Am I

PowerTools feature that indicates which line of which user program is executing.

Home Routine

The home provides motion in applications in which the axis must precisely align with some part of a machine.

Hysteresis

For a system with an analog input, the output tends to maintain its current value until the input level changes past the point that set the current output value. The difference in response of a system to an increasing input signal versus a decreasing input signal.

I/O

Input/Output. The reception and transmission of information between control devices. In modern control systems, I/O has two distinct forms: switches, relays, etc., which are in either an on or off state, or analog signals that are continuous in nature generally depicting values for speed, temperature, flow, etc.

Index

An index is a complete motion sequence (defined motion profile) that moves the motor a specific incremental distance or to an absolute position.

266

Glossary

Inertia

The property of an object to resist changes in rotary velocity unless acted upon by an outside force. Higher inertia objects require larger torque to accelerate and decelerate. Inertia is dependent upon the mass and shape of the object.

Input Function

See destination. A function (i.e., Stop, Preset) that may be assigned to an input line. In PowerTools Pro, the input function is connected to the action through click and drag operations in PowerTools Software on the Assignment View.

Input Line

The terminals of a device or circuit to which energy is applied.

Jog

A jog produces rotation of the motor at controlled velocities in a positive or negative direction.

Least Significant Bit

The bit in a binary number that is the least important or having the least weight.

LED

Light Emitting Diode used on the front display of drives and function modules.

List Box

In a dialog box, a list box is an area in which the user can choose among a list of items, such as files, directories, printers or the like.

mA

Milliamp, which is 1/1000th of an Ampere.

MB

Mega-byte.

MODBUS

Communication Protocol by Modicon. The drives follows the Modbus specification outlined in the Modicon Modbus

Protocol Reference Manual, PI-MBNS-300 Revision G, November 1994.

Module

Function Module

Most Significant Bit

The bit in a binary number that is the most important or that has the most weight.

ms

Millisecond, which is 1/1000th of a second.

NVM

Non-Volatile Memory. NVM stores specifically defined variables as the variables dynamically change. It is used to store changes through a power loss.

NTC

Negative Temperature Resistor

Option Button

See

Radio Button.

267

FM-4 Programming Module Reference Manual

Opto-isolated

A method of sending a signal from one piece of equipment to another without the usual requirement of common ground potentials. The signal is transmitted optically with a light source (usually a Light Emitting Diode) and a light sensor (usually a photosensitive transistor). These optical components provide electrical isolation.

Output Function

See source. The terminals at which energy is taken from a circuit or device.

Output Line

The actual transistor or relay controlled output signal.

Parameters

User read only or read/write parameters that indicate and control the drive operation. These variables generally hold numerical data defined in the Setup Views.

PC

Personal Computer.

PE

Protective Earth.

PID

Proportional-Integral-Derivative. An acronym that describes the compensation structure that can be used in many closed-loop systems.

PLC

Programmable Logic Controller. Also known as a programmable controller, these devices are used for machine control and sequencing.

PowerTools Pro

PowerTools Pro is a Windows® based software to interface with the EN or MDS drive with an attached FM-4 or FM-4 module.

Radio Button

Also known as the Option Button. In a dialog box, radio buttons are small circles only one of which can be chosen at a time.

The chosen button is black and the others are white. Choosing any button with the mouse causes all the other buttons in the set to be cleared.

RAM

RAM is an acronym for Random-Access Memory, which is a memory device whereby any location in memory can be found, on average, as quickly as any other location. Commonly refers to Read-Write memory, as opposed to Read-Only Memory

(ROM, EPROM, EEPROM, Flash). RAM is considered volatile, because its contents are lost during a power loss.

RMS

Root Mean Squared. For an intermittent duty cycle application, the RMS is equal to the value of steady state current which would produce the equivalent heating over a long period of time.

ROM

ROM is an acronym for Read-Only Memory. A ROM contains computer instructions that do not need to be changed, such as permanent parts of the operating system.

RPM

Revolutions Per Minute.

268

Glossary

Serial Port

A digital data communications port configured with a minimum number of signal lines. This is achieved by passing binary information signals as a time series of 1’s and Ø’s on a single line.

Source

The terminals at which energy is taken from a circuit or device.

Travel Limit

The distance that is limited by either a travel limit switch or the software.

Torque

The moment of force, a measure of its tendency to produce torsion and rotation about an axis.

Uploading

The transfer of a complete set of parameters from a drive to an FM.

User Units

Ability of program to allow user to specify which type of units will measure and specify motion and time.

Vac

Volts, Alternating Current.

Variable

A labeled value that encompasses numeric boolean, input function, and output functions.

Vdc

Volts, Direct Current.

Velocity

The rate of change in position in a given direction during a certain time interval.

View

Portion of screen within frame.

Windows

®

, Microsoft

®

Microsoft Windows is an operating system that provides a graphical user interface, extended memory and multi-tasking. The screen is divided into windows and the user uses a mouse to start programs and make menu choices.

269

FM-4 Programming Module Reference Manual

270

Symbols

+/- Travel Limit, 240

A

Absolute Indexes, 14

Add Program Icon, 164

Adding a Program, 165

All "On", 240

Analog Output, 242

B

Book Mark, 141

Brake Operation and Wiring, 242

C

Cable Diagrams, 251

CDRO-XXX Cable, 257

CFCO-XXX Cable, 262

CFCS-XXX Cable, 261

CFOS-XXX Cable, 263

Change Path Connection, 19

CMDO-XXX Cable, 256

CMDS-XXX Cable, 260

CMMS-XXX Cable, 260

Correction Indexes, 17

D

DDS-XXX Cable, 258

Delete All Book Marks, 142

Delete Program Icon, 165

Deleting a Program, 165

Diagnostic Display, 237

Digital Inputs and Outputs, 101

Disable Error Check, 143

Do While/Loop, 155

Downloading, 18

Drag In I/O, 142

Drag In Operands, 142

Drag In Variables, 142

Drive Faults, 242

Dwell for Master Dist, 160

Dwell For Time, 160

FM-4 Programming Module Reference Manual

Index

E

Else, 155

Encoder Line Fault, 240

Encoder State, 240

Error Messages, 242

Example Programs, 166

F

Fault Codes, 238

Fault Descriptions, 239

Find, 141

Find Next, 141

Firmware Checksum, 239

Following Error Fault, 240

For Count/Next, 156

G

Gear Stop, 161

Gear.Initate, 161

H

I

High DC Bus Fault, 240

Home.Initiate, 161

If/Then/Endif, 155

Incremental Indexes, 15

Index.CompoundInitiate, 162

Index.Initiate, 161

Installation Notes, 205

Introduction, 1

Invalid Configuration, 239, 241

J

Jog.MinusInitiate, 164

Jog.PlusInitiate, 163

Jog.Stop, 163

271

FM-4 Programming Module Reference Manual

L

Label, 158

Lock Program, 143

Low DC Bus Fault, 240

M

Modbus Communications, 207

Motion Instructions, 160

Motion Modifiers, 164

Motor Over Temperature Fault, 240

N

Next Book Mark, 142

Non-volatile Memory Invalid, 239

O

Over Speed Fault, 240

P

Posn Tracker Indexes, 17

Power Stage Fault, 240

Power-Up Self-Test Failure, 239

Previous Book Mark, 142

Program Instruction Types, 154

Program Toolbar Icons, 141

Program Where Am I?, 143

Programming Error Messages, 243

R

Red Dot Help, 142

Redo Last Change, 141

Registration Index, 16

RMS Shunt Power Fault, 240

Rotary + and Rotary - Indexes, 16

Rotary Indexes, 16

Run Anytime Programs, 165

Run This Program, 143

S

Safety Considerations, vii

Safety of Machinery, vii

Safety Precautions, vii

272

Setup, 34

Setup, Commissioning and Maintenance, vii

status codes

decimal point, 237

Ready, 237

Ready to Run, 237

Stop All, 143

T

TERM-H (Head) Terminator, 259

TERM-T (Tail) Terminator, 259

TIA-XXX Cable, 258

U

Undo Last Change, 141

Upload Drive, 17

Using Last, 164

W

Wait For, 157

Wait For Time, 158

Since 1979, the “Motion Made Easy” products, designed and manufactured in Minnesota U.S.A., are renowned in the motion control industry for their ease of use, reliability and high performance.

For more information about Control Techniques “Motion Made Easy” products and services, call (800) 893-2321 or contact our website at www.emersonct.com.

Control Techniques Drives, Inc

Business Unit of EMERSON Co.

12005 Technology Drive

Eden Prairie, Minnesota 55344

U.S.A.

Customer Service

Phone: (952) 995-8000 or (800) 893-2321

Fax: (952) 995-8129

Technical Support

Phone: (952) 995-8033 or (800) 893-2321

Fax (952) 9995-8020

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

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

Related manuals

Download PDF

advertisement

Table of contents