Skip to content
This repository was archived by the owner on Sep 26, 2023. It is now read-only.

Commit 04066fa

Browse files
committed
Merge branch 'develop'
2 parents 5c094cd + 0361348 commit 04066fa

File tree

152 files changed

+17805
-9188
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

152 files changed

+17805
-9188
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
# Change Log
22

33
## [Unreleased]
4+
* We will update components and documents to adjust [FIWARE Release 7.6](https://github.com/Fiware/catalogue/releases)
5+
6+
## [0.4.0]
7+
### Changed
8+
* split repository ([core](https://github.com/RoboticBase/core) and [example-turtlebot3](https://github.com/RoboticBase/example-turtlebot3))
9+
* update components and documents to adjust [FIWARE Release 7.5.1](https://github.com/Fiware/catalogue/releases)
10+
11+
* cmd-proxy
12+
* techsketch/fiware-cmd-proxy:0.1.1 -> roboticbase/fiware-cmd-proxy:0.2.0
13+
* robot-visualization
14+
* techsketch/fiware-robot-visualization:0.2.0 -> roboticbase/fiware-robot-visualization:0.2.1
15+
* change `CYGNUS_MONGO_ATTR_PERSISTENCE` (column -> row)
416

517
## [0.3.0]
618
### Added

README.md

Lines changed: 57 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# RoboticBase-core
1+
# RoboticBase example: Deploy robot programs on TurtleBot3
22

3-
This repository is a core components of "RoboticBase".
3+
This repository is example of "RoboticBase-core".
44

55
## Description
66
"RoboticBase" is a robot management platform based on [FIWARE](http://www.fiware.org/) which enables you to manage and operate many kinds of robots and IoT devices as interactions of contexts.
@@ -13,33 +13,21 @@ For example, you can deploy a ROS program to the robot and access the raw data o
1313
|component|summary|
1414
|:--|:--|
1515
|[kubernetes](https://kubernetes.io/)|Container Orchestration Platform|
16-
|[ambassador](https://www.getambassador.io/)|API Gateway|
17-
|fiware-ambssador-auth|Authorization and Authentication component working with ambassador|
1816
|fiware-cmd-proxy|Business Logic component working with FIWARE orion|
19-
|[FIWARE orion](https://catalogue-server.fiware.org/enablers/publishsubscribe-context-broker-orion-context-broker)|Publish/Subscribe Context Broker|
20-
|[FIWARE cygnus](https://catalogue-server.fiware.org/enablers/cygnus)|Data collection and Persistence Agent|
21-
|[FIWARE iotagent-ul](https://catalogue-server.fiware.org/enablers/backend-device-management-idas)|Backend Device Management Agent|
22-
|[RabbitMQ](https://www.rabbitmq.com/)|Distributed Message Queue|
23-
|[MongoDB](https://www.mongodb.com/)|Document-oriented NoSQL Database|
24-
|[Prometheus](https://prometheus.io/)|Monitoring and Alerting toolkit|
25-
|[Grafana](https://grafana.com/)|Analytics and Alerting platform for time series metrics|
26-
|[Elasticsearch](https://www.elastic.co/products/elasticsearch)|Distributed search and analytics engine|
27-
|[fluentd](https://www.fluentd.org/)|Data collector for unified logging layer|
28-
|[Kibana](https://www.elastic.co/products/kibana)|Visualize the Elasticsearch data|
2917

3018
|gamepad|summary|
3119
|:--|:--|
32-
|[gamepad](https://github.com/tech-sketch/fiware-gamepad-controller)|Gamepad Controller connecting FIWARE|
20+
|[gamepad](https://github.com/RoboticBase/fiware-gamepad-controller)|Gamepad Controller connecting FIWARE|
3321

3422
|robot(Android)|summary|
3523
|:--|:--|
36-
|[robot(Android)](https://github.com/tech-sketch/fiware_xperiahello)|Android Application for [Xperia Hello!](https://www.sonymobile.co.jp/product/smartproducts/g1209/)|
24+
|[robot(Android)](https://github.com/RoboticBase/fiware_xperiahello)|Android Application for [Xperia Hello!](https://www.sonymobile.co.jp/product/smartproducts/g1209/)|
3725

3826
|turtlebot3|summary|
3927
|:--|:--|
40-
|[deployer](https://github.com/tech-sketch/mqtt-kube-operator)|MQTT client to deploy (or delete) a resource to its own Kubernetes|
41-
|[bridge](https://github.com/tech-sketch/fiware_ros_turtlebot3_bridge)|ROS package to act as a bridge FIWARE orion and ROS|
42-
|[operator](https://github.com/tech-sketch/fiware_ros_turtlebot3_operator)|ROS package to control turtlebot3 (simulator and physical robot)|
28+
|[deployer](https://github.com/RoboticBase/mqtt-kube-operator)|MQTT client to deploy (or delete) a resource to its own Kubernetes|
29+
|[bridge](https://github.com/RoboticBase/fiware_ros_turtlebot3_bridge)|ROS package to act as a bridge FIWARE orion and ROS|
30+
|[operator](https://github.com/RoboticBase/fiware_ros_turtlebot3_operator)|ROS package to control turtlebot3 (simulator and physical robot)|
4331

4432
## An experiment to prove our concept
4533
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 on Nov. 6th - 8th , 2018.
@@ -50,13 +38,15 @@ Please see this repository [ogcaizu/ogc-poc1](https://github.com/ogcaizu/ogc-poc
5038

5139
## Requirements
5240

41+
### When you use macOS,
42+
5343
* kubernetes client PC
5444

5545
||version|
5646
|:--|:--|
5747
|OS|macOS Sierra 10.12.6|
5848
|azure cli|2.0.45|
59-
|kubectl|1.11.2|
49+
|kubectl|1.12.2|
6050
|helm|2.10.0|
6151
|envsubst|0.19.8.1|
6252

@@ -67,18 +57,39 @@ Please see this repository [ogcaizu/ogc-poc1](https://github.com/ogcaizu/ogc-poc
6757
|:--|:--|
6858
|OS|macOS Sierra 10.12.6|
6959
|VirtualBox|5.2.12 r122591|
70-
|minikube|0.28.2|
71-
|kubernetes|1.10.0|
60+
|minikube|0.34.1|
61+
|kubernetes|1.12.5|
62+
63+
### When you use Ubuntu,
64+
* kubernetes client PC
65+
66+
||version|
67+
|:--|:--|
68+
|OS|Ubuntu 16.04|
69+
|kubectl|1.12.2|
70+
|helm|2.10.0|
71+
|envsubst|0.19.7|
72+
73+
* minikube
74+
* when you use monitoring & logging, you have to give **4 cpu & 8192 MB memories** to minikube.
75+
76+
||version|
77+
|:--|:--|
78+
|OS|Ubuntu 16.04|
79+
|VirtualBox|5.2.14 r123301|
80+
|minikube|0.34.1|
81+
|kubernetes|1.12.5|
7282

7383
* Azure AKS
7484
* when you use monitoring & logging, you have to use the vm series which supports `Premium Storage` such as `Dsv3-series`.
7585

7686
||version|
7787
|:--|:--|
7888
|region|japaneast|
79-
|kubernetes|1.11.2|
89+
|kubernetes|1.12.5|
8090

8191
## getting started
92+
1. deploy [RoboticBase-core](https://github.com/RoboticBase/core)
8293

8394
1. install jupyter notebook
8495

@@ -100,16 +111,14 @@ Please see this repository [ogcaizu/ogc-poc1](https://github.com/ogcaizu/ogc-poc
100111
$ cp azure_aks/env.template azure_aks/env
101112
$ vi env
102113
```
103-
1. prepare Microsoft Azure AKS -- [/docs/azure_aks/01_prepare_aks.ipynb](/docs/azure_aks/01_prepare_aks.ipynb).
104-
1. start pods on Azure AKS -- [/docs/azure_aks/02_start_pods.ipynb](/docs/azure_aks/02_start_pods.ipynb).
105-
1. register iot device & robot to FIWARE -- [/docs/azure_aks/03_register_device.ipynb](/docs/azure_aks/03_register_device.ipynb).
106-
1. register business logic to FIWARE -- [/docs/azure_aks/04_register_business_logic.ipynb](/docs/azure_aks/04_register_business_logic.ipynb).
107-
1. start monitoring and logging on Azure AKS -- [/doss/azure_aks/05_start_monitoring_and_logging.ipynb](/docs/azure_aks/05_start_monitoring_and_logging.ipynb).
108-
1. prepare minikube in turtlebot3, and start `mqtt-kube-operator` in order to enable remote deployment -- [/docs/azure_aks/06_prepare_remote_deploy.ipynb](/docs/azure_aks/06_prepare_remote_deploy.ipynb).
109-
1. deploy programs to turtlebot3 through FIWARE -- [/docs/azure_aks/07_deploy_containers_to_turtlebot3.ipynb](/docs/azure_aks/07_deploy_containers_to_turtlebot3.ipynb).
110-
1. operate turtlebot3 step by step using [/docs/azure_aks/08_operate_turtlebot3.ipynb](/docs/azure_aks/08_operate_turtlebot3.ipynb).
111-
1. visualize the data of turtlebot3 step by step using [/docs/azure_aks/09_visualize_data.ipynb](/docs/azure_aks/09_visualize_data.ipynb).
112-
1. delete programs from turtlebot3 through FIWARE -- [/docs/azure_aks/10_delete_containers_from_turtlebot3.ipynb](/docs/azure_aks/10_delete_containers_from_turtlebot3.ipynb).
114+
1. start pods on Azure AKS -- [/docs/azure_aks/01_start_pods.ipynb](/docs/azure_aks/02_start_pods.ipynb).
115+
1. register iot device & robot to FIWARE -- [/docs/azure_aks/02_register_device.ipynb](/docs/azure_aks/02_register_device.ipynb).
116+
1. register business logic to FIWARE -- [/docs/azure_aks/03_register_business_logic.ipynb](/docs/azure_aks/03_register_business_logic.ipynb).
117+
1. prepare minikube in turtlebot3, and start `mqtt-kube-operator` in order to enable remote deployment -- [/docs/azure_aks/04_prepare_remote_deploy.ipynb](/docs/azure_aks/04_prepare_remote_deploy.ipynb).
118+
1. deploy programs to turtlebot3 through FIWARE -- [/docs/azure_aks/05_deploy_containers_to_turtlebot3.ipynb](/docs/azure_aks/05_deploy_containers_to_turtlebot3.ipynb).
119+
1. operate turtlebot3 step by step using [/docs/azure_aks/06_operate_turtlebot3.ipynb](/docs/azure_aks/06_operate_turtlebot3.ipynb).
120+
1. visualize the data of turtlebot3 step by step using [/docs/azure_aks/07_visualize_data.ipynb](/docs/azure_aks/07_visualize_data.ipynb).
121+
1. delete programs from turtlebot3 through FIWARE -- [/docs/azure_aks/08_delete_containers_from_turtlebot3.ipynb](/docs/azure_aks/08_delete_containers_from_turtlebot3.ipynb).
113122

114123
### minikube
115124

@@ -119,60 +128,43 @@ Please see this repository [ogcaizu/ogc-poc1](https://github.com/ogcaizu/ogc-poc
119128
$ cp minikube/env.template minikube/env
120129
$ vi env
121130
```
122-
1. prepare minikube -- [/docs/minikube/01_prepare_minikube.ipynb](/docs/minikube/01_prepare_minikube.ipynb).
123-
1. start pods on minikube -- [/docs/minikube/02_start_pods.ipynb](/docs/minikube/02_start_pods.ipynb).
124-
1. register iot device & robot to fiware -- [/docs/minikube/03_register_device.ipynb](/docs/minikube/03_register_device.ipynb).
125-
1. register business logic to FIWARE -- [/docs/minikube/04_register_business_logic.ipynb](/docs/minikube/04_register_business_logic.ipynb).
126-
1. start monitoring and logging on minikube -- [/doss/minikube/05_start_monitoring_and_logging.ipynb](/docs/minikube/05_start_monitoring_and_logging.ipynb).
127-
1. prepare minikube in turtlebot3, and start `mqtt-kube-operator` in order to enable remote deployment -- [/docs/minikube/06_prepare_remote_deploy.ipynb](/docs/minikube/06_prepare_remote_deploy.ipynb).
128-
1. deploy programs to turtlebot3 through FIWARE -- [/docs/minikube/07_deploy_containers_to_turtlebot3.ipynb](/docs/minikube/07_deploy_containers_to_turtlebot3.ipynb).
129-
1. operate turtlebot3 step by step using [/docs/minikube/08_operate_turtlebot3.ipynb](/docs/minikube/08_operate_turtlebot3.ipynb).
130-
1. visualize the data of turtlebot3 step by step using [/docs/minikube/09_visualize_data.ipynb](/docs/minikube/09_visualize_data.ipynb).
131-
1. delete programs from turtlebot3 through FIWARE -- [/docs/minikube/10_delete_containers_from_turtlebot3.ipynb](/docs/minikube/10_delete_containers_from_turtlebot3.ipynb).
131+
1. start pods on Azure AKS -- [/docs/minikube/01_start_pods.ipynb](/docs/minikube/02_start_pods.ipynb).
132+
1. register iot device & robot to FIWARE -- [/docs/minikube/02_register_device.ipynb](/docs/minikube/02_register_device.ipynb).
133+
1. register business logic to FIWARE -- [/docs/minikube/03_register_business_logic.ipynb](/docs/minikube/03_register_business_logic.ipynb).
134+
1. prepare minikube in turtlebot3, and start `mqtt-kube-operator` in order to enable remote deployment -- [/docs/minikube/04_prepare_remote_deploy.ipynb](/docs/minikube/04_prepare_remote_deploy.ipynb).
135+
1. deploy programs to turtlebot3 through FIWARE -- [/docs/minikube/05_deploy_containers_to_turtlebot3.ipynb](/docs/minikube/05_deploy_containers_to_turtlebot3.ipynb).
136+
1. operate turtlebot3 step by step using [/docs/minikube/06_operate_turtlebot3.ipynb](/docs/minikube/06_operate_turtlebot3.ipynb).
137+
1. visualize the data of turtlebot3 step by step using [/docs/minikube/07_visualize_data.ipynb](/docs/minikube/07_visualize_data.ipynb).
138+
1. delete programs from turtlebot3 through FIWARE -- [/docs/minikube/08_delete_containers_from_turtlebot3.ipynb](/docs/minikube/08_delete_containers_from_turtlebot3.ipynb).
132139

133140

134141
## Related Repositories (Cloud)
135-
### FIWARE components
136-
* [telefonicaid/fiware-orion](https://github.com/telefonicaid/fiware-orion)
137-
* Orion is a FIWARE's reference implementation of the Publish/Subscribe Context Broker.
138-
* [telefonicaid/iotagent-ul](https://github.com/telefonicaid/iotagent-ul)
139-
* IotAgent-UL is a bridge that can be used to communicate devices using the Ultralight 2.0 protocol and Orion.
140-
* 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.
141-
* [telefonicaid/fiware-cygnus](https://github.com/telefonicaid/fiware-cygnus)
142-
* 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.
143-
* In this demonstration, historical data are stored to mongodb.
144-
145142
### Business Logic components
146-
* [tech-sketch/fiware-cmd-proxy](https://github.com/tech-sketch/fiware-cmd-proxy)
143+
* [RoboticBase/fiware-cmd-proxy](https://github.com/RoboticBase/fiware-cmd-proxy)
147144
* A web application working with [FIWARE orion context broker](https://github.com/telefonicaid/fiware-orion) in order to receive a command from gamepad or web controler and to send a command to ROS robot.
148-
* [tech-ksetch/fiware-robot-visualization](https://github.com/tech-sketch/fiware-robot-visualization)
145+
* [RoboticBase/fiware-robot-visualization](https://github.com/RoboticBase/fiware-robot-visualization)
149146
* A web application working with [FIWARE cygnus](https://github.com/telefonicaid/fiware-cygnus) in order to visualize the locus of ROS robot.
150147

151-
### Support components
152-
* [tech-sketch/fiware-ambassador-auth](https://github.com/tech-sketch/fiware-ambassador-auth)
153-
* A REST API component working with [Ambassador](https://www.getambassador.io/) on Kubernetes in order to authorize and authanticate the client.
154-
* Bearar Authenticaton and Basic Authentication are supported.
155-
156148
## Related Repositories (Device & Robot)
157149
### gamepad controller
158-
* [tech-sketch/fiware-gamepad-controller](https://github.com/tech-sketch/fiware-gamepad-controller)
150+
* [RoboticBase/fiware-gamepad-controller](https://github.com/RoboticBase/fiware-gamepad-controller)
159151
* A python3.6 application in order to receive gamepad events and to send a command corresponding the event to FIWARE.
160152

161153
### android application for Xperia Hello!
162-
* [tech-sketch/fiware_xperiahello](https://github.com/tech-sketch/fiware_xperiahello)
154+
* [RoboticBase/fiware_xperiahello](https://github.com/RoboticBase/fiware_xperiahello)
163155
* An android application for Xperia Hello! It connect to FIWARE using MQTT(S).
164156

165157
### ROS package
166-
* [tech-sketch/fiware_ros_turtlebot3_bridge](https://github.com/tech-sketch/fiware_ros_turtlebot3_bridge)
158+
* [RoboticBase/fiware_ros_turtlebot3_bridge](https://github.com/RoboticBase/fiware_ros_turtlebot3_bridge)
167159
* A [ROS](http://wiki.ros.org/) pakage witten by python2 in order to act as a bridge between FIWARE and ROS nodes.
168160
* When a MQTT message is received from a MQTT topic, this package create ROS message and publish a ROS message to a ROS topic.
169161
* At the opposite, when a ROS message is received from a ROS topic, this package publish a MQTT message to a MQTT topic.
170-
* [tech-sketch/fiware_ros_turtlebot3_operator](https://github.com/tech-sketch/fiware_ros_turtlebot3_operator)
162+
* [RoboticBase/fiware_ros_turtlebot3_operator](https://github.com/RoboticBase/fiware_ros_turtlebot3_operator)
171163
* A [ROS](http://wiki.ros.org/) pakage witten by python2 in order to control "turtlebot3" and receive its odometries.
172164
* You can use this package with either actual robot or simulator.
173165

174166
### Support components
175-
* [tech-sketch/mqtt-kube-operator](https://github.com/tech-sketch/mqtt-kube-operator)
167+
* [RoboticBase/mqtt-kube-operator](https://github.com/RoboticBase/mqtt-kube-operator)
176168
* A MQTT client to deploy (or delete) a resource to its own Kubernetes.
177169

178170
## License

ambassador/ambassador-azure-services.yaml

Lines changed: 0 additions & 28 deletions
This file was deleted.

ambassador/ambassador-deployment.yaml

Lines changed: 0 additions & 80 deletions
This file was deleted.

ambassador/ambassador-minikube-service.yaml

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)