IoT Domain Sub model– Information Model

Definition

  • It defines the structure of all information of Virtual Entities only at conceptual level and not at concrete level. In other words, it covers all aspects of adding information in the data. Here, structure covers attributes, relations and services that helps to know what, who, where, and when.
  • The detailed representation of information is not covered in this model.

This model covers following details (elements & their association) and of modelling of virtual entities:

1. Virtual Entity has attributes with name and its type.

  • Each virtual entity has a unique id or type i.e human, a car, or a temperature sensor.
  • A virtual entity can have zero to many attributes.

2. Attribute can have one or more values.

  • Each attribute has a name, a type (semantics) and one to many values.

3. Value has meta information(Meta data)

  • Value can further also have more values and each value has zero or many meta data. A virtual container keeps grouping of a value and associated zero or many meta data.

4. Meta Data might help to define other information like:

  • Time stamp (what time information is defined)
  • Location (Location where measurement took place
  • Quality (Quality of measurement) etc.

Meta data can itself have additional meta data i.e unit

5. Association between Virtual entity and Service description for specific attributes. Service allows to read attribute value or set the value based on changes in physical entity.

6. Services description describes services and associated interface. It also contains resource description that covers functionality of resource those are exposed by service.

7. Resource Description describes a resource and also contains description of device on which resource is hosted.

IoT Platform – Kaa

Description

  • It is an IoT Platform which is available in following forms:
  1. In-premise solution (Anyone can use it for their specialized or customized solution)
  2. Cloud based solution (Kaa provides Platform as a service solution – PaaS for their customization solution)
  • Below are the two major characteristics of Kaa architecture:
  1. Modular Architecture
  2. *Microservice Architecture

This type of architecture offers below benefits:

  1. Scalability
  2. Extensibility
  • This platform offers below features:
FeatureDescription
Device management– Digital twining and records of such devices
– Filtering & Grouping of devices
– Accessing credentials and metadata of devices
CommunicationEstablishing communication between Device & Gateway to address below requirements:
– Authentication & Authorization
– Data exchange
– Multiplexing
Data collectionCollection & Storage of below types of data and automatic remote transmission (telemetry)
– Time Series
– Device Logs
– Alerts
Configuration managementDevice and overall system configuration data in small & large scale deployment
Command invocationSending on demand or time based commands remotely.
Data analyticsQuerying mechanism to analyze & visualize the data.
Software updatesContinuous software up-gradation
VisualizationWeb interfaces for below requirements:
– Data Visualization
– Device Management
– Platform Administration
Also provides customizable dashboard
*Multi-tenancySupport for accessing solution by multiple tenants
InfrastructureManaging and monitoring clustering operations
Table 1.0

*Microservice architecture enables split a large solution into separate small multiple services where each service is responsible for specific functionality.

*Multi-tenancy is an architecture where a single instance of software is used by multiple tenants (group of users). Multi-tenancy architecture is different from multi-instances architecture.

Is it open source?

Yes, but cloud solution is subscription based.

https://github.com/kaaproject/kaa

Supported Messaging & Security protocols

  • MQTT
  • HTTPS
  • TLS

Supported Networks

  • Sigfox, LoRa, NB-IoT, …),Near Field (WiFi, BLE, Z-Wave, …) Cellular (2G/3G/4G/…)
  • Wired (Ethernet)

Supported technologies

  • NodeJS, REST API, WebSockets
  • Business tools like SAP, Salesforce, etc

Supported Languages

  • Java, Go, and TypeScript (NodeJS),
  • Platform users implement their compatible and integrated microservices also in Python, Rust, Scala, etc.

Supported Databases

  • Databases like Cassandra, MongoDB, InfluxDB, and others.

Supported OS

  • All major OS are supported.

Industries where it is used and can be used

  • Automotive
  • Agriculture
  • Healthcare
  • Logistics
  • Telecom
  • Wearables
  • Consumer Electronics
  • Renewable Energy etcs.