avatar  

Log out

Recently viewed tickets

Rockwell Collector

The purpose of this article is to be a reference for Rockwell collector part
of the full Data Collection Module documentation

Prerequisite:

A Starter package (SiteManager + accounts) 
A Rockwell CIP capable device (Only Rockwell 1769 model PLC supported)
Other sections in DCM:



The Collectors (array of objects, mandatory ) list elements contains the following fields:
FunctionTypeImportanceDescription
CollectorNamestringmandatoryUnique name (within this confguration file) of a device to collect data from. (This is the name used in the agent configuration). Follows the normal rules for names.
CollectorDesriptionstringoptionalDescription of this collector. For your use, no system function)
CollectorIPAddrstringoptionalDefault IP address (or DNS name) for the device to be polled. The agent Target IP address will take precedence over this.
CollectorPortnointeger > 0 and < 65535optionalDefault port number for the device to be polled. The agent Target Port number will take precedence over this. If neither CollectorPortno , nor agent Target Port Number is specified, the appropriate port will be used, depending on the Protocol parameter value.
Aliasstring optionalThis is the CollectorName of another collector, from which, all the parameters (expect CollectorName , CollectorDescription , CollectorIPAddr and CollectorPortno ) are copied from. An alias cannot refer to another alias.
Protocolstring-enum mandatoryThe protocol used to collected data. Currently 3 possible values exists: "OPC-UA/TCP", "Modbus/TCP", "Http/GET" and "Simulator".
ConnectRetryMininteger > 0 mandatoryMinimum number of seconds before trying to reestablish a connection to the device being sampled. An exponential backoff algorithm is used to retry connection establishment, starting after ConnectRetryMin and increasing to ConnectRetryMax.
ConnectRetryMaxinteger > 0mandatoryMaxumin number of seconds before trying to reestablish a connection to the device being sampled.
RockwellAccessObjectoptionalcollection of parameters needed to access a given Rockwell PLC.
SamplePointsArray of objectsmandatoryList of samples to be collected, possibly aggregated and stored in the Store'n'Forward database.


RockwellAccess

The RockwellAccess objects contains the following elements:
FunctionTypeImportanceDescription
RockwellPathstringmandatoryThe path of the device to connect to, e.g. "1,0".
RockwellTimeoutinteger > 0optionalConnect and read timeout (in milliseconds) for all tags of this collector. If not present, the value 500 is used.
RockwellTagsArray of objectsmandatoryList of the tags to be fetched if the Protocol is "Rockwell".


RockwellTags

The RockwellValue object contains the following elements:
FunctionTypeImportanceDescription
RockwellIDREFinteger >= 0 mandatoryThis is a reference to one of the RockwellIDs used in RockwellTags.
RockwellOffsetinteger >= 0optionalStart index from which to extract values from a tag. For instance, if a tag "MACHINE:SENSOR:1" with a RockwellElementCount of 6 is read, then an offset of 2 would use the third element of the tag as sample value.

Samplepoint items

The SamplePoints objects contains the following elements:
FunctionTypeImportanceDescription
SampleNamestringmandatoryName of this sampled value (sometimes called a tagname). Follows the normal rules for names.
SampleDescriptionstringoptionalis a text description of this sample value.
SampleUnitstringoptionalis a description of the unit of messurement for this sample.
SampleGroupstringoptionaldesignates (in some datasrvs) that all samplepoints in that group should be handled (displayed) together. The DCM system itself places no meaning on this group affiliation.
SamplesSavedinteger > 0mandatoryis the number of values collected that is saved as minimum in the Store'n'Forward database. If set to 0 the Samplepoint isn't stored in the S'n'F database and thus not delivered to cloud, but can be used for aggregations.
OnlySaveOnChangedbooloptionalcontrol if new sample values should only be saved to the store-and-forward database if the values have changed since last sample. If not set, it is false.
SampleDataTypestring-enummandatoryThe type of data collected. The possible values are: "bool" (1 bit), "sbyte" (8 bit signed), "byte" (8 bit unsigned), "int16" (16 bit signed), "uint16" (16 bit unsigned), "int32" (32 signed), "uint32" (32 bit unsigned), "int64" (64 bit signed), "uint64" (64 bit unsigned), "float" (32 bit), "double" (64 bit), "string" (variable text up to 24575 bytes. Includes terminating NUL), "data" (variable variable data up to 24575 bytes).
SampleLowerLimitinteger/doubleoptionalThe lower limit for the collected data. If the collected data value is less than SampleLowerLimit it is evaluated inaccordance to SampleLimitDiscard and SampleLimitAlarm.
SampleUpperLimitinteger/doubleoptionalThe upper limit for the collected data. If the collected data value is more than SampleUpperLimit it is evaluated inaccordance to SampleLimitDiscard and SampleLimitAlarm.
SampleLimitDiscardboolmaybe-optionalControls if a sample limit violation results in the sample value being discarded. Mandatory if either SampleLowerLimit or SampleUpperLimit is present.
SampleLimitAlarmboolmaybe-optionalControls if a sample limit violation generates an alarm. Mandatory if either SampleLowerLimit or SampleUpperLimit is present.
ModbusValueObjectmaybe-optionalDescription of how to extract a collected datavalue from a FC collected value. Mandatory of the protocol type is "Modbus/TCP".

{
      "CollectorName": "L18ERM",
      "CollectorDescription": "My first Rockwell",
      "Protocol": "Rockwell",
      "ConnectRetryMin": 2,
      "ConnectRetryMax": 240,
      "RockwellAccess": {
        "RockwellTags": [
          {
            "RockwellTagName": "PROGRAM: INV.SEC",
            "RockwellID": 1,
            "RockwellElementSize": 1,
            "RockwellSampleInterval": 15
          }
        ],
        "RockwellPath": "1,0"
      },
      "SamplePoints": [
        {
          "SampleName": "Test001",
          "SampleDescription": "Zaehlerwert",
          "SamplesSaved": 10,
          "SampleDataType": "int16",
          "RockwellValue": {
            "RockwellIDREF": 1,
            "RockwellOffset": 0
          }
        }
      ]
    }

See complete Rockwell examples here:
Creation date: 17/03/2020 10:02 (tvo@secomea.com)      Updated: 04/09/2020 13:53 (tvo@secomea.com)