- Created by Jose Porto, last modified on Dec 23, 2021
- Translations
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 6 Next »
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:
Set the equipment (and protocols) that the project will use in Edit → Devices → Channels.
Defined the nodes, or PLC stations related to each channel, in Edit → Devices → Nodes
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:
Go to Edit > Devices > Channels
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.
| |
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. 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.
|
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:
Go to Edit > Devices > Nodes.
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. 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:
|
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 |
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.
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:
Go to Edit > Devices > Points.
You can copy and paste the tags from the Tag tab> Objects.
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. |
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. |
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" . |
Scaling | If you want to manipulate the tag value, somehow select the desired options. None, Linear,Equation, tagMinMax TagScaleMinMax
|
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:
Go to Edit > Devices > AccessTypes..
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 .
Enter or select the information as needed.
Column | Description |
Name | Enter a name for this type of access |
Read Readpolling |
|
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 |
|
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 | 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". |
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)
On this page:
- No labels