Intelligent Assets

What is Intelligent Assets?

Intelligent Assets is an out of the box ready application which is designed to be customizable for various use-cases like: Tracking & Monitoring Railcars, Monitoring Industrial Equipment, Reporting Machine Failures, and Controlling Microclimate Environments. The application requires no coding to configure for any use case and has the ability to extend and integrate data directly into existing business systems.

Completed Solution

The video below shows the completed solution for a company that makes chemicals. It also demonstrates how an email is sent when the temperature attribute is high for the tank asset or when it changes areas.

Setup

The following actions need to be performed, before starting to use a Portal.

  • Create a new user in the system with an Authenticated Role. This user is used to log into the Portal.
  • Some development tasks may be involved if the user intends on having their own custom devices. For example: design a normalizer custom to the device.
  • Make sure the following stream services are running by checking in the ClearBlade Console. AssetHistory, AssetLocation, AssetStatus, RulesEngine, Normalizer & ActionEmitter.

Quick Tutorial

Fig. 1 This is the rule creation workflow

Fig. 2 This is the Intelligent Assets workflow

This readme covers on how to use the Intelligent Assets Portal as an administrative user. The way to work with this system for the first time is to carryout the following tasks as mentioned, in the given order. In this readme we cover various sections including:

Welcome Tour

When a user signs up for an Intelligent Asset solution, there is a pop for a quick welcome tour of the solution. The user has the option to go through it, skip it, manage tour items, and re-visit later if needed. There is also a separate tour for the admin user.

Homepage

On the homepage of the Intelligent Assets portal there is a map that shows the location of the assets (tank) and areas (site storage). There will be a side navigation bar through different sections of the portal. The assets and areas can be searched and filtered by their types.

Asset Type

An asset type categorizes assets based on their attributes. Users can create asset types unique to their solutions by adding custom attributes.

Ex.:Tractor Engine Asset Type can have multiple tractor engine assets

Configuration

In this video, we will create an asset type. There is an unassigned type readily available for a user to use, however we will create a more specific type. Click on the ‘+’ to create the new asset type. Give the type the ID ‘tank’ and name it ‘Tank’. A base 64 encoded string can be used for ‘Icon’. If there other are assets available they can be included in ‘Children’. Add the attribute name and label as ‘temperature’. Assign the data type as number. Edit/View widget setting can be customized based on data type. Check ‘Keep History?’ to record historical data for the attribute. Click ‘Create’ to save asset type. We are also creating a second asset type called ‘Tank Car’ with an ID of ‘tank_car’. Assign the ‘Tank’ asset type as it’s child.

Required

Value Definition
ID The area type’s unique ID
Name Name of the area type

Optional

Value Definition
Icon Upload a base 64 encoded image for the area marker that will appear on the map
Description Description of the area type

Attributes

Only the Name value is required.

Value Definition
Name Name of the attribute
Label Displayed label of attribute
Data Type Data type of the attribute’s appearance
Edit Widget Sets up the type of widget that will be used when editing that attribute on an area
View Widget How ‘Edit Widget’ will appear
Keep History? When checked, the history of changes is recorded ‘Historical Data’ under ‘Areas’ in the ‘Monitor’ tab
Hide Attribute? When checked, it hides the attribute from
Read Only Attribute? When checked, the attribute cannot be edited by a user

Assets

An asset is a device(s), equipment, or gateway(s) that is to be monitored by the solution. The asset can belong to a single asset type that best matches the type’s characteristics. Click on the asset to see the location and event history.

Ex.:Tractor Engine #1 belongs to the Tractor Engine Asset Type

Configuration

In this video, we will create an asset using the previously created asset type ‘Tank’ and assign the ID ‘tank_1’ for Tank 1. Then we will assign the asset to the default group so that the logged in user will be able to view it. Latitude and longitude will be assigned to it’s future parent asset. Assign a random value for the initial temperature attribute as this will change later. Click create to save the asset. We also create a second asset for the asset type ‘Tank Car’. Assign the ID as ‘tank_car_1’ and label it ‘Tank Car 1’. Assign it the previously created asset ‘Tank 1’ as it’s child asset and assign it to the default group. Give it a latitude and longitude and hit ‘Create’. ‘Tank Car’ should show up under ‘Tank Car 1’ on the homepage and include direct attributes and map.

The columns can be customized in the asset_types collection under the schema column and then the data for those columns is stored in the assets collection under the custom_data column.

Required

Value Definition
Type Assign an asset type that is created previously
ID The asset’s unique ID. Once this is created it cannot be edited
Label Name of the asset
Group Grouped by related users, assets, and area

Optional

Value Definition
Children Secondary assets that has been created previously
Owners Email of the user(s) managing the asset
Image An image of the asset to be kept on record and can be viewed in an asset’s ‘Details’ under ‘Monitor’
Last updated Timestamp of the asset’s most recent update
Location updated Timestamp of the asset’s location update
Latitude The longitude of the asset’s location the map
Longitude The longitude of the asset’s location the map
Description Description of the asset

Area Type

An area type categorizes areas based on their attributes. Users can create area types unique to their solutions by adding custom attributes.

Ex.:Storage Area Types can have multiple areas

Configuration

In this we will create an area type. Give the type the ID ‘storage_site’ and name it ‘Storage Site’. Add attributes such as seismic activity and give an ID, label, and data type (number). Edit/View widget setting can be customized based on data type. Check ‘Keep History?’ to record historical data for the attribute. Click ‘Create’ to save area type.

Required

Value Definition
ID The area type’s unique ID
Name Name of the area type

Optional

Value Definition
Icon Upload a base 64 encoded image for the area marker that will appear on the map
Description Description of the area type

Attributes

Only the Name value is required.

Value Definition
Name Name of the attribute
Label Displayed label of attribute
Data Type Data type of the attribute’s appearance
Edit Widget Sets up the type of widget that will be used when editing that attribute on an area
View Widget How ‘Edit Widget’ will appear
Keep History? When checked, the history of changes is recorded ‘Historical Data’ under ‘Areas’ in the ‘Monitor’ tab
Hide Attribute? When checked, it hides the attribute from
Read Only Attribute? When checked, the attribute cannot be edited by a user

Area

An area is a physical location in either cartesian (xyz) or polar (latitude/longitude) coordinates. The area can be created under an area type that best describes the location’s use. Assets can be tracked going from point to point using area. Maps and 3D models are supported out-of-box on ClearBlade.

Ex.: Austin,TX Unit

Configuration

In this video, we will create our area. Start with a geometry type. In this example we will be using the GPS option. For area type use the previously created area type ‘Storage Site’. Assign the ID ‘austin_hq’ and label it ‘Austin Headquarters’. Assign the area to the ‘Default’ group. Use the marker tool to assign the location on the map. Use the polygon tool to create a geofence around the location point. Click ‘Create’ to save the area and it should appear in the ‘Areas’ list and the home map.

Required

Value Definition
Geometry Type The types of model view of the location (GPS, Indoor Model, and Indoor Area)
ID The area’s unique ID
Label Name of the area
Group Grouped by related users, assets, and area

Optional

Value Definition
Type Assign an area type that is created previously
Parent A primary area that has been created previously
Owners Email of the user(s) managing the area
Last updated Timestamp of the area’s most recent update
Image An image of the asset to be kept on record and can be viewed in an asset’s ‘Details’ under ‘Monitor’
Latitude The longitude of the area’s location the map
Longitude The longitude of the area’s location the map
Polygon Input an array of cartesian coordinates. Example: [{"x":167.15952331104467,"y":13.79853098728273,"z":-509.4261787433696}
Assets The assets assigned to the area
Description Description of the area

Action Types

An action type is the pre-requisite to event types. Action types have different actions which users can use when creating a rule. The 3 default action types are SMS, Email, and Publish [MQTT] Message. More can be added by users based on their solution.

Ex.: Send SMS

Configuration

There a 3 default action types but depending on permission an action can be added by the user.

Value Definition
ID The action type’s unique ID
Name Name of the action type

These values are required.

Fields

Required

Value Definition
Label Displayed label of field
Name Name of the field
Input Type Data type input accepted by field

Optional

Value Definition
Placeholder Default input of field
Required? A checked box requires a user to input data before proceeding
Allow Multiple? A checked box allows for multiple inputs

Event Type

An event type categorizes events based on their criteria. When creating an event type, users can add multiple action types. A lifecycle can be added to the event type based on their use case. Event types are passed when rule types are created.

Ex.: Temperature Alert Event - can be invoked when temperature goes too low or too high

Configuration

Create an event type for a car entering the geofence. We add the ‘send email ’ action type and open and closed states.

Create an event type for high temperature for the tank asset.

Value Definition
ID The event type’s unique ID
Name Name of the event type
Severity Connected to certain alarm states
Priority Connected to responses to event types
Action Types Assign an action type that is created previously
Description Description of the event type
Has Lifecycle? A checked box allows for the event to have open and closed states
Open State Give the open state a name if the Has Lifecycle? box has been checked. You can add multiple open states by clicking +
Closed State Give the close stated a name if the Has Lifecycle? box has been checked. You can add multiple closed states by clicking +

Rule Types

A rule type is used to categorize rules based on event types and the conditions associated with assets and asset types. A rule type can also use durations if the rules are supposed to be working for a period of time.

Ex. When my tank has a oil level that is out of range

Only the Name value is required.

Value Definition
Name Name of the attribute
Is External? Will trigger events in response to external rules when marked
Include Timeframe? Allows a user to indicate a time window during which this rule can create events when checked
Event Types Assign an asset type that is created previously

Entity

Value Definition
Prefix Makes the rules created as downstream of this rule type user readable
Filter Entity Selection Select to filter by Asset Types, Assets, Area Types, or Areas
Select [Entity] Allows to filter options of selected entity. Selecting “all” of a certain entity is discouraged
Allow Types? Allows user to apply rules to any entity of a type
Allow Specific? Allows user to apply the rule to one specific entity or all entities
Suffix A suffix to make the rules created as downstream of this rule type user readable

Duration

Mark the Include Duration? box for the ability to allow duration in rule creation

State Relationship

Create a rule type for high temperature for our tank assets using the state condition.

Value Definition
Select Attribute The name of the attribute
Attribute Label Name appearane of the attribute
Data Type Choose among String, Number, and Boolean. The rest of the fields will be based on the choice

String

Value Definition
Match Label Name of the ‘true’ field
No Match Label Name of the ‘true’ field
Value (optional) Give the attribute a value to match
Suffix A suffix to make the rules created as downstream of this rule type user readable

Number

Users are able to input criteria’s for various relationships

Assign labels to:

  • Greater Than (or Equal To)
  • Less Than (or Equal To)
  • (Not) Equal To

Then give it a value (integer) and its units

Boolean

Value Definition
True Label Name of the ‘true’ field
False Label Name of the ‘true’ field
Suffix A suffix to make the rules created as downstream of this rule type user readable

Area Relationship

Create a rule type for a car entering the ‘Storage Site ‘area using the area condition.

Value Definition
Inside Label How the rule be read. If the label is ‘is inside’ then an example rule might read ‘when an asset “is inside” the mall’
Outside Label Refer to Inside Label

Under the Area section are the same value keys as the Entity section except it only allows Area and Area Type for entities.

Choose AND or OR to create more conditions. Make sure to click ‘Create’ to save all changes before moving on.

Rule

A rule is one of the most important parts of this template. Rules allows users to manage and monitor Assets and Areas.

Area Rule

Create a rule for the car approaching our previously created GPS area and assign it to the previously created Area Rule Type.

Area Rule Testing

Test the previously created area rule and see it in action.

State Rule

Create a rule for the tank’s high temperature and a closing rule for the tank’s low temperature. We then assign them to the previously created State Rule Type.

State Rule Testing

Test the previously created state rule and closing rule and see them in action.

Events

An event of an event type is created whenever a rule’s conditions are satisfied. This can be for single/group of asset(s) and/or area(s). If an event type has an action associated with it, the action is executed when there is an event.

Parent Child Tree

Assets can have parent-child relationship trees to organize hierarchies of asset types.

Groups

A user can be assigned to groups and users of a certain group can perform tasks for assets and areas as decided by the admin.

Ex. When a user belongs to Maintenance Group and Engineering Group, they will only see those assets and areas

Users

Contains the list of users and their data in the system. Users can be added, edited, and deleted from here. Roles and groups can also be assigned to users.

Reports

The reports page is used to generate insights on the data in your system. A report code service can be used to handle all of the logic for formatting the data to be consumed by the table and can also accept a time range for querying. Schedules in the reports page are used to email the reports to relevant stakeholders on a regular interval.

Action Payload

Action payloads allow users to share event data with end-users. The template helps provide more context to the end-user as it includes the attribute(s) and the rule satisfied on it that led to the creation of the event.

Glossary

  • Primary Keys: the column(s) which uniquely identify a row in a database, such as id_column.