{"id":8688,"date":"2015-07-28T12:49:28","date_gmt":"2015-07-28T10:49:28","guid":{"rendered":"http:\/\/blog.zhaw.ch\/icclab\/?p=8688"},"modified":"2021-03-04T18:51:26","modified_gmt":"2021-03-04T16:51:26","slug":"cloud-robotics","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/","title":{"rendered":"Cloud Robotics"},"content":{"rendered":"<h1 id=\"Overview\">Overview<\/h1>\n<p>The connection between the physical world and the virtual world has never been as exciting, accessible, and economically viable as today. Sensors, actors and robots are able to deliver many physical services in several scenarios, including industrial production and home automation, elderly care, assisted living, logistics and cooperative maintenance.<\/p>\n<p>In isolation, <strong>computing capabilities of robots are however limited <\/strong>by embedded CPUs and small on-board storage units. By <strong>connecting robots among each other and to cloud computing<\/strong>, cloud storage, and other Internet technologies centered around the benefits of converged infrastructure and shared services, two main advantages can be exploited. First, <strong>computation can be outsourced to cloud services leveraging an on-demand pay-per-use elastic model<\/strong>. Second, <strong>robots can access a plethora of services complementing their capabilities<\/strong> (e.g., speech analysis, object recognition, knowledge sharing), enabling new complex functionalities and supporting learning.<\/p>\n<p>Cloud robotics is a natural extension to the Internet of Things (IoT). Where IoT devices will gather information about an environment to help make smarter decisions, cloud robotics will be able to use this information and act on it.<\/p>\n<p>Although there is clear recognition that Cloud access is required to complement robotics computation and enable functionalities needed for robotic tasks (e.g., self-driving cars), it is still unclear how to best support these scenarios.<\/p>\n<p><strong>State of the practice<\/strong><\/p>\n<p>The <strong>Robot Operating System (ROS)<\/strong> (<a href=\"http:\/\/www.ros.org\/\">http:\/\/www.ros.org\/<\/a>) has gained massive traction both in industry and research.<\/p>\n<p>ROS allows robotics developers to concentrate on one specific functionality at a time (e.g., planning, navigation, 3d reconstruction) implemented into so-called ROS nodes that can communicate through pub\/sub or RPC-like messages to implement a coherent robotic behavior.<\/p>\n<p>Its next release iteration (ROS2) will address most of the shortcomings of the previous version, for instance removing the need for a centralized master node and adopting a peer to peer discovery mechanism for nodes.<\/p>\n<p>Current ROS development is still faced with low-level interoperability and compilation concerns. Containers in this context are used for the moment simply as a way of providing a consistent running environment for ROS code, however none of the best practices from cloud computing (e.g., resource and container management, placement automation, resource and SW orchestration, continuous integration and deployment) have been adopted yet.<\/p>\n<figure id=\"attachment_10193\" aria-describedby=\"caption-attachment-10193\" style=\"width: 584px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-10193 size-large\" src=\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png\" alt=\"rviz lab\" width=\"584\" height=\"362\" srcset=\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png 1024w, https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-300x186.png 300w, https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-768x476.png 768w, https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-484x300.png 484w, https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png 1629w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/a><figcaption id=\"caption-attachment-10193\" class=\"wp-caption-text\">Our lab as seen and mapped by one of our turtlebots<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<h1 id=\"Objectives\">Objectives<\/h1>\n<p>The initiative\u2019s goal is to <strong>enable robotic applications to take full advantage of cloud computing services, resources, best practices, and automation by integrating ROS nodes and robots just as other composable services in the cloud<\/strong>.<\/p>\n<p>The results will benefit all robotic stakeholders:<\/p>\n<ul>\n<li><strong>Robotic and cloud developers<\/strong> will be able to deploy their application code in &nbsp;containers with a click, <b>triggering the orchestration of all needed supporting services<\/b> (e.g., databases, caches, load balancers, speech and video processing, ROS nodes) <b>and both virtual<\/b> (e.g., containers, virtual machines) <b>and physical resources<\/b> (e.g., robots, sensors, cameras, bare-metal machines). ROS nodes and robotic services will be easily composable and accessible from a market generating revenue for SW development of generic and ad hoc solutions;<\/li>\n<li><strong>Robot Producers<\/strong> will be able to leverage the advancements in cloud infrastructure and platforms needed to support robotic applications. This will enable them to provide end customers with fully functional robots that do not require on premises compute infrastructure and configuration. Moreover they will be able to leverage from a developer community and their SW artifacts;<\/li>\n<li><strong>End users<\/strong> will benefit from robots and applications that work out of the box and can be easily integrated among themselves and with their favourite cloud services.<\/li>\n<\/ul>\n<p>Cloud orchestration will cover the entire lifecycle of a robotics service, catering for timely resource allocation and dismissal, <b>taking full advantage of the cloud pay-per-use model, sensibly reducing operational costs with respect to an always-on solution<\/b>.<\/p>\n<p>Moreover, by taking a service oriented approach and adopting modern cloud-development methodologies, developers will benefit from continuous integration \/ deployment practices, resulting in <b>shorter release cycles and higher productivity<\/b>.<\/p>\n<p>This research initiative will also address:<\/p>\n<ul>\n<li>Review frameworks for offloading processing and storage tasks into suitable cloud services, including one of the first such frameworks, AdAPtS (2012).<\/li>\n<li>Delivery of a bundled set of service tooling, including a dynamic service registry, for the purpose of letting robots access cloud services many years after production despite constant service evolution.<\/li>\n<li>Fleet management for robots in the cloud.<\/li>\n<li>Collaborative knowledge sharing between robots using suitable online services.<\/li>\n<li>Identification of beneficial services to augment robot capabilities, such as image recognition and messaging.<\/li>\n<\/ul>\n<h1>Relevance to current and future markets<\/h1>\n<p>Robotics is a hot market with competitive manufacturers especially in Switzerland and Europe, including <a href=\"http:\/\/www.rapyuta-robotics.com\/\">Rapyuta<\/a>, <a href=\"https:\/\/www.aldebaran.com\/en\">Aldebaran<\/a> and (for educational purposes) <a href=\"http:\/\/www.lego.com\/en-us\/mindstorms\/\">LEGO Mindstorms<\/a>. The much larger and currently mostly untapped market is about robots connected to appropriate feedback-loop and cooperation services.<\/p>\n<h1 id=\"Architecture\">Relevant Standards and Architectures<\/h1>\n<p>ROS (Robot Operating System):&nbsp;<a href=\"http:\/\/www.ros.org\/\">http:\/\/www.ros.org\/<\/a><\/p>\n<p>Rapyuta: a Cloud Robotics framework&nbsp; <a href=\"http:\/\/rapyuta.org\/\">http:\/\/rapyuta.org\/<\/a><\/p>\n<h1>Articles and Publications<\/h1>\n<ul>\n<li>Giovanni Toffetti, Tobias L\u00f6tscher, Saken Kenzhegulov, Josef Spillner, and Thomas Michael Bohnert. 2017. Cloud Robotics: SLAM and Autonomous Exploration on PaaS. In <em>Companion Proceedings of the10th International Conference on Utility and Cloud Computing<\/em> (UCC &#8217;17 Companion). ACM, New York, NY, USA, 65-70. DOI: https:\/\/doi.org\/10.1145\/3147234.3148100<\/li>\n<li>J. Spillner, C. Piechnick, C. Wilke, U. A\u00dfmann, A. Schill: Autonomous Participation in Cloud Services. 2nd International Workshop on Intelligent Techniques and Architectures for Autonomic Clouds (ITAAC), Chicago, Illinois, USA, November 2012. (<a href=\"http:\/\/ieeexplore.ieee.org\/stamp\/stamp.jsp?tp=&amp;arnumber=6424962\">PDF<\/a>)<\/li>\n<\/ul>\n<p><strong>Our Youtube playlist<\/strong><\/p>\n<div class=\"lyte-wrapper\" title=\"Playlist: ZHAW ICCLab Cloud Robotics\" style=\"width:640px;max-width:100%;margin:5px;\"><div class=\"lyMe playlist\" id=\"WYL_PLwo9tjMJW12Rnbxdh2iHwGotKJrifGRj7\"><div id=\"lyte_PLwo9tjMJW12Rnbxdh2iHwGotKJrifGRj7\" data-src=\"https:\/\/blog.zhaw.ch\/icclab\/wp-content\/plugins\/wp-youtube-lyte\/lyteCache.php?origThumbUrl=https%3A%2F%2Fi.ytimg.com%2Fvi%2FNCjp2txUSmc%2Fhqdefault.jpg\" class=\"pL\"><div class=\"tC\"><div class=\"tT\">Playlist: ZHAW ICCLab Cloud Robotics<\/div><\/div><div class=\"play\"><\/div><div class=\"ctrl\"><div class=\"Lctrl\"><\/div><div class=\"Rctrl\"><\/div><\/div><\/div><noscript><a href=\"https:\/\/youtube.com\/playlist?list=PLwo9tjMJW12Rnbxdh2iHwGotKJrifGRj7\" rel=\"nofollow\"><br \/>Watch this playlist on YouTube<\/a><\/noscript><\/div><\/div><div class=\"lL\" style=\"max-width:100%;width:640px;margin:5px;\"><span class=\"lyte_disclaimer\">Defaulttext aus wp-youtube-lyte.php<\/span><\/div><\/p>\n<p><strong>Related blog posts<\/strong><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/first-robotics-and-ros-in-zurich-meetup\/\" class=\"wp-embedded-content\" data-secret=\"P4hQYfJP0N\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/first-robotics-and-ros-in-zurich-meetup\/\">First Robotics and ROS in Z\u00fcrich Meetup<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;First Robotics and ROS in Z\u00fcrich Meetup&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/first-robotics-and-ros-in-zurich-meetup\/embed\/#?secret=2DzmqgFegn#?secret=P4hQYfJP0N\" data-secret=\"P4hQYfJP0N\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/running-the-icclab-ros-kinetic-environment-on-your-own-laptop\/\" class=\"wp-embedded-content\" data-secret=\"jJRWfRmaIA\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/running-the-icclab-ros-kinetic-environment-on-your-own-laptop\/\">Running the ICCLab ROS Kinetic environment on your own laptop<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Running the ICCLab ROS Kinetic environment on your own laptop&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/running-the-icclab-ros-kinetic-environment-on-your-own-laptop\/embed\/#?secret=OMLm9v2yDD#?secret=jJRWfRmaIA\" data-secret=\"jJRWfRmaIA\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/configuring-the-ros-navigation-stack-on-a-new-robot\/\" class=\"wp-embedded-content\" data-secret=\"ED2wwQ5i3h\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/configuring-the-ros-navigation-stack-on-a-new-robot\/\">Configuring the ROS Navigation Stack on a new robot<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Configuring the ROS Navigation Stack on a new robot&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/configuring-the-ros-navigation-stack-on-a-new-robot\/embed\/#?secret=PdjxeQlp3X#?secret=ED2wwQ5i3h\" data-secret=\"ED2wwQ5i3h\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/some-cloud-robotics-news\/\" class=\"wp-embedded-content\" data-secret=\"I32ayYCCIl\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/some-cloud-robotics-news\/\">Some Cloud Robotics News<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Some Cloud Robotics News&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/some-cloud-robotics-news\/embed\/#?secret=fyuNkR4vnY#?secret=I32ayYCCIl\" data-secret=\"I32ayYCCIl\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/icclab-splab-roscon-2015\/\" class=\"wp-embedded-content\" data-secret=\"8fGSseCaLD\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/icclab-splab-roscon-2015\/\">ICCLab &amp; SPLab @ ROSCon 2015<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;ICCLab &amp; SPLab @ ROSCon 2015&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/icclab-splab-roscon-2015\/embed\/#?secret=oqkc7BD1HO#?secret=8fGSseCaLD\" data-secret=\"8fGSseCaLD\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/rplidar\/\" class=\"wp-embedded-content\" data-secret=\"TJr7raQMaQ\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/rplidar\/\">From unboxing RPLIDAR to running in ROS in 10 minutes flat<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;From unboxing RPLIDAR to running in ROS in 10 minutes flat&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/rplidar\/embed\/#?secret=K7MXiLco4a#?secret=TJr7raQMaQ\" data-secret=\"TJr7raQMaQ\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/challenges-with-running-ros-on-kubernetes\/\" class=\"wp-embedded-content\" data-secret=\"0kje6YshSF\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/challenges-with-running-ros-on-kubernetes\/\">Challenges with running ROS on Kubernetes<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Challenges with running ROS on Kubernetes&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/challenges-with-running-ros-on-kubernetes\/embed\/#?secret=4P1lsZi6Di#?secret=0kje6YshSF\" data-secret=\"0kje6YshSF\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/enterprise-cloud-robotics-platform-transfer-project\/\" class=\"wp-embedded-content\" data-secret=\"jhrNZC3I9I\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/enterprise-cloud-robotics-platform-transfer-project\/\">Enterprise Cloud Robotics Platform transfer project<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Enterprise Cloud Robotics Platform transfer project&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/enterprise-cloud-robotics-platform-transfer-project\/embed\/#?secret=n3AZvhrs9E#?secret=jhrNZC3I9I\" data-secret=\"jhrNZC3I9I\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/impressions-from-roscon-and-iros-2016\" class=\"wp-embedded-content\" data-secret=\"M7TycJvRDJ\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/impressions-from-roscon-and-iros-2016\/\">Impressions from ROSCon and IROS 2016<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Impressions from ROSCon and IROS 2016&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/impressions-from-roscon-and-iros-2016\/embed\/#?secret=mqPSEodStT#?secret=M7TycJvRDJ\" data-secret=\"M7TycJvRDJ\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/the-intricacies-of-running-containers-on-openshift\/\" class=\"wp-embedded-content\" data-secret=\"kNBBAXhmcQ\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/the-intricacies-of-running-containers-on-openshift\/\">The intricacies of running containers on OpenShift<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;The intricacies of running containers on OpenShift&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/the-intricacies-of-running-containers-on-openshift\/embed\/#?secret=Ud8s0UoBUe#?secret=kNBBAXhmcQ\" data-secret=\"kNBBAXhmcQ\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-custom-router-with-tcpsni-support\/\" class=\"wp-embedded-content\" data-secret=\"8a2GNwpSXG\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-custom-router-with-tcpsni-support\/\">OpenShift custom router with TCP\/SNI support<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;OpenShift custom router with TCP\/SNI support&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-custom-router-with-tcpsni-support\/embed\/#?secret=hhwvDjuyyI#?secret=8a2GNwpSXG\" data-secret=\"8a2GNwpSXG\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-3-6-on-openstack-developer-cluster-setup\/\" class=\"wp-embedded-content\" data-secret=\"Uly6U7YZ1X\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-3-6-on-openstack-developer-cluster-setup\/\">Openshift 3.6 on Openstack &#8211; developer cluster setup<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;Openshift 3.6 on Openstack &#8211; developer cluster setup&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/openshift-3-6-on-openstack-developer-cluster-setup\/embed\/#?secret=56gI7hveDD#?secret=Uly6U7YZ1X\" data-secret=\"Uly6U7YZ1X\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<blockquote hcb-fetch-image-from=\"https:\/\/blog.zhaw.ch\/icclab\/roscon-2017-vancouver\/\" class=\"wp-embedded-content\" data-secret=\"smgdQdwWKH\"><p><a href=\"https:\/\/blog.zhaw.ch\/icclab\/roscon-2017-vancouver\/\">ROSCon 2017 &#8211; Vancouver<\/a><\/p><\/blockquote>\n<p><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;ROSCon 2017 &#8211; Vancouver&#8221; &#8212; Service  Engineering (ICCLab &amp; SPLab)\" src=\"https:\/\/blog.zhaw.ch\/icclab\/roscon-2017-vancouver\/embed\/#?secret=KKmrSgbl3U#?secret=smgdQdwWKH\" data-secret=\"smgdQdwWKH\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Contact<\/strong><\/p>\n<p><a href=\"http:\/\/blog.zhaw.ch\/icclab\/giovanni-toffetti\/\">Giovanni Toffetti<\/a>: toff(at)zhaw.ch<\/p>\n<p>&nbsp;<\/p>\n<div id=\"dc_vk_code\">&nbsp;<\/div>\n<div class=\"pt-sm\">Schlagw\u00f6rter: <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/cloud-robotics\/\">cloud robotics<\/a>, <a href=\"https:\/\/blog.zhaw.ch\/icclab\/tag\/ros\/\">ROS<\/a><br><\/div>","protected":false},"excerpt":{"rendered":"<p>Overview The connection between the physical world and the virtual world has never been as exciting, accessible, and economically viable as today. Sensors, actors and robots are able to deliver many physical services in several scenarios, including industrial production and home automation, elderly care, assisted living, logistics and cooperative maintenance. In isolation, computing capabilities of [&hellip;]<\/p>\n","protected":false},"author":173,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1,943,639],"tags":[743,741],"features":[],"class_list":["post-8688","post","type-post","status-publish","format-standard","hentry","category-allgemein","category-cloud-robotics-articles","category-cloud-robotics","tag-cloud-robotics","tag-ros"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Cloud Robotics - Service Engineering (ICCLab &amp; SPLab)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloud Robotics\" \/>\n<meta property=\"og:description\" content=\"Overview The connection between the physical world and the virtual world has never been as exciting, accessible, and economically viable as today. Sensors, actors and robots are able to deliver many physical services in several scenarios, including industrial production and home automation, elderly care, assisted living, logistics and cooperative maintenance. In isolation, computing capabilities of [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Engineering (ICCLab &amp; SPLab)\" \/>\n<meta property=\"article:published_time\" content=\"2015-07-28T10:49:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-03-04T16:51:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png\" \/>\n<meta name=\"author\" content=\"toff\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"toff\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\"},\"author\":{\"name\":\"toff\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738\"},\"headline\":\"Cloud Robotics\",\"datePublished\":\"2015-07-28T10:49:28+00:00\",\"dateModified\":\"2021-03-04T16:51:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\"},\"wordCount\":1008,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png\",\"keywords\":[\"cloud robotics\",\"ROS\"],\"articleSection\":[\"*.*\",\"Cloud Robotics\",\"Cloud Robotics\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\",\"name\":\"Cloud Robotics - Service Engineering (ICCLab &amp; SPLab)\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png\",\"datePublished\":\"2015-07-28T10:49:28+00:00\",\"dateModified\":\"2021-03-04T16:51:26+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png\",\"contentUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png\",\"width\":1629,\"height\":1010},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/icclab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud Robotics\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/\",\"name\":\"Service Engineering (ICCLab &amp; SPLab)\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738\",\"name\":\"toff\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg\",\"contentUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg\",\"caption\":\"toff\"},\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/author\/toff\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Cloud Robotics - Service Engineering (ICCLab &amp; SPLab)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/","og_locale":"en_US","og_type":"article","og_title":"Cloud Robotics","og_description":"Overview The connection between the physical world and the virtual world has never been as exciting, accessible, and economically viable as today. Sensors, actors and robots are able to deliver many physical services in several scenarios, including industrial production and home automation, elderly care, assisted living, logistics and cooperative maintenance. In isolation, computing capabilities of [&hellip;]","og_url":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/","og_site_name":"Service Engineering (ICCLab &amp; SPLab)","article_published_time":"2015-07-28T10:49:28+00:00","article_modified_time":"2021-03-04T16:51:26+00:00","og_image":[{"url":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png","type":"","width":"","height":""}],"author":"toff","twitter_card":"summary_large_image","twitter_misc":{"Written by":"toff","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/"},"author":{"name":"toff","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738"},"headline":"Cloud Robotics","datePublished":"2015-07-28T10:49:28+00:00","dateModified":"2021-03-04T16:51:26+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/"},"wordCount":1008,"commentCount":0,"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png","keywords":["cloud robotics","ROS"],"articleSection":["*.*","Cloud Robotics","Cloud Robotics"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/","url":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/","name":"Cloud Robotics - Service Engineering (ICCLab &amp; SPLab)","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage"},"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319-1024x635.png","datePublished":"2015-07-28T10:49:28+00:00","dateModified":"2021-03-04T16:51:26+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#primaryimage","url":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png","contentUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/Screenshot-from-2016-05-02-164319.png","width":1629,"height":1010},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-robotics\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/icclab\/"},{"@type":"ListItem","position":2,"name":"Cloud Robotics"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/icclab\/#website","url":"https:\/\/blog.zhaw.ch\/icclab\/","name":"Service Engineering (ICCLab &amp; SPLab)","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/74df05bfae7fb875d9ea5d48ae234738","name":"toff","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg","url":"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg","contentUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2014\/12\/gio_barca-150x150.jpg","caption":"toff"},"url":"https:\/\/blog.zhaw.ch\/icclab\/author\/toff\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8688","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/users\/173"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/comments?post=8688"}],"version-history":[{"count":15,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8688\/revisions"}],"predecessor-version":[{"id":12403,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8688\/revisions\/12403"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/media?parent=8688"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/categories?post=8688"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/tags?post=8688"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/features?post=8688"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}