ASSIST AS NEEDED CONTROL STRATEGY FOR UPPER LIMB REHABILITATION ROBOT IN EATING ACTIVITY

The slacking behaviour or lack of participation from impaired patients during robotic rehabilitation therapy is one of the factors that slow down their recovery. The implementation of Assist As Needed (AAN) control law in the robotic assisted rehabilitation treatment may alleviate this problem and encourage the patients to be actively involved in the rehabilitation exercises. This paper presents a new Assist As Needed control strategy for an upper limb rehabilitation robot in assisting subjects with various levels of capabilities to regain their original upper limb’s functionality in realizing basic motions in eating activity. The controller consists of Proportional, Integral, Derivative (PID) controller in the feedback loop, with an adjustable gain K that varies according to the user’s level of capability. A Force Sensing Resistor (FSR) is used to identify the user’s upper extremity capability level. The controller regulates the necessary amount of assistance provided by the robot based on the information obtained from the sensor. The automatic adjustment of the robot’s assistance to the subjects leads them to put in their own effort in accomplishing the desired movements. The proposed control strategy is simple, easy to program, and mathematically less complicated. A prototype of the wearable upper limb rehabilitation robot has been built and a Graphical User Interface (GUI) has been developed using MATLAB software to facilitate the rehabilitation process and for progress monitoring. The simulation and experimental results have proven that the proposed control strategy is successful in regulating the necessary amount of robot assistance according to the patients’ level of capability. The proposed controller has effectively driven the upper limb rehabilitation robot to achieve the desired trajectory with zero steady state error, percentage overshoot less than 8% and settling time below 6 seconds, whilst providing the correct amount of robotic assistance in accordance to the subjects’ capability level. ABSTRAK: Reaksi kurang respon dari pesakit kurang keupayaan semasa terapi pemulihan robotik adalah satu faktor melambatkan kadar pemulihan. Pelaksanaan teknik kawalan Bantu Apabila Diperlukan (AAN) dalam rawatan pemulihan dengan bantuan robot dapat membantu dan mendorong pesakit terlibat secara aktif dalam latihan pemulihan. Artikel ini membentangkan strategi kawalan baru, iaitu Bantu Apabila Diperlukan oleh robot pemulihan bagi anggota atas pesakit yang mempunyai pelbagai tahap kemampuan, dalam mengembalikan fungsi asas gerakan tangan seperti aktiviti makan. Teknik kawalan terdiri daripada kawalan Berkadar, Integral, Terbitan (PID) dalam lingkaran tindak balas, dengan pemboleh ubah K mengikut tahap kemampuan pesakit. Alat pengukur Resistan Daya Rasa (FSR) digunakan bagi mengenal pasti tahap kemampuan maksima pesakit dalam menggerakkan tangan. Berdasarkan maklumat yang diperoleh daripada sensor, teknik kawalan akan menghantar maklumat kepada robot bagi membantu pesakit. Bantuan automatik yang dibekalkan robot kepada pesakit akan mendorong pesakit berusaha melakukan gerakan yang diperlukan. Strategi kawalan yang dicadangkan ini adalah


ABSTRACT:
The slacking behaviour or lack of participation from impaired patients during robotic rehabilitation therapy is one of the factors that slow down their recovery. The implementation of Assist As Needed (AAN) control law in the robotic assisted rehabilitation treatment may alleviate this problem and encourage the patients to be actively involved in the rehabilitation exercises. This paper presents a new Assist As Needed control strategy for an upper limb rehabilitation robot in assisting subjects with various levels of capabilities to regain their original upper limb's functionality in realizing basic motions in eating activity. The controller consists of Proportional, Integral, Derivative (PID) controller in the feedback loop, with an adjustable gain K that varies according to the user's level of capability. A Force Sensing Resistor (FSR) is used to identify the user's upper extremity capability level. The controller regulates the necessary amount of assistance provided by the robot based on the information obtained from the sensor. The automatic adjustment of the robot's assistance to the subjects leads them to put in their own effort in accomplishing the desired movements. The proposed control strategy is simple, easy to program, and mathematically less complicated. A prototype of the wearable upper limb rehabilitation robot has been built and a Graphical User Interface (GUI) has been developed using MATLAB software to facilitate the rehabilitation process and for progress monitoring. The simulation and experimental results have proven that the proposed control strategy is successful in regulating the necessary amount of robot assistance according to the patients' level of capability. The proposed controller has effectively driven the upper limb rehabilitation robot to achieve the desired trajectory with zero steady state error, percentage overshoot less than 8% and settling time below 6 seconds, whilst providing the correct amount of robotic assistance in accordance to the subjects' capability level.

INTRODUCTION
Stroke is a devastating disease and remains a major health concern worldwide as it is one of the leading causes of disability and mortality. According to Global Burden of Diseases, Injuries and Risk Factors Study (GBD) in 2010, stroke is ranked as the third top disease with greatest burden based on the disability-adjusted life-years (DALYs). In Malaysia, the scenario is equally debilitating as the prevalence of data from 2007 to 2017 shows that the disease is the third prominent cause of fatality among Malaysians. According to Malaysia Health Minister in 2007, six new cases of stroke occurred every hour and 17,909 stroke victims were admitted into hospitals in 2005 [1]. The number had increased to 45,000 in-patients and 31000 outpatients receiving stroke treatments at various hospitals and medical institutions nationwide in 2016 [2]. Statistics revealed that 85% of post-stroke survivals are left with various deficiencies in their hand and wrist areas [3]. The stroke victims' upper limbs weaken and as a result, they lose their arm's capability to perform tasks. One of the most important activities in daily living that is done frequently every day is eating [4,5]. It is very frustrating for the patients with upper limb impairment due to stroke to be unable to eat by themselves at any time that they want, at any place and at their own pace. They have to depend a lot on the caregiver to feed themselves. The disease does not only distress the patients, but the caregivers and family members are also severely affected in many ways including time, energy, and finances. Thus, a great socioeconomic impact is left to the nation after the occurrence of a stroke.
Rehabilitation therapy facilitates patients' ability to regain upper limb function and get back to performing ordinary and essential tasks of daily living. Intensive, massed, and repeated practice in the rehabilitation process modifies neural organization and leads to the recovery of functional motor skills [6]. Robotic rehabilitation therapy automates the manual rehabilitation treatment and offers the advantages of providing a high level of repetitive movements without the need to increase the therapist's supervision time [7]. It also provides a more consistent movement that can increase the recovery rate and speed.
One of the challenges in a robotic rehabilitation therapy is the slacking behaviour of the patients who have partially regained their motor functions, where they stay passive throughout the rehabilitation process without putting any effort into the exercise. Nonetheless, clinical studies have shown that the simultaneous contribution of both patients' voluntary effort and assistive torque from the robot aid in a higher recovery rate and a more effective treatment [8]. One of the methods to achieve this is by the implementation of Assist As Needed (AAN) control strategy that emphasizes patient's active participation [9]. The https://doi.org/10.31436/iiumej.v22i1.1480 main feature in this control technique is that the robot's assistive torque is regulated according to the patients' limb capability or impairment level, which is estimated a priori or during the training. Under the assistive scheme, the patient performs the prescribed task independently while the robot provides assistance to facilitate the patient only as deemed necessary [10]. Adjusting the robot's assistance based on the patient's ability will encourage them to put an effort in moving their limbs to accomplish the specified motions in the exercise. Their own movement initiative will lead to cognitive processing in the brain and stimulate neuroplasticity. Therefore, a greater recovery performance can be achieved under the Assist As Needed control scheme.
Several Assist As Needed control techniques have been formulated for lower and upper limb rehabilitation treatments for various types of patients [11][12][13][14][15][16][17][18][19][20][21][22][23][24][25]. Gui et al. introduced the progressive Assist As Needed (pAAN) controller for a lower limb exoskeleton system. In this technique the subjects' voluntary input torque is estimated using an electromyography (EMG) signal. The relationship between the patient's effort torque and EMG signal is established using an unsupervised learning algorithm. The method is able to predict the subject's effort and finally encourage their active participation in the robotic assisted training [11]. An Assist As Needed (AAN) control with adjustable assistance level for robotic orthoses has been developed by Asl et al. [12]. An experiment on a lower extremity robotic exoskeleton was conducted. The controller provides a freedom zone for the user by lowering the control effort and allowing adjustable tracking errors [12].
The Assist as Needed control scheme for upper limb rehabilitation [13][14][15][16][17][18][19][20][21][22][23][24][25] was included in the works by Pérez-Rodríguez et al. [13]. It was composed of three subsystems: (1) biomechanical prediction, (2) assistance decision, and (3) command generation. The biomechanical prediction subsystem estimated the current state of the biomechanical evolution of the subject; the assistance decision subsystem determined the exact amount of assistance needed by the subject; and the command generator subsystem excited the exact output to the robot. Kapsalyamov et al. proposed a brain-computer interface in the Assist As Needed upper limb rehabilitation training paradigm. An electroencephalography sensor was used in the brain-computer interface implementation. The technique enabled the patients to move the robot utilizing the limited motion and strength that they had and the robot assisted for the remaining course of trajectory that they were unable to perform by themselves. [14]. The major challenge in AAN control strategy is to effectively determine the patients' movement/functional ability, and then to adjust the robot assistance consistently with the changes in the patients' movement abilities [15,16]. Agarwal and Deshpand [17] introduced the learned force-field control that establishes the relationship between the subject's torque and joint angular displacement in an off-line setting. It is used to assist the finger's movement along a targeted trajectory. The AAN control algorithm presented by Stroppa et al. tunes the robot assistance in real time. The performance indices of the subject in an upper limb rehabilitation is extracted accurately and correlated to the amount of robot's assistance to be supplied. The information of the patients' clinical status is not necessary in this algorithm [18]. Taheri et al. proposed an AAN control method that learns the subject's neuromuscular impairment adaptively [19]. In the Greedy AAN (GAAN) control scheme presented by Luo et al. [10], a Gaussian RBF with weight vectors and challenge level modification algorithm are used in the rehabilitation training of the neurologically impaired subjects. The function of the Gaussian RBF network is to model the functional capability of the patients and therefore, assign the corresponding a tailored task challenge. Wolbrecht et al. [20] implemented an adaptive controller with Gaussian Radial Basis Function (RBF) to estimate the patients' capability level. The RBF is integrated with a forgetting factor to vary the robotic assistance with respect to the subject's effort. Bower et al. [21] and Guidali et al. [22] have improved the technique by proposing a directionally dependent RBF in quantifying the patients' capability. In the works by Pehlivan et al. [23], the patients' ability has also been predicted using RBF. The subject's positional error bounds have been manipulated to correlate patients' input estimation and engagement. A Function Ability Index (FAI) has been introduced by Mounis et al. [24,25] to describe the patients' adequacy in performing elbow flexion/ extension based on the patient's quality of movement and speed. A statistical normalized function and a spline equation have been used in categorizing the patients' impairment stages and then associating them to the available (Wolf Motor Function Test) WMFT and Action Research Arm Test (ARAT) clinical scales.
Several Assist As Needed control techniques have been presented in the literature, however, these methods are difficult and mathematically complicated. A huge sample of subjects are needed in learning the patients' functionality level and establishing a mathematical equation to describe their capability. This may influence the controller performance for real time implementation. Many of the existing control methods also rely heavily on the plant's model in which the inaccuracy in the modelling may affect the system performance. The existing controller designs and programming also become more difficult with the increasing complexity and number degrees of freedom (DOF) in the robot structure.
Therefore, this paper presents a new simple, easy to programme and mathematically less complicated Assist As Needed (AAN) control strategy. It is suitable for the real time hardware implementation. The proposed control scheme consists of an adjustable gain K and PID control feedback loop, focusing on the 4 movements in eating, which are the elbow and wrist flexion/ extension motions.

UPPER LIMB REHABILITATION ROBOT MECHANISM AND OPERATIONAL SEQUENCE FOR EATING
This study focuses on the formulation of Assist As Needed control law for an upper limb rehabilitation robot. At this stage of work, the upper limb rehabilitation robot prototype for the eating task, as shown in Fig. 1, has been built for controller development and testing. The prototype is an improved version of the previously wearable motion assist robot for eating, developed in the WISE Lab, IIUM [26]. It has 2 degrees of freedom (DOF) and is made of 3 links, namely the arm, elbow, and wrist linkages, focusing on the 2 important upper extremity movements in eating: (1) elbow flexion/extension and (2) wrist flexion/extension motion. Among these 3 links, only the elbow and wrist linkages are actuated by the motors to realize the required feeding movements. The arm link is kept stationary. Arm/elbow holders made of 3D printed material with the slots for a Velcro strap are installed at the arm and elbow links to attach the robot to the user's upper limb. Eating utensils such as a spoon or fork can be fixed at the end of the wrist link to scoop or transfer food to the mouth. The mechanical drawing of the robot from various views is illustrated in Fig. 2.
The 12 V 120 RPM 18 kgfcm (1.76 Nm) planetary direct current (DC) geared motor (product code: IG42E-49K) and 12V 22RPM 7kgfcm (0.687 Nm) brushed DC geared motor with encoder (product code: SPG30E-200K) from Cytron Technologies [27] have been chosen for actuating the elbow and wrist joints respectively. The choice was made mainly based on the amount of torque that is needed from each motor, in which the elbow joint needs at least 1.31 Nm (13.36 kgfcm) of torque to operate and the wrist joint requires a minimum torque of 0.30 Nm (3.06 kgfcm) for the wrist flexion/extension. The detailed calculation on these necessary motor torques can be found in [28] and the specification of the motors are listed in Table 1. These DC motors are also equipped with encoders that are used to measure the angular displacement of each joint.   The force sensor resistor (FSR), from [29] (product code: FSR01CE) has been selected to measure the user's forearm payload that indicates their capability in lifting their own hand in the Assist As Needed control law. The force is installed below the forearm, at the part where it is rested on the elbow holder. The force sensor is able to measure force ranging from 0.2 N to 50 N and it gives an analog output that makes it suitable for the application. An Arduino ATMEGA Mega 2560 is used as a microcontroller since it has 54 input/output pins, in which 15 of them are PWM output pins that are sufficient for the upper limb rehabilitation robot. Both of the DC motors are unable to be directly controlled by the Arduino due to its limitation in supplying more than 20 mA of current. Therefore, the motor driver from Cytron Technologies [27] (product code: MDD10A) is utilized to drive the motors. The maximum rated current that the motor driver can withstand is 10 A, which is higher than the rated current of the chosen DC motors. Its operating voltage is within the amount of voltage that needs to be supplied to the motors. LiPo battery 11.1V 2200mAH, from Cytron Technologies [27] (product code: LIP-11.1-2200) has been chosen as the power supply since it is it is rechargeable and able to supply the necessary amount of voltage to the motors.   The operational sequence of the system for one eating cycle in shown in Fig. 5. Firstly, DC motor 1 extends the elbow from its rest position to reach the food container as can be seen in Fig. 6 (a). Encoder 1 will measure whether the joint has achieved the desired position. Then, DC motor 2 performs the wrist extension movement, as shown in Fig. 6 (b), until it attains the predefined angular displacement indicated by encoder 2. Next, the wrist joint will be flexed by DC motor 2 towards the centre as depicted in Fig. 6 (c). Finally, DC Motor 1 performs elbow flexion motion to bring the food to the user's mouth as illustrated in Fig. 6 (d).

DYNAMIC MODELLING OF THE ROBOT
For the purpose of simplifying the mathematical model derivation and since the elbow and wrist joints do not move simultaneously in the eating procedure, the dynamic modelling representing the load torque for each motor with respect to the physical quantities of the two robot joints are conducted separately. The next subsection will describe the mathematical modelling for the elbow flexion/extension, wrist flexion/extension and DC motors. https://doi.org/10.31436/iiumej.v22i1.1480

Dynamic Modelling for the Elbow Flexion/Extension (in Y-Z plane)
In this dynamic modelling, it is assumed that: (1) the elbow and wrist linkages are a single body, (2) the wrist joint is at its original position and (3) the wrist motor is stationary for simplicity. DC motor 1 moves the combined body of elbow and wrist linkages. and, where 1+2 is the total length of the combined body of the elbow and wrist linkages. Taking the summation of square for Eqs. (1) and (2) The angular velocity can be represented as, The moment of inertia can be approximated as, where 1+2 is the total mass of the elbow and wrist linkages combined. Using Eqs. (3) -(5), the kinetic energy, K1 and potential energy, P1 can be written as, and, Subtracting Eq. (7) from Eq. (6) gives, Using Eq. (8), the torque for lumped elbow and wrist link can be expressed as,

Dynamic Modelling for the Elbow Flexion/Extension (in X-Y plane)
In this modelling part, the elbow joint is assumed to be stationary and only the wrist joint is rotating. The load torque for DC motor 2, in driving the wrist, is derived by considering the structure in the X-Y plane, from the top view as shown in Fig. 8.
Taking the summation of square Eq. (10) and (11) The value of angular velocity can be represented as, The moment of inertia can be expressed as, Utilizing Eqs. (12)- (14), the kinetic energy, 2 and potential energy, 2 can be written as, Using Eq. (17), the load torque for the wrist or DC motor 2 can be expressed as, Equations (9) and (18) represent the load torque from the upper limb rehabilitation robot at the elbow and wrist joints respectively. The next subsection will describe the mathematical model of the DC motors in actuating the upper limb rehabilitation robot.

Mathematical Model of the Motor
In the simulation, the mathematical model of the motors needs to be integrated with the dynamic model of the linkages in Eqs. (9) and (18) to simulate the complete upper limb rehabilitation robot for eating. The mechanical behaviour of the motors can be described by [30].
where is the nth motor's inertia, is the nth motor's viscous friction, is the nth motor's torque, is the load torque for nth motor which are governed by Eqs. (9) and (18), ̇ and ̈ are the nth motor's angular velocity and acceleration respectively, where the nth motor's shaft angular displacement.
is related to the angular displacement of nth joint, by = / , in which N is the gear ratio and n=1 and 2 for DC motor 1 (for the elbow) and DC motor 2 (for the wrist) respectively.
The electrical part of the motors can be represented by the mathematical equation [30] where is the current in the nth motor, Is the voltage supplied to nth motor, is the resistance in the nth motor, and is the back emf constant of the nth motor.
Finally, the mechanical and electrical subsystems for each motor as described in Eqs. (19) and (20), respectively, are combined using the nth motor's torque constant, where = Equations (9), (18) -(21) will be used in the computer simulation of the upper limb rehabilitation robot and its controller. The block diagrams representing these equations will be drawn in Matlab Simulink software to test the proposed control strategy before implementing it on the real hardware.

ASSIST AS NEEDED CONTROL STRATEGY
Assist As Needed control strategy aims to encourage an active participation from patients in the rehabilitation exercise rather than just relying completely on the robot. The method has been proven to facilitate the patients' recovery of their original motor functions faster and more effectively [9]. This objective can be achieved by regulating the amount of assistance provided by the robot according to the patients' capability level or level of impairment. If the patient's impairment level is high, the robot will provide high assisting torque and in case the patient's impairment level is low, the robot will provide a lower level of assistance. The combination of the patient's effort torque and the assistance torque supplied by robot moves the upper limb to reach the pre-set desired angular displacement. By this technique, the patient will need to put his/her own effort in moving his/her upper limb based on his/her capability level rather than just totally depending on the robot to complete the exercise. As a result, slacking behaviour may be avoided and the patient may be able to successfully recover in a shorter duration.
This study proposes a simple and easy AAN control strategy for upper limb rehabilitation as illustrated in Fig. 9. The proposed method is computationally faster and uncomplicated to program, which makes it suitable for real time applications. The proposed control method is modified from [24,25]. It basically consists of a PID feedback control loop and adjustable gain, K, that is tuned based on the patients' level of capability (LOC), indicated by the Force Sensitive Resistor (FSR) measurement. In the feedback loop, the operator may set the desired angular position at the control input. The actual displacement is measured by the encoder and the value is compared with the predefined desired position. The difference between the desired and actual positions (error) will be used in the PID control algorithm to compute the control output signal which is then multiplied by the adjustable gain, K. The resulting output is then supplied to the motor and finally it actuates the combined patient's upper limb and rehabilitation robot mechanism plant accordingly. The adjustable gain K regulates the amount of the assistance that the robot needs to supply to the patients using the value of resistance measured by the Force Sensitive Resistor (FSR). The sensor is attached to the patient's forearm, at the location where the forearm rests on the elbow cover of the upper limb rehabilitation robot (in between the patients' forearm and the robot's elbow cover) as shown in Fig. 10. It measures the force exerted by the forearm load onto the robot's elbow cover. The identification of patient's capability level is conducted before the exercise begins. In this stage, the patient is requested to flex his/her elbow for 100 seconds without any assistance from the robot and the FSR will measure the amount of resistance that is proportional to the load from the forearm. If the patient has low Measured Load from Subjects' Forearm capability level, the load from the forearm on the elbow cover will be high since the patient has no strength and is unable to lift his/her forearm, giving a high FSR resistance value. On the contrary, in case the patient has a higher level of capability, he/she has the ability to flex his/her forearm on his/her own, and therefore, the load exerted on the elbow cover is lower, giving a smaller FSR resistance. A voltage divider circuit has been constructed using the FSR. The voltage across the FSR, which is proportional to its resistance value, is supplied to the Arduino board.  The gain, K needs to be calibrated according to the level of voltage across the FSR, which represents the patient's level of capability. Ideally, the calibration needs to be done using real patients with various levels of capability. However, at this stage of study, the calibration is conducted using a healthy person with different loading to imitate disabled patients. Four healthy subjects have been recruited for the simple calibration. They were requested to hold loads with different weights as shown in Fig. 11 while performing flexion movement and the value of the voltage across the FSR during the motion is recorded by the Arduino board. Then, the value of the gain, K is assigned for each level of capability (or loads carried) based on the voltage readings obtained. The different loads carried by the healthy person during the identification stage represent the forces that may be induced by the patients with various levels of impairment. The higher the weight of the load denotes a higher level of impairment, which will give a higher average FSR resistance and voltage across it, and vice versa. The outcome from the calibration is summarized in Table 2. Referring to the Table 2, if the voltage across the FSR is more than or equal to 4.4 volts, it means that the resistance across the FSR is high and the patients is unable to lift his/her hand by himself/herself at all (his/her level of capability, LOC=0). Therefore, the value of gain K is assigned to 1, in which he/she needs the complete or maximum level of assistance from the robot to perform the eating function. In contrast, the case where the voltage across the FSR is lower than 3.20 V denotes that the patient has the full ability to lift up his/her elbow by himself/herself (LOC=4), where only a small value of resistance is detected by the FSR. Therefore, the gain K is set to be 0 and no assistance needs to be provided to the recovered patient. Since the main focus of the study at this stage is on proving the concept of the proposed controller and the experiments are conducted in the laboratory only, this method of calibration is sufficient in setting the value of gain K. However, for the real implementation and clinical testing of the proposed control system in the future, the calibration needs to be conducted based on real patients with various levels of capability (LOC) or impairment. where the value of K is governed by the patient's level of capability or calibrated voltage across the FSR as listed in Table 2.
The proposed control strategy in this study is simple and easy. The derivation of the control law does not require a complex system model that may be subjected to modelling errors, uncertainties, and complexity. Due to the simple nature of the control strategy, the method is not difficult to program and the computational speed is higher since there are fewer components to be computed in the control law. These factors make it appealing for real time implementation of the robotic assisted rehabilitation therapy.

GRAPHICAL USER INTERFACE (GUI)
A graphical user interface (GUI) has been developed as a medium to help the patient and the therapist to better understand and control the processes flow involved in the therapy session. The GUI also aids in the observation and analysis of the patients' progress. It has been developed using MATLAB software and starts with the welcoming window as in Fig.  12 (a). After clicking the "START" button, the next window, as shown in Fig. 12 (b), will pop up and give 4 options to the user, which are either to: (1) identify the patients' level of capability based on the Force Sensitive Resistive (FSR) data or (2) to start the training without any assistance from the robot or (3) to start the training with the assistance from the robot based on the identified patients' level of capability or (4) to exit the program. Clicking the 'Identify' button in the main window as shown in Fig. 12 (b) will pop up the "IDENTIFY CAPABILITY" window as illustrated in Fig. 13, where the patients' level of impairment or capability can be detected. The identification session starts once the 'START' button is pressed. As mentioned in Section 4, the patient will be instructed to flex his/her elbow for 100 seconds. The FSR that is attached below the patients' forearm will detect the amount of force that is exerted on the elbow cover during the movement. The FSR is installed in a voltage divider circuit and the resulting voltage will be plotted in the graph in real time. This amount of voltage represents the patients' level of capability (LOC) as summarized in Table 2 and the detected level will be shown in the window as can be seen in Fig. 13. The graph can be saved by clicking the 'SAVE' button and the 'RETURN' button can be used if the operator would like to return to the main window in Fig. 12 (b).
The 'TRAINING WITHOUT ASSIST' and 'TRAINING WITH ASSIST' buttons as depicted in Fig. 14 and Fig. 15 respectively will appear once the 'Training without Assist' or 'Training with Assist' as in Fig. 12 (b) is pressed respectively. These windows enable the operator to set the desired angular displacement that upper limb rehabilitation robot's need to reach during the exercise based on the therapist's or doctor's recommendation. The patient's progress can be monitored in real time from the graph and can be saved for analysis purpose by clicking the "SAVE" button. The compilation of the MATLAB coding for building this GUI can be found in [28].

RESULTS AND DISCUSSION
Simulation and experimental tests have been conducted to verify the effectiveness of the proposed controller to achieve the desired angular displacement whilst regulating the necessary amount of assistance to the patients according to their level of capability. The simulation tests have been conducted in Matlab Simulink environment, while the developed prototype as explained in Section 2 is used in the experimental test. This research has obtained ethics approval from the IIUM (International Islamic University Malaysia) Ethics Committee, with the approval number: IREC 2018-256 to conduct the experimental test.

Simulation Results
The simulation starts with the testing of the elbow and wrist movements of the integrated motor and upper limb rehabilitation robot under PID controller without incorporating gain K of the Assist As Needed algorithm. Separate simulation block diagrams for the wrist and elbow motors, as in Fig. 16, have been constructed in Matlab Simulink Software using the integrated upper limb rehabilitation model in Eqs. (9), (18) - (21). In this simulation, the effort from the human arm is not incorporated in the system since the main purpose of the simulation test is to check the feasibility of the proposed controller and to determine the suitable values of PID gain, and besides, the human arm effort should be obtained from experimental hardware. The PID gain for DC motor 1 (elbow motor) has been tuned manually to 11  From the figures, it can be seen that the PID controller is feasible in controlling both the robot's elbow and wrist joints to reach the desired position controller. The control system has successfully met meets the design specification where the percentage overshoot is less than 8%, steady state error is below 5% and settling time is less than 6 seconds.   Therefore, the tuning effort and time may be reduced since the PID gains do not need to be readjusted for different capability levels or gain K. From the figure, it can also be observed that lower value of gain K reduces the system speed in achieving the targeted angular displacement and increases the percentage of overshoot. In this case, the simulation results have demonstrated that with the increase in gain K, the controller degrades the transient performance of the system instead of regulating the right amount of assistance from the robot whilst maintaining the same transient response. This situation occurs since actual human effort is not included in the simulation test. However, the right regulation of the robot assistance under the proposed Assist As Needed control strategy can be seen in the hardware experimental test with the incorporation of actual human effort as will be described in the next subsection.

Experimental Hardware
In the hardware experimental test, the user wears the upper limb rehabilitation robot prototype described in Section 2 and is requested to be in sitting position as shown in Fig.  20. The wearable robot is linked to both the developed GUI in Matlab environment and the Arduino. The selected operation mode has been entered in to the GUI and the proposed Assist As Needed (AAN) control law has been programmed in the Arduino command line interface. The subject's level of capability or impairment has been firstly identified in the experiment by clicking the "Identify" button in the command window. In this step, the subject has been requested to flex his/her elbow to 20 as illustrated in Fig. 20. The GUI displays the identified subject's level of capability as depicted in Fig. 13 and passes the information to the Arduino programming, where the value of gain K is invoked based on the identified level of capability. Then, the training is started by clicking the "Training with Assist" button as illustrated in Fig. 12 (b). This experimental test has focused on the training of four upper limb movements in eating which are the elbow extension (EE), elbow flexion (EF), wrist extension (WE) and wrist flexion (WF). The desired angular displacement for EE, WE and WF have been set in the "Training with Assist" window, as shown in Fig. 15, to 30 and the required position for EF has been selected to be 70 . At this stage of study, the experiments have been conducted in the laboratory on healthy humans. Their hands have been loaded with the payloads as explained in Section 4 to imitate the disabled with various levels of capabilities.  , it can be seen that under the proposed control law, the upper limb rehabilitation robot has successfully assisted the human arm to reach the desired angular joint displacements in the elbow extension, elbow flexion, wrist extension, and wrist flexion that are needed in the eating rehabilitation exercise respectively. The results have verified that the proposed control law is able to drive the upper limb rehabilitation robot in assisting the user's elbow and wrist joints to achieve the desired angular displacement regardless of their level of capability. Under the proposed control law, the integrated human arm and upper limb rehabilitation robot achieves zero steady state error and meets the specified transient response: (1) percentage overshoot is less than 8% and (2) settling time less than 6 seconds for all level of capabilities. It is evident from Figs. 25-28 that the proposed control technique has successfully regulated the necessary amount of robot assistance according to the user's level of capability. For the subjects with higher level of capability, the value of the gain K is lower, giving a lower level of robot assistance, thus encouraging the subject to put in his/her effort to reach the desired target. The level of assistance as indicated by the proposed controller signal to the plant in Figs. 25-28, decreases as the subject's capability level gets higher. The combination effort from the patients and upper limb rehabilitation robot pushes the system to reach the desired transient and steady state response. Contrary to the simulation outcomes in Fig. 19, the experimental results of the proposed AAN controller in Figs. 21-24 have shown that the control system transient response (percentage overshoot and settling time) is not compromised by the increase in the value of gain K. This is because in the experiment, the total effort from the regulated upper limb rehabilitation robot's assistance and impaired human arm moves the integrated plant to reach the desired position, whereas the in the simulation, the results depicts the outcome resulting from the upper limb rehabilitation robot only, without any input from the disabled's or patients' effort.        In comparison to the existing methods in the literature, the proposed method is simple, easy to be programmed and mathematically less complicated. The direct regulation of the robot assistance using the FSR resistance (denoted by the voltage across the resistor) eliminates the complicated estimation of the patients' capability using computationally time consuming and complex mathematical equations. The developed GUI facilitated the rehabilitation therapy and monitoring very well. At this stage of study, the calibration of gain K, identification of the patient's capability level and experimental test have been conducted in the university laboratory based on healthy human beings, imitating the patients. The experimental set up and results have successfully demonstrated and proven the effectiveness of the proposed controller in regulating the needed level of assistance according to the user's ability. However, for the real implementation of the system in future, gain K must be calibrated based on actual patients or disabled with various level of capabilities. The capability level identification, testing and real time implementation of the upper limb robot under the proposed AAN control strategy have to be conducted on actual patients in a clinical setting to study its practicality and performance in real application.

CONCLUSION AND FUTURE WORK
This paper presents a new Assist As Needed (AAN) control strategy for an upper limb rehabilitation robot for eating. The mechanism has been upgraded from the previous wearable robot version with the enhancement in the elbow and wrist movements. The mechanism is simple and focuses on four main motions in eating, which are the elbow and wrist flexion/extension. A GUI has been developed to facilitate the operation of the rehabilitation exercise procedure and progress monitoring. The proposed AAN control strategy consists of a PID controller in feedback loop and a newly introduced gain K that is assigned based on the patients level of capability, which is indicated by the FSR resistance or voltage across it. The simulation results have proven that the proposed AAN controller has successfully regulated the necessary amount of robot assistance according to the user's level of capability and drives the integrated robot and human arm to achieve the desired angular displacement under the specified transient response. It is evident from the experimental results that under the proposed control strategy, the amount of the control input to the plant are automatically adjusted depending on the identified user's capability level. The control strategy is simple, easily programmed, and mathematically less complicated. Future works involve the calibration of gain K based on actual patients or disabled with various level of capability and testing the proposed system on them in a real clinical setting, while performing the eating task. Future study will also focus on the effectiveness of the proposed control law in aiding the patient's rehabilitation process in eating various types of food. The mechanism may also be upgraded with higher degree of freedom joints to accommodate a more natural human eating motion and other activities. In this way, the usage of the developed upper limb rehabilitation robot may not be restricted to sitting position only. The patients' feedback while utilizing the upper limb rehabilitation robot under the proposed control system may also be collected to enhance the system and increase their comfort in using the upper limb rehabilitation robot system.