 Using I/O connection editor

The aim of the I/O connection operation is to establish a logical link between the I/O variables of the application and the physical channels of the boards existing on the target machine. To make this link the user has to identify and setup all the boards of the target machine, and place I/O variables on corresponding I/O channels.

The editing window

Defining I/O boards

Setting board parameters

Connecting I/O channels

Directly represented variables

Numbering

Setting individual protection


The editing window

The list on the left shows the rack of the target machine, with board slots. A slot may be free, or used by one I/O board or complex equipment. Each slot is identified by an order number. The rack may contain up to 255 boards. The list on the right shows the board's parameters and the variables connected on the selected board. A board may have up to 128 I/O channels. The total number of single I/O boards (including single equipments and boards of complex equipments) cannot exceed 255.

Icons

 	Moving boards in list


Icons

The icons displayed on the front face indicate the type and attributes of variables that may be connected to the board channels. The ISaGRAF system does not allow the connection of variables of different types on the same board. This is the meaning of the used icons:

boolean type

integer/real type (both types of variables may be connected)

message type

inputs - no channel connected

outputs - no channel connected

inputs - at least one channel connected

outputs - at least one channel connected

Below are the icons used to show the type of I/O device installed on a slot:

complex I/O equipment

real I/O board

virtual I/O board

Below are the icons used to draw a parameter or a channel:

board parameter

free channel

connected channel


 	Moving boards in list

Use these buttons in the toolbar or "Edit / Move board up/down" menu commands to move the selected I/O board one line up or down in the main list. The "Edit / Insert slot" command inserts an empty slot at the current position.


Defining I/O boards

The "Edit" menu contains basic commands to define the selected board (setup its parameters), and to connect I/O variables to its channels.

Selecting I/O board type

Removing a board

Real boards and virtual boards

The "Tools" menu contains other useful commands to work on the selected board.

Technical notes

Removing connected variables

Defining comments for free channels


Selecting I/O board type

Before connecting I/O variables to a board, the board identification must be entered. A library of pre-defined boards is available on the ISaGRAF workbench. This library may have been compiled by one or more I/O device suppliers. The "Edit / Set Board/Equipment" command is used to setup board identification. This command can be used to select either a single board, or complex I/O equipment from the ISaGRAF library. It is also possible to double click on a slot to set the corresponding board or equipment.

All the channels of a single board have the same type (boolean, integer/real or message) and direction (input or output). Real and integer variables are not distinguished during I/O connection. A complex I/O equipment represents an I/O device with channels of different types or directions. A complex I/O equipment is represented as a list of single I/O boards. It uses only one slot in the rack list.


Technical notes

The "Tools / Technical note" command displays the on-line user's guide of the selected board or complex equipment. The board technical note is written by the hardware supplier of the I/O board. It contains all the information about I/O board management. It also describes the meaning of its parameters.


Removing a board

The "Edit / Clear slot" command is used to remove the currently selected board or I/O equipment. If variables are already connected to the corresponding channels, they are automatically disconnected when clearing the slot.


Real boards and virtual boards

The "Edit / Real/virtual board" command sets the validity of the selected board or complex I/O equipment. The following icons are displayed in the rack list to show the validity of a board:

real I/O board

virtual I/O board

In Real Mode, I/O variables are directly linked to the corresponding I/O devices. Input or output operations in the application program tie directly to corresponding input or output conditions of the actual field I/O devices. In Virtual Mode, I/O variables are processed exactly as internal variables. They can be read or updated by the debugger, so that the user can simulate the I/O processing, but no real world connection is made.


Setting board parameters

To set the value of a board parameter, the user has to double click on its name in the list on the right. It is also possible to select (highlight) it and choose the "Set channel/parameter" command of the "Edit" menu. Parameters are listed at the beginning of the list. The following icon is used to represent them in the list:

board parameter

The meaning and input format of the parameter are designed by the supplier of the corresponding I/O board or equipment. Use the "Tools / Technical note" command or refer to your hardware manual for more information about board parameters.


Connecting I/O channels

When a board is defined, the user has to connect I/O variables to its channels.

Connecting variables

Removing connected variables

Comments


Connecting variables

To set the connection of a channel, the user has to double click on its location in the list on the right. It is also possible to select (highlight) it and run the "Edit / Set channel/parameter" command. The following icons are used to represent channels in the list:

free channel

connected channel

The list contains all the variables which match with the selected board type and direction. Only variables which are not yet connected are listed here. The "Connect" button connects the variable selected in the list to the selected channel. The "Free" button removes (disconnects) the variable from the selected channel. "Next" and "Previous" buttons are used to select another channel of the board. The location of the selected channel is always displayed in the title of the dialog box.


Removing connected variables

The "Tools / Free board channels" command disconnects all the I/O variables already connected on the selected board.


Comments

The comment text of a declared I/O variable is displayed with its name in the board list. As ISaGRAF also enables the use of directly represented variables (% notation), comments may also be attached to free channels. Use the "Tools / Set channel comment" command to enter a comment for the free channel currently selected in the board list. This command cannot be used to change the comment of an I/O variable declared in the project dictionary.


Directly represented variables

Free channels are the ones which are not linked to a declared I/O variable. ISaGRAF enables the use of directly represented variables in the source of the programs to represent a free channel. The identifier of a directly represented variable always begins with "%" character.

Below are the naming conventions of a directly represented variable for a channel of a single board. "s" is the slot number of the board. "c" is the number of the channel.

%IXs.c	free channel of a boolean input board

%IDs.c	free channel of an integer input board

%ISs.c	free channel of a message input board

%QXs.c	free channel of a boolean output board

%QDs.c	free channel of an integer output board

%QSs.c	free channel of a message output board

Below are the naming conventions of a directly represented variable for a channel of a complex equipment. "s" is the slot number of the equipment. "b" is the index of the single board within the complex equipment. "c" is the number of the channel.

%IXs.b.c	free channel of a boolean input board

%IDs.b.c	free channel of an integer input board

%ISs.b.c	free channel of a message input board

%QXs.b.c	free channel of a boolean output board

%QDs.b.c	free channel of an integer output board

%QSs.b.c	free channel of a message output board

Below are examples:

%QX1.6	6th channel of the board #1 (boolean output)

%ID2.1.7	7th channel of the board #1 in the equipment #2 (integer input)

A directly represented variable cannot have the "real" data type.


Numbering

Use the "Options / Numbering" command to set numbering conventions. You can specify the number used for the first slot and the number used for the first channel of each board in the following dialog box:

As a default, slot numbering starts at index 0, and channel numbering starts at index 1.

Warning: be very careful while changing numbering conventions as it has effect on symbols used for directly represented variables and may lead to compiling errors if directly represented I/O variables are used in existing programs.


Setting individual protections

The ISaGRAF workbench provides a complete data protection system based on hierarchized passwords. I/O connection can be globally protected by a password. Additionaly, ISaGRAF enables you to set individual protection to any I/O channel. This assumes that:

- passwords are already defined in the password definition system (use the "Project / Set password" command of the Project Management window) so that protection levels are available for individual protection.

- you use protection levels with higher priority for individual protection compared to global I/O protection.

When an I/O channel has individual protection, a small icon is draw close to its name in the I/O connection window:

Use the "Set protection" and "Remove protection" commands of the "Edit" menu to set or remove an individual protection for selected channel. Both commands ask you to enter a valid password so that a protection level can be attached to the channel. Then, each time you want to change connection to a channel having individual protection you must enter a password with sufficient priority level.

Warning: if a channel is protected with a level, and the corresponding password is removed from protection system, and if no higher level password is defined, connection to the channel cannot be changed anymore unless a new password with sufficient level is defined.