Eclipse Kura

From air
Jump to navigation Jump to search

Eclipse Kura est un framework Java consacré à l'IoT.

Logo Eclipse Kura
Logo d'Eclipse Kura v2.1.0


Description

Comme son nom l’indique Eclipse Kura fait partie du projet open source Eclipse bien connu, il est réalisé en collaboration avec Eurotech qui est un des principaux fournisseurs de technologies, produits et systèmes embarqués.

Kura a pour but de répondre aux besoins des systèmes de contrôles et d’analyse afin de mettre en place des passerelles pour la gestion de ces systèmes.

Il peut fonctionner sur différents dispositifs : ordinateurs, portables, consoles etc...

Basé sur la plateforme Java, il peut être également installé sur tous les appareils fonctionnant sur Linux.

Services proposés

  • I/O Services : Gestion des différents ports de communication disponibles dans l'IoT (série, usb, bluetooth, GPS, ...)
  • Data Services : Gestion des données, statistiques sur les flux et publication à distance. Utilisation de MQTT
  • Cloud Services : Donne accès à une API facile à mettre utiliser
  • Configuration Service : via OSGi, permet d'importer/exporter des configurations existantes des containeurs
  • Remote Management : reposant sur le cloud, permet toute la gestion des applications déployées sur Kura
  • Networking : permet la gestion et la configuration d'interfaces réseaux comme Ethernet, Wifi, ou modem cellulaires
  • Watchdog Service : permet la réinitialisation du matériel lorsqu'un défaut est détecté

Le tout est gérable via une interface web.

Architecture

Kura est une brique parmi tant d'autres dans le monde de l'IoT.

C'est avant tout un module d'assistance pour la gestion et d'administration des passerelles en IoT.

Ainsi, on voit que Kura est présent sur plusieurs couches de l'IoT, de l'application aux passerelles IoT.

Schéma d'architecture logicielle, présentant la place de Kura

Liens

Comment bien commencer avec Kura

   http://wiki.eclipse.org/Kura/Getting_Started

Dépendances

Eclipse Kura

   http://www.eclipse.org/kura/

OSGi

   https://www.osgi.org/

NMEA

   http://www.gpsinformation.org/dale/nmea.htm

MQTT

   http://air.imag.fr/index.php/MQTT

Apache Camel

   http://camel.apache.org/

Getting started

Launch the gateway in a Docker container

docker run --name=kura -d -p 8080:8080 ctron/kura-emulator:3.0.0-RC1

Browse the console http://admin:admin@localhost:8080/kura

Copy the following routes into the "Camel XML router" section.

   <routes
    xmlns="http://camel.apache.org/schema/spring"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://camel.apache.org/schema/spring https://camel.apache.org/schema/spring/camel-spring-2.17.3.xsd">
 
    <route id="camle-kura">
        <from uri="timer:trigger" />
        <setBody>
            <simple>${random(100)}</simple>
        </setBody>
        <to uri="stream:out" />
   </route>
  </routes>

Follow the log

docker logs -f kura


TODO avec CC2541 SensorTag Development Kit https://eclipse.github.io/kura/wires/kura-wires-sensortag.html