IEEE Robotics & Automation Magazine - September 2022 - 19
talk to another component. A component defines the interfaces
to communicate and receive data and fulfills the specific
task or function for which it is meant. A developer can
focus on a library to implement a particular function and
easily embed this within the framework's component to
transmit or receive data. The modularity of this development
approach is inherently implied, allowing the ease of replacement
or switching between components with the same interface
and providing a standardized component configuration.
Additionally, the deployment of a modular system can be
such that a crashed component does not bring down the
entire system, and FDIR can be more efficient.
When our time to make a decision on which framework
to use arrived (in the early 2010s), the shortlisted finalists
were ROS, Robot Construction Kit (RoCK), and Generator
of Modules. Eventually, the RoCK framework developed by
German Research Center for Artificial Intelligence (DFKI)
ranked at the top due to its more formal and structured
approach in software engineering. Based on the ORoCoS
Real-Time Toolkit, RoCK includes real-time logging capabilities,
modular deployment and component introspection,
and a state machine implemented at the component
level that allows for the control of its lifecycle. Despite the
larger ROS community, having a direct line of contact with
the RoCK developers at the DFKI turned out to be a significant
advantage. While we have also used ROS for some
particular developments and testing, the core software
stack of our lab rovers has grown and developed in the
RoCK framework.
However, during recent years, the RoCK framework community
and development activity have been significantly
reduced, with limited updates and overall releases. On the
other side, ROS published the second generation of its
framework, integrating many of the formal approaches and
software engineering aspects that RoCK included. Eventually,
in the last year, we have started migrating some components
to ROS2 and are currently considering a full migration
to the second generation of this popular framework.
Human
Interfaces
Joystick
Waypoint
Navigation
3DROCS
TM/TC
Mapping
Trigger*
DEM
Generation
Figure 6. A simplified overview of ExoTeR's principal TM/TC components. TC: telecommands; TM: telemetry; DEM: digital elevation map.
SEPTEMBER 2022 * IEEE ROBOTICS & AUTOMATION MAGAZINE *
19
Camera
Odometry
Without detailing the entirety of our software architecture
stack, Figure 6 shows a setup of some components that
has been of interest for some project support activities and
test campaigns that are detailed later in the " Test Campaigns "
section. This configuration was used for the assessment
of operational aspects, mainly utilizing, switching
between, and potentially blending various operation modes.
From left to right, the figure visualizes the remote interfaces
for human interaction down to the drivers to access the different
hardware elements.
3D Robot Operations Control System (3DROCS) represents
the rover monitoring and control station (MCS),
which is the base development from which the flight MCS
for the ExoMars mission has been derived [12]. The telemetry/telecommand
component running onboard the rover
takes care of implementing the communication protocol
with 3DROCS by translating and passing the telecommands
further down to the lower-level components and
gathering all relevant data from different sources to generate
the telemetry packets. The operators can also use a joystick
to control the rover, and an arbiter makes sure that
mutually exclusive access by either of the components is
guaranteed to avoid conflicts.
The rover can be controlled by direct body-level motion
commands or using higher-level navigation functions following
waypoints. The perception chain models the environment
and increases the awareness of the rover surroundings, both
onboard and at the remote station by forwarding the generated
maps. The localization estimate is computed by the odometry
component, which fuses the data from different sensors.
Further details about the implementation and theoretical
principles behind several of the components shown in Figure
6 can be found in the references given throughout the
" Test Campaigns " section.
Bridging the Gap to Space
As already stated in this section's introduction, we do not seek
space qualification, nor is our objective to produce or develop
HW Access
Motion
PTU
Control
Command
Arbiter
Locomotion
Switcher
Wheel
Walking
Locomotion
Control
IMU
Platform
Driver
IEEE Robotics & Automation Magazine - September 2022
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - September 2022
Contents
IEEE Robotics & Automation Magazine - September 2022 - Cover1
IEEE Robotics & Automation Magazine - September 2022 - Cover2
IEEE Robotics & Automation Magazine - September 2022 - Contents
IEEE Robotics & Automation Magazine - September 2022 - 2
IEEE Robotics & Automation Magazine - September 2022 - 3
IEEE Robotics & Automation Magazine - September 2022 - 4
IEEE Robotics & Automation Magazine - September 2022 - 5
IEEE Robotics & Automation Magazine - September 2022 - 6
IEEE Robotics & Automation Magazine - September 2022 - 7
IEEE Robotics & Automation Magazine - September 2022 - 8
IEEE Robotics & Automation Magazine - September 2022 - 9
IEEE Robotics & Automation Magazine - September 2022 - 10
IEEE Robotics & Automation Magazine - September 2022 - 11
IEEE Robotics & Automation Magazine - September 2022 - 12
IEEE Robotics & Automation Magazine - September 2022 - 13
IEEE Robotics & Automation Magazine - September 2022 - 14
IEEE Robotics & Automation Magazine - September 2022 - 15
IEEE Robotics & Automation Magazine - September 2022 - 16
IEEE Robotics & Automation Magazine - September 2022 - 17
IEEE Robotics & Automation Magazine - September 2022 - 18
IEEE Robotics & Automation Magazine - September 2022 - 19
IEEE Robotics & Automation Magazine - September 2022 - 20
IEEE Robotics & Automation Magazine - September 2022 - 21
IEEE Robotics & Automation Magazine - September 2022 - 22
IEEE Robotics & Automation Magazine - September 2022 - 23
IEEE Robotics & Automation Magazine - September 2022 - 24
IEEE Robotics & Automation Magazine - September 2022 - 25
IEEE Robotics & Automation Magazine - September 2022 - 26
IEEE Robotics & Automation Magazine - September 2022 - 27
IEEE Robotics & Automation Magazine - September 2022 - 28
IEEE Robotics & Automation Magazine - September 2022 - 29
IEEE Robotics & Automation Magazine - September 2022 - 30
IEEE Robotics & Automation Magazine - September 2022 - 31
IEEE Robotics & Automation Magazine - September 2022 - 32
IEEE Robotics & Automation Magazine - September 2022 - 33
IEEE Robotics & Automation Magazine - September 2022 - 34
IEEE Robotics & Automation Magazine - September 2022 - 35
IEEE Robotics & Automation Magazine - September 2022 - 36
IEEE Robotics & Automation Magazine - September 2022 - 37
IEEE Robotics & Automation Magazine - September 2022 - 38
IEEE Robotics & Automation Magazine - September 2022 - 39
IEEE Robotics & Automation Magazine - September 2022 - 40
IEEE Robotics & Automation Magazine - September 2022 - 41
IEEE Robotics & Automation Magazine - September 2022 - 42
IEEE Robotics & Automation Magazine - September 2022 - 43
IEEE Robotics & Automation Magazine - September 2022 - 44
IEEE Robotics & Automation Magazine - September 2022 - 45
IEEE Robotics & Automation Magazine - September 2022 - 46
IEEE Robotics & Automation Magazine - September 2022 - 47
IEEE Robotics & Automation Magazine - September 2022 - 48
IEEE Robotics & Automation Magazine - September 2022 - 49
IEEE Robotics & Automation Magazine - September 2022 - 50
IEEE Robotics & Automation Magazine - September 2022 - 51
IEEE Robotics & Automation Magazine - September 2022 - 52
IEEE Robotics & Automation Magazine - September 2022 - 53
IEEE Robotics & Automation Magazine - September 2022 - 54
IEEE Robotics & Automation Magazine - September 2022 - 55
IEEE Robotics & Automation Magazine - September 2022 - 56
IEEE Robotics & Automation Magazine - September 2022 - 57
IEEE Robotics & Automation Magazine - September 2022 - 58
IEEE Robotics & Automation Magazine - September 2022 - 59
IEEE Robotics & Automation Magazine - September 2022 - 60
IEEE Robotics & Automation Magazine - September 2022 - 61
IEEE Robotics & Automation Magazine - September 2022 - 62
IEEE Robotics & Automation Magazine - September 2022 - 63
IEEE Robotics & Automation Magazine - September 2022 - 64
IEEE Robotics & Automation Magazine - September 2022 - 65
IEEE Robotics & Automation Magazine - September 2022 - 66
IEEE Robotics & Automation Magazine - September 2022 - 67
IEEE Robotics & Automation Magazine - September 2022 - 68
IEEE Robotics & Automation Magazine - September 2022 - 69
IEEE Robotics & Automation Magazine - September 2022 - 70
IEEE Robotics & Automation Magazine - September 2022 - 71
IEEE Robotics & Automation Magazine - September 2022 - 72
IEEE Robotics & Automation Magazine - September 2022 - 73
IEEE Robotics & Automation Magazine - September 2022 - 74
IEEE Robotics & Automation Magazine - September 2022 - 75
IEEE Robotics & Automation Magazine - September 2022 - 76
IEEE Robotics & Automation Magazine - September 2022 - 77
IEEE Robotics & Automation Magazine - September 2022 - 78
IEEE Robotics & Automation Magazine - September 2022 - 79
IEEE Robotics & Automation Magazine - September 2022 - 80
IEEE Robotics & Automation Magazine - September 2022 - 81
IEEE Robotics & Automation Magazine - September 2022 - 82
IEEE Robotics & Automation Magazine - September 2022 - 83
IEEE Robotics & Automation Magazine - September 2022 - 84
IEEE Robotics & Automation Magazine - September 2022 - 85
IEEE Robotics & Automation Magazine - September 2022 - 86
IEEE Robotics & Automation Magazine - September 2022 - 87
IEEE Robotics & Automation Magazine - September 2022 - 88
IEEE Robotics & Automation Magazine - September 2022 - 89
IEEE Robotics & Automation Magazine - September 2022 - 90
IEEE Robotics & Automation Magazine - September 2022 - 91
IEEE Robotics & Automation Magazine - September 2022 - 92
IEEE Robotics & Automation Magazine - September 2022 - 93
IEEE Robotics & Automation Magazine - September 2022 - 94
IEEE Robotics & Automation Magazine - September 2022 - 95
IEEE Robotics & Automation Magazine - September 2022 - 96
IEEE Robotics & Automation Magazine - September 2022 - 97
IEEE Robotics & Automation Magazine - September 2022 - 98
IEEE Robotics & Automation Magazine - September 2022 - 99
IEEE Robotics & Automation Magazine - September 2022 - 100
IEEE Robotics & Automation Magazine - September 2022 - 101
IEEE Robotics & Automation Magazine - September 2022 - 102
IEEE Robotics & Automation Magazine - September 2022 - 103
IEEE Robotics & Automation Magazine - September 2022 - 104
IEEE Robotics & Automation Magazine - September 2022 - 105
IEEE Robotics & Automation Magazine - September 2022 - 106
IEEE Robotics & Automation Magazine - September 2022 - 107
IEEE Robotics & Automation Magazine - September 2022 - 108
IEEE Robotics & Automation Magazine - September 2022 - 109
IEEE Robotics & Automation Magazine - September 2022 - 110
IEEE Robotics & Automation Magazine - September 2022 - 111
IEEE Robotics & Automation Magazine - September 2022 - 112
IEEE Robotics & Automation Magazine - September 2022 - 113
IEEE Robotics & Automation Magazine - September 2022 - 114
IEEE Robotics & Automation Magazine - September 2022 - 115
IEEE Robotics & Automation Magazine - September 2022 - 116
IEEE Robotics & Automation Magazine - September 2022 - 117
IEEE Robotics & Automation Magazine - September 2022 - 118
IEEE Robotics & Automation Magazine - September 2022 - 119
IEEE Robotics & Automation Magazine - September 2022 - 120
IEEE Robotics & Automation Magazine - September 2022 - 121
IEEE Robotics & Automation Magazine - September 2022 - 122
IEEE Robotics & Automation Magazine - September 2022 - 123
IEEE Robotics & Automation Magazine - September 2022 - 124
IEEE Robotics & Automation Magazine - September 2022 - 125
IEEE Robotics & Automation Magazine - September 2022 - 126
IEEE Robotics & Automation Magazine - September 2022 - 127
IEEE Robotics & Automation Magazine - September 2022 - 128
IEEE Robotics & Automation Magazine - September 2022 - 129
IEEE Robotics & Automation Magazine - September 2022 - 130
IEEE Robotics & Automation Magazine - September 2022 - 131
IEEE Robotics & Automation Magazine - September 2022 - 132
IEEE Robotics & Automation Magazine - September 2022 - 133
IEEE Robotics & Automation Magazine - September 2022 - 134
IEEE Robotics & Automation Magazine - September 2022 - 135
IEEE Robotics & Automation Magazine - September 2022 - 136
IEEE Robotics & Automation Magazine - September 2022 - 137
IEEE Robotics & Automation Magazine - September 2022 - 138
IEEE Robotics & Automation Magazine - September 2022 - 139
IEEE Robotics & Automation Magazine - September 2022 - 140
IEEE Robotics & Automation Magazine - September 2022 - 141
IEEE Robotics & Automation Magazine - September 2022 - 142
IEEE Robotics & Automation Magazine - September 2022 - 143
IEEE Robotics & Automation Magazine - September 2022 - 144
IEEE Robotics & Automation Magazine - September 2022 - 145
IEEE Robotics & Automation Magazine - September 2022 - 146
IEEE Robotics & Automation Magazine - September 2022 - 147
IEEE Robotics & Automation Magazine - September 2022 - 148
IEEE Robotics & Automation Magazine - September 2022 - 149
IEEE Robotics & Automation Magazine - September 2022 - 150
IEEE Robotics & Automation Magazine - September 2022 - 151
IEEE Robotics & Automation Magazine - September 2022 - 152
IEEE Robotics & Automation Magazine - September 2022 - 153
IEEE Robotics & Automation Magazine - September 2022 - 154
IEEE Robotics & Automation Magazine - September 2022 - 155
IEEE Robotics & Automation Magazine - September 2022 - 156
IEEE Robotics & Automation Magazine - September 2022 - 157
IEEE Robotics & Automation Magazine - September 2022 - 158
IEEE Robotics & Automation Magazine - September 2022 - 159
IEEE Robotics & Automation Magazine - September 2022 - 160
IEEE Robotics & Automation Magazine - September 2022 - 161
IEEE Robotics & Automation Magazine - September 2022 - 162
IEEE Robotics & Automation Magazine - September 2022 - 163
IEEE Robotics & Automation Magazine - September 2022 - 164
IEEE Robotics & Automation Magazine - September 2022 - Cover3
IEEE Robotics & Automation Magazine - September 2022 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com