Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Tip

Inteligent Electronic Devices (IEDs) on Action.NET are any real-time data sources. Typically, a device is a PLC or digital circuit service, another running Action.NET project, an OPC server, a PI System, or any equipment that has a communication protocol for exchanging information with the project. The following sections explain how to configure the device module, menu, Devices from the main menu Edit:

Devices and Interfaces

The devices in the Action.NET are any source of live data in real time. Typically, one device is a PLC, another design Action.NET, an OPC server, an external Asset Manager or Historian Server, or any equipment that has a communication protocol.

Data sources are connected through Channels. Each channel has an interface type (for example, RS-232, TCP/IP) and a device-specific protocol. A channel can access multiple stations (for example, devices) using a common protocol.

Each station is called Knot. Each node has one or more stitches data. Data points provide the specific data values to be accessed through tags. Each data point is linked to a specific tag.

Finally, each data point is associated with an Access Type. This defines the rules for reading and writing values at this data point, such as search rate, whether a read is performed at startup, and whether unsolicited input is accepted.

In summary, the Device Module configuration is performed in 3 steps:

  1. Set the equipment (and protocols) that the project will use in Edit → Devices → Channels.

  2. Defined the nodes, or PLC stations related to each channel, in Edit → Devices → Nodes

  3. Map the Tags in your data model for addresses on devices, in Edit → Devices → Points.

Optionally, you can customize or create new AccessTypes, mapping groups of similar communication requirements tags to the same AccessType.

To speed up the setup, the Action.NET provides many import wizards that will automatically create tags and device mapping using the PLC configuration or other available source of information.

See the Appendix - Communication Drivers for a complete list of communication protocols available in the Action.NET.

Setting Up Channels

Channels in Action.NET are the objects that implement media used to communicate the SCADA environment with PLCs and other IEDs. Many internal protocols are available. You must configure at least one channel for each protocol that you need to use.

To set up channels:

  1. Go to Edit > Devices > Channels

  2. Click Create New.

    • The new channel creation window is shown (figure below)

  • Enter or select the information as needed.

Column

Description


Channel Name

Enter a name for the channel. The system indicates whether the name is not valid, showing the cell with the red outline.

Protocol

Select the protocol that you will use on this channel. If you don't see a protocol you need, click More to provide information for a new protocol.


Interface

Select the interface type for this channel.

  • Serial-Use to configure serial parameters for RS232/485 networks.

  • MultiSerial-Use for configurations with multiple RS-232 ports.

  • TCPIP-Use for Ethernet or wireless networks.
    For more information about setting up common protocols, click Help at the top of the flap.


Description

Enter a description for this channel.


  • Click OK.

  • The channel is added as a new row in the table.

  • Enter or select the information for the new Channel as needed.

To show or hide a column, right-click the column header area and check or uncheck columns.

Column

Description

Name

Enter a name for the channel. The system indicates whether the name is not valid, showing the cell with the red outline.

Protocol

Shows the protocol that was selected

ProtocolOptions

Configure the specific options for this protocol.

Tip

Protocol options are dependent on the selected protocol. Select the as-box protocol at the top of the page and press the HELP button on your side to access the specific protocol documentation.

Interface

Shows the physical interface used by this channel.

Settings

Configure the settings for this channel. The available values depend on the interface that the channel is using.
Note: The settings here must match the settings of the master or slave device with which the channel will connect.

  • For the serial interface, typically maintain the defaults.

  • For a MultiSerial interface, type the number of RS-232 ports to use in the Ports field.

  • For the TCPIP interface:

    • AcceptUnsolicited - Accept unsolicited slave message.

    • ListeningPort- TCP port, where the slave device is turned on (default is 502).

    • NodeConnection-Number of parallel requests sent to each node (asynchronous communication).

    • MaxSimultaneousConnections - Maximum number of concurrent connections.

    • ShareNodeSameIP-A unique IP address and several connected slaves. For example, RS485/Ethernet or Terminal Servers.

Timeout

Configure the time-out options for this channel. Typically, keep the default value.

IntialState

Select the initial state for this channel. Enabled (Enabled) or not (Disabled). In any of these cases the protocol task will be fired and can be controlled in real time (enable or disable). A third option Remote, is used for triggering channels whose executables will control an object on another server. The last option Reserved should be used to completely disable a channel (without triggering the driver).

Remote Settings

In case you are running with InitialState Remote, in this column you can define the primary and backup IPs addresses of the servers on which the communication module of this channel will run.: PrimaryIP and BackupIP.

Description

Type a text with a description for this channel.

[Other columns]

For definitions of other columns that are available in many tables, see "Description of common columns"

  • Keep adding as many channels as you need.

  • If necessary, right-click a line to cut, copy, paste, or delete a line

Configuring Nodes

Nodes or Nodes in Action.NET are objects that match the IEDs devices, or PLC with which the application must communicate on the channel in which they are connected.
You can also import settings from an OPC server or other data source. See "Importing from an OPC Server"  and "Importing PLCs addresses."

To configure nodes:

  1. Go to Edit > Devices > Nodes.

  2. Enter or select the information as needed.

    • To show or hide a column, right-click the column header area and check or uncheck columns.

Column

Description

Name

Type a name for the node. The system indicates whether the name is not valid, showing the cell with the red outline.

Channel

Select the channel for this node. For more information about setting up common protocols, click Help at the top of the flap.

PrimaryStation



Enter the information needed to access the main node, based on the selected protocol.

Info

NOTE Protocol options are dependent on the selected protocol. Select the protocol in the combo box at the top of the page and press the Help next to access the protocol documentation.

For the Modbus protocol:

  • For a Serial interface, the SlaveID is the address of the slave device on the Modbus network. Valid addresses are 1-247.

  • For a MultiSerial interface, select the ComPort number and enter the SlaveID address of the slave device on the Modbus network. Valid addresses are 1-247.

  • For a TCPIP interface:

    • IP-Identification of the slave device address.

    • Port-TCP, where the slave device is turned on (default is 502).

    • SlaveID - slave device address on the Modbus network. Valid addresses are 1-247.

      For OPC interfaces:

  • Service URL-Sets the location of the OPC server.

    • You must configure DCOM settings to access an external OPC server. Contact support for assistance.

  • RefreshRate-Server Refresh Rate.

  • AllTemsSameGroup - Adds all items in a single OPC group. Thus, only one connection is created with the OPC server.

  • WaitAfterConnect—Time to communicate after the application is already running.

BackupStation

Enter the information needed to access the backup node, based on the selected protocol. When set, and a communication failure occurs on the main station, the system automatically tries to establish
communication with the Backup station.

Description

Description Type a description for this node.

  • Keep adding as many new nodes as you need.

Importing from an OPC Server

After you create an OPC communication node, you can select the node and click Import to import the opc server database into the project. The Action.NET automatically creates tags and communication points (Points table).
Once you have used the import tool for the first time, the system will save the settings used, so that the button will then show the word SYNC, which means that the next time you use it, a synchronization will be performed, checking which addresses have already been previously imported and which ones will be new.

Importing PLCs Addresses

When you create communication nodes and communication points (Points), you can import them if they are defined in another data source in the following ways:

  • You can copy and paste the contents of an Excel table. Tables can have different columns or order, as long as you include the column title in the copy and paste operations. The system will place the data in the expected columns, even if the order is different in the source and target tables.

Note

WARNING - For pasting tables on table Points are required, at least the S TagName, Type, and Address columns

  • You can import the data from CSV files.

  • For Rockwell ControlLogix devices, you can import L5K definition files.

  • For OSIsoft PI data ®, there is a Action.NET to share definitions.

  • A programming API is also available that can be used to write scripts to populate points tables, even at run time, when needed.

If the PLC device or other IED has an open database or file with the available addresses, and you would like to have a strong integration to do this configuration and charge of Action.NET addresses, contact support.

Configuring data point

The tab Points from space Devices is used to define the tags that will be acquired by this channel and node. It specifies the types of points (according to the protocol) and the
identifiers (with the addresses) used by the protocol for mapping the data within the IEDs.
The number of data points that you can configure is related to both the ProductModel configured for the project and its license to Action.NET. For information about product models, see "Family and Product Model" .

To set up data points:

  1. Go to Edit > Devices > Points.

    • You can copy and paste the tags from the Tag tab> Objects.

  2. Enter or select the information as needed.

    • To add or remove a column, right-click the column header area and check or uncheck columns.

Column

Description

TagName

Enter a tag name or click ... to select a tag. You can also create a new tag at this point.

Node

Select the node for this data point.

Address

Enter the registration address, based on the PLC and protocol for this data point and tag.
 
NOTE - Protocol options are dependent on the selected protocol. Select the protocol from the combo box at the top of the page and press the HELP on your side to access the specific protocol documentation

Datatype

Select the type of data you want to use. Most protocols should use the native option. When native is used, the protocol will automatically handle data conversion.
Selecting a different data types overrides the defaults. Some options may not apply to the selected node. Make sure you know the applicable data types.

Modifiers

If the PLC uses a different byte order, select the desired options. You can change the bit, byte, Word, or DWORD position of the data that is used in communication.

AccessType

Select the type of access for this point. You can configure access types. See . at "Configuring Accesses Types ofAccesses" .

Scaling

If you want to manipulate the tag value, somehow select the desired options. None, Linear,Equation, tagMinMax TagScaleMinMax
For the option Equation will be applied when reading the data:

  • Div-The system will split the amount received with what you enter here.

  • Add- The system will add the amount you enter here as a tradeoff for the split result.

  • For a write operation, the calculations are the opposite (multiply the value in Div, and then subtract the Add value).

Other columns

For definitions of other columns that are available in columns] many tables, see "Description of common columns".


  • Keep adding as many points as you need.

Configuring Access Types

In the Access Types (Access Types) are defined the reading and writing procedures, with sampling times, unsolicited events and other properties, which will be used in the treatment of each of the tags defined in the tab Points.
You can configure the types of access that control read, write, and other settings when the application accesses PLC or IED data..
The Action.NET comes with some predefined access types that you can use, or you can create others of your own, always according to the possibilities existing in the protocol in question,

To configure access types:

  1. Go to Edit > Devices > AccessTypes..

  2. Follow one of the following:

    • To edit an existing access type, double-click a field.

    • To create a new type of access, click Create New .

  3. Enter or select the information as needed.

Column

Description

Name

Enter a name for this type of access

Read

Readpolling


Select the option if you want to enable sampling reading

PollingRate

Enter the sampling period in milliseconds

ReadTrigger

Type an object property to tell the system when to read the value, per event.

OnStartup

When selected, the system makes a read at startup.

Write
WriteEnable


Select the option to allow the recording of values for the PLC.

WriteEvent

Select the event that will trigger the writing of the value: You can choose between Change, ChangeUp, or ChangeDown that occurred in the value.

WriteTrigger

Type an object property to tell the system when to write the value.

Settings
AcceptUnsolicited 

When selected, the system accepts PLC values, even if the sampling time has not expired.

UseStaticBlocks

Description

Enter a description for the access type.

[Other columns]

For definitions of other columns that are available in many tables, see "Description of common columns".

Info

NOTE - The Info - Module Information window contains information about the operation of the modules. For example, when choosing a Device module and a specific channel, you have a lot of information about how the communication channel works. During testing and execution of communication modules it is always quite useful to Diagnose Tools and also in Using Diagnostic Tools.

Runtime Devices Objects

The namespace Device is the entry point for all objects related to the devices module or Devices.
The object Device.Channel lists all configured channels and their properties at run time.
The object Device.Node lists all configured nodes and their properties at run time
The object Device.AccessType lists the types of access you set and has options for executing synchronous calls on reading and writing to the device.
The following tag properties are updated based on the device module:
tag.tagname.DevicePoint: address at the point of devices connected with this tag
See http://www.spinengenharia.com.br/help/an-2014/runtime/index.html for the full programming reference on runtime objects.

Code Tables

Status Codes

The following list displays codes used to indicate in real time the status of a node or channel.


These codes are in real time in

  • Device.node. <node name>. Status and in

  • Device.Channel. <channel name>. Status


List of codes:

0ssuccess
-1 BuildCommandException
-2 ParseCommandUnsolicitedException
-3 ParseReplyException
-4 BuildReplyUnsolicitedException
-5 ChannelException
-6 NodeException
-100 Base Send Error
-101 SendAndWait Error Base
-102 TCP Create Error 1
-103 TCP Create Error 2
-104 TCP Create SocketError
-105 TCP Connect Callback Error
-106 TCP Receive Error
-107 UDP Create Error
-108 UDP Receive Error
-109 Serial Create Error
-110 Serial Receive Error
-111 TCP NotConnected
-112 Start message timeout
-113 Receiving bytes timeout
-114 End message timeout
-115 Connect timeout
-200 ProtocolError
-201 InvalidProtocol
-202 InvalidStation
-203 InvalidCommand
-204 InvalidMsgSequence
-205 InvalidCheckSum
-206 InvalidAddress
-207 InvalidModifiers

Positive values are used as error status for specific protocols.

OPC DA Quality Codes

What do OPC DA quality codes indicate? The OPC quality code consists of 16 bits.

    • The 8-bit high are available for vendor-specific use and must be all 0 when not used.

    • The 8 low bits are divided into three sections.

      • The first two bits can pass the meaning Good, Bad, or Uncertain. If a server does not support quality code, good value is always passed.

      • The next four bits can be used to provide additional specific information about overall quality.

      • The last two bits are used if the boundary information is supported by the server. In VB, these are returned as Hex values that can be converted to meaningful information.

The two most common OPC quality codes are:

    • 192 or Hex C0 is of good quality.

    • 0 (decimal or hexadecimal) is of poor quality.

OPC specification quality codes




For more information, see the OPC specifications. (Note: Not all servers will support all of these codes)

Panel

On this page:

Table of Contents
maxLevel2