You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Configuring the Device Module

The Device Module in FactoryStudio plays a central role in managing communication between the HMI and devices in an industrial automation system. To ensure seamless integration and optimal performance, it is essential to properly configure the Device Module. This includes selecting the appropriate communication protocol, creating and managing device channels, and defining device nodes and points.

The typical configuration workflow for the Device Module has the following sequence:

On this page:


Configuration Workflow

The typical configuration workflow for the Device Module has the following sequence:

Device Module Configuration Workflow

Action

Where 

Comments

Create Channels

Devices → Channels

Identify the required field devices and protocols the project requires, create channels accordingly.

Create Nodes

Devices → Nodes

Identify the Network addresses and relevant information to all stations and devices that need connectivity.

Map Tags to Point addresses

Devices → Points

Optionally, you can Copy Tags from Excel/CSV from Excel or execute Import Wizards.

Create or Customize AccessTypes

Devices → AccessTypes

Optionally, you can optimize the communication, grouping Points with similar requirements to the same AccessType.


Communication Protocol Selection

FactoryStudio supports a wide range of communication protocols to facilitate interaction between the HMI and various industrial devices. To select the appropriate protocol for your system, consider factors such as compatibility with the devices in your network, data transfer speed, reliability, and security requirements. Once you have determined the most suitable protocol, configure it within the Device Module to establish communication between the HMI and devices.

There are various befits in including the included Native Protocols, instead of having to acquired and maintain a third-party OPC Server to enable the connection. See the Page <<< Native vs OPC for more informant

Available Communication drivers

The up-to-date list of Communication drivers is publics at docs.tasoft.com at the Communication Drivers section.

Additional driver can be created using the Drivers Toolkit.



Creating and Managing Device Channels

Device channels in FactoryStudio are the pathways for communication between the HMI and the devices in the system. To create and manage channels, follow these steps:

To create channels:

  • Go to Edit → Devices → Channels.

  • Click Create New.

  • The Create New Channel window displays.

  • Enter or select information, as needed.

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


Device Channel Creation Settings

Field/Column

Description

Channel Name

Enter a name for the channel. The system allows you to know if the name is not valid.

Protocol

Select the protocol this channel uses.

Interface

Select the interface type for this channel.

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

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

  • TCPIP - Use for Ethernet or wireless networks. 

Description

Enter a description for this channel.

For more information about the configuration for common protocols and interfaces, click Help at the top of the tab.

To edit device channels:

  • Go to Edit → Devices → Channels.

  • To add or remove a column, right-click the column heading area and select or deselect columns.

  • Edit the fields on the row corresponding to the channel you want to modify.

Device Channel Configuration Properties

Field/Column

Description

ProtocolOptions

Configure the options for this protocol.
The protocol options are dependent upon the selected protocol. Select the protocol, from the dropdown list at the top of the page, and click the HELP button to access the specific protocol's documentation.

Settings

Configure the settings for this channel. The available values depend on the interface the channel is using.

The settings here must match the settings on the slave device. 

  • For a serial interface, typically keep the defaults. 
  • For a MultiSerial interface, enter the number of RS-232 ports to use in the Ports field. 
  • For a TCPIP interface: 
    • AcceptUnsolicited - Accept unsolicited input from the slave. 
    • ListeningPort - TCP port where the slave device is connected (default is 502). 
    • NodeConnection - Number of parallel requests sent to each node (asynchronous communication). 
    • MaxSimultaneousConnections - Maximum number of concurrent connections. 
    • ShareNodeSameIP - Several slaves are connected to a single IP address. For example, RS485/Ethernet Converters. 
    • UseSingleThread - Use a single thread for the same IP nodes. 
    • UsePingToCheckConnection - Check for connection before sending a packet. 

Timeout

Configure the timeout options for this channel. Typically, keep the default value.

IntialState

Select the initial state for this channel.

Enabled: the channel is loaded and execution starts when the project starts.

Disabled: the channel is loaded, but does not starts execution going the disabled state.

Remote: the channel is local in a remote Computer defined that the Remote Settings. See more information at Remote Execution.

Reserved: the channel is not loaded, it acts as the channel was temporarily deleted from the project.

Remote Settings

Set the primary IP and backup IP to configure the remote computer where this channel will run

Driver Version

The version of the current driver being used.

  • Communication Drivers can run on remote computers, sending...    < <. link child Page on remote >>>>>





Creating Nodes

Nodes are the devices or PLCs on the network that you communicate with. You can enter the settings for your nodes as usual through the Engineering Workspace. You can also import settings from an OPC server or from another data source. See "Importing PLC Addresses" below.To configure nodes:

  • Go to Edit → Devices → Nodes.

  • Enter or select information, as needed.

  • To add or remove a column, right-click the column heading area and select or deselect columns.


Device Node Configuration Properties

Column

Description

Name

Enter a name for the node. The system lets you know if the name is not valid.

Channel

Select the channel for this node. For more information about the configuration for common protocols, click Help at the top of the tab.

PrimaryStation

Enter the information required to access the primary node, based on the protocol selected.

The protocol options are dependent upon the selected protocol. Select the protocol from the dropdown list at the top of the page and press the HELP button to access the specific protocol's documentation.

For Modbus protocol:

  • For a Serial interface, the SlaveID is the device's slave address on the Modbus network. Valid addresses are 1-247. 
  • For a MultiSerial interface, select the number of the ComPort and enter the SlaveID, which is the device's slave address on the Modbus network. Valid addresses are 1-247. 
  • For a TCPIP interface: 
    • IP - Identification of the slave device's address. 
    • Port - TCP port where the slave device is connected (default is 502). 
    • SlaveID - Device slave address on the Modbus network. Valid addresses are 1-247. 


  • For OPC interfaces:
  • Service URL - Defines the location of the OPC server. 
    • You must configure the DCOM settings to access an external OPC server. Contact support for assistance. 
  • RefreshRate - Server refresh rate. 
  • AllTemsSameGroup - Adds all items to a single group OPC. This way, only one connection is created with the OPC server. 
  • WaitAfterConnect - The time the application waits, after a project starts, to attempt to communicate. 

OPC UA and OPCXmlDA protocols have a "Test"button to test the connection. OPC UA also has a "Certificates" button to create new certificates for the system.|

BackupStation

Enter the information required, based on the protocol, to access the backup node. When the backupstation is defined and a communication failure occurs on the primary station, the system automatically attempts to establish communication with the backup station.

SyncDate

Date that the import was done (read only field).

SyncStation

Information about the station where the import was done - Station IP, Port and Slot - (read only field).

SyncSettings

Information about the settings used by the system to import the file (read only field).

Description

Enter a description for this node.

[Other columns]For definitions of other columns that are available in many tables, see Common Column Definitions.

Adding and Editing Points

Data Points define specific values for each node that can be accessed using tags. The number of data points you can configure is related to both the ProductModel that is configured for the project and your software license. 

To configure data points:

  • Go to Devices → Points.

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

  • Enter or select information, as needed.

  • To add or remove a column, right-click the column heading area and select or deselect columns.

    Device Points Configuration Properties

    Field/Column

    Description

    TagName

    Enter a tag name or click "..." to select a tag. You can also create a new tag.

    Node

    Select the node for this data point.

    Address

    Enter the register address which is based on the PLC and protocol for this data point and tag.

    The Protocol options are dependent upon which protocol is selected. Select the protocol from the dropdown list at the top of the page, and press the HELP button to access the specific protocol's documentation.

    DataType

    Select the data type you want to use. Most protocols should use the native option. When native is used, the protocol will automatically handle the data conversion.

    Selecting a different data type overrides the defaults. Some options may not be applicable to the selected node. Make sure you know the applicable data types.

    Modifiers

    If the PLC uses a different byte order, select the options you want. You can change the position bit, byte, Word, or Dword of the data that is communicated.

    AccessType

    Select the access type for this data point. You can define and configure the access types. See Access Types below.

    Scaling

    If you want to manipulate the tag value, select the options you want.

    When the data is read in the Equation option:

    • Div - The system will divide the register value by what you enter here. 
    • Add - The system will add the amount you enter here as an offset of the result of the division. 
    • For a write operation, the calculations are the opposite (multiple by the Div value, then subtract the Add value).

    LabelA text that represents a label on the point
  • Customizing the Pre-defined AccessTypes

    FactoryStudio comes with several pre-defined access types that define the specific methods for reading and writing the values of each data point. To further optimize data exchange, users can customize these access types as needed. To customize pre-defined access types:

    To configure access types:

    • Go to Devices → AccessTypes.

    • Do one of the following:

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

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

    • Enter or select information, as needed.

    One very efficient AcceesType is to read data when it is being used by the application. Go to the section OnDisplayOrServer AccessType for more information.


Importing PLC Addresses

When creating communication nodes and data 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 a table from Excel. The tables can have different columns or order, as long you include the title of the column in the copy and paste operations. The system will put the data in the expected columns, even if the order is different in the source and target tables.

  • You can import the data from csv files.

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

  • You can use various Import Wizards from many data sources

  • For OSIsoft® PI database, there is a FactoryStudio version to share definitions.

  • A programming API is available that can populate the tables from code, even from runtime execution when it is necessary.


If your PLC or field device has an open database or a file with available addresses and you want the PLC and FactoryStudio addresses to have tight integration, contact support. 


Importing from an OPC Server

After you create an OPC communication node, you can select the node and click Import to import the OPC database for the project. FactoryStudio automatically creates the tags and communication points. 


Importing from Excel

To create and import Tags:

  • In Excel, make a table with the columns that are shown below. 

To successfully import the tags, you need the TagName, Type, and Address columns. 

After you chose the device protocol and create a new node, click on the Import button. Then, choose the .CSV file that contains the tag's information and click on the ok button.  

  • The Tags and Points will be created automatically in Edit > Tags.

 

  • Edit > Device > Points 

After you use the Import tool for the first time, the system will save whatever settings you used. The import button switches to now be called the "Sync" button. This make the button execute a synchronization that verifies the previously imported addresses and the new ones.


Access Types Configuration

Access types define the specific methods for reading and writing the values of each data point. This could be the polling rate, whether or not a read is performed on startup, and whether or not unsolicited input is accepted. FactoryStudio comes with a few predefined access types that you can use, or you can create your own.

To configure access types:

  • Go to Devices → AccessTypes.

  • Do one of the following:

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

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

  • Enter or select information, as needed.

    Device AccessType  Configuration Properties

    Field/Column

    Description

    Name

    Enter a name for this access type.

    Read

    ReadPolling

    Select when you want to enable read polling.

    ReadPollingRate

    Enter how often the address value is retrieved.

    ReadTrigger

    Enter an object property that tells the system when to read the value.

    ReadOnStartup

    When selected, the system reads the value on startup.

    ReadStatus

    Enter an object property that receives the status of the read communication.

    ReadCompleted

    Enter an object property that receives an indication that the reading is completed. The value will change between 0 and 1 every time a reading is completed.

    Write

    WriteEventEnable

    Select to enable the writing of values to the PLC.

    WriteEvent

    Select when the value is written.

    WriteTrigger

    Enter an object property that tells the system when to write the value.

    WriteStatus

    Enter an object property that receives the status of the write communication.

    WriteCompleted

    Enter an object property that receives an indication that the writing is completed. The value will change between 0 and 1 every time a writing is completed.

    Settings

    AcceptUnsolicited

    When selected, the system accepts values from the PLC, even if the polling time has not yet elapsed.

    UseStaticBlocks

    Select to use the block command field

    BlockCommand

    Enter a definition for each block that will be created. Check the driver documentation to see if the specific driver uses this field and the valid values.

    Description

    Enter a description for the access type.

One very efficient AcceesType is to read data when it is being used by the application. Go to the section OnDisplayOrServer AccessType for more information.



TSimulator Configuration

For a generic explanation on Device Module, Channels, Nodes, and Points configuration, please refer to the reference guide.

Quick video tutorial

Simulation Driver Overview:

The TSimulator simulation driver is a communication protocol that allows users to generate random values in a variety of data types for testing and validation purposes. It is designed to be used with the FactoryStudio Device Module and provides a set of flexible options that allow users to create accurate and customized simulations for their systems. TSimulator supports multiple data types, including BOOL, INTEGER, FLOAT, STRING, RAMP, and SINE. For each data type, the user can configure the minimum and maximum value that the simulation value can reach, as well as other options such as string length for the STRING type or ramp step for the RAMP type.

Supported Data Types: TSimulator supports several data types that can be used to create custom simulations. Below are the supported data types and their configuration options: BOOL: The BOOL type allows generating random values of 0 or 1 to simulate on/off or true/false states. The user can configure the minimum and maximum value that the simulation value can reach.

INTEGER: The INTEGER type allows generating random values from a specific range of integers. The user can configure the minimum and maximum value that the simulation value can reach.

FLOAT: The FLOAT type allows generating random values from a specific range of floating-point numbers. The user can configure the minimum and maximum value that the simulation value can reach.

STRING: The STRING type allows generating random values of strings with a specific length. The user can configure the minimum and maximum value that the simulation value can reach and also set the string length.

RAMP: The RAMP type allows generating values of a ramp that gradually increase or decrease. The user can configure the minimum and maximum value that the simulation value can reach and also set the incremented value at each simulation step.

SINE: The SINE type allows generating values based on the sine function, which can be used to simulate cyclical behaviors. The user can configure the minimum and maximum value that the simulation value can reach.

Overall, TSimulator offers many flexible options that allow users to customize simulations to meet their specific testing and validation needs.


Summary Information

Communication Driver Name: TSimulator - SCADA Random Values

Current Version: 1.0.0.0

Implementation DLL: T.ProtocolDriver.TSimulator.dll


Channel Configuration

Protocol Options: Not used in this driver.

Node Configuration: Not used in this driver.


Point Configuration

The syntax for the TSimulator communication points is: <Type>:<Min>;<Max>

Where 

  • <Type>: Represents the Simulation Type:
    • BOOL: The tag receives a random BOOL value, 0 or 1.
    • INTEGER: The tag receives a random integer value from 0 to 5.
    • FLOAT: The tag receives a random float value from 0 to 5.
    • STRING: The tag receives a random string with 10 string lengths.
    • RAMP: The tag receives values from 0 to 10 in ascending order.
    • SINE: The tag receives values based on the sine function, its behavior is similar to a wave.
  • <Min> and <Max>: Represents the upper and lower limits that the mapped tag can reach;
  • <Step>: It's only used if the selected type is Ramp. It defines the value incremented at each step of the simulation (must be an integer value).


For the STRING simulation type, the StringLength can be configured in the Modifiers column.

Example Points Configuration

TagName

Node

Address

DataType

AccessType

Modifiers

MySine

SimulatorNode

SINE:-50;50

Native

Read


MyRamp

SimulatorNode

RAMP:0;100

Native

Read


MyString

SimulatorNode

STRING:

Native

Read

StringLength=5

MyBool

SimulatorNode

BOOL:

Native

Read


MyInt

SimulatorNode

INTEGER:0;10

Native

Read


MyFloat

SimulatorNode

FLOAT:-500;-100

Native

Read


Troubleshoot

The driver execution status can be observed through the diagnostic tools, which are:

  • Trace window
  • Property Watch
  • Module Information

A status value of 0 (zero) means the communication is a success. Negative values indicate an internal driver error and positive values mean there are protocol errors.


In this section...

  • No labels