Modular Design and Decentralized Control of the R ECUPERA Exoskeleton for Stroke Rehabilitation

Robot-assisted therapy has become increasingly popular and useful in post-stroke neurorehabilitation. This paper presents an overview of the design and control of the dual-arm RECUPERA exoskeleton to provide intense therapist-guided as well as self training for sensorimotor rehabilitation of the upper body. The exoskeleton features a lightweight design, high level of modularity, decentralized computing, and various levels of safety implementation. Due to its modularity, the system can be used as a wheel-chair mounted system or as a full-body system. Both systems enable a wide range of therapies while efficiently grounding the weight of the system and without compromising the patient’s mobility. Furthermore, two rehabilitation therapies implemented on the exoskeleton system, namely teach & replay therapy and mirror therapy, are presented along with experimental results.


Introduction
In 2013, 10.3 million new strokes occurred world-wide [1], with a mortality of approx.25% [2].Survivors often suffer from severe motor disabilities and, therefore, need for care [3].Hence, stroke is presently one of the main causes for disabilities among adults, while as a result of demographic change, a strong increase in the incidence of strokes can be expected.Furthermore, the costs for treatment and care represent a major burden for national health systems and appropriate treatment will hardly be possible in the future.In Germany for instance, 35.6% of the patients require long-time care and, as for 2007, each caused medical lifetime costs of 43,129 Euros [4].Over 60% of the patients have dysfunctions six month post-stroke [5].Accordingly, an important task is to restore the movement capabilities of the patients, so that they regain the capability to perform daily activities independently again.Depending on the diagnosis and the applied therapy measures, the disabilities can be partially or almost completely compensated by targeted therapy measures.
The capacity to restore motor function is based on the neuroplasticity of the brain [6,7].A range of different therapy measures have been developed in the past, which differ highly in regard to their effectiveness [8].For a high success of therapy, the total therapy time as well as quality is decisive [9].Hence, advanced rehabilitation measures are required to further improve the outcome of therapy.To be effective, a rehabilitation device should support therapy approaches that involve functional training that is tailored to the physical conditions and therapy state of the patient.
Robotic systems such as orthoses or exoskeletons represent an interesting alternative to classical therapy approaches [5,[10][11][12][13][14].These systems enable an interesting extension of classical therapy [5,11,13].Improving technological capabilities in robot design are most relevant for this development [13,15].Particularly, exoskeletons can provide several advantages over classical approaches, such as normalized training environments and can support and relieve the therapists [16,17].Furthermore, the provide adaptiveness regarding support and therapy intensity and, hence, support functional training which is tailored to the physical conditions and therapy state of the patient, i.e., to assist him or her as needed.This is especially beneficial, since the active physical participation of patients during therapy [18] as well as to have a high intensity and dose of therapy [9,19,20] have positive effects on rehabilitation success.
The first robotic systems for stroke rehabilitation have already been developed in the 1990s [21,22], followed by first commercial systems [23].Since then, the technological capabilities of the systems have been increased significantly [16].Different survey studies have shown that robots can provide significant advantages over classical stroke therapy [24,25].Exoskeletons can be used for different parts of the body [17].For instance, systems for the lower extremities such as the ReWalk [26] system are used for gait rehabilitation, or hand systems are used for gripping tasks [27].However, in this paper, we focus on rehabilitation applications of the upper extremities.Most exoskeletons for upper body rehabilitation [28] are heavy and bulky, and, hence, attached to a fixed base or heavy mobile platforms (e.g., ARMIN III [29], ARMEO [30], HARMONY [31]).This either reduces the mobility of patients or forces the patient to carry the weight of the exoskeleton (e.g., RUPERT [32]) which might be problematic for patients with reduced trunk stability.Accordingly, the use of these systems is limited to clinical applications, where patients can practice exercises only with the supervision of a therapist.Lightweight exoskeletons with at least 5 degrees of freedom (DOF) which do not compromise with patient's mobility are sparsely reported (e.g., SUEFUL-6 [33]).Since clinical resources and especially therapist time are limited, it is often not possible to offer more frequent or longer therapy sessions.To make the exoskeleton technology more pervasive in the patient's life, it is important to develop lightweight exoskeletons with high safety assurance that provide possibilities for self-training (such as mirror therapy [34] or teach and replay [35]) so that the total therapy time can be increased.Another important development trend is the development of bilateral systems (e.g., HARMONY [31]) to extend therapy options.
In this paper, we present the electro-mechanical design aspects and evaluation results of the bilateral RECUPERA exoskeleton (Figure 1).It is designed to support the therapy of patients with hemiparetic motor impairments of the upper body after stroke.The system has been developed in close collaboration between engineers, therapists and neurobiologists to support the patient and therapist in an optimal way.Due to novel mechanisms, embedded processing and an advanced control architecture, it can provide a set of different therapy modes and exercise possibilities in clinical or ambulatory therapy or even the private environment.The lightweight design and modularity allows to use the system in different configurations, e.g., (1) as a 10 DOF upper body wheelchair-mounted part system (Figure 1a) or (2) as a 30 DOF full-body system (Figure 1b) with legs to support sitting and standing postures.The wheelchair system is designed to support the hemiparetic stroke patients who are usually bounded to a wheelchair in their early days after stroke.Once they start to recover, they can continue training with the full body exoskeleton system which provides them the possibility to perform upper body exercises while both sitting and standing.Both systems are designed such that the patient does not have to carry the weight of the exoskeleton as the weight of the system is compensated by the controller and transferred to the ground.Furthermore, the mobility of the patient is not compromised.Due to its bilateral design, the system can be used with both left and right sided stroke patients and can provide extended training possibilities e.g., dual arm tasks, and mirror therapy.In the previous work from the authors, the first CAD design ideas of this system were introduced in [36] and detailed analysis of various subsystem modules used in the design were presented in [37][38][39][40].This paper focuses on the mechatronic design aspects and the control architecture of the commissioned system and presents the experimental results on its rehabilitative aspects.Non-rehabilitative control aspects of the full body configuration such as active balancing, walking etc. will be addressed in future work.

Organization
Section 2 introduces the mechatronic system design of the RECUPERA exoskeleton.Subsequently, Section 3 discusses its modeling and control as well as the related therapy approaches.Section 4 presents the results of different therapy modes on the exoskeleton system and compares the system with some existing solutions.Section 5 draws the conclusions and presents future work.

Mechatronic System Design
The main goal behind the mechatronic design of both configurations of the RECUPERA exoskeleton is to obtain a lightweight modular system providing high support capabilities and safety assurance without compromising the patient's mobility.This is achieved by using a highly modular architecture in both the mechanical and electronic domains.

Mechanical Design
To make the design highly modular and lightweight, various combinations of serial and parallel actuated submechanisms are used to obtain a series-parallel hybrid design.Figure 2 provides an overview of modular design of the RECUPERA exoskeleton.For actuation, in house developed drive units consisting of a high torque BLDC motor and low backlash gears (backlash <1 arcmin for rotary drives or <0.01 mm for linear drives) are used.While both system configurations consist of shoulder and forearm modules, the full body design consists additionally of the hip, knee, ankle and spine modules.All modules are described in the following sections.

Sub-Mechanism Modules
The design of a submechanism depends on its position in the overall system and the requirements regarding range of motion (ROM) and forces.

Shoulder Mechanism Design
The aim of the design is to obtain a fully actuated 3 DOF mechanism with a workspace similar to the human shoulder [39].The three joint axes should intersect orthogonally at a central point (CP) in the human shoulder such that no two joint axes become coincident in the allowed motion range to ensure a singularity free operation.This central point is coincident with glenohumeral joint in the human shoulder.In contrast to serial shoulder designs [41,42], where a collision of the motors with the patient is possible, the novel shoulder design hides the first two motors (M1 and M2, refer Figure 3a) behind the shoulder by employing a variant of WATT SIX BAR MECHANISM with the geometry of a double parallelogram.This linkage creates a virtual center of rotation and provides a 1:1 transmission between actuator (M2) and virtual axis of rotation (see Figure 2 for ROM).The shoulder design provides large clearance between the shoulder motors and patient's head to avoid any collisions.

Forearm and Elbow
To reduce the weight, the forearm mechanism is designed with reduced DOF as shown in Figure 3b.The joint for elbow flexion/extension and the forearm pronation/supination are active.Both joints are implemented as serial elastic actuators (SEA), with a measured spring between gear and joint output.The elbow actuator is a combination of a BLDC Maxon EC-flat 45 drive and a harmonic drive with a reduction of 100:1 and delivers 9 Nm nominal torque.The pronation and supination is provided by a Dynamixel MX28 servo drive with 2.5 Nm.The wrist is designed with a passive DOF that are fixable to prevent pathological movements between forearm and hand.All joints are placed in a serial kinematic configuration using the open joint concept [42].Finally, a force controlled gripper allows to perform simple grasping tasks.

Hip and Ankle Joints
Hip and ankle joints are designed as 3 DOF orientational joints in the exoskeleton.Here, a novel almost spherical parallel mechanism (ASPM), also known as ACTIVE ANKLE, has been invented [37,38,43,44].In mechanism theory, it is typical to identify parallel mechanisms using their type (for details, see [45]).In this convention, different letters denote the joint type (R for revolute, P for prismatic, S for spherical etc.) and the underlined letter shows the active joint.The mechanical type of ASPM is 3-[R-[2-SS]] as depicted in Figure 3c featuring three rotative actuators fixed to the base.Each of the three motors drives a spatial quadrilateral consisting of a symmetric crank, two rods, and a line segment on the mobile platform.The mechanism's homogeneous and simple design leads to a low link diversity, permits a low-cost construction, and provides robustness against production inaccuracies.A crucial feature of the mechanism's design is the stress distribution among the structure.The six rods that transmit the forces from the cranks to the platform are only loaded with forces along their axes due to the spherical joints attached to them.Moreover, any force applied along the direction of the platform's torsional axis can be supported without an active torque in the motors.

Knee Joint
Instead of a bendable knee joint, a novel mechanism has been developed that allows the user to stand, sit (see Figure 3d) and move with the exoskeleton.The system has been designed in such a way that at a certain knee angle a seat plate and an additional support are folded out, so that the exoskeleton can be used as a chair in a sitting posture.The knee mechanism is actuated by a linear drive consisting of a BLDC motor and a ball screw.The leg design follows a fully active 7 DOF S-P-S architecture, which is an alternative to common S-R-S architectures and provides better stress distribution for carrying the load of the upper body system.The sitting and standing procedure actively uses the 3 DOF hip and ankle joints in addition to the linear drive and passively uses the seat and support mechanisms (see Supplementary Materials).
Each linear drive in the leg can provide a continuous force of 560 N (the force/torque values for each actuator are provided in Figure 2).Together, the two legs can support a total force of 1120 N. Due to the focus of our application, the legs have been designed to support the weight of the exoskeleton plus the disabled body part of the patient, which means either the right or the left arm in our use case.Since, the overall weight of the system is 42 kg, in the standing position, the lower body can support an extra weight of 70 kg which may come from the upper body of the patient.Torso Joint PKM based active torso joints have proven to be advantageous in various robotic systems [46,47].Hence, the torso joint in the RECUPERA exoskeleton is constructed using a 6 DOF STEWART-GOUGH platform of type 6-[UPS].The mechanism is actuated by means of linear ball screw drives in each leg.The use of a parallel manipulator enables a lightweight construction of the torso joint with all the six DOF and provides good structural stiffness for transmitting the load of the upper body system to the hip effectively.The position and orientation ROM of the torso is shown in Figure 2. The active torso joint enlarges the workspace of the upper body system and also assists in sitting and standing movements.

Safety Aspects
Most joints in exoskeletons require a restriction of their range of motion, since the human joints are not able to perform 360 • rotation movements.To ensure that no harm is done to the patient, a physical limitation of joint movements using mechanical end stops serves as the primary implementation of the safety.For higher DOF kinematic joints such as in hip, torso and the ankle, the workspace limitation of the parallel mechanisms has been used as an additional safety feature.

Interface with Human
The exoskeleton provides several interfaces equipped with 6-DOF ATI Nano force/torque (FT) sensors for the human subject.An overview of the sensor positions is given in Table 1.Each arm is connected to the human with the help of three interfaces (see Figure 3b).There are two shoulder straps and one belt strap around the waist (see Figure 1a) to attach the system to human trunk.These interfaces are common between both systems apart from the place of attachment for the shoulder straps which is attached to end effector plate and the waist strap which is attached to the base plate of the Stewart mechanism.Additionally, the full body exoskeleton provides attachment points in the foot unit (see Figure 1b).

Adaption to Different Human Sizes
The system is adaptable to different human body sizes with heights roughly in the range of 1.70-1.90m.The lengths of the upper arm and forearm can be adjusted by 50 mm and 25 mm respectively.The wrist can be adjusted in height and width by 17 mm.The hand-interface can be adapted to three thumb contact sizes and different thumb postures in an angular range of 38°. Figure 4 shows the passive adjustment possibilities in the back, shoulder, upperarm and forearm of the wheelchair system and Figure 3b shows the passive adjustments available in the wrist joint.The zero position of the spine can be adapted in a range of ±50 mm.Connectors between spine and shoulder can be adapted in height by 79 mm and width by 130 mm.The initial leg length can be varied in a range of 100 mm.A figure showing the passive adjustments available in the full body configuration is skipped here for brevity.Overall, the adaption possibilities makes this exoskeleton fit to a wide range of individuals.

Electronic Design and Processing Architecture
The electronic design of both configurations of the exoskeleton rely on a hybrid centralized-decentralized control scheme.Figure 5 gives an overview about all actuators and network architecture (see Section 2.2.1).The decentralized actuator-level control provides real-time capabilities in the system to support a multi-level safety paradigm.Mid-and high-level control are computed in the central electronics of the system (see Figure 5 and Section 2.2.2) and provide complex functionalities, such as kinematcs/dynamics computations and user interaction.

Decentralized Actuator-Level Controllers
Each actuator is controlled by a separate self-designed modular Actuator Control Unit (ACU) that is located in close proximity of the corresponding actuator that has been specifically developed to control BLDC motors.The ACU consists of three self-designed distinct PCBs (for power electronics, data acquisition and communication, and computing, respectively), which can be combined as required to satisfy the specific requirements of each actuator.An overview on the configurations used in the RECUPERA exoskeleton is shown in Table 2.All functions are realized using a hardware implementation in the Xilinx XC6SLX45 Spartan ® 6 FPGA located in the computing PCB of the ACU.The control is performed using a cascaded position-velocity-current PID controller, see Section 3.2.1.
Each ACU is supplied with two different voltages: 48 V for the motor phases and with 12 V for the computing and communication components.The supply voltage and current are continuously monitored and controlled by the FPGA, which permits to implement a configurable firmware-based fuse for safety reasons.In addition, each ACU is protected by a hardware fuse with a rated current of 5 A for the linear leg actuators and 3 A for all other actuators.The central electronics of the RECUPERA exoskeleton are located in a backpack on the rear side of the system.The central electronics provides components for power management, mid-and highlevel control of the system, user interfacing as well as communication and networking and security features, such as a wireless emergency switch.
The main computing system used for mid-and highlevel control of the exoskeleton consists of two self-developed electronic platforms called ZynqBrain.A ZynqBrain is manufactured in Pico-ITX format (70 × 100 mm) and contains a Xilinx Zynq ® ZC7030 [49].A ZC7030 consists of two parts: a Processing System (PS) (which is an ARM ® Cortex-A9 dual core CPU running at 1 GHz) and a Programmable Logic (PL) section, which is equivalent to an FPGA.512 MB DDR3 SD-RAM are connected to the PS [50].For communication, each ZynqBrain provides 5 duplex high-speed low-voltage differential signaling (LVDS) connections to connect the ACUs (for details see [40]).Mid and high level control of the system are implemented on the ZynqBrains and are described in more detail in Sections 3.2.2 and 3.2.3.

Power Management
The power management of the system is provided by the self-designed Central Power Management Board (CPMB).The system can be used with a LiFePO4 battery with a capacity of 5000 mAh or an external power supply.It uses three different power circuits of 5 V for the central electronics, 12 V for the decentralized FPGA controllers, and 48 V for the BLDC motors.The nominal and peak power consumption is 288/1440 W for the wheelchair system and 1488/3940 W. For safety, the system contains two programmable electronic fuses that measure and monitor the power consumption of the supply and auxiliary power circuits.More details are discussed in [40].

Safety Aspects
An easy to access emergency stop is provided to the therapist in each arm and the backpack.In addition to this, a pedal-based emergency stop is provided to the patient.Each actuator joint has its own independent hard and soft safety limits on position, velocity and current levels.The controller becomes very stiff near the soft limits and the joints automatically shut down in case of violation of the hard limits.This safety implementation is decoupled from mid and high level controllers.Furthermore, there are electronic fuses in each subsystem which provide additional safety.

Exoskeleton Modeling and Control for Rehabilitation Therapies
This section presents the kinematic and dynamic modeling of both exoskeleton configurations, the control architecture and software design for various rehabilitation therapies.

Kinematic and Dynamic Modeling
Due to the presence of a large number of closed loops, the kinematic and dynamic modeling of the RECUPERA exoskeleton is very challenging.Systems with closed loops are typically represented with connectivity graphs (G) where links and joints are denoted as vertices and edges respectively.A spanning tree (T ) is a subgraph of G such that there exists exactly one path between any two nodes in the graph and that the motion variables of T satisfy the loop closure constraints.Furthermore, we identify three set of coordinates on (G): • spanning tree joints (q ∈ R n ): all the joints belonging to the spanning tree (T ) chosen by regular numbering scheme, • independent joints (y ∈ R m ): a set of independent variables selected such that y defines q uniquely, • active joints (u ∈ R m ): all the joints that contain the actuators It is to be noted that all the submechanism modules in the design of RECUPERA exoskeleton are fully actuated.Furthermore, the independent joints, y may or may not be subset of the spanning tree joints, q.Since the numerical treatment of loop closure constraints can pose several challenges in terms of accuracy and computational performance, an analytical approach based on the concept of loop closure function [51] is employed.

Loop Closure Functions
Let us define loop closure functions such that they provide a unique mapping between the independent position variables y and position variables in the spanning tree q ⊆ R n .For this assumption to hold true, let us define a set C ⊆ R m of acceptable values of y, and assume y ∈ C. For all y ∈ C, there exists a function, γ such that where G = ∂γ ∂y is the loop closure Jacobian matrix of size (n × m), and g = Ġ ẏ.Let us also define a permutation matrix, Q ∈ R m×n such that u = Qq.

Example of Loop Closure Function of RECUPERA Single Arm
Each arm of the RECUPERA exoskeleton is a 5 DOF series-parallel hybrid mechanism (see Figure 6a) which contains a double parallelogram linkage.Figure 7 shows the schematic of the double parallelogram mechanism.The loop closure function of the DOUBLE PARALLELOGRAM LINKAGE can be composed from mimic joint definition in URDF [39].The topological graph of the RECUPERA exoskeleton arm is shown in Figure 6b.The red edges (J 100,200 , J 200,232 , J 300,400 , J 400,500 , J 500,600 ) correspond to the five independent (y) and active (u) degrees of freedom of the system.The spanning tree joints (excluding the loop joints shown by dotted blue edges) are collected in tree joint position vector q.The relation between q and y i.e., loop closure function is shown in Equation ( 2) from which the loop closure Jacobian G and the vector g can be deduced after successive differentiations (compare with Equation ( 1)).This can be used to solve various kinematics (e.g., workspace computation, see Figure 8) and dynamics problems related to the system.
q 100,200 q 200,222 q 222,223 q 223,300 q 200,232 q 232,233 q 300,400 q 400,500 q 500,600 q 100,200 q 200,232 q 300,400 q 400,500 q 500,600 A comprehensive kinematic analysis of each parallel submechanism module of the system such as ACTIVE ANKLE [38,52], STEWART PLATFORM etc is performed and the associated loop closure functions are derived analytically.Based on them, the loop closure function of the overall exoskeleton system is composed.

Equations of Motion (EOM)
The EOM for the spanning tree of a multi-body system with closed loops is given by τ + τ c = H(q) q + C(q, q) where q, q, q are (n × 1) vectors of joint position, velocity and acceleration variables of the spanning tree, H(q) is the (n × n) mass-inertia matrix, C(q, q) is a (n × 1) vector for Coriolis-centrifugal and gravity efforts, and τ is the (n × 1) vector of force/torque variables.Furthermore, τ c is the unknown vector of constraint forces produced by the cut joints but it can be eliminated from the equation following the Jourdain's principle of virtual power, i.e., τ c q = 0. Using velocity level loop closure constraint and Jourdain's principle of virtual power, one can establish that τ c will have the following property By using Equation ( 4) and multiplying by G T on both sides of Equation ( 3), the loop constraint forces τ c can be eliminated.
where τ ID is the inverse dynamics output of the spanning tree given by τ ID = ID(q, q, q) = ID(γ(y), G ẏ, G ÿ + g).To arrive at a unique solution of Equation ( 5), the actuated DOF must be separated from the passive DOF.This can be done with the help of a (m × m) matrix G u = QG which basically contains the rows of G corresponding to the actuated DOF.Thus, the unique solution to the inverse dynamics problem is given by: where τ u is a (m × 1) vector of actuator forces required to produce the given acceleration ÿ.This approach has been implemented in a modular software framework called Hybrid Robot Dynamics (HyRoDyn) [53].

First-Level Control
As discussed in Section 2.2, each actuator is driven by an FPGA that implements the first level control architecture for the joint using a cascaded position, a velocity, and a current control loop.Each of the control cascades can be directly selected for control.Figure 5 shows a block diagram illustrating the actuator level control architecture.The motors can be torque controlled with the help of motor current measurements.The actuator level modularity permits the implementation of decoupled safety checks from the mid-level controllers.For example, the position, velocity and current are limited via maximal values, and the controller is stopped in case the sensors fail at some point.This low level control architecture meets the requirements for the therapy concepts to implemented in the system and constitutes a solid foundation for both kinematic and dynamic control which is implemented at mid-level.

Mid-Level Control
Mid-level control architecture implements the kinematic (Equation ( 1)) and dynamic (Equation ( 6)) model of the system and associated control approaches for rehabilitation therapies.In the (1) Gravity Compensation (GC) mode, the weight of the system is compensated with the help of an inverse dynamic model of the exoskeleton arms.One can also use GC mode to take into account the dynamics of human arms.The input to this model is the actuator positions read from the position encoders (see Table 2) and the output is the reference torque values which is then converted into motor current and sent to the current controller implemented in the ACU.The GC mode is used to implement a transparent behavior of the system and represents the basic operation mode of the system, on which most of the other modes are based.To support repetitive movement therapies, (2) Teach & Replay (TR) can be used.This mode consists of two phases.First, the affected arm is put in the gravity compensation mode so that a therapist can easily move the arm.The forearm is equipped with a touch sensor (see Figure 3b) which recognizes the intention of the therapist to teach a trajectory and stores the trajectory (position and velocity readings from the involved ACUs) in the system's storage device.Subsequently, the trajectory can be replayed according to a trigger by the patient or therapist.During the replay, the exoskeleton executes the trajectory movement in the cascaded position-velocity control mode in the ACU.Mirror therapy can be supported using the (3) Master-Slave (MS) mode, where movements from the healthy arm can be transferred to the unhealthy arm in a mirrored fashion.In this mode, the healthy arm is kept in the gravity compensation mode and the actuator positions read from the healthy arm are mirrored and sent to the ACUs of the unhealthy arm, which is in cascaded position-velocity control mode.Furthermore, sitting and standing features for the lower part of full body exoskeleton are implemented at this level.

High-Level Control
The high level control of the exoskeleton can be managed by a web-based GUI using a mobile phone or tablet (see Figure 9).The Python Flask framework [54] was used to implement the web application.The Flask web server hosted on ZynqBrain2 was used as the server application.The GUI allows the therapist to select the therapy mode (for e.g., GC mode, MS mode, TR mode etc.) or to manage different patient profiles, e.g., patient specific data and movements.Moreover, it allows the therapist to use the exoskeleton in different settings: single arm, dual arm, full body etc.Both left and right sided stroke patients can be supported.

Software Design
The mid and high level control is implemented using the Robot Construction Kit (Rock) [55] which is based on the component model of the Orocos Real Time Toolkit (RTT) and the object request broker (ORB) implementation, omniORB.Components (or tasks) encapsulate different functionalities, run independently and provide input and output for other components (see Figure 10).The configuration can be applied to each component individually.This allows adjustments to the system in a very flexible way and to distribute computational demanding components among the two ZynqBrains.Additionally, a web server is running on the second ZynqBrain providing access to a web application written in JavaScript and provides a user interface for the therapist or patient, e.g., to select a mode, adjust settings or observe the current state of the exoskeleton (see Section 3.2.3).Furthermore, some functionalities can be triggered by biosignals like EEG or EMG as the biosignal processing can be done on the embedded processors [36,50].

Results and Discussion
This section presents the experimental results of the rehabilitation therapies implemented on the wheelchair configuration.Since the upper body design is identical for both configurations, the results are equally valid between them.Furthermore, we present a comparison with existing exoskeletons for rehabilitation.

Gravity Compensation Mode
A good gravity compensation model is crucial to ensure transparency of the exoskeleton to the human subject and ease of operation for the therapist.Table 3 shows average commanded torque (predicted with inverse dynamic model i.e., Equation ( 6)), average measured torque (through motor current), mean absolute error (MAE) in joint space and norm of MAE for a duration of 10 s sampled at 100 Hz for four balanced poses (guided by hand) of the right arm as shown in Figure 11.It can be observed that for all poses, norm of MAE is between 0.12 Nm & 0.26 Nm which demonstrates the good quality of the model.Figure 12 shows four different poses during the dual arm gravity compensation mode with the human subject inside the exoskeleton.Due to the good quality of the gravity compensation model, the human subject can move its arms freely within the system (also see Multimedia attachments).Optionally, human arm weight compensation can also be included in the model.Another application of this functionality is the get in helper mode (see Figure 13) which allows easy entry of the human subject inside the exoskeleton system.Thanks to the transparent behaviour of the exoskeleton arms in this mode, the human subject can wear them in a safe and user-friendly manner.Healthy subjects can enter the dual arm exoskeleton in less than a minute on average provided no passive adjustments in the system are to be done.(f) forearm are attached to the exoskeleton system.Similarly, (g) the left arm is inserted and secured to the exoskeleton system.The system is ready to be used in (h) dual-arm setup with the human subject.

Teach & Replay Mode
To demonstrate Teach & Replay therapy, drinking and pointing trajectories were taught to the system and were replayed ten times with and without human subject.Figures 14 and 15 show the error band plots between the commanded trajectories and joint status recorded from the exoskeleton and also notes the root mean square error (RMSE) for the two taught movements.It can be observed that the system performs better in the presence of a human subject as the human body acts as a damper to the small vibrations occuring due to structural flexibilities.Figure 16 shows the motion sequence during the drinking movement with a human subject inside the exoskeleton system.

Master-Slave Mode
Master-Slave mode can be used in the Mirror therapy which involves mirroring the movements from the healthy arm (in GC mode) to the position controlled affected arm.Figure 17 shows the joint position data recorded from the master and slave arms during a mirror therapy session.This mode is ideal for increasing the self-training time of the stroke patients as they can train themselves by naturally copying the movements from their healthy arm to the affected arm in the minimal supervision of the therapists.Figure 18 shows four different poses from the master slave mode with the system with a human subject inside.

Comparison with Similar Exoskeleton Systems
Table 4 provides a comparison of the RECUPERA upper body exoskeleton system with some existing systems based on their DOF, range of motion, torque capabilities at joints, system weight etc.It can be observed that RECUPERA upper body system is the most lightweight system among other systems considered in this study.Each arm in RECUPERA exoskeleton with 5 active DOF and an active gripper has a total weight of only 4.3 kg.Thus, the system can be reliably mounted on a commercially available wheelchair.In comparison to other systems, its ROM is limited which is partly due to design specifications from our clinical partners.The RECUPERA fullbody system provides a larger ROM at the arms by including the movements in the back.Furthermore, the active torso and legs make it possible to practice the upperbody rehabilitation therapies with the system in both sitting (see Figure 19a) and standing (see Figure 19b) postures (also see Multimedia attachment).

Conclusions
This paper presents an overview of the novel RECUPERA exoskeleton for stroke rehabilitation applications.Modularity and decentralized control are two driving themes in the design and hence they are reflected in all aspects of mechanical, electronic and software design.This allows for easy integration and unit-testing of individual subsystems and various levels of safety implementation.The use of novel parallel mechanisms helps in achieving a lightweight design with good dynamic characteristics.By this together with different rehabilitation therapies such as Teach & Replay and Mirror therapy (see System Overview Video (https://www.youtube.com/watch?v=Rln0A5TmW6g), Patient Test Video (https://www.youtube.com/watch?v=dCn1ktzbpZ8)) the system can be applied to patients with different demands, enables mobile support as well as self-training during hospital stay or at home.One major drawback of the present setup is the lack of force/torque sensors in the linear drives used in the spine hexapod and legs.Since, these drives have high friction which is difficult to model, the force control is not possible over direct current measurement.The system is currently being upgraded with direct force measurement in these drives.This will enable additional mobility features on the system such as active balancing and walking.Furthermore, although the system offers the possibility to enhance the control using biosignal-based control as discussed in [36,50,56,57], these aspects have not been evaluated in depth.Accordingly, in future we will evaluate the effect of biosignals on the control of the system and the effectiveness in stroke therapy.

Supplementary Materials:
The following are available online at http://www.mdpi.com/2076-3417/9/4/626/s1 Author Contributions: All authors designed and implemented the system.S.K. and H.W. developed the concept and designed the experiments of the paper.S.K., H.W. and M.T. developed the software and firmware.S.K., H.W. and M.T. performed the experiments and analyzed the results.S.K., H.W., M.T., M.M., E.A.K. and F.K. prepared the manuscript.All authors reviewed and edited the manuscript.
Funding: Federal Ministry of Education and Research (BMBF, grant no.01IM14006A).

Figure 5 .
Figure 5. Hybrid centralized-decentralized control and network architecture.The exoskeleton is controlled by two central systems, called ZynqBrain (ZB), and a network of decentralized Actuator Control Units (ACU) for BLDC motor control.Each motor is controlled locally by an adjacent ACU.The distributed ACUs are interconnected via an NDLCom network.ACUs that belong to a specific limb form a subsystem.Bottom left: cascaded actuator-level control architecture implemented on the FPGA of each ACU; u is the angular position, u is the angular velocity and i is the motor current.The reference values are provided by the mid-level control on the ZBs.All ACUs continuously send telemetry status data including u, u and i to ZB1 with a frequency of 100 Hz using the NDLCom network.

Figure 6 .
Figure 6.Recupera single arm schematic and its topological graph.

Figure 8 .
Figure 8. Workspace of the RECUPERA single arm.

Figure 9 .
Figure 9. Web GUI for high level control.

Figure 19 .
Figure 19.Sitting and Standing with RECUPERA full body exoskeleton.

Table 1 .
Overview of 6-DOF force/torque sensors used in the RECUPERA exoskeleton.

Table 2 .
[48]igurations of the Actuator Control Units (ACU), motors, gears, speed and sensors.Each ACU consists of zero or more PCBs for Power electronics, Data acquisition and communication, or Computation.To control a motor, it senses the motor position via iC-MU[48]Absolute encoders or Relative encoders (Hall sensors).In addition, Linear potentiometers (WayCon) or draw Wire sensors (WayCon) are used for linear drives to sense the length.

Table 4 .
Comparison of Recupera upperbody system to other upper body exoskeletons and the Activities of Daily Living (ADL) ROM.