Difference between revisions of "Datonis Resources"

From Datonis
Jump to: navigation, search
m (SDK resources)
m (Links to the github locations)
Line 41: Line 41:
 
Examples of such boards include Raspberry PI that can run Raspibian. You may want to use one of the following ways to connect to Datonis:
 
Examples of such boards include Raspberry PI that can run Raspibian. You may want to use one of the following ways to connect to Datonis:
 
* Write a custom adapter/plugin within the [[Datonis Edge Gateway]]
 
* Write a custom adapter/plugin within the [[Datonis Edge Gateway]]
* [[Using the Datonis Java SDK|Use the Datonis JAVA SDK]]
+
* [[Using the Datonis Java SDK|Use the Datonis JAVA SDK]] ([https://github.com/Altizon/Aliot-SDK-Examples/tree/master/java Github location for the JAVA SDK])
* [[Using the Datonis Python SDK|Use the Datonis Python SDK]]
+
* [[Using the Datonis Python SDK|Use the Datonis Python SDK]] ([https://github.com/Altizon/Aliot-SDK-Examples/tree/master/python Github location for the Python SDK])
 
Some customization work is still required when you use the JAVA or Python SDKs:
 
Some customization work is still required when you use the JAVA or Python SDKs:
 
* Writing buffering and re-transmission logic to handle internet outages
 
* Writing buffering and re-transmission logic to handle internet outages
 
* Reading and converting input signals over IO pins and converting into numeric values
 
* Reading and converting input signals over IO pins and converting into numeric values

Revision as of 05:29, 20 July 2017

Connectivity

Broadly, there are 2 kinds of assets that you typically connect to the Datonis IOT platform

  • Machines or Equipment within a specific area like a factory
  • Assets that are deployed remotely within a geography (example: oil wells or wind turbines etc.)

We recommend a few best practices while connecting assets in these two scenarios

Connecting machines or equipment within a factory

In this scenario, machines are equipment usually have data collected via PLCs like Siemens, Rockwell, Allen Bradley and data made available over a Local Area Network (Ethernet) via:

  • OPC server (UA/DA)
  • Modbus
  • MTConnect

We recommend using the Datonis Edge Gateway that can:

  • Collect data using downstream protocols like OPC UA/DA, Modbus etc. for several machines
  • Buffer, aggregate, process and push it to Datonis using either HTTP(s) or MQTT(s) using secure mechanisms

You can find all information related to downloading builds, installing and configuring the Edge gateway over here.

Connecting remote assets

Following are a few examples of monitoring remote assets:

  • Energy meters deployed across households in remote locations
  • Oil wells equipped with devices for measuring yield and movement
  • Wind turbines equipped with devices for monitoring battery status, blade movement, wind velocity etc.

These are usually lone assets that have some sort of a hardware controller (e.g. STM32 (ARM), PIC32 (Atmel), Arduino (Atmel), Marvel (ARM), Galilieo (i386), Raspberry PI (ARM)). Signals for measuring sensor outputs are connected at digital general purpose IO pins on these boards.

Depending on the computing power of the board, you have following options:

Board with very limited memory and computing power (RAM in KBs) without a formal Operating System

These boards may or may not come with a Real Time Operating System (RTOS). In this scenario, we recommend using our C SDK and customizing it and cross compiling it to your needs.

Resources:

Customization work includes following activities:

  • Tweaking data types based on compiler requirements for your board
  • Replacing the Linux based TCP/IP API with TCP/IP API for your board (read, write etc.)
  • Making provision for generating an epoch timestamp on the board (using ticks etc.)
  • In case your board has a modem attached, configuring http calls via AT commands
  • Writing buffering and re-transmission logic to handle internet outages
  • Reading and converting input signals over IO pins and converting into numeric values
Board with a formal operating system like Linux/Windows

Examples of such boards include Raspberry PI that can run Raspibian. You may want to use one of the following ways to connect to Datonis:

Some customization work is still required when you use the JAVA or Python SDKs:

  • Writing buffering and re-transmission logic to handle internet outages
  • Reading and converting input signals over IO pins and converting into numeric values