Schneider Electric A120 KS-Functions User Manual | Manualzz

A120

KS-Functions

User Manual

DOK--279375.20-0399

Translation of the German Description

DOK--271974.20-0791

ii

Notes

Application Note

Caution The relevant regulations must be observed for control applications involving safety requirements.

For reasons of safety and to ensure compliance with documented system data, repairs to components should be performed only by the manufacturer.

Data, Illustrations, Alterations

Data and illustrations are not binding. We reserve the right to alter products in line with our policy of continuous product development. If you have any suggestions for improvements or amendments or have found errors in this publication, please notify us using the form on one of the last pages of this publication.

Training

Schneider Automation offers suitable further training on the system.

Addresses

See addresses for the Technical Support Centers at the end of this publication.

Trademarks

All terms used in this publication to denote Schneider Automation products are trademarks of Schneider Automation.

All other terms used in this publication to denote products may be registered trademarks and/or trademarks of the corresponding Corporations.

Microsoft and MS-DOS are registered trademarks of Microsoft Corporation, Windows is a brandname of Microsoft Corporation in the USA and other countries.

IBM is a registered trademark of International Business Machines Corporation.

Intel is a registered trademark of the Intel Corporation.

Copyright

All rights are reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, including copying, processing or by online file transfer, without permission in writing by Schneider Automation. You are not authorized to translate this document into any other language.

© 1999 Schneider Automation GmbH. All rights reserved

20

20

Terminology

Note This symbol emphasizes very important facts.

Caution This symbol refers to frequently appearing error sources.

Warning This symbol points to sources of danger that may cause financial and health damages or may have other aggravating consequences.

Expert This symbol is used when a more detailed information is given, which is in-

tended exclusively for experts (special training required). Skipping this information does not interfere with understanding the publication and does not restrict standard application of the product.

Path This symbol identifies the use of paths in software menus.

Figures are given in the spelling corresponding to international practice and approved by SI (Système International d‘ Unités).

I.e. a space between the thousands and the usage of a decimal point (e.g.: 12 345.67).

iii

iv

Objectives

This documentation describes a special product feature of the programmable controller

Modicon A120: the Communication Interface-functions (CI-functions). The CI-functions are a special feature of the Modicon A120 arithmetic logical units (ALU’s), which allow the connection of external devices to the programming interface (RS232, all ALU’s) or the communication interface (Modnet 1-port, only ALU202) of the Modicon A120.

The following external devices can connected:

Operating and monitoring devices

Portable hand-held devices

Permanently installed parametrization modules

All kinds of operator panels

Personal Computer (production data aquisition, PDA; visual display systems)

Other intelligent peripheral devices.

The documentation on hand gives all information necessary in order to be able to use the CI-function for individual applications. The main emphasis is the coupling of external devices to the A120-programming port (RS 232 C).

Arrangement of This Guide

Chapter 1

This chapter describes the idea of the CI-functions and the possible solutions on basis of the CI-functions.

Chapter 2

This chapter explains the message interchange, the structure of the messages and the message content: the CI-functions.

Chapter 3

This chapter explains the data exchange between the programmable controller A120 and the periperal, in sequence charts.

Chapter 4

In this chapter some examples about the CI-functions are shown.

20

Validity Note

The functions explained in this documentation are applied to the system software A120.

Validity march 1991.

20

v

vi

20

0594

Supplement to User Manual

A120 KS Functions, DOK--279375.20--0399

KS Functions for Modicon Micro

The KS functions described in the following manual are valid without any restrictions also for Modicon Micro.

KS Functions for Modicon A250 and the A120 central processing units ALU 204/ ALU 205

The KS functions described in the following manual are available from AKF125 version

3.0 also for Modicon A250. The KS functions are available also for the A120 central processing units ALU 204 and ALU 205.

In case of these applications the following deviations in comparison to the application with A120 should be considered (for this compare user manual page 13, Figure 9):

The following A120 system messages do not exist with A250 and ALU204/5: write system definition list write target equipment list start user program in cold restart mode start user program in hot restart mode

Note Modicon A250 and the CPUs ALU204/5 are basically started with the use of

hardware jumpers.

With the following system messages, for the A250 depending on the system a different data format must be used: read system status list read system definition list

Since A250 possesses considerably more interfaces than A120, the declared numbers cannot be accessed freely. This means the user must get a free declaration number from A250 and cannot select it freely (see user manual page 31, chapter

4.4.1.1).

From AKF125 version 4.0 it is possible to read and write floating point values.

As with Modicon A120 and Modicon Micro, we recommend to use the ”single read and write on markers” as the standard method (see user manual page 28, chapter

4.3).

As with Modicon A120 and Modicon Micro it is meaningful to store markers of the same type in a marker chain and to access these as a block (see user manual page

4, Table 1).

A

B

0594

20

Table of Contents

Chapter 1 The KS-Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

1.1

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2

Possible Peripherals

1.3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Additional Possibilities using the KS-Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

2

4

Chapter 2 Display of Message Structure and Timing . . . . . . . . . . . . . . . . . . . . . . . .

5

2.1

Message Interchange

2.1.1

Polling Operation

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.2

The Master-Slave-Communication with Acknowledgement

2.1.3

2.1.4

2.1.5

2.1.6

The Master-Slave-Communication with Information Response

The MasterSlaveCommunication with Error Message

2.2

The Structure of the System Message

2.2.1

The Message Header

2.2.2

Message Types

. . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Structure of the Message Elements

The Message Content

2.2.3

Message Protection

2.3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Communication Time Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

9

7

8

6

7

6

6

9

10

14

16

Chapter 3 Principle Program Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

3.1

How to Keep the Communication Active

3.2

How to Create a System Message

3.3

Analyses of Response Message

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

21

23

Chapter 4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

4.1

General

4.2

4.2.2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Starting and Stopping of the PC-User Program

4.2.1

Starting of the System

Stopping of the System

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.3

Single Read of three Successive Marker Bits

4.4

Multiple Access to declared Data

4.4.1

Structure of a Declaration List

4.4.1.1

4.4.1.2

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

How to read a free declaration number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Declaration of four successive marker bytes for multiple read . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . .

4.4.1.3

Terminate Data Declaration resp. declare Send Condition

4.4.2

Execution of a Declaration List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.4.2.1

Periodic Scanning of a Declaration List

4.5

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Using Timers and Counters

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.4.2.2

Polling while waiting for the Send Bit

4.4.3

Clearing of Declarations

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

30

32

32

32

33

34

28

29

29

29

26

27

27

27

Table of Contents

vii

Figures

Figure 1 Possible Peripherals

Figure 2 Polling Operation

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3 Master-Slave-Communication with Acknowledgement

Figure 4

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Master-Slave-Communication with Information Response . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 5 The Master-Slave-Communication with Error Message

Figure 6 Structure of the System Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 7 Structure of the Message Header

Figure 8

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

The Message Content of the System Message for the Request of the Master . . . . . . .

. . . . . . . . . . . . . .

10

6

7

3

6

7

9

Figure 9 The Message Content of a System Message for a Slave Response

Figure 10

Figure 12

Generation of the Protection Byte ”S”

Figure 11 Timing Diagram Polling Mode

System Message Slave

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 13 Response Message Slave Master

Figure 14 Communication Operation

Figure 15 Creation of System Messages

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 16

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Evaluation of the Response Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 17 System Message: Start of PC-User Program

Figure 18 Response Message of the Modicon A120

Figure 19 System Message: Stop PC-User Program

Figure 20 Response Message Modicon A120

Figure 21

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

System Message for Single Read of Signal-Memory-Data . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 22 Response Message of the Modicon A120

Figure 23 System Message: Read the smallest free Declaration Number

Figure 24 Response Message of the Modicon A120

Figure 25 Declaration of four successive marker bytes

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 26 Response Message of the Modicon A120

Figure 27

Figure 28

End Data Declaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Declare Send Condition

Figure 29 Declare Send Condition

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 30 Response Message of the Modicon A120

Figure 31 Send Data of the Declaration List 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 32 Response Message of the Modicon A120

Figure 33 Cleanse single Declaration List in A120

Figure 34 Clear all Declaration Lists in A120

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

31

31

32

29

30

30

30

32

33

33

28

28

28

29

23

27

27

27

17

18

20

22

11

13

15

16

Tables

Table 1 Operand Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

viii

Table of Contents

20

Chapter 1

The KS-Functions

This chapter describes the idea of the KS-functions and possible solutions or applications.

20

The KS-Functions

1

1.1 Introduction

Mini programmable controllers (PCs) -- like the Modicon A120 -- are used in substantial quantities for machine control purposes and for the control of small applications in the process industry.

Besides the display of message texts and alarms it must be possible to modify setpoint values and other parameters in the programmable controller. Very often color graphic displays of the process are required, process data have to be scanned and stored resp.

processed on a Personal Computer for production data acquisition (PDA). In some cases special sensors -- like bar-code readers -- are connected.

To be able to fulfill these demands, the openness of a programmable controller becomes more and more important. The programmable controller Modicon A120 is therefore designed as an open controller, the KS-functions are part of this concept.

This documentation shall give the necessary background information to the user in order to make this specific product feature easier to understand.

1.2 Possible Peripherals

The name KS-functions defines a feature of the Modicon A120 arithmetic logical controllers (ALUs), which allows the connection of external devices to the programming or the communication interface of the ALUs.

The following peripherals are possible:

Operating- and monitoring devices

Portable handheld-devices

Permanently installed parametrization modules

All kinds of operator panels

Personal Computers (production data acquisition, PDA; visual display system)

Other intelligent peripheral devices.

This documentation includes all information necessary to be able to use the KS-functions for individual applications. The main emphasis in this manual is the connection of devices to the Modicon A120 programming interface (RS 232 C), i.e. as a real point-topoint connection. In principle it is also possible to use the KS-functions via the communication interface (ALU 202). An example for this is the MMI-product Viewstar 200XA for A120.

2

The KS-Functions

20

A120 (Slave )

Figure 1 Possible Peripherals

20

The KS-Functions

3

1.3 Additional Possibilities using the KS-Functions

Using the KS-functions the peripherals can be used for the following: control of the programmable controller define data blocks for cyclical read or write functions read data once or cyclical write data once or cyclical read data event-controlled, i.e. receiving data from the programmable controller without request.

All operand types with different system-defined address ranges can be used when reading or writing data. In Figure 2 please find the possible address ranges. The size of the resp. address range is defined in the AKF12EN-user program.

Table 1 Operand Overview

SM

SM

SMB

SMB

SMW

SMD

T

TIW

TSW

C

CAW

CSW

Abbreviation

I

IB

IW

ID

Q

QB

QW

QD

M

MB

MW

MD

Meaning

Inputs binary

Byte Inputs

Word Inputs

Double Word Input

Binary Outputs

Byte Output

Word Outputs

Double Word Outputs

Marker Bit

Marker Byte

Marker Word

Marker Double Word

System Marker Bit

System Marker Bit (I/Os)

System Marker Byte

System Marker Byte (analog I/Os)

System Marker Word

System Marker Double Word

Timer

Timer Actual Value Word

Timer Set Value Word

Counter

Counter Actual Value Word

Counter Set Value Word

SM

SM

SMB

SMB

SMW

SMD

T

TIW

TSW

C

CAW

CSW

Operands (Addresses)

I

IB

IW

ID

Q

QB

QW

QD

M

MB

MW

MD

1.1

1.1

1.1

1.1

1.1

1.1

1.1

1.1

1.1

1

1

1

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

1

1.1

1

1.1

1

1

1

1

1

1

1

1

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

. . .

SM

SM

SMB

SMB

SMW

SMD

T

TIW

TSW

C

CAW

CSW

I

IB

IW

ID

Q

QB

QW

QD

M

MB

MW

MD

50

18.1

20

18.1

10

5

567

567

567

794

794

794

18.16

18.16

18.16

18.16

18.16

18.16

18.16

18.16

125.32

3970

1985

992

4

The KS-Functions

20

Chapter 2

Display of Message Structure and

Timing

This chapter explains the message interchange, the structure of the messages and the message content: the KS-functions.

20

Display of Message Structure and Timing

5

2.1 Message Interchange

The communication between the programmable controller (PC) Modicon A120 and the peripheral device is based on the master-slave-principle. The PC is always slave station. The peripheral therefore must be able to keep the data exchange active with the programmable controller Modicon A120.

The following types of data exchange are possible:

2.1.1 Polling Operation

The master station (Personal Computer, ...) scans the slave station in regular time intervals, in order to control the transmission link and to synchronize the exchange of data. This is done with short messages (SMG), which contain only a systemdefined

HEX-character but no information.

Master (PC, ...) Slave (A120)

”Poll” Message

”Poll” Message

Figure 2 Polling Operation

2.1.2 The Master-Slave-Communication with Acknowledgement

The masterstation sends a message with control information or data to the slave (request). The slave then confirms the message with a long message similar to the structure of the master message (response). Due to the fact that response messages normally cannot be sent immediately, therefore short messages (SMG), which have a similar structure as the polling messages, are sent in the meantime.

Master (PC, ...) Slave (A120)

Send Message with

Control Information and Data

Logical Response Message

6

Figure 3 Master-Slave-Communication with Acknowledgement

Display of Message Structure and Timing

20

20

2.1.3 The Master-Slave-Communication with Information Response

The master sends a message with a data request to the slave (request). The slave answers with a response message which is similar to the master message (response) but including the requested information. Due to the fact that the response message is not sent immediately, therefore short messages, which are similar structured like polling messages, are sent in the meantime.

Master (PC, ...) Slave (A120)

Request Message

Response Message with

Information

Figure 4 The Master-Slave-Communication with Information Response

2.1.4 The MasterSlaveCommunication with Error Message

The master sends a message with a control information or a data request to the slave

(request). In case that an error occurs, e.g. data fields are read which have not been configured, then the slave responds with an error message similar to the master message (response). This error message contains only the first four bits, with a changed status. The status is different to zero! For details please see Figure 10.

Due to the fact that the respective response message cannot be transmitted immediately after the request, therefore short messages are interchanged in the meantime.

Master (PC, ...) Slave (A120)

Send Message

Response Message with

Error Message

Figure 5 The Master-Slave-Communication with Error Message

Display of Message Structure and Timing

7

2.1.5 Message Types

Two different message types - the short message and the system message - are possible for the four communication principles mentioned. The structure of the system messages is explained in details in chapter 2.2.

The short messages only consist of a short message header. They are used for the polling operation as well as for the normal communication. In accordance with the definition the following hexadecimal numbers are used for the polling operation and for the communication:

Short message (SMG) for the communication

Short messages (SMG) for the polling operation

”80”

”81 ”

The short message (SMG80) is used exclusively for the synchronization during the communication and is transmitted between the different system messages, i.e. while the master expects a system message from the slave. This is also valid for the send bit declaration. For the polling operation ST 81 is used exclusively.

2.1.6 The Structure of the Message Elements

Each message consists of different message elements. The short message has only one message element, whereas the system message can have up to 69 message elements.

11 Bits

ST B0 B1 B2 B3 B4 B5 B6 B7 PC SP

8 Bits (1 Byte)

Explanation:

ST = Start Bit

B0 up to B7 = Data Bits

PC = Parity Bit

(Vertical Parity = odd number of bits logical ”1”)

SP = Stop Bit

The length of a message element is 11 bits when using the A120 programming interface.

8

Display of Message Structure and Timing

20

2.2 The Structure of the System Message

The system message is subdivided into three element groups:

Message Header

Message Content

Message Protection

1

2

Message Part

Bytes

Figure 6 Structure of the System Message

Message Header from A up to D5

Message Content from D6 up to D64

Message Protection

S

The system message is merged using the before mentioned parts.

Note All values transferred into the message have to be in hexadecimal format.

2.2.1 The Message Header

The message header consists of 9 bytes. Only the first three bytes ”A”, ”F” and ”F1” are of importance to the user. The hexadecimal value of the byte ”F2” is always ”F0”.

The header comprises the following information:

The direction of the message

The length of the message content

The type of message

20

Display of Message Structure and Timing

9

The structure of the message header is explained in the following.

1

2

3

4

Embedded Command

Message Header for all System Message

Message Header for Short Message in Polling Operation

Message Header for Short Message in Communication Operation

A

0

81

80

F

R

N

N

F1

L

N

N

F2

F0

N

N

D1

0

N

N

D2

0

N

N

D3

1

N

N

D4

0

N

N

D5

0

N

N

Values to be Entered / Range of Values

Message Direction

From Master to Slave Modicon A120 (Request)

From Slave Modicon A120 to Master (Response)

Length of the Data Area D1..D64

Number of Bytes within Message

Figure 7 Structure of the Message Header

Range of Values

0C

0D

(0...5) 6..64

Legend

R

R

L

The message type is coded in byte ”A”. A ”0” stands for a system message. The short messages (length only one byte) are mentioned only in order to complete the picture.

The byte ”F” contains information whether a message is transmitted from the A120 or to the A120. Byte ”F1” defines the number of data bytes D. This value can be entered only after the definition of the message content.

2.2.2 The Message Content

The different KS-functions, operand types and operand contents are defined in the message content from the master or the resp. slave station. In this context the message direction is of importance for the assignment of the different functions to the transmitted bytes. Therefore the send message (master → slave) and the receive message

(slave → master) should be written separately.

For both senddirections separate layout plans have been created in order to simplify the composition of the message contents for the different functions. The hatched sections in the plan show the message elements where the user has to fill-in values, dependent on the communication task. Bytes which are marked with ”N” can have any value. It is recommended to set these bytes to ”0”. Figure 8 shows the structure of the message content in ”master → slave” direction.

10

Display of Message Structure and Timing

20

Operand Description

Marker Bit

Marker Byte

Marker Word

Timer Bit

Timer Actual Value

Timer Setpoint Value

Counter Bit

Counter Actual Value

(M)

(MB)

(MW)

Marker Double Word

System Marker Bit

System Marker Byte

System Marker Word

(MD)

(SM)

(SMB)

(SMW)

Sytsem Marker Double Word (SDW)

(T)

(TAW)

(TSW)

(C)

(CAW)

Counter Setpoint Value (CSW)

Embedded Command

Start User Program (UP) acc. to Hardware Settings

Start UP in Cold Restart Mode

Start UP in Hot Restart Mode

Stop UP

Standardize Signal Memory (SM) System specific

Standardize Signal Memory all Ranges

Delete Declaration Number

Terminate Data Declaration

Declare SM-Data (multiple read)

Declare SM-Data (multiple read)

Declare SM-Data (multiple write)

Declare SM-Data (multiple write)

Single Read SM-Data

Single Read SM-Data

Read System Status List

Read System Definition List

Read free Declaration Number

Multiple Data Read

Single Write SM-Data

Single Write SM-Data

Write System Definition List

Write Target Equipment List

Write Time and Date

Multiple Data Write

*

*

*

*

*

*

30

2C

2D

31

2E

2F

28

29

2A

2B

SYS

20

21

22

23

*1

*1

40

*1

3C

3D

*1

41

*1

3E

*1

3F

8

8

7

7

8

8

6

6

5

6

6

2

5

2

2

1

1

1

D6

1

1

1

1

1

2

Representation

1 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

1 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

Operand Description

Input Bit

Input Byte

Input Word

Input Double Word

Output Bit

Output Byte

Output Word

Output Double Word

(I)

(IB)

(IW)

(ID)

(Q)

(QB)

(QW)

(QD)

* Version 2/3

*1 Version 3 of the A120 firmware

0

1 18

N

N

N

N

1 18

0

1 18

0

1 18

N

N

N

N

D9

N

N

N

N

0

255

N

N

0

N

N

N

1

N

N

1

N

N

1

N

6

1

1

6

4

5

5

D7

1

2

3

7

9

1

Rov

N

N

6

7

8

RoV

2

3

N

1

RoV

RoV

RoV

N

N

N

N

D8

N

N

N

RoV

RoV

RoV

D10

SYS

SYS

IO

IO

SYS

IO

SYS

D

D

IO

D11

NB

NB

NB

NB

NB

NB

NB

NB

D

D

D12

AD

AD

AD

AD

AD

AD

AD

AD

D

D

D13

AD

AD

D

D

AD

AD

AD

AD

AD

AD

D14 ...

D

D

D

D

D

D

10

11

12

13

I/O

0

1

2

3

Representation

1 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

1 Byte / Operand

1 Byte / Operand

2 Byte / Operand

4 Byte / Operand

...

D

D

D64

D

D

D

D

D

D

Values to be entered / Range of Values (RoV)

Declaration Number

Range of Values ALU 200

Range of Values ALU 201

Range of Values ALU 202

Number (NB):

Value for Number of used

Operands SYS or IO

Start Address:

Lowest Address of the afore mentioned

Number of Operands

Range of Data:

Information to be transmitted

Irrelevant Range of Data:

Any values can be entered

Variables:

Values which have to be defined from the user for each transmission of data

Range of Values

17 ... 37

17 ... 127

17 ... 127

12 ... 51

AD

D

N

Legend

RoV

RoV

RoV

NB

Attention: at data byte D9 decimal values are shown

Figure 8 The Message Content of the System Message for the Request of the Master

20

Display of Message Structure and Timing

11

Definite values can be assigned to the bytes D6 (function byte) and D7 (subfunction byte). For the data byte D8 (declaration byte) at this position the resp. declaration number has to be entered for functions which operate with declared data. The range of values (RoV) for the declaration number depends on the selected ALU-type and must not be exceeded. Via the content of byte D9 (I/O slot number) a module of the A120 can be addressed (e.g. I/O module). Example: To be able to read out the input conditions of an I/O module in slot 3, the slot number ”3” has to be entered.

In byte D10 the resp. operand type in hexadecimal format must be entered if necessary. Byte D11 describes the number of operands per transmitted message. In byte

D12 and D13 the start address is entered (first address of the operand string). Example: The markers ”999” up to ”1001” have to be transmitted. In byte D11 the value 3

(number of markers) and in bytesD12 up to D13 the value ”999” (in hexadecimal format) has to be entered.

In the byte range D14 up to D64 the send station of the message can store the operand values which have been defined in D10 up to D13. The different operand types require one up to four bytes for the operand value. Example: A marker bit (1 bit) requires one byte, a marker double word (32 bit) requires four bytes in total.

The black arrow in Figure 8 marks the number of bytes necessary for the resp. function which have to be reserved for the message.

12

Display of Message Structure and Timing

20

Meaning of the Error Code S

No Error

Wrong CI Function Group Number

Wrong Subfunction Number

Declaration Number too big

Wrong Station Number

Wrong Operand Type

Range exceeded

Alloction Error

Non-Permissible Message Sequence

Response Length Error

Declaration Length Error

No free Declaration Numbers available

Embedded Command

Start user program (UP) according to HW Settings

Start UP in Cold Restart Mode

Start UP in Hot Restart Mode

Stop UP

Standardize Signal Memory (SM) System specific

Standardize Signal Memory all Ranges

Delete Declaration

Terminate Data Declaration

Declare SM-Data (multiple read)

Declare SM-Data (multiple read)

Declare SM-Data (multiple write)

Declare SM-Data (multiple write)

Single Read SM-Data SYS

Single Read SM-Data IO

Read System Status List

Read System Definition List

Read free Declaration Number

Multiple Data Read

Single Write SM-Data

Single Write SM-Data

Write System Definition List

Write Target - Equipment List

Write Time and Date

Multiple Data Write

Values to be entered / Range of Values

Declaration Number:

Range of Values ALU 200

Range of Values ALU 201

Range of Values ALU 202

Range of Data:

Information to be transmitted

Predefined Sequence (PS) of Information:

Gives predefined information sequences back to the user with actual data

Irrelvant Range:

Any values can be entered

Variabels:

Values which have to be defined from the user for each transmission

Figure 9 The Message Content of a System Message for a Slave Response

1

6

6

9

1

N

N

1

1

N

4

5

5

7

D7

1

2

3

N

N

N

N

1

1

N

Status Value

00

01

02

03

08

09

0A

0B

04

05

06

07

RoV

RoV

RoV

RoV

RoV

1

2

N

N

3

N

N

N

RoV

N

N

D8

N

RoV

N

N

6

7

8

RoV

2

2

2

1

2

6

6

5

5

6

1

1

1

1

D6

1

1

1

8

8

8

6

7

7

8

Range of Values

17..37

17..127

17..127

S

S

S

S

S

S

S

S

S

S

S

S

S

S

S

S

D9

S

S

S

S

S

S

S

S

D10

Legend

RoV

RoV

RoV

D

PS

D

D

PS

PS

D

D

D11 D12 D13 D14

D

D

PS

PS

D

D

D

PS

PS

D

D

D

PS

PS

D

D

D

PS

PS

D

...

D

D

PS

PS

D

...

D64

D

D

PS

PS

D

D

D

PS

PS

D

N

20

Display of Message Structure and Timing

13

The response messages are broken down according to the above mentioned description. Please be aware that the bytes in the response message have partly a different meaning.

The meaning of the bytes D6 up to D8 correspond to the meaning of the bytes in a send message.

Byte D9 can be used from the slave station Modicon A120 in order to transmit different error messages to the master station. In case that the A120 station sets D9 to ”0” then no errors are detected and the system message which was send from the master was according to the before mentioned conditions.

In the bytes D10 up to D64 the slave station transmits the values of the before declared operands to the master station.

The data ranges marked with ”PS” (for details please see Figure 9) are predefined in their order. With that it is possible to read out complete internal lists of the programmable controller, e.g. system status lists or system definition lists at once, i.e. in one message. The procedure is this case is the same like when reading out operand blocks which are predefined via declaration numbers, with the difference that the declaration numbers cannot be freely selected but are specified from the system.

2.2.3 Message Protection

The protection of the data transmission is done in two levels. For the physical layer the convention of the RS232 - port secures automatically the control of the data transmission. This level is less important to the user.

For the logical level a so-called protection byte is used in order to ensure a correct data transmission. This byte is added to each system message. For further details please see Figure 10.

14

Display of Message Structure and Timing

20

Embedded Command

Value for the Protection Byte

S

PC

Message Byte

Byte A

Byte F

Byte F1

Byte F2

Byte D1

...

...

Byte D64

Parity Check to ”1”

...

...

0

0

1

|

|

Bit7

0

0

1

1

...

...

0

1

0

|

|

Bit5

0

1

1

0

...

...

0

0

1

|

|

Bit6

0

0

1

1

...

...

0

1

0

|

|

Bit3

0

1

0

1

...

...

0

1

0

|

|

Bit4

0

0

1

1

...

...

0

1

1

|

|

Bit1

1

1

0

1

...

...

0

1

1

|

|

Bit2

1

0

0

0

...

...

0

1

1

|

|

Bit0

1

1

0

1 Byte S

Figure 10 Generation of the Protection Byte ”S”

The data transmission is protected via a odd parity check, i.e. all bits which are necessary for the parity are checked for the number of bits which are logical ”1”. Is the number of these bits an even number, then the corresponding parity bit is set to ”1” (high), in the other case it is set ”0” (low). The parity check is carried out vertically. For this all bytes, max. byte 1 up to byte 64, are listed is binary digits. Each column now represents a bit string with an allocated parity bit. The parity bit of each column is collected in a byte and represents the value of the protection byte. This binary value must now be converted into a hexadecimal format. This value now represents the last value in the message.

20

Display of Message Structure and Timing

15

Master:

55 ms

2.3 The Communication Time Frame

The developer of peripheral devices has to pay special attention to a correct time synchronization of the messages exchanged between the master and the slave station. In case that the master cannot fulfill the necessary timing code, then unstable conditions or in the worst case a faulty communication can be the result.

The timing code of the programmable controller Modicon A120 is oriented on the requirements of Personal Computers equipped with the MS-DOS-operating system (registered trademark of Microsoft).

The developer has to differ between the polling time (t_P) and the waiting time (t_W).

The polling time describes the time interval in which the corresponding communication partner has to send a message in the opposite direction. The waiting time describes the max. time interval after which the slave or the master station consider the communication as faulted and after which the stations generate the corresponding countermeasures. The reference of the resp. time to the station type, in the picture below is carried out with M (master station) or S (slave station).

Please pay special attention to the waiting time t_WS. In case that the predefined timing code for the resp. operating mode is exceeded, then the RS 232 - port is standardized and the I/O buffer in the Modicon A120 is deleted.

The timing code for the polling operation is dimensioned in its operating description to

55 msec. Figure 11 shows the timing diagram for this operating mode.

55 ms 55 ms 55 ms 55 ms

SMG

81

SMG

81

Slave:

SMG

81 t_PS1 t_PM1 t_WM1 t_WS1

Figure 11 Timing Diagram Polling Mode

16

Display of Message Structure and Timing

20

The time t_PS is the reaction time of the controller to a short message (SMG) 81 which has been sent from the master. For this reaction of the programmable controller a response time of up to 110 msec. is allowed for the slave. In case that this time is exceeded, then the program in the master station must be able to recognize that as an error (by selecting an appropriate waiting time t_WM) and must repeat the call. Theoretically the master can react directly to the polling signal SMG 81 of the slave station.

In order to prevent the master from receiving too many polling signals, the master station has a time interval of max. 120 msec. before it has to send a new polling signal.

When changing from polling mode to the operating mode ”system messages”, the timing code is reduced to 10 msec. Due to the fact that the system message is passing the serial port byte by byte and not complete, the developer has to make sure that the period of time between two bytes does not exceed 40 msec. Figure 12 shows the time structure when sending a message from the master to the slave station.

10 ms 10 ms 10 ms 10 ms 10 ms

System Message

10 ms 10 ms

Master:

TE TE TE TE

10 ms 10 ms 10 ms 10 ms

SMG

80

Slave: t_PT t_PT t_PS2 t_WM2

SMG

80 t_PM2 t_WS2 t_WM3

Figure 12 System Message

Slave

The slave station recognizes the end of a system message when the time interval

”t_PT + 20msec. = t_PS” is passed after the last byte to the slave. The slave station sends a short message ”SMG 80” to the master when the message end has been recognized. The master then demands (by sending ”SMG 80” short messages) the slave station to send the logical acknowledgement (after a time interval ”t_PM = t_PT + 0 up to 20msec.”). Correspondingly to the polling operation also here different waiting times have to be taken into consideration. In case that these waiting times are exceeded, then a communication error has to be recognized by the master station.

20

Display of Message Structure and Timing

17

Figure 13 shows the timing diagram for the send sequence of a response message from the slave to the master station. The time intervals are correspondent to the send operation from master to slave.

10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms 10 ms

Master:

SMG

80

SMG

80

Slave: t_PS2

TE t_WM2 t_PT

TE

Figure 13 Response Message Slave

Master

System Message

TE t_PT

TE t_PM2 t_WS2

18

Display of Message Structure and Timing

20

Chapter 3

Principle Program Structures

This chapter explains the data exchange between the programmable controller Modicon A120 and the peripheral, in sequence charts.

20

Principle Program Structures

19

3.1 How to Keep the Communication Active

The start of the polling routine (loop 1) is the first program element which starts the communication. In case that the master can fulfill the requirements concerning the timing code as mentioned in chapter 2.3, then loop 1 is processed permanently until a system message is sent.

Loop 2 shall keep the polling operation active in case that insignificant irregularities happen. When all three tests fail it has to be guaranteed that the polling operation (loop

3) is activated again.

Start of Polling

1

Send Message ?

no yes

Send Message

2

Send SMG 80 yes

Acknowledgement Test

< 3 no

Wait for

Acknowledgement yes

Send SMG 80 no

Send SMG 81 no max.

3 Tests ?

yes

Receive

Response Message

1

3

Response Message within the

Timing Code ?

yes no

Figure 14 Communication Operation

20

Principle Program Structures

20

3.2 How to Create a System Message

The creation of system messages has to be carried out in parallel to the before mentioned communication routine. These program parts my influence the communication routine in the way that an unpermissible increase of the operating time occurs. In case that the masters computing power is too low, then an increased priority in the program sequence has to be assigned to communication routine. Figure 15 shows the recommended steps when creating a system message. The upper part of the chart shows decisions related to the selected function, mode, number and content of different operands, while the second part contains standard tasks, which bring the message in its final and correct form.

The developer of the program can define how the necessary decisions for the first part are made, i.e. via menu methods or programs which support special applications.

How the the complete message is linked into the communication routine is indicated with position 2. In this process the communication routine guarantees trouble-free transmission within the timing code.

20

Principle Program Structures

21

Select Embedded

Command and Coding

D6-D9

In case that

Function 8-13 or 19-20 are not selected no yes Select Number of Information to be processed

Define Operand Type

Byte D10

Start Address

Bytes D12/D10

Enter Data

Bytes D14-D64

Define Message Length

D1 ... D64

Calculate Parity of

Bytes A ... D64

Arrange Bytes A-D64 to String

Loading of String for Sending

2

Figure 15 Creation of System Messages

22

Principle Program Structures

20

20

3.3 Analyses of Response Message

For the evaluation of the messages please see chapter 3.2 for details about the linking into the program structure. The most important point for the analysis of the response message is byte D9. In case that byte D9 is different to ”0”, then an error is detected.

Dependent on the error type, the developer has to think about the consequences for his program.

In case that no error has been detected, the developer can use the message in the program. The operand type incl. content will be analyzed and processed according to the application requirements, if necessary.

3

Check Byte D9

Byte = 0?

yes no

Check String for Send--Back Data,

Data available ?

no yes

Assign Data to Operand

Load Data for Routing, e.g.

Loading for Display Purposes

Figure 16 Evaluation of the Response Message

Analyse Error according to Table

Send Message executed as defined

Principle Program Structures

23

24

Principle Program Structures

20

Chapter 4

Examples

This chapter gives some examples about the use of the KS-functions.

20

Examples

25

26

Examples

4.1 General

The programmable controller (PC) Modicon A120 is able to process one system message (”job message”) per program cycle and is able to load one response into the send buffer, which is then send out. The KS-functions are processed always at the end of the PC-program cycle.

In case that several system messages arrive in short succession, then they are stored in the input buffer.

If, in addition to that, also send conditions are present, then the output messages belonging to it are stored into the send buffer. Therefore it is possible to load several system messages per PC-program cycle. These messages are then send asynchronous to the PC-user program cycle. They are processed according to the polluter-pays principle, i.e. send condition fulfilled or system message arrived. The size of the send buffer is 1 kbyte and can therefore store a larger number of messages before an overflow happens.

The delay for the PC-program cycle is appr. 7 msec. per system message ”single scan”. The declaration of data takes 20 up to 25 msec. The future scan takes less than

7 msec.

When working with send conditions, the capacity of the RS 232 - port can be exceeded. The port works principally with 9600 Baud. When neglecting the timing requirements nearly 900 short messages (length 11 bit) can be transmitted per second. For system messages this number is considerably lower. A complete system message with

55 user bytes has a total length of 69 bytes (69 * 11 bits = 759 bits). Therefore a total number of 12.6 complete system messages can be transmitted per second when neglecting the timing.

When using send conditions this means that the developer has to make sure that at no time more than 10 messages per second should be generated. Otherwise an overflow of the send buffer, which cannot be controlled or checked, might happen. In case of unexpected behavior of the program it is recommended to check the number of generated system messages. A programming routine which generates a system message each

PC-program cycle might easily generate up to 100 system messages per second. To be able to prevent this, it is recommended to use a 1/2 Hz flashing pulse in order to control the generation of system messages.

20

20

As mentioned before, it is possible that sometimes an overflow of the send buffer occurs even when the KS-functions are used in the correct way. Therefore it might happen, that the master (peripheral) does not receive immediately the related message.

Other messages are sent in the meantime.

Therefore it is recommended always to wait for the response message before a new system message is sent. A further possibility is to program a type of sorting mechanism, which allocates afterwards the response messages to the related system messages.

The content of bytes A up to D5 are either already defined or are very easy to determinate (byte F1). The values for the other bytes from D6 up can be taken from the tables in Figure 9 and Figure 10.

The generation of the protection byte is of no importance to the understanding of the

KS-function, therefore it is not mentioned in the following examples. The resp. content of the protection byte is marked with ”-”.

For the reason of better understanding all message contents are displayed in hexadecimal format. Please note that the values are shown not complete, i.e. the hex-value ”09” is displayed only as a ”9”.

Examples

27

4.2 Starting and Stopping of the PC-User Program

4.2.1 Starting of the System

The system message send from the peripheral to the Modicon A120 contains the embedded command ”Start User Program according to Hardware- Settings”. The structure of the message is shown in Figure 17. The value for byte F1 is ”9” due to the fact that bytes D1 up to D9 have been used. The bytes D8 and D9 don’t contain necessary data for this KS-function therefore their value is ”0”.

Embedded Command / Bytes

Start User Program (UP) according to

HW-Settings

A

0

Figure 17 System Message: Start of PC-User Program

F

0C

F1

9

F2

F0

D1 D2 D3 D4 D5 D6 D7 D8 D9

0 0 1 0 0 1 1 0 0

S

-

In case that no transmission error has been detected, then the slave station Modicon

A120 responds with the message as shown in Figure 18. The difference to the request message from the master is byte F in this case, which contains the value ”0D”, i.e. a message from A120 to the master.

Embedded Command / Bytes

Start UP according to HW-Settings

Figure 18 Response Message of the Modicon A120

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0D 9 F0 0 0 1 0 0 1 1 0 0 -

4.2.2 Stopping of the System

The system message shown in Figure 19 describes the embedded command ”Stop

User Program” which is send from the peripheral to the A120.

Embedded Command / Bytes

Stop UP

Figure 19 System Message: Stop PC-User Program

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0C 9 F0 0 0 1 0 0 1 4 0 0 -

In case that no transmission error has been detected the slave station Modicon A120 responds with the message shown in Figure 20.

Embedded Command / Bytes

Stop User Program

Figure 20 Response Message Modicon A120

28

Examples

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0D 9 F0 0 0 1 0 0 1 4 0 0 -

20

4.3 Single Read of three Successive Marker Bits

Please note that the data which are read out of the Modicon A120, should always be a string of successive information and should always be read as a group, e.g. marker bits

(Byte D10 = 20 Hex). In the following example three marker bits have to be read out

(M31.7, M31.8 and M31.9), i.e. the value of byte D11 is ”3”. These markers are the continuously allocated numbers 999, 1000 and 1001 (999 = 03 E7 Hex.)

The system message of the peripheral to the Modicon A120 contains the embedded command ”Single Read Signal-Memory (SM)-Data”. The message is shown in

Figure 21.

Embedded Command / Bytes

Single Read SM-Data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 S

0 0C 0D F0 0 0 1 0 0 5 1 0 0 20 3 03 E7 -

Figure 21 System Message for Single Read of Signal-Memory-Data

In case that no transmission error has been detected the slave station Modicon A120 responds with the message shown in Figure 22. It is assumed that all marker bits have the value ”xx”. Due to the fact that the message is one byte shorter, therefore the byte

F1 is now 12 (=0C Hex.) and not 13 (= 0D Hex) any more.

Embedded Command / Bytes A

Single Read Signal Memory-

Data

F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 S

0 0D 0C F0 0 0 1 0 0 5 1 0 0 xx xx xx -

Figure 22 Response Message of the Modicon A120

20

Examples

29

4.4 Multiple Access to declared Data

Besides a single access on data also multiple or cyclical access on data is possible.

For this it is necessary to declare these data, i.e. declaration lists have to be defined in the A120. The declared data are then transmitted either event-controlled or on request

(cyclical).

4.4.1 Structure of a Declaration List

For multiple read or write tasks on data of the signal memory (SM) it is necessary to define a declaration list in the Modicon A120. This list must be marked unambiguous with a number, the so-called ”declaration number”.

4.4.1.1

How to read a free declaration number

It is always possible to define more than one declaration list. The declaration numbers of the lists are defined in ascending order (starting with the value 17, please compare details on Figure 9). In case that one of the declarations is deleted then a gap in numbering occurs. An additional request might therefore be necessary in order to get the information about the next free declaration number.

The respective system message and response message is shown in Figure 23 and

Figure 24. In this example it is assumed that the first ten declaration lists are already defined. The reported free declaration number therefore is 17 + 10 = 27 (=1B Hex.).

Embedded Command / Bytes

Read free Declaration Number

A

0

F

0C

F1

9

F2

F0

D1 D2 D3 D4 D5 D6 D7 D8 D9

0

Figure 23 System Message: Read the smallest free Declaration Number

0 1 0 0 6 0 3 0

S

-

Embedded Command / Bytes

Read free Declaration Number

A

0

F

Figure 24 Response Message of the Modicon A120

F1

0D 0A

F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10

F0 0 0 1 0 0 6 0 3 0 1B

S

-

4.4.1.2

Declaration of four successive marker bytes for multiple read

In case that four successive marker bytes (e.g. marker bytes 7, 8, 9 and 10) shall be read, then they have to be defined in a declaration list. In this example it is assumed that already ten other declaration lists have been defined before, i.e. the number of the declaration list is ”27” (=1B Hex.).

It is possible to add additional groups of data into the same declaration list, e.g. a group of marker bits or other data. Please be aware that the net data quantity must not exceed 55 bytes. In this example no further data are declared besides the four marker bytes, i.e. no further declaration message is necessary.

30

Examples

20

Each declaration list must be activated with a so-called ”activating message”. This can be a message ”End Data Declaration” or a message for the declaration of a send condition (for further details please compare chapter 4.4.1.3.

The system message of the peripheral (request) to the A120 contains the embedded command ”Declare SM-Data (multiple read)”. For details please see Figure 25.

Embedded Command / Bytes

Declare Signal Memory

(SM)-Data (multible read)

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 S

0 0C 0D F0 0 0 1 0 0 2 1 1B 0 21 4 0 7 -

Figure 25 Declaration of four successive marker bytes

In case that no transmission error has been detected then the slave station responds with the message as shown in Figure 26. At this moment no data transmission takes place. It is only used to confirm the correct reception of the declaration message.

Embedded Command / Bytes

Declare SM-Data (multiple read)

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0D 9 F0 0 0 1 0 0 2 1 1B 0 -

Figure 26 Response Message of the Modicon A120

4.4.1.3

Terminate Data Declaration resp. declare Send Condition

To be able to use a declaration list it always has to be activated. This happens normally by sending the system message ”End Data Declaration”. From this moment the declared data can be read after a request message. The ”activating message” is always related to one declaration list. The declaration number of this list has to be named explicit. Figure 27 shows the corresponding system message where the declaration number ”27” (=1B Hex.) is named.

Embedded Command / Bytes

End Data Declaration

Figure 27 End Data Declaration

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0C 9 F0 0 0 1 0 0 1 9 1B 0 -

20

Sometimes it is necessary only to send event-controlled data from the A120 to the master station, e.g. marker bytes. The event in this example is the positive edge of an operand (type ”bit”), i.e. the value of the marker bit M2.1 (or in other format: marker = bit M33 = 21 Hex.) changes from 0 to 1.

This send condition can be defined for each declaration list and terminates the data declaration. The system message (request) therefore has the same effect like the message shown in Figure 29 ”End Data Declaration”. The ”Send Bit Supervision” is then immediately active.

In extension of Figure 8, the structure of the system message (for request of the send condition) is shown in Figure 28.

Examples

31

Caution As already mentioned for Figure 8, the number for the I/O-slots (slots no. 1 up to 18) is shown in byte D9 in decimal format.

Declare

Send Condition

Figure 28 Declare Send Condition

In the resp. message the value for D9 has to be entered in hexadecimal format. The byte D8, with its range of values ”RoV”, contains the declaration number for the declaration list, which names the desired marker bytes (for details please see 4.4.1.2). This data declaration must be carried out before the send bit is declared because of the fact that the ”Send Bit Supervision” is active immediately. Please compare the message structure with Figure 8.

D6 D7 D8 D9 D10 D11 D12 D13

2

2

0C

0C

RoV

RoV

0

1-18

SYS

EA

1

1

AD

AD

AD

AD

Due to the fact that no input or output bit of an I/O-module is used as send condition, but an internal marker bit (M2.1 = 21 Hex.) of the ALU (byte D9=0) is used as the send bit, therefore byte D8 has the value ”27” (= 1B Hex.), the byte D10 has the value 20 hex. and the bytes D12 and D13 have the values 00 hex. and 21 hex.

The structure of the system message (request) is therefore:

Embedded Command / Bytes

Declare Send Condition

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 S

0 0C 0D F0 0 0 1 0 0 2 0C 1B 0 20 1 0 21 -

Figure 29 Declare Send Condition

In case that no transmission error is detected, the A120 responds with the message shown in Figure 31.

Embedded Command / Bytes

Declare Send Condition

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0D 9 F0 0 0 1 0 0 2 0C 1B 0 -

Figure 30 Response Message of the Modicon A120

32

Examples

20

4.4.2 Execution of a Declaration List

4.4.2.1

Periodic Scanning of a Declaration List

Loading of the declared data (without send condition) is carried out in principle after the receipt of a corresponding system message (request). This request message can be send cyclical or event-controlled from the peripheral to the A120.

The system message (request) from the peripheral to the A120 contains the embedded command ”Multiple Read Data”. The data which will be transmitted here have been defined in the declaration list with the number 27 (= 1B hex.). The respective message is shown in Figure 31.

Embedded Command / Bytes

Multiple Read Data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0C 9 F0 0 0 1 0 0 6 0 1B 0 -

Figure 31 Send Data of the Declaration List 27

With the response message the slave station A120 sends the requested predeclared data. The resp. message is shown in Figure 32.

Embedded Command / Bytes

Multiple Read Data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 S

0 0D 0D F0 0 0 1 0 0 6 0 1B 0 xx xx xx xx -

Figure 32 Response Message of the Modicon A120

According to the definition of the marker bytes in the declaration list, the marker bytes

7, 8, 9 and 10 are transmitted with data bytes D10 up to D13. For further details please see chapter 4.4.1.2.

4.4.2.2

Polling while waiting for the Send Bit

In case that a send condition has been declared then the short message SMG 80 is used. When using the short message SMG 81 the programmable controller A120 does not send any system messages.

20

Examples

33

4.4.3 Clearing of Declarations

The declarations cannot be cleared (deleted) in the A120. This can be done only when the program is loaded again into the programmable controller (PC). When the user program is loaded into the PC then all memory areas are standardized, i.e. in this case all declaration list must be defined again.

Using the on-line-exchange function of Dolog AKF12 has no influence on the declaration lists.

It is possible to generate an overflow when too many declaration lists are send to the

A120. In the case of doubt it is recommended to clear all declaration lists and to generate new lists. It is also possible to clear only parts of these list. In difficult situations the next free declaration number can be found as mentioned in chapter 4.5.

When all declaration lists are cleared (deleted) also other lists are lost. Is for example

Viewstar 200 XA used in the application, then also the lists for this application are cleared.

The resp. messages for clearing are shown in Figure 33 and Figure 34. The response messages are not mentioned again and are structured as already explained before in other examples. In Figure 34 please see how a single list with the declaration number

1B hex. (= 27 in decimal format) is cleared. In order to be able to delete all declaration numbers the value ”0” is entered as the declaration number.

Embedded Command / Bytes

Clear Declaration

A

0

F

0C

F1

9

Figure 33 Cleanse single Declaration List in A120

F2 D1 D2 D3 D4 D5 D6 D7 D8 D9

F0 0 0 1 0 0 1 7 1B 0

S

-

Embedded Command / Bytes

Clear Declaration

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0C 9 F0 0 0 1 0 0 1 7 0 0 -

Figure 34 Clear all Declaration Lists in A120

34

Examples

20

4.5 Using Timers and Counters

For reading or writing purposes of timers and counters the A120 offers two possibilities.

The older one, upward compatible solution, which is available for all firmware versions has to be used with care. When working with this older version the actual and setpoint values as well as the status of the timer or counter are overwritten simultaneously.

This version won’t be subject of this documentation.

The newer solution, which is available in firmware versions

On the other hand, the new solution, which is however available only from firmware level 3, allows an individual access to the actual as well as setpoint value.

The illustrated message shows the job telegram with which at a definite timer (Byte

D11 = 1) with the number 16 (Bytes D12+D13 = 0010 Hex) the setpoint value (Byte

D10 = 3D Hex) is set to 33 (Byte D14+D15 = 0021 Hex).

Embedded command

/ Bytes

Single write SM data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 D16 S

0 0C 10 F0 0 0 1 0 0 8 0 8 0 13 5A 0C 0C 0C 0 0 -

Figure 35 Set timer setpoint value of timer 16 to 33

The response message looks as follows:

Embedded command / Bytes

Single write SM data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 S

0 0C 9 F0 0 0 1 0 0 7 1 0 0 -

Figure 36 Response message of A120

20

Examples

35

4.6 Changing the Time and Date

Time and date can be changed with the message shown below. For example to change over from summer to winter time. The date and time readings are achieved basically via the corresponding system marker.

In the following example the time and date 12 a.m. on 12.12.1990 should be set.

The corresponding job message is illustrated in Figure 37. The corresponding response message is not shown here again.

Embedded command

/ Bytes

Single write SM data

A F F1 F2 D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 D16 S

0 0C 10 F0 0 0 1 0 0 8 0 8 0 13 5A 0C 0C 0C 0 0 -

Figure 37 Write time and date

Here:

D10 = centuries

D11 = year

D12 = month

D13 = day

D14 = hour

D15 = minute

D16 = second

36

Examples

20

20

4.7 Reading of the System Declaration List

The system declaration list contains data about the number of the configured markers, system markers, timers and counters. This list is already defined, declared in the A120

CPU and has the declaration number 1 constantly assigned to it. It will be read out with the message type ”multiple read” as described in chapter 4.4.1.

The data structure of the response message is shown in the following. The data has the format ”Word”.

D10/D11 = No. of marker--bits

D12/D13 = No. of marker--bytes

D14/D15 = No. of marker words

D16/D17 = No. of marker double words

D18/D19 = No. of system marker bits

D20/D21 = No. of system marker bytes

D22/D23 = No. of system marker words

D24/D25 = No. of system marker double words

D26/D27 = No. of timers

D28/D29 = No. of counters

D30 to D54 = other parameters

Examples

37

38

Examples

4.8 Reading of the system status list

The system status list contains data about the type of CPU, the DIP switch setting and the firmware version. This list is already defined, declared in the A120 CPU and has the declaration number 2 permanently assigned to it. It will be read out with the message type ”multiple read” as described in chapter 4.4.2.

The data structure of the response message is shown below. The data have the format

”byte”.

D10

D11

D12

D13

D14

D15

D16

D17

= Identcode of the CPU

= DIP switch position of the 8 pole switch

= DIP switch position of the 4 pole switch

= ab

= cd

= ef

= gh

= ik

D18 to D63 = other parameters

From this the part number follows as : abcdefgh.ik

For exampel: ab = 00 dec, cd = 27 dec, ef = 66 dec, gh = 03 dec, ik = 03 dec

It follows the part number is _276603.03.

20

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

Download PDF

advertisement