Models and Asset Modeling


In EnOS, modeling is a critical step in abstracting assets into digital objects. Models bridge the physical world and the digital platform by defining the characteristics and behaviors of assets, enabling data management and business applications. Depending on business requirements, assets can be abstracted as either device assets or logical assets. This document provides a detailed explanation of their design and implementation.


Note

When you create models in EnOS Model Management , only models with Model Usage set to Device Connection can be used in EnOS Device Connectivity and Management, and can be queried and updated via the Model Service APIs.

Designing Models


Models reflect the characteristics and functionalities of physical assets through attributes, measurement points, and commands:


Model Element

Definition

Real-World Mapping

Examples

Attributes

Static information about an asset that rarely changes during operation.

Basic information or fixed parameters of a physical asset, typically determined by the manufacturer or during installation.

Model No., installation location, rated power

Measurement Points

Dynamic time-series data generated during asset operation, used for monitoring and analysis.

Operational status or environmental data of a physical asset, typically collected by sensors.

Wind speed, temperature, current

Commands

Control instructions or operations an asset can respond to, ranging from simple actions to complex logic sequences.

Executable functions or behaviors of a physical asset, typically associated with actuators.

Start motor, shut down device

Abstracting Assets


Assets are classified into device assets and logical assets based on whether they correspond to a physical device. The table below compares their differences:

Dimension

Device Asset

Logical Asset

Real-World Object

Physical device

Business entity or aggregated object

Data Source

Directly from device sensors

Aggregated or computed data

Model Source

Device model, based on hardware characteristics

Business model, based on business requirements


For example, consider a wind turbine. From an external perspective, it appears as a single unit, but internally, it comprises multiple devices. On an IoT platform, you can choose to abstract the wind turbine as either a device asset or a logical asset based on your business needs.

Device Assets and Device Models


Defining a wind turbine as a standalone device means it is treated as a single device instance bound to a model. Data from internal components (e.g., generator, blades, sensors) is represented as attributes, measurement points, or commands of that device.


../../_images/device_model.png


In this scenario, you only need to prepare one wind turbine model. An example is provided below:

Attributes

Measurement Points

Commands

  • Turbine ID

  • Location

  • Installation Date

  • Generator Model

  • Blade Count

  • Sensor Type

  • Generator Temperature

  • Generator Speed

  • Generator Power

  • Blade Vibration Frequency

  • Blade Angle

  • Wind Speed

  • Ambient Temperature

  • Wind Direction

  • Start/Stop Generator

  • Reset Generator

  • Adjust Blade Angle

  • Lock Blades

  • Calibrate Sensor

  • Restart Sensor

Logical Assets and Business Models


Defining a wind turbine as a combination of devices means it is treated as a logical asset bound to a business model. Its internal components (e.g., generator, blades, sensors) are treated as independent devices, each bound to its own device model. These models define their respective attributes, measurement points, and commands, with mapping relationships established between the wind turbine model and the device models.


Business Model


In this scenario, the wind turbine corresponds to one business model, while its internal components (e.g., generator, blades, sensors) each correspond to a device model. This requires designing 4 models and defining the mapping relationships between them.

1. Designing Business Models


The business model defines the global characteristics of the wind turbine. Below is an example of a wind turbine business model:

Attributes

Measurement Points

Commands

  • Turbine ID

  • Location

  • Installation Date

  • Site-Wide Power Output

  • Site-Wide Wind Speed

  • Site-Wide Vibration Frequency

  • Start All Devices

  • Stop All Devices

  • Reset All Devices

2. Designing Device Models


Each sub-device has its own model, defining its attributes, measurement points, and commands. These sub-device models can be aggregated into the wind turbine either by Referencing Components or by Creating an Asset Tree and Node, which builds a topology while preserving device independence.


Below are examples of three device models:

Device Model

Attributes

Measurement Points

Commands

Generator

  • Generator Model

  • Rated Power

  • Generator Temperature

  • Generator Speed

  • Generator Power

  • Start Generator

  • Stop Generator

  • Reset Generator

Blade

  • Blade Count

  • Blade Material

  • Blade Vibration Frequency

  • Blade Angle

  • Adjust Blade Angle

  • Lock Blades

Sensor

  • Sensor Type

  • Installation Location

  • Wind Speed

  • Ambient Temperature

  • Wind Direction

  • Calibrate Sensor

  • Restart Sensor

3. Configuring Mapping Rules


To enable the aggregation functionality of logical assets, mapping rules are required to associate device model with the wind turbine model. Whether you treat the 3 device types as components or child nodes in an asset tree, you can Configuring Property Rules for attributes and measurement points in the wind turbine model. Below is an example of mapping relationships between the wind turbine model and the 3 device models:


Wind Turbine Model Property

Device Model Property

Mapping Rule

Attribute: Turbine ID

N/A

N/A, inherent to logical asset

Attribute: Location

N/A

N/A, inherent to logical asset

Attribute: Installation Date

N/A

N/A, inherent to logical asset

Attribute: Generator Model

Generator Attribute: Generator Model

Turbine.GeneratorModel = Generator.Model

Attribute: Blade Count

Blades Attribute: Blade Count

Turbine.BladeCount = Blades.Count

Attribute: Sensor Type

Sensor Attribute: Sensor Type

Turbine.SensorType = Sensor.Type

Measurement Point: Site-Wide Power Output

Generator Measurement Point: Generator Power

Turbine.SiteWidePower = SUM(Generator1.Power, Generator2.Power, …, GeneratorN.Power)

Measurement Point: Site-Wide Wind Speed

Sensor Measurement Point: Wind Speed

Turbine.SiteWideWindSpeed = AVG(Sensor1.WindSpeed, Sensor2.WindSpeed, …, SensorN.WindSpeed)

Measurement Point: Site-Wide Vibration Frequency

Blades Measurement Point: Blade Vibration Frequency

Turbine.SiteWideVibration = MAX(Blades1.Vibration, Blades2.Vibration, …, BladesN.Vibration)