HUMANOID REALISTIC SIMULATOR The Servomotor Joint Modeling

Similar documents
Obstacle Avoidance Design for Humanoid Robot Based on Four Infrared Sensors

dspace DSP DS-1104 based State Observer Design for Position Control of DC Servo Motor

Force/position control of a robotic system for transcranial magnetic stimulation

MECE 102 Mechatronics Engineering Orientation

CE801: Intelligent Systems and Robotics Lecture 3: Actuators and Localisation. Prof. Dr. Hani Hagras

Digital Position Control for Analog Servos

EDUMECH Mechatronic Instructional Systems. Ball on Beam System

Online Tuning of Artificial Neural Networks for Induction Motor Control

HYDRAULIC ARM MODELING VIA MATLAB SIMHYDRAULICS

Unit 1: INTRODUCTION TO ADVANCED ROBOTIC DESIGN & ENGINEERING

Manufacturing Equipment Modeling

A 5 Degree Feedback Control Robotic Arm (Haptic Arm)

EasyC. Programming Tips

Vision-based Walking Parameter Estimation for Biped Locomotion Imitation

GAIT DEVELOPMENT FOR THE TYROL BIPED ROBOT

Frequently Asked Questions

Precise Modelling of a Gantry Crane System Including Friction, 3D Angular Swing and Hoisting Cable Flexibility

Advantages of Auto-tuning for Servo-motors

Human-like Arm Motion Generation for Humanoid Robots Using Motion Capture Database

EDROM Humanoid Kid Size 2014

Proceeding of 5th International Mechanical Engineering Forum 2012 June 20th 2012 June 22nd 2012, Prague, Czech Republic

Programming Logic controllers

Stabilizing a Gimbal Platform using Self-Tuning Fuzzy PID Controller

LEGO NXT-based Robotic Arm

Design and Implementation of a 4-Bar linkage Gripper

DINAMIC AND STATIC CENTRE OF PRESSURE MEASUREMENT ON THE FORCEPLATE. F. R. Soha, I. A. Szabó, M. Budai. Abstract

ACTUATOR DESIGN FOR ARC WELDING ROBOT

Interactive Computer Graphics

Slow Tree Climbing Robot Analysis of Performance

Power Electronics. Prof. K. Gopakumar. Centre for Electronics Design and Technology. Indian Institute of Science, Bangalore.

CIM Computer Integrated Manufacturing

Current Loop Tuning Procedure. Servo Drive Current Loop Tuning Procedure (intended for Analog input PWM output servo drives) General Procedure AN-015

Rotation: Moment of Inertia and Torque

Autonomous Advertising Mobile Robot for Exhibitions, Developed at BMF

Frequently Asked Questions

Design-Simulation-Optimization Package for a Generic 6-DOF Manipulator with a Spherical Wrist

Dynamics of Multibody Systems: Conventional and Graph-Theoretic Approaches

FUZZY Based PID Controller for Speed Control of D.C. Motor Using LabVIEW

Lecture Notes - H. Harry Asada Ford Professor of Mechanical Engineering

Motor Selection and Sizing

Torque motors. direct drive technology

Vibrations can have an adverse effect on the accuracy of the end effector of a

DCMS DC MOTOR SYSTEM User Manual

Bluetooth + USB 16 Servo Controller [RKI-1005 & RKI-1205]

Center of Mass Estimator for Humanoids and its Application in Modelling Error Compensation, Fall Detection and Prevention

UNIT 1 INTRODUCTION TO NC MACHINE TOOLS

A Distributed Architecture for Teleoperation over the Internet with Application to the Remote Control of an Inverted Pendulum

REMOTE CONTROL OF REAL EXPERIMENTS VIA INTERNET

Electric motor emulator versus rotating test rig

INTRODUCTION TO SERIAL ARM

A Surveillance Robot with Climbing Capabilities for Home Security

Design of a Robotic Arm with Gripper & End Effector for Spot Welding

The Design of DSP controller based DC Servo Motor Control System

System Modeling and Control for Mechanical Engineers

Tips For Selecting DC Motors For Your Mobile Robot

Robotics. Chapter 25. Chapter 25 1

Sensor Based Control of Autonomous Wheeled Mobile Robots

A laboratory work: A teaching robot arm for mechanics and electronic circuits

Learning Systems Software Simulation

Research Methodology Part III: Thesis Proposal. Dr. Tarek A. Tutunji Mechatronics Engineering Department Philadelphia University - Jordan

Using nonlinear oscillators to control the locomotion of a simulated biped robot

What Is Regeneration?

Six-servo Robot Arm. DAGU Hi-Tech Electronic Co., LTD Six-servo Robot Arm

Performance Study based on Matlab Modeling for Hybrid Electric Vehicles

SERVO CONTROL SYSTEMS 1: DC Servomechanisms

Industrial Automation Training Academy. PLC, HMI & Drives Training Programs Duration: 6 Months (180 ~ 240 Hours)

Phase-Control Alternatives for Single-Phase AC Motors Offer Smart, Low-Cost, Solutions Abstract INTRODUCTION

Mechanism and Control of a Dynamic Lifting Robot

Mathematical Modeling and Dynamic Simulation of a Class of Drive Systems with Permanent Magnet Synchronous Motors

DATA ACQUISITION FROM IN VITRO TESTING OF AN OCCLUDING MEDICAL DEVICE

Robot coined by Karel Capek in a 1921 science-fiction Czech play

INSTRUCTOR WORKBOOK Quanser Robotics Package for Education for MATLAB /Simulink Users

Robotics & Automation

Full- day Workshop on Online and offline optimization for humanoid robots. at IEEE IROS 2013 in Tokyo

AMZ-FX Guitar effects. (2007) Mosfet Body Diodes. Accessed 22/12/09.

Brake module AX5021. Documentation. Please read this document carefully before installing and commissioning the brake module!

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

3D Vision An enabling Technology for Advanced Driver Assistance and Autonomous Offroad Driving

Visual Servoing Methodology for Selective Tree Pruning by Human-Robot Collaborative System

Michelin North America

Introduction to Process Control Actuators

Experiment 8 : Pulse Width Modulation

Servo Info and Centering

ELECTRICAL ENGINEERING

Physics 1A Lecture 10C

MODULAR ROBOTIC LOCOMOTION SYSTEMS. Darnel Degand (Mechanical Engineering), University of Pennsylvania ABSTRACT

Siemens AG 2011 SINAMICS V60. The perfect solution for basic servo applications. Brochure May 2011 SINAMICS. Answers for industry.

Design Aspects of Robot Manipulators

Operational Space Control for A Scara Robot

REMOTE HOST PROCESS CONTROL AND MONITORING OF INDUSTRY APPLIANCES

Chapter. 4 Mechanism Design and Analysis

Software Development Workflow in Robotics

DESIGN AND IMPLEMENTATION OF A SIMPLE, LOW-COST ROBOTIC ARM

Harmonic Drive acutator P r e c i s i o n G e a r i n g & M o t i o n C o n t r o l

Lab 7: Operational Amplifiers Part I

Active Vibration Isolation of an Unbalanced Machine Spindle

A Control Scheme for Industrial Robots Using Artificial Neural Networks

Onboard electronics of UAVs

Figure Cartesian coordinate robot

Application Information

Transcription:

HUMANOID REALISTIC SIMULATOR The Servomotor Joint Modeling José L. Lima 1, José A. Gonçalves 1, Paulo G. Costa 2 and A. Paulo Moreira 2 1 Polytechnic Institute of Bragança, Bragança, Portugal 2 Faculty of Engineering of University of Porto, Porto, Portugal jllima@ipb.pt, goncalves@ipb.pt, paco@fe.up.pt, amoreira@fe.up.pt Keywords: Abstract: Humanoid, Servomotor, Modeling, Simulation. This paper presents a humanoid servomotor model that can be used in simulations. Once simulation is a tool that reduces the software production time, it was developed a realistic simulator that own the humanoid features. Based on a real platform, the simulator is validated when compared with the reality. 1 INTRODUCTION Recent research in biped robots has resulted in a variety of prototypes that resemble their biological counterparts. Legged robots have several advantages, they can move in rugged terrains, they have the ability to choose optional landing points, and two legged robots are more suitable to move in human environment (Suzuki and Ohnishi, 2006). The simulator should capture the essential characteristics of the real system. In this paper, the servomotor model that powers the real humanoid joints is addressed. The model of a Dynamixel AX-12 servomotor and its characteristics are found by an iterative method based on a realistic simulator, the SimTwo (Costa, 2009). There are several simulators with humanoid simulation capability, like Simspark, Webots, MURoSimF, Microsoft Robotics Studio, YARP: Yet Another Robot Platform (Wang et al., 2006) and OpenHRP3 (Ope, 2009), meanwhile, the SimTwo, as a generic simulator, allows to simulate different types of robots and allows the access to the low level behaviour, such as dynamical model, friction model and servomotor model in a way that can be mapped to the real robot, with a minimal overhead. This simulator deals with robot dynamics and how it reacts for several controller strategies and styles. Using a realistic simulator can be the key for reducing the development time of robot control, localization and navigation software. It is not an easy task to develop such simulator due to the inherent complexity of building realistic models for the robot, its sensors and actuators and their interaction with the world (Browning and Tryzelaar, 2003). The purpose of developing such simulator is to produce a personalized and versatile tool that will allow the development and validation of the robot s software thereby reducing considerably the development time. The paper is organized as follows: Initially, the real robot (which is the basis of the simulator) and its main control architecture are presented. Then, section 3 presents the developed simulator where the servomotor model was developed. Further, section 4 presents the validation of the simulator by comparing its results with the real robot. Finally, section 5 rounds up with the conclusions and future work. 2 REAL HUMANOID There are several humanoid robots kits available. The commercially available Bioloid robot kit, from Robotis, is the basis of the used humanoid robot and the overview of the proposed biped robot is shown in Figure 1. Figure 1: Real humanoid robot (from Bioloid). 396

HUMANOID REALISTIC SIMULATOR - The Servomotor Joint Modeling The servo motors are connected to the central processing unit through a serial 1Mbps network. Next subsection presents the physical robot in which the developed humanoid simulator was based. 2.1 Main Architecture The presented humanoid robot is driven by 19 servo motors (AX-12): six per leg, three in each arm and one in the head. Three orthogonal servos set up the 3DOF (degree of freedom) hip joint. Two orthogonal servos form the 2DOF ankle joint. One servo drives the head (a vision camera holder). The shoulder is based on two orthogonal servos allowing a 2DOF joint and elbow has one servo allowing 1DOF. The total weight of the robot (without camera and on board computer) is about 2 kg and its height is 38 cm. time. The developed simulator enhances these properties. The same architecture levels of the real robot are implemented in the simulator. At the lowest level, the servo motor model includes the control loop, just like the real servomotors. At the highest level, some predefined joint states are created based on several methods presented on literature (Kajita et al., 2006) and (Zhang et al., 2008). At the middle level, an optimized trajectory controller that allows to minimize the energy consumption is introduced as presented in Figure 3 (Lima et al., 2008b). Figure 3: Simulator main architecture. Figure 2: Real humanoid robot control application. To control the real humanoid robot a high level application (presented in Figure 2) was developed. This application is independent from the simulator, although it allows to acquire and share some real robot data with simulator. 3 SIMULATION MODEL Designing the robot s behaviour without real hardware is possible due to a physics-based simulator implementation. The physics engine is the key to make simulation useful in terms of high performance robot control (Browning and Tryzelaar, 2003). The dynamic behaviour of robot (or multiple robots) is computed by the ODE (Open Dynamics Engine), a free library for simulating rigid body dynamics. 3.1 Simulator Architecture The simulator architecture is based on the real humanoid robot. The body masses and dimensions are used to build a humanoid simulator similar to the real one. The communication architecture in real robot brings some limitations to control loop such as lag Next subsections describe the servomotor model that is used in the simulator where the electrical, friction and controller models are presented. 3.2 DC Motor Model The servomotor can be modeled by a DC motor model, presented in Figure 4, where U a is the converter output, R a is the equivalent resistor, L a is the equivalent inductance and e is the back em f voltage as expressed by equation 1 (Conceiçăo et al., 2006). Figure 4: DC motor electric model. i a U a = e + R a i a + L a (1) t The motor can deliver a T S torque and its load has a J moment of inertia that will be presented by the physical model ODE. Current i a can be related with developed torque T D through equation 2 and the back em f voltage can be related with angular speed 397

ICINCO 2009-6th International Conference on Informatics in Control, Automation and Robotics through equation 3, where K s is a motor parameter that can be found by an experimental setup as presented in subsection 3.3 (Bishop, 2002). some numerical stability specially when the integration step period is significantly slower than electric dynamic. T D (t) = K s i(t) (2) e(t) = K s ω(t) (3) In fact, the real developed torque (useful) that will be applied to the load (T S ) is the motor torque subtracted by the friction torque (T F ) as presented in equation 4. The friction torque is discussed in subsection 3.5. T S = T D T F (4) 3.3 DC Motor Model Measurements It was used the AX-12 servomotor from Dynamixel as the base of the humanoid simulator articulations. The R a and L a values can be directly measured (R a =8 Ω and L a = 5 mh). The K s motor parameter can be found by an indirect estimation. For several angular speeds, it can be measured the em f voltage while motor is open circuit. Figure 5 shows the graphical data of the K s line and its trend line. The average value of 13 measures for K s (line slope) is about 0.006810 V.s/rad. Figure 6: Servomotor model block diagram computation. 3.5 Friction Model The friction model has two terms: the static and dynamic friction as presented in equation 5. T F = F c sign(ω) + B v ω (5) The first one can be modeled as the sign function (with Fc constant) and the second one can be modeled as a linear function with slope Bv. The sum of this two components (T F ), the final friction model, is shown in figure 7. Figure 7: Servomotor model nonlinearities. Figure 5: K s value for DC motor model. Figure 8 shows the friction model implemented in the servomotor model. 3.4 DC Motor Nonlinearities In a way to better model the real system, where variables cannot assume all values, there must be some limits applied to some quantities. The first one, is the voltage applied to the supply terminals U a. This voltage is limited by the batteries voltage. Further, current i is limited by the drive electronics once it is related to the torque through equation 2 (torque limit is programmed in the real servomotor). Current gradient is also implicitly limited by the presence of L a. Figure 6 shows the block diagram computed by the simulator. There is also a internal gradient limitation to ensure Figure 8: Servomotor model with friction model. The F c and B v constants are found using simulator scanning several possible values minimizing the error with the real system during an arm fall from 90 to 0 degrees. The error surface function can be minimized. 398

HUMANOID REALISTIC SIMULATOR - The Servomotor Joint Modeling As result, Bv=0.01278 N.m.s/rad and Fc=0.0000171 N.m where found as the best values. These constants allow the simulator to follow reality very closely as presented in figure 9 where an arm falls from 45, 90 and 135 degrees for both robots. The position error and the speed error gains can be computed resorting to a least squares approach. Having the real robot arm step response (from 0 to 90 degrees), it is possible to scan several gains and to determine the quadratic error between the real servo and the humanoid simulator joint for each solution. The one that fulfill the lowest quadratic error is the chosen gains to the controller. Figure 11 shows the quadratic error for the several solutions. Figure 9: Real robot and simulator friction comparison. 3.6 Low-level Controller The low level controller resembles the closed loop controller in the real robot implemented by the servomotor manufacturer. This controller accepts, from the higher level, the angle and angular speed references that define a trajectory. The controller type present in the Dynamixel isn t specified. However, there are some possible models for the controller, such as PID or state feedback. Considering a state feedback controller and assuming Kθ i the position error gain and Kω i the speed error gain for each i joint, the equation 6 defines the servomotor input (U a ) that keeps the desired reference conditions for each i joint. The output torque is computed by the physic model as presented in Figure 10. U i a(t) = K i θ (θi re f (t) θi (t)) + K i ω(ω i re f (t) ωi (t)) (6) Figure 11: Quadratic error for real and simulator servomotor. The lowest quadratic error (0.66 degrees 2 ) occurs for K i θ equals 30 and for Ki ω equals -1.2. These gains allow to obtain the step response very close to the real servo. Figure 12 shows both step responses. Figure 12: Real and simulator servomotor step response. 3.7 Servomotor Model With the previous results, it is possible to create the servomotor model including the DC motor, the friction and the controller models (with its nonlinearities) that will represent the real servo motor in the simulator. The final model is presented in figure 13. Figure 10: Low level controller. Figure 13: Simulator servomotor model. 399

ICINCO 2009-6th International Conference on Informatics in Control, Automation and Robotics 4 SIMULATOR VALIDATION To validate the humanoid simulator model it is required to implement the same control signal to both robots and to analyze the behaviors. Predefined trajectory states, that allow robot to walk, are based on the Zero Moment Point (ZMP) method. Figure 14 shows the sequence during walk movements for both robots (real at left and simulator at right). It is possible to observe that both robots exhibit very similar behaviours. model was implemented in the developed simulator, SimTwo. This simulator is based in a real platform. The friction model and closed loop controller gains are found based on the real robot behaviour. It allows to search the optimal values for friction and controller gains based on a heuristic approach. The validation with the real humanoid robot allows to confirm the proposed servomotor model. As future work, the simulator can be useful to find several parameters that optimize a desired condition such as energy consumption in the walk movement and further applied to the real robot. REFERENCES Figure 14: Real and simulator robots walking with the same predefined gaits. Figure 15: Real and simulator robots knee angles during a walk movement. With this walking movement, it can be acquired all joint angles for both robots. Figure 15 shows a knee angle for real and simulated robots, in a walk movement, that shows simulator behaves as real robot. Moreover, the power consumption comparison between real and simulated robot is presented in (Lima et al., 2008a). 5 CONCLUSIONS AND FUTURE WORK A simulator that allows a humanoid robot simulation capability is addressed and validated. The joints that emulate the real articulations are based on a realistic servomotor model. The proposed servomotor (2009). Open architecture humanoid robotics platform. http:// www.openrtp.jp/openhrp3/en/index.html. Bishop, R. (2002). The Mechatronics Handbook. CRC Press, New York. Browning, B. and Tryzelaar, E. (2003). Ubersim: A realistic simulation engine for robotsoccer. In Proceedings of Autonomous Agents and Multi-Agent Systems, AA- MAS 03. Conceiçăo, A., Moreira, A., and Costa, P. (2006). Dynamic parameters identification of an omni-directional mobile robot. Costa, P. (2009). paco/wiki/. Simtwo webpage. http://www.fe.up.pt/ Kajita, S., Morisawa, M., Harada, K., Kaneko, K., Kanehiro, F., Fujiwara, K., and Hirukawa, H. (2006). Biped walking pattern generator allowing auxiliary zmp control. In Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 2994 2999. Lima, J., Gonçalves, J., Costa, P., and Moreira, A. (2008a). Realistic behaviour simulation of a humanoid robot. In 8th Conference on Autonomous Robot Systems and Competitions. Lima, J., Gonçalves, J., Costa, P., and Moreira, A. (2008b). Realistic humanoid robot simulation with an optimized controller: a power consumption minimization approach. In 11th. International Conference on Climbing and Walking Robots, pages 1242 1248. Suzuki, T. and Ohnishi, K. (2006). Trajectory planning of biped robot with two kinds of inverted pendulums. In Proceedings of 12th International Power Electronics and Motion Control Conference, pages 396 401. Wang, X., Lu, T., and Zhang, P. (2006). Yarp: Yet another robot platform. International Journal of Advanced Robotic Systems. Zhang, L., Zhou, C., and Xiong, R. (2008). A lie group formulation for realtime zmp detection using force/torque sensor. In Proceedings of the 11th International Conference on Climbing and Walking Robots and the Support Technologies for Mobile Machines, pages 1250 1257. 400