This repository is a core components of "RoboticBase". The latest version (0.5) conforms to FIWARE Release 7.8.1.
"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".
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 |
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.
Please see this repository ogcaizu/ogc-poc1.
Please see this repository RoboticBase/uoa-poc2.
- kubernetes client PC
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 |
-
Set the password of MQTT user in the following yaml file:
-
Change the domain name and email defined in the following yml file:
-
Change the SSH key path defined in the following yml file:
-
If necessary, update the values defined in the following yml files:
-
Generate Azure Credentials by executing following shell script:
$ ./tools/generate_azure_credentials.sh
-
Start "pipenv shell"
$ pipenv shell
-
Start RoboticBase/core on Azure AKS using ansible
$ ansible-playbook -i inventories/aks --extra-vars="ansible_python_interpreter=$(which python)" aks.yml
-
Set the password of MQTT user in the following yaml file:
-
If necessary, update the values defined in the following yml files:
-
Start "pipenv shell"
$ pipenv shell
-
Start RoboticBase/core on minikube using ansible
$ ansible-playbook -i inventories/minikube --extra-vars="ansible_python_interpreter=$(which python)" minikube.yml
- for Azure AKS: docs/en/install_guide_aks.en.md
- for minikube: docs/en/install_guide_minikube.en.md
- Azure AKS用: docs/ja/install_guide_aks.ja.md
- minikube用: docs/ja/install_guide_minikube.ja.md
- 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.
- IotAgent-UL is a bridge that can be used to communicate devices using the Ultralight 2.0 protocol and Orion.
- 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.
- RoboticBase/fiware-ambassador-auth
- A REST API component working with Ambassador on Kubernetes in order to authorize and authanticate the client.
- Bearar Authenticaton and Basic Authentication are supported.
Copyright (c) 2018-2020 TIS Inc.