# Design of Information Acquisition and Control System for the Exoskeleton Robot

Authors: Huan Gou; Jialiu Wang; Hongfang Wu; Chao Wang; Lei Yan; Jiang Xiao
Journal: Journal of Electrical and Computer Engineering
 (2014)

---

## Abstract

This paper puts forward an information acquisition and control system for the exoskeleton robot, which can collect movement and location information of the robot timely through a variety of sensors. The information is preprocessed by the microcontroller firstly and then transmitted to the host computer for data analysis and processing by ZigBee wireless transmission module to analyze the movement intention of human by virtue of the monitoring software on the host computer. To achieve assistance, the motor drive will be controlled by the robot through CAN bus, and the robot can effectively analyze human’s intention and monitor the operation status of the assisted robot in practical applications, finally enhancing the body's walking ability.


---

## Body

## 1. Introduction

The original meaning of exoskeleton is the shell structure of arthropod body which provides support for the animal’s movement and protection. This conception can be extended to exoskeleton robot, which is an integrated mechanism of human and machine. It combines human intelligence with robot body, controls the robot relying on human intelligence, and finally completes the task which cannot be accomplished by human intelligence or robot body alone.General Electric Company and Cornell University developed a wearable and individual equipment named Hardiman-1 in 1960. As the world’s first conceptual exoskeleton robot, Hardiman-1 was composed of 30 hydraulic power suppliers and servo hinges, and had 30 degrees-of-freedom. This equipment used the master-slave control mode and was hydraulically driven to provide impetus for the upper and lower limbs. Unfortunately, the research was terminated because of the huge size and operation complexity of the equipment [1]. Japan University of Tsukuba designed the power-assisted “Robot Suit” named HAL (Hybrid Assist Legs) [2], which was mainly composed of wireless LAN (Local Area Network) system, battery pack, motor, reducer, sensor, and actuating mechanism. HAL used the angular transducer, the electromyography sensor, the reaction force sensor, and other sensors to obtain the state information of the exoskeleton and the operator, and then the power transmission adopted the method of motor-reducer-exoskeleton mechanism to provide power for the robot body [3]. University of California, Berkeley developed Berkeley Lower Extremity (BLEEX), which was composed of fuel supply and engine system, control and detection system, hydraulic transmission system, and exoskeleton mechanism. The sensor system of BLEEX included the inclinometers, force sensors, gyroscopes, and plantar pressure sensors, of which inclinometers and force sensors were used to measure the joint force and limb inclination of robot, plantar pressure sensors took the role of the measuring apparatus of plantar pressure distribution when people walked, and gyroscopes were used to measure the center and inclination of the upper body. Based on the information collected by the sensors, the control system would ensure that the robot’s center of gravity was always on the user’s feet. After that, the control system would use the mechanical structure of the hydraulic drive to provide assistance for the exoskeleton mechanism [4]. Nanyang Technological University in Singapore also developed their exoskeleton system [5], which was composed of medial exoskeleton and outer exoskeleton. The medial exoskeleton was bundled on the lower extremity and used joints of the encoder to measure the joint angle signal when walking, while the outer exoskeleton was to provide power for the system by the motor based on the joint angle signal from the medial exoskeleton. In addition, the prototype system used the point of zero moment (ZMP) theory to survey the walking stability of exoskeleton. In order to develop a wearable booster device for nurses, Japan Kanagawa University of Engineering designed a set of freestanding wearable booster jackets to move patients. The jacket selected micropump, portable nickel-tin battery, and embedded microprocessor as the components, which miniaturized the power supply and control system obviously. The joint drive of elbow, waist, and knee adopted new rotational displacement pneumatic drive, and the muscle strength signal was gained by muscle hardness sensors mounted on the upper arm, thigh, and waist. When the microprocessor receive the output signal of sensors, it would calculate the joint torque required to maintain a posture and then output the corresponding control signal to tell the PWM driving circuit to drive rotating cylinder [6].Based on the above work, it can be seen that how to enhance the body’s ability to walk is the key to the design of new exoskeleton robot. Now exoskeleton robot is of still many problems, including the robot’s cooperation with human body and multisensor information collection and integration. In view of this, this paper tries to put forward an information acquisition and control system design which are based on ZigBee wireless sensor network and CAN bus. This system can combine human intelligence with exoskeleton robot, analyze the intention of human movement, and monitor the operating state of exoskeleton assisted robot. The rest of the paper is organized as follows. Section2 presents the design of the exoskeleton structure. And then the establishment process of the information acquisition and control system is described detailedly in Section 3. Finally, some conclusions are given in Section 4.


## 2. Design of Structure

### 2.1. The Selection of Driving Mode

A reasonable choice of driving mode has a great influence on the structure and performance of exoskeleton robot. In addition, it also influences the information collection deeply. So the appropriate driving mode and driver must be selected in order to ensure the feasibility and accuracy of the information collection.Lower limb exoskeleton is usually driven in three ways: motor drive, hydraulic drive, and pneumatic drive. They have advantages and disadvantages. Motor drive control mode is simple, direct, easy to guarantee the control precision, and convenient to maintenance and use. But if greater power drive is needed, users need to select a larger motor, which brings some problems on the mechanism’s portability and flexibility. Hydraulic drive takes the advantages of large transmission power density, smooth transmission, high initiative, and ease of control. But there are inherent deficiencies in the control response speed and accuracy, complicated structure, and maintenance and manufacturing cost. Pneumatic drive is safe to use and simple to maintain, but its signal transduction is slower than others. Besides, air pump’s noise is serious when driving, and the compressibility of air results in poor stability of the velocity and difficulty of control [7].As the impetus source of human body, greater power drive is not needed when convenience, portability, and flexibility are the crucial issues. Considering the features of each driving mode, motor drive seems to be the ideal driving mode, and final decision that we make is to adopt this mode.


### 2.2. The Design of Mechanical Structure

The purpose of this exoskeleton robot is to help human lower limb to achieve assistance. The overall mechanical structure is shown in Figure1, and the exoskeleton robot structure of each part is as follows.Figure 1
The mechanical structure diagram.Label 1 stands for waist support; the design of which is mainly to comfort the human body. The waist support is hinged in order to reduce the body weight of the robot for carrying heavy things, and thus a certain bearing capacity is affordable in the flexible movement.Label 2 and label 5 stand for hip joint drive and knee joint drive, respectively, and these two designs use the same mechanical structure. The two designs are the core of mechanical design because they are the output parts of the power source. The motor of the joint needs to provide a torque large enough to help the movement of lower limb after receiving exact signals from the control system. Furthermore, their movement patterns are required to comply with the movement principles of hip and knee, so that the human body is always on a safe area when wearing it.Label 3 and label 6 stand for femur connecting rod and crural connecting rod, respectively. The two parts both play the role of support and connection, and it is convenient to install and debug sensors on them. People with different heights are all able to use this exoskeleton assisted robot by virtue of the elevator machine installed on the femur connecting rod to help them adjust the height.Label 7 and label 8 stand for ankle and foot pedal, respectively. In case of overweight and losing the stiffness and hardness, aluminum material is chosen to manufacture the ankle joint and foot pedal. The upper part of the ankle is connected with crural connecting rod and the side is connected with the corresponding foot pedal, so that the foot pedal can rotate freely around the center axis of ankle. Pedals are manufactured by thin aluminum material with large and wide plates, which are suitable to feet with different sizes from 24.5 to 27 cm. Moreover, plate spring is also installed at the junction in the middle of the foot pedal in order to adapt to the bending of the forefoot when walking.When people put on the robot, lower limb of people and this robot constitute a whole. Sensors of the robot will perceive the movement location of human body accurately, and the robot will control the motor installed on the hip and knee to drive the movement of lower limb after processing the information [8].


## 2.1. The Selection of Driving Mode

A reasonable choice of driving mode has a great influence on the structure and performance of exoskeleton robot. In addition, it also influences the information collection deeply. So the appropriate driving mode and driver must be selected in order to ensure the feasibility and accuracy of the information collection.Lower limb exoskeleton is usually driven in three ways: motor drive, hydraulic drive, and pneumatic drive. They have advantages and disadvantages. Motor drive control mode is simple, direct, easy to guarantee the control precision, and convenient to maintenance and use. But if greater power drive is needed, users need to select a larger motor, which brings some problems on the mechanism’s portability and flexibility. Hydraulic drive takes the advantages of large transmission power density, smooth transmission, high initiative, and ease of control. But there are inherent deficiencies in the control response speed and accuracy, complicated structure, and maintenance and manufacturing cost. Pneumatic drive is safe to use and simple to maintain, but its signal transduction is slower than others. Besides, air pump’s noise is serious when driving, and the compressibility of air results in poor stability of the velocity and difficulty of control [7].As the impetus source of human body, greater power drive is not needed when convenience, portability, and flexibility are the crucial issues. Considering the features of each driving mode, motor drive seems to be the ideal driving mode, and final decision that we make is to adopt this mode.


## 2.2. The Design of Mechanical Structure

The purpose of this exoskeleton robot is to help human lower limb to achieve assistance. The overall mechanical structure is shown in Figure1, and the exoskeleton robot structure of each part is as follows.Figure 1
The mechanical structure diagram.Label 1 stands for waist support; the design of which is mainly to comfort the human body. The waist support is hinged in order to reduce the body weight of the robot for carrying heavy things, and thus a certain bearing capacity is affordable in the flexible movement.Label 2 and label 5 stand for hip joint drive and knee joint drive, respectively, and these two designs use the same mechanical structure. The two designs are the core of mechanical design because they are the output parts of the power source. The motor of the joint needs to provide a torque large enough to help the movement of lower limb after receiving exact signals from the control system. Furthermore, their movement patterns are required to comply with the movement principles of hip and knee, so that the human body is always on a safe area when wearing it.Label 3 and label 6 stand for femur connecting rod and crural connecting rod, respectively. The two parts both play the role of support and connection, and it is convenient to install and debug sensors on them. People with different heights are all able to use this exoskeleton assisted robot by virtue of the elevator machine installed on the femur connecting rod to help them adjust the height.Label 7 and label 8 stand for ankle and foot pedal, respectively. In case of overweight and losing the stiffness and hardness, aluminum material is chosen to manufacture the ankle joint and foot pedal. The upper part of the ankle is connected with crural connecting rod and the side is connected with the corresponding foot pedal, so that the foot pedal can rotate freely around the center axis of ankle. Pedals are manufactured by thin aluminum material with large and wide plates, which are suitable to feet with different sizes from 24.5 to 27 cm. Moreover, plate spring is also installed at the junction in the middle of the foot pedal in order to adapt to the bending of the forefoot when walking.When people put on the robot, lower limb of people and this robot constitute a whole. Sensors of the robot will perceive the movement location of human body accurately, and the robot will control the motor installed on the hip and knee to drive the movement of lower limb after processing the information [8].


## 3. Design of Information Acquisition and Control System

The overall block diagram of information acquisition and control system is shown in Figure2. A servo motor that can execute the measurement and feedback is installed on the hip and knee, respectively, and its position and velocity is controlled precisely by the motor driver. Four types of sensors are installed on the robot, including acceleration sensors, gravity sensors, pressure sensors, and gyroscopes. According to the distributed location and the intention of sensors and motors, five separated microcontrollers are used for data acquisition and preprocessing. The data are transmitted to host computer by ZigBee wireless communication modules and then will be displayed and monitored in real time through application software which is programmed by VC++. The host computer sends corresponding instructions to master controller after analyzing the data, and the master controller controls motor drivers through CAN bus to conduct motors to realize assistance [9].Figure 2
The overall block diagram of information acquisition and control system.


### 3.1. ZigBee Network

ZigBee, a kind of highly reliable wireless transmission network, is similar to the CDMA and GSM network. The communication distance standard of ZigBee is from 75 m to hundreds of meters, or even a few kilometers. ZigBee consists of more than 65,000 wireless modules, and within the scope of the entire network, different ZigBee modules can communicate with each other. Each ZigBee network node not only can be used as a monitoring object, but also can automatically transfer the data that other network nodes pass over. In this paper, ZigBee modules from FEIBIT company are used for the control system to perform the wireless transmission function.The system of ZigBee network is composed of three types of function blocks including the coordinator node, the routing node, and the terminal node. For network topology, there are three common structures, that is, the star structure, the tree structure, and the mesh type. Whereas the node of exoskeleton robot is single, all information of terminal nodes should be gathered in the master node, so the star network is selected. As shown in Figure3, the network is composed of five terminal nodes and a master node [10].Figure 3
Network structure of ZigBee.During the running process, the data will be sent and received properly between modules through sending AT commands so long as the module’s serial port is connected with microcontroller’s serial port correctly, and this is a reliable transmission because conflicts between modules are avoided automatically.


### 3.2. Introduction to the Sensors

According to the function and application occasion of exoskeleton robot, the acquisition system needs the following four categories of sensors: pressure sensors, acceleration sensors, gravity sensors, and gyroscopes. The role of pressure sensors is to measure the plantar pressure, acceleration sensors are used to measure acceleration of human leg, and gravity sensors combined with gyroscopes are used to determine the body’s center of gravity position and judge whether the body falls or not. Integration of the four types of sensors can effectively detect the movement condition of human and predict the intention of the human body movement and then provide real-time assistance for human body [11].


#### 3.2.1. Digital Accelerometer

ADXL345 sensor is adopted as the digital accelerometer, which is a 3-axis accelerometer with high resolution (13-bit) measurement up to ±16 g. Digital output data is formatted as 16-bit two’s complement and is accessible through either an SPI (3- or 4-wire) or I2C digital interface. The sensor measures the static acceleration of gravity in tilt-sensing applications, as well as the dynamic acceleration resulting from motion or shock. Active and inactive sensors detect the presence or absence of motion by comparing the acceleration on any axis with user-set thresholds. The workflow of ADXL345 is as follows: firstly, the 3-axis sensitive unit perceives three directions of the acceleration and transforms the acceleration magnitude into analog quantity. And then, the analog quantity is converted to digital quantity through analog digital converter (ADC). After digital filtering, the value will be stored in the FIFO and wait for the master device to read from the serial I/O port through controlling interrupt logic; see Figure4.Figure 4
ADXL345.


#### 3.2.2.  Three Axis Digital Output Accelerometer

The MMA7455L is a digital output (I2C/SPI) with low power and low profile capacitive micromachined accelerometer featuring signal conditioning; see Figure5. It is also a low pass filter, owning the functions of temperature compensation and self-test. Moreover, it is configurable to detect 0 g through interrupt pins (INT1 or INT2) and suitable for quick motion detection, which allows of command selection for 3 acceleration ranges (2 g/4 g/8 g).Figure 5
MMA7455.


#### 3.2.3.  Force Sensing Resistor

The robot adopts the resistive FSR402 as pressure sensor. Force sensing resistor (FSR) is a polymer thick film (PTF) device which exhibits a decreasing trend with an increase of the force applied to the active surface. For simple force-to-voltage conversion, the FSR device is tied to a measuring resistor in a voltage divider configuration as shown in Figure6.Figure 6
FSR402.


#### 3.2.4. Gyroscope

The MPU-6000 has an embedded 3-axis MEMS gyroscope, a 3-axis MEMS accelerometer, and a digital motion processor (DMP) hardware accelerator engine with an auxiliary I2C port that interfaces to a third-party digital sensor; see Figure7. When connected with a 3-axis magnetometer, the MPU-6000 will deliver a complete 9-axis motion fusion output to its primary I2C or SPI port.Figure 7
MPU-6000 module.According to the mechanical structure of exoskeleton robot and the function of the sensors, pressure sensors are installed at the sole of the left and right feet. In view of human biology and kinematics analysis, they are installed at the main force points as shown in Figure8. Gravity sensors and acceleration sensors are mounted on the hip and the middle of two legs, respectively, to measure the gravity and acceleration correspondingly. The gyroscope is installed at the middle of waist to measure the center of gravity. The numbers and positions of all sensors are variable in order to constantly optimize the data [12].Figure 8
The distribution of pressure sensors at the sole of the foot.


### 3.3. The Selection of Microcontroller

The ATmega128 provides the following features: 128 K bytes of in-system programmable flash with read-while-write capabilities, 4 K bytes EEPROM, 4 K bytes SRAM, 5 general purpose I/O lines, 32 general purpose working registers, real-time counter (RTC), four flexible timer/counters with compare modes and PWM, 2 USARTS, a byte oriented 2-wire serial interface, an 8-channel, 10-bit ADC with optional differential input stage and programmable watchdog timer, an SPI serial port, and IEEE std. 1149.1 compliant JTAG test interface. It is used for accessing the on-chip debug system and programming six software selectable power saving modes. Considering its features and the demand of signal acquisition, the microcontroller fully meets the requirements of design.


### 3.4. The Design of Drive System

The drive system of exoskeleton robot uses the controller with a CAN port as the core. CAN stands for “controller area net of LAN”, and it is a serial communication network which supports distributed control or real-time control effectively. CAN was designed by German Bosch company [13], and it has been used in a variety of automobile for monitoring and control of the automobile such as the control of engine ignition, lubricating, complex acceleration, brake, and antilock braking system. CAN has excellent characteristics and high reliability, which make it very suitable for industrial process to interconnect monitoring equipment and intelligent robot control field [14]. In view of this, the drive system adopts CAN bus to control the motor driver, and the diagram is shown in Figure 9.Figure 9
The network diagram of driver system.


### 3.5. The Design of Acquisition and Control Software on Upper Computer

The project selects VC++ software to compile the function code of upper computer and graphical user interface. VC++ software owns automatically generated application framework; flexible, convenient, and interactive management; and coding interface, and it can develop a variety of programs. Through simple settings, users can make it produce program frame which supports database interface such as OLE2, WinSock network, and 3D control interface. The interface of our software is shown in Figure10.Figure 10
The host computer display interface of the acquisition and control system.


## 3.1. ZigBee Network

ZigBee, a kind of highly reliable wireless transmission network, is similar to the CDMA and GSM network. The communication distance standard of ZigBee is from 75 m to hundreds of meters, or even a few kilometers. ZigBee consists of more than 65,000 wireless modules, and within the scope of the entire network, different ZigBee modules can communicate with each other. Each ZigBee network node not only can be used as a monitoring object, but also can automatically transfer the data that other network nodes pass over. In this paper, ZigBee modules from FEIBIT company are used for the control system to perform the wireless transmission function.The system of ZigBee network is composed of three types of function blocks including the coordinator node, the routing node, and the terminal node. For network topology, there are three common structures, that is, the star structure, the tree structure, and the mesh type. Whereas the node of exoskeleton robot is single, all information of terminal nodes should be gathered in the master node, so the star network is selected. As shown in Figure3, the network is composed of five terminal nodes and a master node [10].Figure 3
Network structure of ZigBee.During the running process, the data will be sent and received properly between modules through sending AT commands so long as the module’s serial port is connected with microcontroller’s serial port correctly, and this is a reliable transmission because conflicts between modules are avoided automatically.


## 3.2. Introduction to the Sensors

According to the function and application occasion of exoskeleton robot, the acquisition system needs the following four categories of sensors: pressure sensors, acceleration sensors, gravity sensors, and gyroscopes. The role of pressure sensors is to measure the plantar pressure, acceleration sensors are used to measure acceleration of human leg, and gravity sensors combined with gyroscopes are used to determine the body’s center of gravity position and judge whether the body falls or not. Integration of the four types of sensors can effectively detect the movement condition of human and predict the intention of the human body movement and then provide real-time assistance for human body [11].


### 3.2.1. Digital Accelerometer

ADXL345 sensor is adopted as the digital accelerometer, which is a 3-axis accelerometer with high resolution (13-bit) measurement up to ±16 g. Digital output data is formatted as 16-bit two’s complement and is accessible through either an SPI (3- or 4-wire) or I2C digital interface. The sensor measures the static acceleration of gravity in tilt-sensing applications, as well as the dynamic acceleration resulting from motion or shock. Active and inactive sensors detect the presence or absence of motion by comparing the acceleration on any axis with user-set thresholds. The workflow of ADXL345 is as follows: firstly, the 3-axis sensitive unit perceives three directions of the acceleration and transforms the acceleration magnitude into analog quantity. And then, the analog quantity is converted to digital quantity through analog digital converter (ADC). After digital filtering, the value will be stored in the FIFO and wait for the master device to read from the serial I/O port through controlling interrupt logic; see Figure4.Figure 4
ADXL345.


### 3.2.2.  Three Axis Digital Output Accelerometer

The MMA7455L is a digital output (I2C/SPI) with low power and low profile capacitive micromachined accelerometer featuring signal conditioning; see Figure5. It is also a low pass filter, owning the functions of temperature compensation and self-test. Moreover, it is configurable to detect 0 g through interrupt pins (INT1 or INT2) and suitable for quick motion detection, which allows of command selection for 3 acceleration ranges (2 g/4 g/8 g).Figure 5
MMA7455.


### 3.2.3.  Force Sensing Resistor

The robot adopts the resistive FSR402 as pressure sensor. Force sensing resistor (FSR) is a polymer thick film (PTF) device which exhibits a decreasing trend with an increase of the force applied to the active surface. For simple force-to-voltage conversion, the FSR device is tied to a measuring resistor in a voltage divider configuration as shown in Figure6.Figure 6
FSR402.


### 3.2.4. Gyroscope

The MPU-6000 has an embedded 3-axis MEMS gyroscope, a 3-axis MEMS accelerometer, and a digital motion processor (DMP) hardware accelerator engine with an auxiliary I2C port that interfaces to a third-party digital sensor; see Figure7. When connected with a 3-axis magnetometer, the MPU-6000 will deliver a complete 9-axis motion fusion output to its primary I2C or SPI port.Figure 7
MPU-6000 module.According to the mechanical structure of exoskeleton robot and the function of the sensors, pressure sensors are installed at the sole of the left and right feet. In view of human biology and kinematics analysis, they are installed at the main force points as shown in Figure8. Gravity sensors and acceleration sensors are mounted on the hip and the middle of two legs, respectively, to measure the gravity and acceleration correspondingly. The gyroscope is installed at the middle of waist to measure the center of gravity. The numbers and positions of all sensors are variable in order to constantly optimize the data [12].Figure 8
The distribution of pressure sensors at the sole of the foot.


## 3.2.1. Digital Accelerometer

ADXL345 sensor is adopted as the digital accelerometer, which is a 3-axis accelerometer with high resolution (13-bit) measurement up to ±16 g. Digital output data is formatted as 16-bit two’s complement and is accessible through either an SPI (3- or 4-wire) or I2C digital interface. The sensor measures the static acceleration of gravity in tilt-sensing applications, as well as the dynamic acceleration resulting from motion or shock. Active and inactive sensors detect the presence or absence of motion by comparing the acceleration on any axis with user-set thresholds. The workflow of ADXL345 is as follows: firstly, the 3-axis sensitive unit perceives three directions of the acceleration and transforms the acceleration magnitude into analog quantity. And then, the analog quantity is converted to digital quantity through analog digital converter (ADC). After digital filtering, the value will be stored in the FIFO and wait for the master device to read from the serial I/O port through controlling interrupt logic; see Figure4.Figure 4
ADXL345.


## 3.2.2.  Three Axis Digital Output Accelerometer

The MMA7455L is a digital output (I2C/SPI) with low power and low profile capacitive micromachined accelerometer featuring signal conditioning; see Figure5. It is also a low pass filter, owning the functions of temperature compensation and self-test. Moreover, it is configurable to detect 0 g through interrupt pins (INT1 or INT2) and suitable for quick motion detection, which allows of command selection for 3 acceleration ranges (2 g/4 g/8 g).Figure 5
MMA7455.


## 3.2.3.  Force Sensing Resistor

The robot adopts the resistive FSR402 as pressure sensor. Force sensing resistor (FSR) is a polymer thick film (PTF) device which exhibits a decreasing trend with an increase of the force applied to the active surface. For simple force-to-voltage conversion, the FSR device is tied to a measuring resistor in a voltage divider configuration as shown in Figure6.Figure 6
FSR402.


## 3.2.4. Gyroscope

The MPU-6000 has an embedded 3-axis MEMS gyroscope, a 3-axis MEMS accelerometer, and a digital motion processor (DMP) hardware accelerator engine with an auxiliary I2C port that interfaces to a third-party digital sensor; see Figure7. When connected with a 3-axis magnetometer, the MPU-6000 will deliver a complete 9-axis motion fusion output to its primary I2C or SPI port.Figure 7
MPU-6000 module.According to the mechanical structure of exoskeleton robot and the function of the sensors, pressure sensors are installed at the sole of the left and right feet. In view of human biology and kinematics analysis, they are installed at the main force points as shown in Figure8. Gravity sensors and acceleration sensors are mounted on the hip and the middle of two legs, respectively, to measure the gravity and acceleration correspondingly. The gyroscope is installed at the middle of waist to measure the center of gravity. The numbers and positions of all sensors are variable in order to constantly optimize the data [12].Figure 8
The distribution of pressure sensors at the sole of the foot.


## 3.3. The Selection of Microcontroller

The ATmega128 provides the following features: 128 K bytes of in-system programmable flash with read-while-write capabilities, 4 K bytes EEPROM, 4 K bytes SRAM, 5 general purpose I/O lines, 32 general purpose working registers, real-time counter (RTC), four flexible timer/counters with compare modes and PWM, 2 USARTS, a byte oriented 2-wire serial interface, an 8-channel, 10-bit ADC with optional differential input stage and programmable watchdog timer, an SPI serial port, and IEEE std. 1149.1 compliant JTAG test interface. It is used for accessing the on-chip debug system and programming six software selectable power saving modes. Considering its features and the demand of signal acquisition, the microcontroller fully meets the requirements of design.


## 3.4. The Design of Drive System

The drive system of exoskeleton robot uses the controller with a CAN port as the core. CAN stands for “controller area net of LAN”, and it is a serial communication network which supports distributed control or real-time control effectively. CAN was designed by German Bosch company [13], and it has been used in a variety of automobile for monitoring and control of the automobile such as the control of engine ignition, lubricating, complex acceleration, brake, and antilock braking system. CAN has excellent characteristics and high reliability, which make it very suitable for industrial process to interconnect monitoring equipment and intelligent robot control field [14]. In view of this, the drive system adopts CAN bus to control the motor driver, and the diagram is shown in Figure 9.Figure 9
The network diagram of driver system.


## 3.5. The Design of Acquisition and Control Software on Upper Computer

The project selects VC++ software to compile the function code of upper computer and graphical user interface. VC++ software owns automatically generated application framework; flexible, convenient, and interactive management; and coding interface, and it can develop a variety of programs. Through simple settings, users can make it produce program frame which supports database interface such as OLE2, WinSock network, and 3D control interface. The interface of our software is shown in Figure10.Figure 10
The host computer display interface of the acquisition and control system.


## 4. Conclusions

In this paper, a method of the exoskeleton robot is put forward to increase the body’s walking ability under special circumstances. Effective information can be collected through a variety of sensors to analyze the movement condition and judge the movement intention of human body, and then the motor can be controlled correctly by the motor drive according to the control signals from CAN bus. Through experiments and verification, it is proved that the robot can monitor human movement condition in real time and control the mechanical structure flexibly by virtue of the sensor information. Our design of exoskeleton robot provides assistance for lower limbs to walk and has some reference value for follow-up studies.



---

*Source: 309814-2014-02-11.xml*