IEEE Systems, Man and Cybernetics Magazine - January 2020 - 44

some image-processing tasks (for example, various
segmentations and skeletal model recognition).
◆ Contextful services: These require information about
the target system's physical structure and need to
maintain its state, internally. Characteristic examples
are simultaneous localization and mapping (SLAM),
motion planning, and grasp planning.
There is no strict boundary between the two groups since
some services could be implemented either as contextful or
context free. However, in most cases, the decision is quite
apparent. From an architectural viewpoint, the big difference is in the applied server-side technologies. Context-free
services are usually lightweight and have simple interfaces
that make them well-suited for implementing simple RESTful microservices, although serverless components (for
example, Amazon Web Services Lambda or Azure Functions). The implementation of contextful services is much
more challenging. In the more uncomplicated cases, a web
service with session management (session-scoped attributes
and state management) can be an option. In more complex
situations, such as those involving ROS-based solutions,
dedicated ROS instances need to be maintained for every
connected target application since ROS currently supports
only a single robotic environment per instance by design.
This latter condition might render the most critical challenge from an architectural point of view. Besides the
application programming interface (API) and session management, a large-scale solution must handle the configuration and on-the-fly creation/destruction of ROS instances.
This could be managed effectively using container technologies, as some recent research papers [5], [6] and a tutorial
chapter [15] have suggested.
Aside from the scalable architecture, throughput and
latency are vital factors in applications wherein the quality
of service does matter. Accessing cloud services, standard
RESTful APIs usually provide satisfactory solutions, but

Eth
Ethernet

A Real-World Example
At the Antal Bejczy Center for Intelligent Robotics of
Óbuda University, work is being done with ROS-based software stack to create research prototypes and industrial
solutions. A recent problem that was found by exploiting
mature tools (such as MoveIt!) integrated with ROS is the
so-called 3D random bin-picking task. The robotic pick
and place of assorted parts has been researched and commercialized by several vendors; however, human operators
still outperform the robotized solutions, especially with

Dedicated
Contextful Cloud
Service Container

* Cell-Level
Supervision
* Data Acquisition
(3D Scanner)
* Robot Motion
Management
* Consuming Cloud
Resources

https

rosbridge

Local Controller
PC

roslibjs

Ethernet
Eth

some recently emerging technologies could serve as powerful alternatives. GraphQL [16], for example, often results
in a more flexible and faster way of interacting with cloud
services. For streamed sensor data, neither REST nor
GraphQL is suitable. In streaming tasks, WebSocket or
WebRTC might be the optimal way to go.
Closer to the edges, HTTP introduces unacceptable
overhead in message size and code complexity. Therefore,
in mist and fog scenarios, lightweight and superfast protocols should be preferred. ZeroMQ [17], gRPC [18], and
Data Distribution Service/Real-Time Publish Subscribe
Protocol [19] can be considered as well-established alternatives to ad hoc socket-based approaches.
Security is as important as performance in all networked
robotics setups. Unfortunately, current versions of ROS do not
handle integrity and security out of the box. Several recent
studies addressed this issue in depth [19]-[21]. Hopefully, ROS
2 will soon reach the desired level of maturity, and this will
encourage the community to migrate systems built in ROS 1.
Not only do the middlewares lack security features, but
also robot manufacturers have shown negligence in security-related aspects. Many industrial robots expose TCP/IP
connections to the local network (or to the public Internet), through which one can get full control over the given
device [22].

Services:
* Target Recognition
* Trajectory Planning
Context Specifications:
* Geometry
* Kinematics
* Etc.

Container Infrastructure
(e.g., Docker Swarm)
Figure 4. The schematic architecture of a robotized bin-picking workstation with a cloud-sourced planning service.

[Sources: Photoneo (upper image) and Universal Robots (lower image); used with permission.]

44

IEEE SYSTEMS, MAN, & CYBERNETICS MAGAZINE Janu ar y 2020



IEEE Systems, Man and Cybernetics Magazine - January 2020

Table of Contents for the Digital Edition of IEEE Systems, Man and Cybernetics Magazine - January 2020

Contents
IEEE Systems, Man and Cybernetics Magazine - January 2020 - Cover1
IEEE Systems, Man and Cybernetics Magazine - January 2020 - Cover2
IEEE Systems, Man and Cybernetics Magazine - January 2020 - Contents
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 2
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 3
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 4
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 5
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 6
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 7
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 8
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 9
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 10
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 11
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 12
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 13
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 14
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 15
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 16
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 17
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 18
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 19
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 20
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 21
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 22
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 23
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 24
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 25
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 26
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 27
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 28
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 29
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 30
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 31
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 32
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 33
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 34
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 35
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 36
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 37
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 38
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 39
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 40
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 41
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 42
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 43
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 44
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 45
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 46
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 47
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 48
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 49
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 50
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 51
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 52
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 53
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 54
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 55
IEEE Systems, Man and Cybernetics Magazine - January 2020 - 56
IEEE Systems, Man and Cybernetics Magazine - January 2020 - Cover3
IEEE Systems, Man and Cybernetics Magazine - January 2020 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/smc_202110
https://www.nxtbook.com/nxtbooks/ieee/smc_202107
https://www.nxtbook.com/nxtbooks/ieee/smc_202104
https://www.nxtbook.com/nxtbooks/ieee/smc_202101
https://www.nxtbook.com/nxtbooks/ieee/smc_202010
https://www.nxtbook.com/nxtbooks/ieee/smc_202007
https://www.nxtbook.com/nxtbooks/ieee/smc_202004
https://www.nxtbook.com/nxtbooks/ieee/smc_202001
https://www.nxtbook.com/nxtbooks/ieee/smc_201910
https://www.nxtbook.com/nxtbooks/ieee/smc_201907
https://www.nxtbook.com/nxtbooks/ieee/smc_201904
https://www.nxtbook.com/nxtbooks/ieee/smc_201901
https://www.nxtbook.com/nxtbooks/ieee/smc_201810
https://www.nxtbook.com/nxtbooks/ieee/smc_201807
https://www.nxtbook.com/nxtbooks/ieee/smc_201804
https://www.nxtbook.com/nxtbooks/ieee/smc_201801
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1017
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0717
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0417
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0117
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1016
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0716
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0416
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0116
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_1015
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0715
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0415
https://www.nxtbook.com/nxtbooks/ieee/systems_man_cybernetics_0115
https://www.nxtbookmedia.com