Skip to content
This repository has been archived by the owner on Sep 26, 2023. It is now read-only.
/ core Public archive

a robot management platform based on FIWARE and Kubernetes. The latest version conforms to FIWARE Release 7.8.1

License

Notifications You must be signed in to change notification settings

RoboticBase/core

Repository files navigation

RoboticBase-core

This repository is a core components of "RoboticBase". The latest version (0.5) conforms to FIWARE Release 7.8.1.

Description

"RoboticBase" is a robot management platform based on FIWARE which enables you to manage and operate many kinds of robots and IoT devices as interactions of contexts.

"RoboticBase" allows robots to collaborate with IoT devices, Open Data, human beings and so on. You can connect a robot to "RoboticBase" using the open APIs of the robot, and operate the robot through those APIs. In turn, "RoboticBase" has an ability to manage ROS. If you connect a ROS robot to "RoboticBase", you can operate the robot directly without restrictions.
For example, you can deploy a ROS program to the robot and access the raw data of the robot through "RoboticBase".

roboticbase-core-architecture.png

FIWARE components summary version
FIWARE orion Publish/Subscribe Context Broker 2.3.0
FIWARE cygnus Data collection and Persistence Agent 1.17.1
FIWARE sth-comet An Agent to manage historical raw and aggregated time series context 2.7.0
FIWARE iotagent-ul Backend Device Management Agent 1.12.0
FIWARE iotagent-json Backend Device Management Agent 1.13.0
Other components summary version
kubernetes Container Orchestration Platform 1.14 or higher
ambassador API Gateway 1.1.1
auth Authorization and Authentication component working with ambassador 0.3.0
RabbitMQ Distributed Message Queue 3.8.2
MongoDB Document-oriented NoSQL Database 4.2.3
Prometheus Monitoring and Alerting toolkit 2.16.0
Grafana Analytics and Alerting platform for time series metrics 6.6.1
Elasticsearch Distributed search and analytics engine 7.6.0
fluentd Data collector for unified logging layer 2.9.0
Kibana Visualize the Elasticsearch data 7.6.0

An experiment to prove our concept

We and University of Aizu have been performed an experiment to guide a visitor by collaborating with heterogeneous robots, IoT devices and people through this Robot Platform.

PoC1 on Nov. 6th - 8th , 2018.

Please see this repository ogcaizu/ogc-poc1.

video

PoC2 on Nov. 26th - 29th , 2019.

Please see this repository RoboticBase/uoa-poc2.

short version long version

Requirements

version
OS macOS Mojave 10.14.6
Ubuntu 16.04
pyenv 1.2.16
pipenv 2018.11.26
kubectl 1.17.3
helm 3.1.1
  • for Azure AKS
version
openssl 2.6.5
azure cli 2.1.0
  • for minikube
    • when you use monitoring & logging, you have to give 4 cpu & 8192 MB memories or more to minikube.
version
VirtualBox 6.1.2 r135662
minikube 1.7.3

Getting Started

Start RoboticBase/core on Azure AKS

  1. Set the password of MQTT user in the following yaml file:

  2. Change the domain name and email defined in the following yml file:

  3. Change the SSH key path defined in the following yml file:

  4. If necessary, update the values defined in the following yml files:

  5. Generate Azure Credentials by executing following shell script:

    $ ./tools/generate_azure_credentials.sh
    
  6. Start "pipenv shell"

    $ pipenv shell
    
  7. Start RoboticBase/core on Azure AKS using ansible

    $ ansible-playbook -i inventories/aks --extra-vars="ansible_python_interpreter=$(which python)" aks.yml
    

Start RoboticBase/core on minikube

  1. Set the password of MQTT user in the following yaml file:

  2. If necessary, update the values defined in the following yml files:

  3. Start "pipenv shell"

    $ pipenv shell
    
  4. Start RoboticBase/core on minikube using ansible

    $ ansible-playbook -i inventories/minikube --extra-vars="ansible_python_interpreter=$(which python)" minikube.yml
    

Installation Guides

English

Japanese

Related Repositories

FIWARE components

  • telefonicaid/fiware-orion
    • Orion is a FIWARE's reference implementation of the Publish/Subscribe Context Broker.
  • telefonicaid/iotagent-ul
    • IotAgent-UL is a bridge that can be used to communicate devices using the Ultralight 2.0 protocol and Orion.
      • Ultralight 2.0 is a lightweight text based protocol aimed to constrained devices and communications where the bandwidth and device memory may be limited resources.
  • telefonicaid/iotagent-json
    • IotAgent-JSON is a bridge that can be used to communicate devices using the JSON and Orion.
  • telefonicaid/fiware-cygnus
    • Cygnus is a connector in charge of persisting certain sources of data in certain configured third-party storages, creating a historical view of such data.
  • telefonicaid/fiware-sth-comet
    • A component of the FIWARE ecosystem in charge of managing historical and aggregated time series context information.

Support components

License

Apache License 2.0

Copyright

Copyright (c) 2018-2020 TIS Inc.

About

a robot management platform based on FIWARE and Kubernetes. The latest version conforms to FIWARE Release 7.8.1

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •