Data Groups

NI InsightCM™ SDK 3.3 Help

Edition Date: December 2018

Part Number: 375191F-01

»View Product Info
Download Help (Windows Only)

Parent Topic: Device Software Fundamentals

When users configure a device in the InsightCM web application, they assign the device channels to one or more data groups. A data group is a set of channels that share acquisition properties and whose data and calculated features are written to the same data sets. Data groups are useful in situations where a single device connects to sensors whose data you want to acquire, analyze, and log according to different parameters. Consider the following simplified example where one device monitors two pieces of equipment.

Assigning the channels on each piece of equipment to different data groups allows you to configure unique behavior for each group of channels even though they belong to the same device. The following example shows how defining separate data groups allows users to configure behavior that is appropriate for each piece of equipment.

Data Group Channels Speed Reference Operating States Data Collection Settings
  • Mod1Ch0: Tachometer
  • Mod2Ch0: Accelerometer
  • Mod3Ch0: Accelerometer
Mod1Ch0 Run-up
  • Enter state when RPM rises above 200
  • Collect data every 30 seconds and when RPM changes by at least 50
  • Transfer data sets whose length is 10 seconds
  • Exit state when speed is above 1200 RPM for 20 seconds or speed is less than 200 RPM for 20 seconds
  • Collect data once per hour
  • Transfer data sets whose length is 7 seconds, including 3 seconds of pre-trigger data
  • Mod5Ch0: Displacement (Proximity probe)
  • Mod6Ch0: Accelerometer
Fixed speed: 3600 RPM Default
  • Collect data every 30 minutes
  • Transfer data sets whose length is 7 seconds, including 3 seconds of pre-trigger data

Establishing separate data groups also ensures that if a particular event, such as a run-up by the turbine, triggers the device to collect data as part of a stream, the stream contains data from only the turbine instead of from all channels, including those not affected by the run-up.

Role of Data Groups in Device Code

Data groups are an important concept in device software because processes in the Dataflow Script operate on data from a single data group at a time. This behavior allows processes to act on data according to the unique properties of that data set. For example, the following illustration shows how the FPGA Acquisition process bundles data from channels in the same data group together, and then the Trigger process evaluates the data from unique data groups according to their unique exit-condition settings.

How Data Groups Affect Device Software Development

When you develop device software, refer to the following guidelines that might impact your programming:

  • If you create a process that acquires or produces data, bundle the measurement data and device-model properties for only the data group to which they belong. Refer to the NI-developed Scan Engine and FPGA Acquisition processes as examples.
  • Retrieve data group properties from the device model that NI InsightCM Server sends to devices. Use the Get Device Model VI to return the complete device model, and then unbundle the properties for a specific data group.
  • If you create a process to handle measurement data as part of the Dataflow Script, the process must handle data sets that correspond to particular data groups. For more information about integrating with the Dataflow Script, refer to Requirements for Integrating a Process with the Dataflow Script.

Related Information

Providing Configuration Data to a Process

Sending a Data Set to the First Process in the Dataflow Script

Data Sets


Not Helpful