Simulations and experimental evaluation of an active orthosis for interaction in virtual environments

In this work, the development of a human arm active orthosis is presented. The orthosis is designed primarily for training and rehabilitation in virtual environments.The orthosis system is intended for embodiment in virtual reality where it is allowing human to perceive forces at different body parts or the weight of lifted objects. In the paper the choice of a mechanical structure is shown equivalent to the structure of the human arm. A mechanical model of the orthosis arm as haptic device is built, where kinematic and dynamic parameters are evaluated. Impedance control scheme is selected as the most suitable for force refection at the hand or arm. An open-loop impedance controller is presented in the paper. Computer experiments are carried out using the dimensions of a real arm orthosis. Computer experiments have been carried out to provide force reflection by VR, according to virtual scenario. The conducted simulations show the range of the forces on the operator hand, orthosis can provide. The results of additional measurements and experimental evaluations of physical quantities in the interaction in a virtual environment are revealed in the paper.


Introduction
Exoskeleton is outside wearable robot with joints and limbs corresponding to those in the human body.It transmits torques to human joints by actuators allocated in its mechanical structure.Exoskeletons are used for four basic functions by means different control algorithms [1]: a) rehabilitation -fit closely to his or her body, fulfils tasks of physical therapy in an active or passive working mode; b) Haptic device -the subject physically interacts with virtual objects, as the interaction forces are applied by the exoskeleton opposite the operator; c) Master device -for tele-communication robot control "masterslave" as the interaction forces are applied by the exoskeleton opposite the operator: d) Assistive device -human body amplifier, operator feels diminished the loadings, accepted by the exoskeleton.
The first modern exoskeleton arm was designed by PERCRO (Perceptual Robotics Laboratory) for replication of sensations of contacts and collisions [2].This is a seven degree of freedom (7-DoF) ungrounded device, attached to operator's shoulder and torso.
The operator holds onto the device with his/her palm.Hence, the device can only exert forces at the palm of the user.It uses DC motors with a cable transmission system for actuation.The authors of PERCRO have developed arm exoskeletons for haptic interaction with virtual environments L-Exos [3,4].This is a five-DoF exoskeleton with a wearable structure and anthropomorphic workspace that can cover the full range of motion of a human arm.A 9-DoF under-actuated exoskeleton arm using pneumatic actuators is developed by [5].Their device allows full reproduction of the human arm's workspace when operating the exoskeleton.An alternate arm exoskeleton developed at the Korea Institute of Science and Technology addresses the limited wearability issues of previous designs by using parallel mechanisms and pneumatic actuators [6].The wearable Salford arm addresses some of the issues and limitations of earlier designs [7,8].For example, nearly ninety percent of the human arm's workspace can be replicated with their device.Pneumatic muscle actuators (PMA) were selected to power the robot due to their high power-to-weight ratio.Soft arm-exoskeleton was used in physiotherapy and training.The design of a seven-DoF powered cable-driven arm exoskeleton for neuro-rehabilitation is presented in [1].Proximal placement of motors, distal placement of pulley reductions, and open mechanical human-machine interface are a few features that add to the performance and ease-of-use of the device.Additional characteristics include low inertias, high-stiffness links, and backdrivable transmissions without backlash.The design achieves fullworkspace ranges of motion.
Recently, the use of exoskeletons as Haptic device significantly increased due to the development of applications related to interaction in virtual environments [2,3,4].Haptic or force-reflecting interfaces are devices used to display touch or force-related sensory information from a virtual or remote environment to the user [2].Haptic interfaces allow to perceive and transmit motion and forces to real or virtual entities stimulating the somatosensory system, and indeed the participation of the user in the immersive virtual reality [9].In immersive virtual reality (IVR) it is possible to give people the illusion that they have a different body.Through real time motion capture when the person moves their real body they see the virtual body move correspondingly [10].This feature of exoskeletons is combined with their other applications -as a device for rehabilitation using virtual scenarios [4].
The objective of the work presented in this paper is to introduce the design of an active orthosis of upper-limb.Device can be used for application where both motion tracking and force feedback are required, such as human interaction with virtual environments or rehabilitation tasks.Computer simulations and real experiments to be carried out to evaluate the possibility of developed exoskeleton to provide force reflection on the hand of the operator.

Mechanical structure and actuation system
The exoskeleton mechanical structure as a wearable device must fulfil the following design requirements [7]: light with low mass/inertia; safety; comfort of wearing; anthropomorphic workspace arm, extensive range of motion, etc.
The device, which can be seen to function as a powered exoskeleton, usually is build up of a serial kinematics structure consisting of rotational joints.A kinematics structure is selected to be similar to the structure of the human arm [11] (Fig. 1).
Еach arm structure has 4DoF corresponding to the natural motion of the human arm from the shoulder to the elbow, but excluding the wrist and the hand.In the chosen solution, the first two rotation joints are incident and mutually orthogonal in order to emulate the kinematics of a universal joint with the same centre of rotation of the human shoulder (Fig. 1).The third and the fourth joints are selected to be two rotational joints, incident and mutually orthogonal in order to emulate the kinematics of universal joint with the same centre of rotation of the human elbow.The third and the fourth joints emulate the effective motion of the elbow flexion and human shoulder rotation without decoupling the motion in a way typical for human arm structure.The mechanical structure of exoskeleton system includes two arms, that are grounded.Unlike other solutions, circular guide and three axes joints are avoided.Each universal joint placed in the shoulder and in the elbow consists of a cross shaft and pair of rotational joint oriented at 90 ° to each other.The cross shaft is formed as an angle, in which the human hand is situated, as the axes of rotation intersect at a point, coinciding with the point of rotation of the human natural joint.The basic parts of the exoskeleton arm are made of aluminium.The arm is constructed for use by a typical adult.All arm units are designed that allow quick and easy adjustment of length, so making it easy to accommodate a range of users.Plastic shells with bands are placed over the units for attachment to human limb.This design suggests a comfortable, light and low cost mechanical structure.In Figure 2 a picture of two arm prototype is shown.High precision rotation sensors are mounted in the joints.
Actuation system of exoskeleton arm should have the following advantages: excellent power/weight ratio with inherent safety, natural compliance, low cost.Self-made braided pneumatic muscle actuators (PMA) are used to achieve these advantages.PMA consists of two layers: an inner one, representing rubber liner and outer one, representing braided nylon.Endcaps are allocated at both ends, where the two layer are clamped.A pipeline is located in one endcap for supplying or getting out the pressurized air.Muscles possess a maximum diameter D0 = 0.016 m and nominal length Ln =0.390 m.They can be used not only singly, but also in a parallel group, as shown in Figure 3.The muscles from the bundle are fed in parallel with air at a maximum pressure 500 kPa (5 bar).All the muscles of the bundle are connected together mechanically in their both ends.High precision pressure sensors are mounted for each bundle.Joint motion/torque on the exoskeleton arm is achieved by antagonistic actions through cables and pulleys, driven by the pneumatic actuators.The pulleys are attached on the arm segments following joint shafts.All actuators are mounted on the exo-shell on the operator's back.A selection of bundles with different number of muscles for every joint is performed to ensure nominal torques in the joints [11].Selected bundles antagonists with muscles number m of the four arm joints are as follows: m1a=7, m1b=3; m2a=6,m2b=3; m3a=4, m3b=2; m4a=4, m4b=3.

Mechanical model and simulations
Mechanical model of the right arm exoskeleton is build up, according to the kinematics scheme shown in Fig. 1.The kinematics structure includes 4 rotation joints with h = 4 DoF.Independent parameters for evaluation are the rotations in the four joints q1, q2, q3 and q4, corresponding to the four basic motions of the upper limb: shoulder abduction/adduction, shoulder flexion/extension, elbow flexion and shoulder med./lat.rotation.Reference frames are selected in the manner shown in Fig. 4.
Coordinate systems (c.s.) X0Y0Z0 ,…, X4Y4Z4, are attached to all links, and X5Y5Z5. is to the end effector (EE).In the initial position, all local c.s. are selected to be in the same direction for convenience, and one of the axes have a rotating joint.The rotation is set with the vector φi=│ φix, φiy, φiz│ T , one of whose components is equal to the angle qi of the selected axis X, Y or Z and the other two in this case are zeros, but the model can be used also for joints with 3 rotations at the same time if needed.The position of each XiYiZi c.s. is set with the displacement vector li=│lix, liy, liz │ T respectively to the former.Two of the units are L-shaped and are therefore given in two lengths.Thus the selected kinematic description parameters are given in Table 1.The lengths are chosen: L1= 0.1; L2= 0.150; L3= 0.286; L4= 0.130; L5= 0.095; L6= 0.37; L7= 0.130 m.Table 1 shows coordinate systems numbers as well as the parameters of displacement and rotation.With this data the transformation (4x4) matrices Ti-1,i, i= 1,…,5 are compiled, which derive the position of frame 5 with respect to frame 0. T0,5= T0,1… T4,5 , ( The joints parameters are accepted to be the generalized parameters: The coordinates of the end-effector are presented by the vector The relations between the generalized parameters (1) and the coordinates of the endeffector (2) are set by the direct kinematics.Regarding positions and velocities, we formulate that by the following equalities: is the (ν x h) Jacobian matrix.Assuming that the operator hand is connected to a point EЕ, we will further consider exoskeleton positions only, and we will accept the operation space as 3 dimensional (ν=3).The vector of end-effector coordinates (3) will be (3 x 1) dimensional, and Jacobian (6) will the (h x 1) vector of the generalized torques in the joints in the basic chain corresponding to the generalized parameters (2) and by the (3 x 1) vector of the external forces applied at the end effector and corresponding to the coordinates (3) of the end effector.The link between the external forces ( 8) and the effective generalized torques ( 7) can be defined according to the principle of virtual work as follows In virtual reality tasks, the vector of the external forces ( 8) represents the desired force on the end effector, when user's movements correspond to contact with a virtual surface.
The gravity of exoskeleton links and the gravity of human arm influences on the behavior of the end-effector.The (4 x 1) vector is the vector of gravity torques, generated at the exoskeleton joints.Its components: are determined by the mass of links mi , i=1…n, the gravity acceleration vector in the base frame g0=[gx,gy,gz] T and the position vector of the i-th link centre of mass in the base frame To make the operator feel force reflection from the virtual environment, an open-loop force controller with feedforward gravity compensation is selected [2].This type of force control is called open-loop because there is no force feedback from the device to the controller to regulate the force output of the exoskeleton end effector as it is illustrated by the control block diagram in Fig. 5.
Virtual Engine in the controller on Figure 5 generates a desired force command Fd used to calculate force command in the exoskeleton joints.A software block G(q) implementing gravity compensation has been introduced in order to take into consideration the effects of the exoskeleton weight in the calculation of the joint force commands.Generalized torques in the joints as joint force commands are given by the following equation Forces that human exerts on the exoskeleton end effector QH represent a physical, not control input to the device.According to control block diagram on Fig. 6, the vector representing force command in joint space Q = [Q1,…,Q4] T includes the joints torques where Pjb, Pja are the driving forces of the pneumatic actuators and r is the pulley radius [11].
The driving forces can be presented by the equation: They are a function of the muscle contraction C, as well as a function of the pressure p, the nominal muscle length Ln and the number of muscles in the bundles m, determined by the coefficients k0 and t, where k0 = -39 + 321 m, t = -0.21+4.41 m.Equations ( 13), ( 14) allow the calculation of the pressure for the pneumatic actuators in one joint.To obtain maximum torque in the joint, it is appropriate one of the actuators (antagonist) to be passive (doing zero force) and the pressure of the second actuator to be controlled.When changing the direction of the force, the actuators change their roles.

Experiments for ensuring force reflection from VR
An application of the exoskeleton as a VR haptics device is further discussed.3D Unity Virtual Engine is used for data transfer between the exoskeleton and the avatar in a virtual scenario.Optical tracker, head-mounted display Oculus Rift is used for visualization of the virtual system and to track the head position and orientation.The exoskeleton is designed to track the position and orientation of the human body and to provide force feedback to the human arms.Fig. 6 shows a scenario of virtual gymnastics when: a) -an exercise "Lifting dumbbells" is visualized; b) a scheme of the right-hand motions is presented corresponding to positions in computer graphics.The controller in Figure 5 creates power commands in the joints of exoskeleton, that form the force action on the user's hands, equivalent to the power impact simulated in the virtual scene.In the scene of virtual gymnastics, power influence is the weight of the dumbbells which is applied to the hand.The magnitude of this force is a constant, generated in virtual machine.
Simulations were conducted for assessing the developed exoskeleton ability to provide forceful impact on the operator, in the described scene of virtual gymnastics.Experiments were carried out in the following manner.A desired force Fd on axis Y is set, simulating the force which exoskeleton exerts on the human hand.Simulations are carried out as exoskeleton arm performs lifting movements in OYZ plane as it is shown on Fig. 6 b).For this purpose an experiment was performed with the real exoskeleton, moving up and down along the Y axis, while the joint angles and the position of the end-effector were recorded.Torques in the exoskeleton joints (12), (13) were calculated by taking into account the desired force and the gravitational component (10).For each joint the pressure of the active muscle actuator is calculated according to (14), when the pressure of the passive one is set zero.In this paper, the minimum required pressure is considered.The minimum force is applied to the passive muscle and the force of the active muscle is calculated according to (15) and its pressure according to (14).Fig. 7 shows the variation of the calculated pressure in the active muscles of the four joints for the arm movement from Fig. 6 (b) "lift up-down" by Y axis.On Fig. 7 a) the set force Fy is 24 N and in Fig. 7b) it is 16N.As can be seen from Fig. 7, at Fy = 24 N, the pressure in the second joint exceeds the maximal possible supply pressure of 500 kPa and the desired output can not be performed.
At Fy = 16 N, pressures in all joints are below the 500 kPa limit.The simulation shows that setting a force from the virtual system towards the exoskeleton have to be done only after evaluating the possibility of executing it.The performance also depends on the position of the hand.If this is not evaluated, the force effect on the operator will be different than the desired in the direction and value.
In the next experiment, the effect of the virtual desired end-efactor force on the muscles action and on the resulting real end-effector force were researched.The experiment is carried out in a position of the end-effector (X = -0.158;Y = -0.073;Z = 0.550 m), with a force sensor on the Y axis and a computer interface.The desired force 25 N is set in one step and the resultant force is recorded over time ( Fig. 8).The measured real force on the Y-axis of the end-efactor changes with a delay, which is determined by the characteristics of the valves and the pneumatic feed system.The joint pressure variation is measured, as shown in Fig. 10.As can be seen from the graph, in the selected position the desired force of 25N is well achieved and the calculated values of the active muscle pressures are in the allowable limits of the power supply.

Fig. 1 .
Fig. 1.Exoskeleton structure, similar to the structure of the human arm.
) dimensional.A MATLAB application was created to calculate the components of the matrices Ti-1, i, and uses MATLAB function Jacobian ([τ14, τ24, τ34], [q1, q2, q3, q4]) to calculate the private derivatives and finds the components of J. Denote by

Fig. 5 .
Fig.5.Block scheme of force control with feedforward gravity compensation.

Fig. 6 .
Fig. 6.Scene of virtual gymnastics: a) an exercise "Lifting dumbbells"; b) scheme of the arm motion.A Matlab simulation model was developed for calculating the joint pressures corresponding to different forces applied to the endefactor along the axis Y for the given positions.For each joint it is calculated for three cases: for demanding lowest possible pressure; for average pressure; or for maximal pressure.For the first case, this is achieved by calculating the minimum pressure, so calculate the minimum forces in the muscles Pmin and then the joint muscle force command Pj = Qj / r is added to the minimum forces Pmin of the muscle agonist, and only Pmin is applied to the other muscle antagonist , for example Pb =Pa min + Pj, Pa =Pa min (15) or Pb = Pb mаx , Pa =Pb mаx -Pj.(16)

Fig. 7 .
Fig. 7. Calculated pressure variation in the four joints actuators while the hand performs lifting movements, for: a) the set end-efector force is 24 N, b) the set force is 16 N.

Fig. 9 .
Fig. 9. Variation in pressure in the muscle actuators of the four joints from Figure 8.