You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 26, 2023. It is now read-only.
"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.
7
+
8
+
"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.
9
+
For example, you can deploy a ROS program to the robot and access the raw data of the robot through "RoboticBase".
|fiware-ros-turtlesim|ROS package to act as a bridge FIWARE orion and ROS demo node (turtlesim)|
25
-
|fiware-ros-gopigo|ROS package to act as a bridge FIWARE orion and gopigo|
36
+
|[deployer](https://github.com/tech-sketch/mqtt-kube-operator)|MQTT client to deploy (or delete) a resource to its own Kubernetes|
37
+
|[bridge](https://github.com/tech-sketch/fiware_ros_turtlebot3_bridge)|ROS package to act as a bridge FIWARE orion and ROS|
38
+
|[operator](https://github.com/tech-sketch/fiware_ros_turtlebot3_operator)|ROS package to control turtlebot3 (simulator and physical robot)|
26
39
27
40
## Requirements
28
41
@@ -31,25 +44,28 @@ This repository construct a container-centric [FIWARE](http://www.fiware.org/) d
31
44
||version|
32
45
|:--|:--|
33
46
|OS|macOS Sierra 10.12.6|
34
-
|azure cli|2.0.42|
35
-
|kubectl|1.10.2|
36
-
|helm|2.9.1|
47
+
|azure cli|2.0.45|
48
+
|kubectl|1.11.2|
49
+
|helm|2.10.0|
37
50
|envsubst|0.19.8.1|
38
51
39
-
* minikube host PC
52
+
* minikube
53
+
* when you use monitoring & logging, you have to give **4 cpu & 8192 MB memories** to minikube.
40
54
41
55
||version|
42
56
|:--|:--|
43
57
|OS|macOS Sierra 10.12.6|
44
58
|VirtualBox|5.2.12 r122591|
45
-
|minikube|0.28.1|
59
+
|minikube|0.28.2|
60
+
|kubernetes|1.10.0|
46
61
47
-
* Kubernetes
62
+
* Azure AKS
63
+
* when you use monitoring & logging, you have to use the vm series which supports `Premium Storage` such as `Dsv3-series`.
48
64
49
65
||version|
50
66
|:--|:--|
51
-
|Azure AKS|1.10.3|
52
-
|minikube|1.10.0|
67
+
|region|japaneast|
68
+
|kubernetes|1.11.2|
53
69
54
70
## getting started
55
71
@@ -73,12 +89,16 @@ This repository construct a container-centric [FIWARE](http://www.fiware.org/) d
73
89
$ cp azure_aks/env.template azure_aks/env
74
90
$ vi env
75
91
```
76
-
1. prepare Microsoft Azure AKS step by step using [/docs/azure_aks/1_prepare_aks.ipynb](/docs/azure_aks/1_prepare_aks.ipynb).
77
-
1. start pods on Kubernetes step by step using [/docs/azure_aks/2_start_pods.ipynb](/docs/azure_aks/2_start_pods.ipynb).
78
-
1. register iot device & robot to fiware step by step using [/docs/azure_aks/3_register_device.ipynb](/docs/azure_aks/3_register_device.ipynb).
79
-
1. register business logic to fiware step by step using [/docs/azure_aks/4_register_business_logic.ipynb](/docs/azure_aks/4_register_business_logic.ipynb).
80
-
1. operate turtlebot3 step by step using [/docs/azure_aks/5_operate_turtlebot3.ipynb](/docs/azure_aks/5_operate_turtlebot3.ipynb).
81
-
1. visualize the data of turtlebot3 step by step using [/docs/azure_aks/6_visualize_data.ipynb](/docs/azure_aks/6_visualize_data.ipynb).
92
+
1. prepare Microsoft Azure AKS -- [/docs/azure_aks/01_prepare_aks.ipynb](/docs/azure_aks/01_prepare_aks.ipynb).
93
+
1. start pods on Azure AKS -- [/docs/azure_aks/02_start_pods.ipynb](/docs/azure_aks/02_start_pods.ipynb).
94
+
1. register iot device & robot to FIWARE -- [/docs/azure_aks/03_register_device.ipynb](/docs/azure_aks/03_register_device.ipynb).
95
+
1. register business logic to FIWARE -- [/docs/azure_aks/04_register_business_logic.ipynb](/docs/azure_aks/04_register_business_logic.ipynb).
96
+
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).
97
+
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).
98
+
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).
99
+
1. operate turtlebot3 step by step using [/docs/azure_aks/08_operate_turtlebot3.ipynb](/docs/azure_aks/08_operate_turtlebot3.ipynb).
100
+
1. visualize the data of turtlebot3 step by step using [/docs/azure_aks/09_visualize_data.ipynb](/docs/azure_aks/09_visualize_data.ipynb).
101
+
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).
82
102
83
103
### minikube
84
104
@@ -88,53 +108,58 @@ This repository construct a container-centric [FIWARE](http://www.fiware.org/) d
88
108
$ cp minikube/env.template minikube/env
89
109
$ vi env
90
110
```
91
-
1. prepare minikube step by step using [/docs/minikube/1_prepare_minikube.ipynb](/docs/minikube/1_prepare_minikube.ipynb).
92
-
1. start pods on Kubernetes step by step using [/docs/minikube/2_start_pods.ipynb](/docs/minikube/2_start_pods.ipynb).
93
-
1. register iot device & robot to fiware step by step using [/docs/minikube/3_register_device.ipynb](/docs/minikube/3_register_device.ipynb).
94
-
1. register business logic to fiware step by step using [/docs/minikube/4_register_business_logic.ipynb](/docs/minikube/4_register_business_logic.ipynb).
95
-
1. operate turtlebot3 step by step using [/docs/minikube/5_operate_turtlebot3.ipynb](/docs/minikube/5_operate_turtlebot3.ipynb).
96
-
1. visualize the data of turtlebot3 step by step using [/docs/minikube/6_visualize_data.ipynb](/docs/minikube/6_visualize_data.ipynb).
* Let's say that you want a iotagent-ul SERVICE which has multiple iotagent-ul PODs on your Kubernetes.
104
-
* When you put a message to iotagent-ul by using HTTP, there is no problem because iotagent-ul SERVICE routes a HTTP message to only one POD.
105
-
* But when you put a message to iotagent-ul by using MQTT, unfortunatly a MQTT message is processed as many times as the number of iotagent-ul PODs. Because the each iotagent-ul PODs subscribes for the same topic of MQTT Broker, so a MQTT message published that topic is proccessed by each PODs individually.
106
-
* How to treat this
107
-
* When a MQTT message is received, the customized iotagent-ul calls a REST API endpoint before processing the MQTT message.
108
-
* If the REST API returns `200 OK`, the customized iotagent-ul continues processing the MQTT message as ordinally.
109
-
* But if the REST API returns `409 Conflict`, the customized iotagent-ul stops processing.
110
-
* To do so, the cluster of iotagent-ul PODs processes only once for a MQTT message.
* A REST API component working with [tech-sketch/iotagent-ul](https://github.com/tech-sketch/iotagent-ul) and [etcd](https://coreos.com/etcd/docs/latest/) in order to check the message duplication.
1. start pods on minikube -- [/docs/minikube/02_start_pods.ipynb](/docs/minikube/02_start_pods.ipynb).
113
+
1. register iot device & robot to fiware -- [/docs/minikube/03_register_device.ipynb](/docs/minikube/03_register_device.ipynb).
114
+
1. register business logic to FIWARE -- [/docs/minikube/04_register_business_logic.ipynb](/docs/minikube/04_register_business_logic.ipynb).
115
+
1. start monitoring and logging on minikube -- [/doss/minikube/05_start_monitoring_and_logging.ipynb](/docs/minikube/05_start_monitoring_and_logging.ipynb).
116
+
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).
117
+
1. deploy programs to turtlebot3 through FIWARE -- [/docs/minikube/07_deploy_containers_to_turtlebot3.ipynb](/docs/minikube/07_deploy_containers_to_turtlebot3.ipynb).
118
+
1. operate turtlebot3 step by step using [/docs/minikube/08_operate_turtlebot3.ipynb](/docs/minikube/08_operate_turtlebot3.ipynb).
119
+
1. visualize the data of turtlebot3 step by step using [/docs/minikube/09_visualize_data.ipynb](/docs/minikube/09_visualize_data.ipynb).
120
+
1. delete programs from turtlebot3 through FIWARE -- [/docs/minikube/10_delete_containers_from_turtlebot3.ipynb](/docs/minikube/10_delete_containers_from_turtlebot3.ipynb).
* IotAgent-UL is a bridge that can be used to communicate devices using the Ultralight 2.0 protocol and Orion.
129
+
* 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.
* 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.
132
+
* In this demonstration, historical data are stored to mongodb.
* 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.
0 commit comments