DESIGN OF A MODULARIZED DUAL-JOINT SERVO CONTROLLER FOR SPACE MANIPULATOR SYSTEM BASED ON FPGA: I-SAIRAS 2012 TURIN, ITALY 4-6 SEPTEMBER 2012 Wei, N.Z. (1), Sun, H.X. (2), Jia, Q.X. (2), Sun, P. (3), Ye, P. (2), Hou, K. (1) (1) Beijing University of Posts and Telecommunications, Room 203, HongTong Building, No.10 Xitucheng Rd., Haidian district, 100876, Beijing, P.R. China, Email: wnz7620@gmail.com (2) Beijing University of Posts and Telecommunications, Mailbox 191, No.10 Xitucheng Rd., Haidian district, 100876, Beijing, P.R. China, Email: hxsun@bupt.edu.cn (3) Beijing Normal University, No.19, Xin Jie Kou Wai Street, Haidian district, 100875 Beijing, P.R. China, Email: pingsun@bnu.edu.cn ABSTRACT In this paper, a design of modularized dual-joint servo controller on-chip for a space manipulator system is presented. All sensor information collection within the joints are obtained with FPGA hardware logic elements, and the joint space trajectory planning and position control are realized by Nios II soft-core processor, which is embedded in FPGA. Moreover, a dualredundant CAN bus Interface is designed to provide a highly reliable communication system between the joint controller and the trajectory planning computer of space robotic system. Experimental results demonstrate the effectiveness of the compact joint servo controller for the space manipulator system. 1. INTRODUCTION During recent years, space robots have attracted extensive attentions from the world, especially for those with the capability of operating more precise and more dextrous space missions such as on-orbit maintainability, on-orbit capture appear in space, etc[1-4]. Several space manipulators have been developed, such as SSRMS from Canada[5], ROKVISS from Germany[6], JEMRMS from Japan[7] and so on, which can be mounted on spacecrafts for assembly and service in orbits, and reduce the need for costly and hazardous Extra-Vehicular Activity. However, the use of space flexible manipulator is not as good as people expected, influenced by the structure and dynamic characteristics of the space manipulator system. On the one hand, harmonic gears or planetary gears need to be mounted to joints to meet the requirement of driving capability, which increase the joint flexibility at the same time. On the other hand, the flexibility of joint cause problems as precision reducing and robust stability decreasing, becoming the main factors restricting the performance of the joint control system. So, how to design a joint of high performance, high integration and high reliability is a challenging work that must be resolved, and the research on this problem has vital realistic significance and applied value for the development of space robot. As is known, motor control is the key factor to the performance of the robot joint. Previous studies have shown that servo control system based on DSP is one of typical hardware architecture of modular joints. This control scheme has the advantages of simple circuitry, software control, and flexibility in adaptation to various applications, but more CPU time on the other hand. Architecture based on multi-dsp or a DSP with FPGA relieve the computation load of microprocessor. However, the design process will be complicated by this architecture. The increasingly number of electric components will lead to the disadvantages of integration and reliability at the same time. As the rapid evolution of microelectronics technology, a high capacity FPGA employed as motor controller becomes the primary trend. FPGA processes data in a way of pure hardware, which does not occupy the resources of CPU, making the system has better performance and higher Integration. Moreover, FPGA could embed microprocessors and related peripherals to form a complete System-on-a-Programmable-Chip (SOPC), owning DSP and FPGA merit simultaneously. This paper investigates a new modularized dual-joint servo controller, which adopts the architecture of FPGA with Nios II processor. All sensor information collection within the joints are obtained with FPGA hardware logic elements, and the joint space trajectory planning and position control are realized by Nios II soft-core processor, which is embedded in FPGA. Finally, a performance test for the dual-joint is given to demonstrate the effectiveness of the compact joint servo controller for the space manipulator system. The structure of the paper is as follows: In Section II an
overview of the system structure and requirements of space manipulator system (SMS) is briefly given. Section 3 describes the design and implementation of hardware architecture for dual-joint servo system by using FPGA with Nios II processor. Then, the software architecture is presented in Section 4. Section 5 evaluates the performance of the designed dual-joint controller. Section 6 is the conclusion. 2. JOINT STRUCTURE AND SENSOR SYSTEM At present, SMS is designed to have six degrees of freedom (DOFs) with a length of about 2 meters, comprising two main arm booms, three identical dualjoints, an end effector at the tip and a camera on wrist. Each dual-joint serves two independent orthogonal axes enabling two degree-of-freedom. In order to obtain high bearing ability, small volume, light weight dual-joint, adopting DC torque motor, harmonic drive gears and ELMO Digital Servo Drive as the drive module. The electronic module in the dual-joint consists of a FPGA control board, a power and sensor conditioning board, accomplishing the tasks as information collection form sensors, servo control, communication with trajectory planning computer. All the electric components are installed inside the joint internal space as shown in Fig. 1. With the protection from the shielding effect of joint metal crust, the life-span will be prolonged and the reliability will also be enhanced. switches are also installed to increase the system reliability. Table 1. Fringe 2007 Sensor Type Quantity Torque sensor Strain gauge 2 Joint position sensor Multipole Resolver 2 Motor position sensor optical-electrical encoder 2 Temperature sensor Thermometer 3 Limit position switch Hall effect 4 3. DESIGN OF THE DUAL-JOINT ELECTRONICS The dual-joint provides a electrical power bus and a dual-redundant CAN bus as external connections. The input voltage is DC 24v. The dual-redundant CAN bus is designed to connect with other modules, such as the trajectory planning computer of space robotic system. The hardware architecture for dual-joint servo system is based on FPGA with Nios II processor, as shown in Fig. 2, comprising main control unit, power management unit, signal processing unit, and drive unit. +24v GND DC/DC ±12v ±5v 5v 3.3v 2.5v 1.2v CAN Interface CAN Controller FPGA Uart Driver A/D CAN Bus Position Torque Temperature Power Bus Motor Drive Joint I Joint II Figure 2. Hardware structure of the modular dual-joint Figure 1. Fringe 2007 The whole sensors integrated in the modular dual-joint are listed in Tab. 1. Incremental optical-electrical encoder is used to obtain the motor position. The harmonic drivers increase the flexibility of the dualjoint, and reduce the control precision. As a result, a two-speed electrical resolver is adopted as absolute joint position sensor, which is installed between the output of harmonic drive gears and the link. Two Hall-effect limit 3.1. Main Control Unit Main Control Unit (MCU) consists of FPGA, SDRAM, configuration memory, external oscillator, restoration circuit. FPGA Chip adopts Cyclone 3 series manufactured by Altera Corporation. A Nios II processor is integrated in the FPGA, including 4Kbytes instruction cache, 2Kbytes data cache, 18 18-bit embedded multiplier. In order to improve floating-point operation performance, custom instructions of arithmetic floating-point operations is adopted in FPGA. Moreover,customized IP cores programmed with the hardware description language of Verilog as CAN bus interface, resolver control module, torque signal processing module are integrated in FPGA, as shown in Fig. 3, which is connect with Nios II processor by Avalon bus. This kind of design scheme has the
advantages of better performance and higher Integration. To prevent the occurrence of endless loop, A programmable watchdog timer realized by soft-core is also integrated in FPGA to improve the system reliability. and high reliability. The function and the working process of the drive unit are as follows: the drive unit receives drive commands from MCU with the RS232 bus, and feedback the motor states as position, velocity and working current at the same time. Moreover, a relay is adopted in the electromagnetic switch control circuit to control the power supply of the driving circuit. FPGA Figure 3. Main Control Unit architecture base on SOPC technology 3.2. Signal Processing Unit Precision of data Acquisition from sensors is one of the key factors, which can affect the control performance of servo system. However, the harmonic drivers and joint torque sensor increase the flexibility of the joint, and reduce the control precision. So two-speed electrical resolvers are adopted as absolute joint position sensors. The specific IC called resolver-to-digital converter (RDC) is usually used in typical resolver applications, and 4 RDC chips are needed to serve two two-speed electrical resolvers, resulting in larger volume, bigger power consumption, higher price and complicated debug methods. In the designed dual-joint, FPGA with external component as A/D, D/A converters are used instead of specific RDC chips as shown in Fig. 4. Algorithms as resolver-to-digital conversion, coarseness-precision combining and its error correcting realized by soft-core are integrated in FPGA, and ADC, DAC are adopted as the interface between the analog system and digital system. In order to reduce further volume and increase integration density, the TDM technique is employed through an analog switch, deciding which resolver output signal to be resolved at a time. 3.3. Drive Unit Drive unit, comprising driving circuit of servo motor and electromagnetic switch control circuit as shown in Fig. 4, is a important part of the dual-joint hardware system, which can affect the joint motion performance and system reliability. A kind of servo drive for industrial applications called SimplIQ servo drive from Israel is adopted in the design, which has the advantage of simple circuitry, standard communication protocol support, small volume, light weight, high power density Figure 4. Hardware structure of joint servo system 4. DESIGN OF THE DUAL-JOINT SOFTWARE An interrupt controlled system, as shown in Fig. 5, is applied to the software architecture in the design, and interrupt service routines can be executed nested according to the priority of the IRQ, providing a low latency multitasking environment. Main Loop Figure 5. Software architecture of joint servo system The main mission of the servo control, comprising data acquisition, processing and joint servo control, is worked in an ISR generated by a timer interrupt, which has a period of 25ms. The communication tasks are triggered by the external interrupts as RS-232 bus and CAN bus. The process flow after the joint controller is powered on is as follows: system initialization module is invoked
firstly, completing power-on self-test and parameters initializing. Then starts the timer interrupt to enable the main mission of the servo control, waiting for the commands sent by the trajectory planning computer. When receiving data frames from CAN bus, the high level protocol process routine is invoked asynchronously to unpack the protocol and add it to the command queue, which will be executed in the main mission later. The control principle, as shown in Fig. 6, is a classical hierarchical cascade control loop consisting of three levels of position, velocity and current control. PID controller algorithm is adopted. Optical-electrical encoder measures motor shaft position converted to motor shaft velocity for velocity feedback, and resolver measures joint output shaft position for position feedback. If either optical-electrical encoder or resolver fails, the single joint will work in a degraded operation. If optical-electrical encoder fails, motor shaft velocity can be calculated from joint output shaft position measured by resolver. If resolver fails, motor shaft position measured by optical-electrical encoder can be converted to joint output shaft position for position feedback. Figure 6. Position control strategy of joint servo system 5. PERFORMANCE EVALUATION To testify the design concept of the dual-joint controller, a dual-joint module is developed. Then the performance of the dual-joint controller is tested, shown in Tab. 2. Table 2. Performance of the dual-joint controller Characteristic Performance 32bit Nios II core with float Throughput point Near 113 [DMIPS] @100 [MHz] 8Mbytes SDRAM Memory 8Mbytes CFI Flash 2Mbytes EPCS Flash Dimensions 68 68 28 [mm3] Mass Less than 0.25 [Kg] Power consumption Less than 5 [W] Supply voltage +24, ±12, ±5 [V] CAN bus 512 [Kbps] RS232 bus 57.6 [kbps] 6. CONCLUSION The designed dual-joint servo controller adopts the architecture of FPGA with Nios II processor, realizing not only the data acquisition of joint shaft position and joint torque, but also joint space trajectory planning and joint position control. The design of the module is driven by the extremely tight constraints of small mass, low power consumption, low volume, stringent cost control and fast design-to-orbit schedules. Experimental results demonstrate the effectiveness of the compact joint servo controller for the space manipulator system. 7. ACKNOWLEDGMENT This research has been supported by the 863 National High Technology Foundation in Astronautics under No. 2005AA742030 and 2010AA7090304, the National Natural Science Foundation of China under No. 61175080, the Fundamental Research Funds for the Central Universities under No. 2010zx06, 2011PTB-00-11 and 2012PTB-00-11, the Specialized Research Fund for the Doctoral Program of Higher Education under No. 20110005120004. 8. REFERENCES 1. Kei Senda, Shusuke Mano, Tsutomu Matsumoto & Yuzo Okano (2003). A Study toward An Autonomous Space Robot. In Proceedings of the 7th International Symposium on Artificial Intelligence, Robotics and Automation in Space: i- SAIRAS, European Space Agency, Nara, Japan. 2. S. Schuler, M. Hirt, M. Schmidt & V. Kaufmann (2004). DEXTROUS ROBOT ARM. In Proceedings of the 8th ESA Workshop on Advanced Space Technologies for Robotics and Automation, European Space Agency, Noordwijk, The Netherlands. 3. M. Oda (1994). On the dynamics and control of ETS- 7 satellite and its robot arm. In Proceedings of Intelligent Robots and Systems '94, IEEE, Munich, Germany. 4. G. Visentin, M.V. Winnendael & P. Putz (2001). Advanced mechatronics in ESA's space robotics developments. In Proceedings of International Conference on Advanced Intelligent Mechatronics Proceedings, IEEE, Como, Italy. 5. G. Gibbs & S. Sachdev. (2002). Canada and the international space station program: Overview and status, Acta Astronautica. Acta Astronautica. 51(1), 591-600. 6. K. Landzettel, C. Preusche, A. Albu-Schaffer, D. Reintsema, B. Rebele & G. Hirzinger (2006). Robotic On-Orbit Servicing - DLR's Experience
and Perspective. In Proceedings of the 2006 IEEE/RSJ, International Conference on Intelligent Robots and Systems, IEEE, Beijing, China. 7. K. Imaki, S. Doi, K. Watanabe, S. Hasegawa & N. Fukui (2010). Japanese Experiment Module Remote Manipulator System (JEMRMS) operations for HTV-1 mission. In Proceedings of 61st International Astronautical Congress 2010, IAC 2010, Internation Astronautical Federation, Prague, Czech republic.