Difference between revisions of "Internet of Things Agility integration"
(→Reading Point IoT extension) |
|||
| (15 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | = IoT (Internet of Things) Introduction = | + | |
| + | == IoT (Internet of Things) Introduction == | ||
Currently there is no world wide standard for interfacing IoT clouds. To link with particular network, new set of interfaces needs to be defined. | Currently there is no world wide standard for interfacing IoT clouds. To link with particular network, new set of interfaces needs to be defined. | ||
| − | Even different network types share same idea of sensors structure. Agility contains generic | + | Even different network types share same idea of sensors structure. Agility contains generic module which is intended to help organize different IoT providers. |
| + | Agility IoT extensions are embedded in Agility <ref name="agiotversion">Agility from version 7.2.12</ref>, but all extensions are hidden in standard product. Please follow instructions in this document to enable and setup IoT Extensions. | ||
| − | |||
| − | Basic principle with IoT Agility integration is to automate process of adding readings in agility. | + | == IoT Definitions == |
| − | IoT functionality | + | It is module which helps to describe and organise IoT structure. There is not much logic behind IoT Definitions it is kind of specialised dictionary which contains additional data to describe network and to bind appropriate export interface. To access Iot Definitions add to menu Item with link to form '''AGpmIotScan'''. |
| + | |||
| + | [[File:IoT_Def_Scan.png]] | ||
| + | |||
| + | |||
| + | === Detail form === | ||
| + | |||
| + | [[File: IoT Def Det.png]] | ||
| + | |||
| + | IoT device definition is generic structure. Most of fields are optional and had no hardcoded purpose. Meaning of particular field is defined in Interface (Export Definition). | ||
| + | |||
| + | ;Code | ||
| + | : This field is mandatory and unique. It is used as link for readings (it is not database constrain, but code is used as reference) | ||
| + | ;DevicePath | ||
| + | : Path common for all sensors (prefix) | ||
| + | ;Interface | ||
| + | : Export Definition which defines interface between agility and IoT provider. Interface ''Eurotech - Get etric Value'' is embedded for reference in standard agility system (check import / export definitions). | ||
| + | ;SensorLookupInterface | ||
| + | : This field is currently not used, but it is intended to store link to additional interface. For example it can be interface which is able to query IoT provider and return list of sensors. Such list can be used to feed combo '''SensorID''' on Reading Point Details. | ||
| + | ;List of Sensor Types | ||
| + | : First level of network description. For ''Euroteh Cloud'' it is sensor type. | ||
| + | |||
| + | |||
| + | === Sensor Types (Subdetail) === | ||
| + | |||
| + | [[File: IoT_Def_Property.png]] | ||
| + | ;Code | ||
| + | : Code & Description of sensor type definition is similar as standard dictionary. In future it can be extended with other fields required with different IoT provider. Used to feed combo on Reading Point Details. | ||
| + | ;List of Sensor Properties | ||
| + | : Second level of network description. For ''Euroteh Cloud'' it is just metric name. Used also on Reading Point Details to feed combo. | ||
| + | |||
| + | == Reading Point IoT extension == | ||
| + | |||
| + | Basic principle with IoT Agility integration is to automate process of adding readings in agility. To enable IoT version of reading point detail use form override functionality and override '''AGDetailsOfReadingPoints''' -> '''AGDetailsOfReadingPoints-IoT'''. | ||
[[File:ReadingPointDetails_IoT_version.png]] | [[File:ReadingPointDetails_IoT_version.png]] | ||
| − | = References = | + | ;IoT Enabled |
| + | : When check box is set to true then additional options appear on form. In above screen system was prepared to work with [http://www.eurotech.com/en/products/software+services/everyware+device+cloud Eurotech Cloud] solution. | ||
| + | |||
| + | ;Network Definition | ||
| + | : Allows to select predefined in system IoT Definition. | ||
| + | |||
| + | ;Sensor Type & Sensor Property | ||
| + | : Both combos represent predefined in IoT Definition structure (different for each Network Definition). | ||
| + | |||
| + | ;Sensor ID | ||
| + | : Unique identification of physical sensor (unique for particular IoT network). In Eurotech Solution each sensor contain ID printed on case. ''Sensor ID'' can be determined also by browsing network with tools provided by IoT provider. | ||
| + | |||
| + | ;Automatic Reading Period (seconds) | ||
| + | : System will read periodically (with given number of seconds) property of particular sensor and store received value as new reading. System will start to periodically read value only when period is greater than 9 seconds and appropriate status flow is enabled. Check if background is running, status flow is enabled in configuration file and ''IoT Pool Sensor Reading'' status flow is ''Active'' (Business Rules -> ReadingPointBO -> DataBO.ProcessMngt.ReadingPointBO -> Status Flow -> IoT Pool Sensor Reading). | ||
| + | |||
| + | ;Pull Sensor Value | ||
| + | : Allows to manually call IoT network and immaterially add results to reading (without Status Flow or Background) | ||
| + | |||
| + | === Reading Point Structure === | ||
| + | Reading point structure is extended with generic fields IotSensorRef01... IotSensorRef09. Currently used are: IotSensorRef01 for sensor type lookup and IotSensorRef02 for sensor property lookup. Additional fields can bu used with different IoT network providers. | ||
| + | |||
| + | {| class="wikitable" | ||
| + | |- | ||
| + | ! scope="col" |Column Name | ||
| + | ! scope="col" |Data Type | ||
| + | ! scope="col" |Allow Nulls | ||
| + | |- | ||
| + | |IotEnabled | ||
| + | |sxpLogical | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorCode | ||
| + | |sxpCode | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotDefID | ||
| + | |sxpID | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotReadingPeriod | ||
| + | |sxpInt | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef01 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef02 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef03 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef04 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef05 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef06 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef07 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef08 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |IotSensorRef09 | ||
| + | |sxpDesc | ||
| + | |NULL | ||
| + | |- | ||
| + | |} | ||
| + | |||
| + | == References == | ||
<references /> | <references /> | ||
Latest revision as of 10:42, 26 April 2016
Contents
IoT (Internet of Things) Introduction
Currently there is no world wide standard for interfacing IoT clouds. To link with particular network, new set of interfaces needs to be defined. Even different network types share same idea of sensors structure. Agility contains generic module which is intended to help organize different IoT providers. Agility IoT extensions are embedded in Agility [1], but all extensions are hidden in standard product. Please follow instructions in this document to enable and setup IoT Extensions.
IoT Definitions
It is module which helps to describe and organise IoT structure. There is not much logic behind IoT Definitions it is kind of specialised dictionary which contains additional data to describe network and to bind appropriate export interface. To access Iot Definitions add to menu Item with link to form AGpmIotScan.
Detail form
IoT device definition is generic structure. Most of fields are optional and had no hardcoded purpose. Meaning of particular field is defined in Interface (Export Definition).
- Code
- This field is mandatory and unique. It is used as link for readings (it is not database constrain, but code is used as reference)
- DevicePath
- Path common for all sensors (prefix)
- Interface
- Export Definition which defines interface between agility and IoT provider. Interface Eurotech - Get etric Value is embedded for reference in standard agility system (check import / export definitions).
- SensorLookupInterface
- This field is currently not used, but it is intended to store link to additional interface. For example it can be interface which is able to query IoT provider and return list of sensors. Such list can be used to feed combo SensorID on Reading Point Details.
- List of Sensor Types
- First level of network description. For Euroteh Cloud it is sensor type.
Sensor Types (Subdetail)
- Code
- Code & Description of sensor type definition is similar as standard dictionary. In future it can be extended with other fields required with different IoT provider. Used to feed combo on Reading Point Details.
- List of Sensor Properties
- Second level of network description. For Euroteh Cloud it is just metric name. Used also on Reading Point Details to feed combo.
Reading Point IoT extension
Basic principle with IoT Agility integration is to automate process of adding readings in agility. To enable IoT version of reading point detail use form override functionality and override AGDetailsOfReadingPoints -> AGDetailsOfReadingPoints-IoT.
- IoT Enabled
- When check box is set to true then additional options appear on form. In above screen system was prepared to work with Eurotech Cloud solution.
- Network Definition
- Allows to select predefined in system IoT Definition.
- Sensor Type & Sensor Property
- Both combos represent predefined in IoT Definition structure (different for each Network Definition).
- Sensor ID
- Unique identification of physical sensor (unique for particular IoT network). In Eurotech Solution each sensor contain ID printed on case. Sensor ID can be determined also by browsing network with tools provided by IoT provider.
- Automatic Reading Period (seconds)
- System will read periodically (with given number of seconds) property of particular sensor and store received value as new reading. System will start to periodically read value only when period is greater than 9 seconds and appropriate status flow is enabled. Check if background is running, status flow is enabled in configuration file and IoT Pool Sensor Reading status flow is Active (Business Rules -> ReadingPointBO -> DataBO.ProcessMngt.ReadingPointBO -> Status Flow -> IoT Pool Sensor Reading).
- Pull Sensor Value
- Allows to manually call IoT network and immaterially add results to reading (without Status Flow or Background)
Reading Point Structure
Reading point structure is extended with generic fields IotSensorRef01... IotSensorRef09. Currently used are: IotSensorRef01 for sensor type lookup and IotSensorRef02 for sensor property lookup. Additional fields can bu used with different IoT network providers.
| Column Name | Data Type | Allow Nulls |
|---|---|---|
| IotEnabled | sxpLogical | NULL |
| IotSensorCode | sxpCode | NULL |
| IotDefID | sxpID | NULL |
| IotReadingPeriod | sxpInt | NULL |
| IotSensorRef01 | sxpDesc | NULL |
| IotSensorRef02 | sxpDesc | NULL |
| IotSensorRef03 | sxpDesc | NULL |
| IotSensorRef04 | sxpDesc | NULL |
| IotSensorRef05 | sxpDesc | NULL |
| IotSensorRef06 | sxpDesc | NULL |
| IotSensorRef07 | sxpDesc | NULL |
| IotSensorRef08 | sxpDesc | NULL |
| IotSensorRef09 | sxpDesc | NULL |
References
- ↑ Agility from version 7.2.12



