Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY...

8
Simple Vertical Human Climbing Control with End Effector State Machines Zümra Kavafoğlu Dept. of Mathematics Hacettepe University Ankara, TURKEY [email protected] Hacer İlhan Dept. of Mathematics Hacettepe University Ankara, TURKEY [email protected] Ersan Kavafoğlu Dept. of Comp. Graphics Hacettepe University Ankara, TURKEY [email protected] Haşmet Gürçay Dept. of Computer Eng. Hacettepe University Ankara, TURKEY [email protected] Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY [email protected] AbstractWe present a framework for physics based vertical climbing control for human like articulated figures. In our work motion of end effectors of the figure are categorized under four states: Holding, Swinging, Reached and Gave-Up. Each end effector owns a finite state machine for managing the transitions between these states. Different target poses are determined for the limbs for swinging and holding states and they are tracked with PD Controller and gravity compensation. At Reached and Gave-Up states the aim of the end effector is to touch the closest point on the wall. Physics based movement of end effectors for touching the wall is simulated by using Jacobian Transpose Control. Our framework also includes a strategy manager which enables building different climbing strategies. Keywords—physics based animation; climbing; character animation. I. INTRODUCTION Climbing is the motion of carrying body upward by using both lower and upper body limbs. In mechanical point of view, the aim of climbing is to increase the potential energy of the body with muscular work [1]. Climbing motion can be handled under two categories in terms of contact planning and motion planning: Contact-before-motion and motion-before-contact [2, 3, 4]. In the former one, contact points are determined first and then necessary motion of body parts are synthesized which will drive end effectors to these contact points. In the latter one, first motion of the body parts is synthesized and then contact positions are determined according to the final position of end effectors. Our system follows motion-before-contact strategy. Desired pose for each body part is pre-determined during each phase of climbing motion. Body parts are driven to desired poses by using physics based controllers. When desired pose is reached or climber decides to give up, contact point on the wall is determined and end effector is driven to that point again with physics based controllers. We introduce a physics based controller approach which enables creating a wide variety of climbing motions. Each end effector owns a cyclic behaviour and the coordination, timing and ordering between end effector behaviours are organized resulting in different motions. We don’t use any motion capture data, but our give-up strategy enables creating realistic, non- monotonic climbing motions. Climbing is achieved by coordinated continuous motion of hands and feet and their associated limbs. The behaviour of each end effector can be summarised as follows: End effector and its associated limbs try to reach a target pose by swinging. They reach the target pose in a reasonable amount of time or the climber decides to give up. If climber gives up, the aim is to reach the nearest point on the wall. When the end effector touches the wall as a consequence of reaching desired pose or giving up, the holding phase begins. While end effector is holding the wall, its associated limbs can either stay fixed or can be moved. After some time, end effector should begin swinging again to make climber keep on climbing. This cyclic behaviour of each end effector transitioning between specific states is very convenient to be represented by a finite state machine. We used finite state machine since it’s fairly simple to represent the behaviour of an end-effector and very easy to code. Coordinated movements of end effectors determine the overall appearance and strategy of climbing motion. While end effectors behave in a cyclic nature on their own, timing and ordering of each effector according to others should also be determined. For this purpose, we included a simple strategy manager that is similar to Subsumption Architecture [5] which is mostly used in behavior based robotics. This manager enables the programmer to easily arrange ordering and timing of end effector behaviors according to each other. There are also several physics based character animation approaches, which include climbing motions [6, 7, 8, 9]. In [8] complex motions including contact behaviors are synthesized with contact invariant optimization. In [6], an interactive control strategy is proposed which can be used for several motions including climbing motions. They use state machines for controlling actions but the climbing motion generated by their state machine is much less detailed. In [7], a physics based controller is proposed for several motions in a dynamically varied environment. They demonstrate their optimization-based method with a climbing motion of type contact-before-motion. They also use state machine for action planning but state machine is built for defining overall motion not for planning action of each end-effector. Our method enables generating a wide variety of physics based 3d climbing motions easily. Our simulation runs in real time and can be implemented by using common physics engines. It doesn’t need to access equations of motion or doesn’t need any inverse dynamics process, so it can be easily integrated into video games. Several approaches have been described on the analysis of climbing activities. A technique of tracking the entire body

Transcript of Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY...

Page 1: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

Simple Vertical Human Climbing Control with End Effector State Machines

Zümra Kavafoğlu

Dept. of Mathematics Hacettepe University Ankara, TURKEY

[email protected]

Hacer İlhan Dept. of Mathematics Hacettepe University Ankara, TURKEY

[email protected]

Ersan Kavafoğlu Dept. of Comp. Graphics

Hacettepe University Ankara, TURKEY

[email protected]

Haşmet Gürçay Dept. of Computer Eng.

Hacettepe University Ankara, TURKEY

[email protected]

Tolga Çapın Dept. of Computer Eng.

TED University Ankara, TURKEY

[email protected]

Abstract— We present a framework for physics based vertical climbing control for human like articulated figures. In our work motion of end effectors of the figure are categorized under four states: Holding, Swinging, Reached and Gave-Up. Each end effector owns a finite state machine for managing the transitions between these states. Different target poses are determined for the limbs for swinging and holding states and they are tracked with PD Controller and gravity compensation. At Reached and Gave-Up states the aim of the end effector is to touch the closest point on the wall. Physics based movement of end effectors for touching the wall is simulated by using Jacobian Transpose Control. Our framework also includes a strategy manager which enables building different climbing strategies.

Keywords—physics based animation; climbing; character animation.

I. INTRODUCTION Climbing is the motion of carrying body upward by using

both lower and upper body limbs. In mechanical point of view, the aim of climbing is to increase the potential energy of the body with muscular work [1]. Climbing motion can be handled under two categories in terms of contact planning and motion planning: Contact-before-motion and motion-before-contact [2, 3, 4]. In the former one, contact points are determined first and then necessary motion of body parts are synthesized which will drive end effectors to these contact points. In the latter one, first motion of the body parts is synthesized and then contact positions are determined according to the final position of end effectors. Our system follows motion-before-contact strategy. Desired pose for each body part is pre-determined during each phase of climbing motion. Body parts are driven to desired poses by using physics based controllers. When desired pose is reached or climber decides to give up, contact point on the wall is determined and end effector is driven to that point again with physics based controllers.

We introduce a physics based controller approach which enables creating a wide variety of climbing motions. Each end effector owns a cyclic behaviour and the coordination, timing and ordering between end effector behaviours are organized resulting in different motions. We don’t use any motion capture data, but our give-up strategy enables creating realistic, non-monotonic climbing motions.

Climbing is achieved by coordinated continuous motion of hands and feet and their associated limbs. The behaviour of each end effector can be summarised as follows: End effector

and its associated limbs try to reach a target pose by swinging. They reach the target pose in a reasonable amount of time or the climber decides to give up. If climber gives up, the aim is to reach the nearest point on the wall. When the end effector touches the wall as a consequence of reaching desired pose or giving up, the holding phase begins. While end effector is holding the wall, its associated limbs can either stay fixed or can be moved. After some time, end effector should begin swinging again to make climber keep on climbing. This cyclic behaviour of each end effector transitioning between specific states is very convenient to be represented by a finite state machine. We used finite state machine since it’s fairly simple to represent the behaviour of an end-effector and very easy to code.

Coordinated movements of end effectors determine the overall appearance and strategy of climbing motion. While end effectors behave in a cyclic nature on their own, timing and ordering of each effector according to others should also be determined. For this purpose, we included a simple strategy manager that is similar to Subsumption Architecture [5] which is mostly used in behavior based robotics. This manager enables the programmer to easily arrange ordering and timing of end effector behaviors according to each other.

There are also several physics based character animation approaches, which include climbing motions [6, 7, 8, 9]. In [8] complex motions including contact behaviors are synthesized with contact invariant optimization. In [6], an interactive control strategy is proposed which can be used for several motions including climbing motions. They use state machines for controlling actions but the climbing motion generated by their state machine is much less detailed. In [7], a physics based controller is proposed for several motions in a dynamically varied environment. They demonstrate their optimization-based method with a climbing motion of type contact-before-motion. They also use state machine for action planning but state machine is built for defining overall motion not for planning action of each end-effector. Our method enables generating a wide variety of physics based 3d climbing motions easily. Our simulation runs in real time and can be implemented by using common physics engines. It doesn’t need to access equations of motion or doesn’t need any inverse dynamics process, so it can be easily integrated into video games.

Several approaches have been described on the analysis of climbing activities. A technique of tracking the entire body

Page 2: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

movement of non-professional climbers and their center of mass is presented using an optoelectronic system to describe the effects of the body center of mass in rock climbing [10]. The use of body attached sensors to show the difference between the movements of several climbers with different qualifications is an example of movement analysis in rock climbers [11]. To make a design of safer and more suitable rock climbing equipment for children, data are collected using a rock-climbing wall equipped with embedded sensors and a model for the prediction of climbing behavior is created [12]. In another work, computer vision technology is utilized to give augmented real-time and delayed feedback for analyzing body movement for climbers [13].

Fig. 1. System overview for each end effector.

The climbing problem has been also examined in the domain of motion planning and reconstruction. A tool for designing, testing and visualizing climbing route on a virtual climbing wall using a simulated climber are provided to create possible interesting and challenging routes [14]. A kinematic,

2D and grasp-based motion planning algorithm for virtual characters is proposed to solve a variety of problems such as determining and synthesizing the required transitions between varied modes of locomotion like walking, crawling, climbing, and swinging using pose heuristics when a constrained environment with specified possible contact points is given [15]. To reconstruct static poses of a climber by optimization, contact forces are captured by using an instrumented bouldering wall and several data are recorded by motion capture technology simultaneously [16]. A real-time method to create automated contact configurations between a virtual creature and the environment for various motions tasks such as getting up, pushing or pulling objects, climbing and insect locomotion is addressed as a means of combining a random sampling approach with a heuristic related to the force transmission ratio [17]. Our framework doesn’t consist of planning contact positions of end effectors except in the state of reaching and giving up. Instead, target poses are defined for limbs and physics based tracking is used to drive the limbs to target poses. When target pose is reached or climber decides to give up, nearest point on the wall is determined as contact point and end effector is driven to that point by using Jacobian Transpose Control.

Several approaches have also been proprosed in robotics area covering contact planning, motion planning and motion controlling together [2, 3, 4, 9, 18, 19, 20, 21, 22, 23, 24, 25,]. A wall climbing robot equipped with suction pads on each foot is developed and an optimal gait called “wall gait” is introduced to provide high motion stability and maximum locomotion speed. This is achieved by analyzing different kinds of gait styles and specifying an ideal order and phases of supporting and swing legs and also determining leg positions [18]. Robots with four, six and eight legs are described to climb in complicated formed pipes by pushing against the walls using a hierarchical control architecture which is similar to subsumption architecture [9]. A ladder climbing robot motion is planned with a fixed strategy and limbs are controlled by non-linear feedback controller and joint space controller with motion equations [21]. A genetic algorithm is proposed for building a climbing strategy of a three limbed robot that is compliant to physical constraints [20]. For the same three limbed robot a simplified Cartesian computed torque control algorithm is built which includes Jacobian transpose control and PD Controller [19]. Our work deals with simpler climbing actions. Only two desired poses are determined for each end effector: One for holding state and the other one for swinging state. We propose a flexible climbing strategy that can be built easily. For limb control we use PD Controller and Jacobian Transpose Control.

Since climbing is done by coordinated movement of all of four limbs, it can be thought that it resembles quadruped locomotion. A large body of work exists for quadruped animation of ground locomotion [26, 27, 28, 29, 30, 31, 32]. A physics based character control of quadruped locomotion is developed to obtain realistic set of gaits such as walk, trot, pace, canter, transverse gallop with desired styles for dog characters using a dual leg frame model connected by a flexible spine. It also uses gait graphs from tracking of video data, a Jacobian transpose and proportional derivative (PD) controller

Physics Engine

Jacobian Transpose

Gravity Compensation

Virtual Force Calculator PD Controller

Target Holding Point

Calculator

Target Pose Supplier

Climbing Strategy

Limb Finite State Machine

Swinging or Holding Gave-up or Reached

Torques Torques

Page 3: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

system with virtual forces [26]. An optimization technique is presented to generate convincing gaits and morphologies of a variety of virtual creatures with two, four and five legged creatures [27]. Also, an extensive survey on quadruped animation techniques is given by comparing of varied methods including video based systems, physics based models, inverse kinematics, or some combination of these [28]. However none of these work include controlling quadruped climbing motion.

II. OVERVıEW In our framework, a state machine runs for each end

effector, which manages the motion of the end effector during climbing. Also a strategy manager is included for managing the ordering and timing of each end effector state according to other end effectors’ states. End effector states and strategy manager are described in Section 4. In each state there are one or more tasks for the associated limb chain to achieve, like driving the end effector to a desired position, or keeping limbs fixed. To achieve these tasks limbs are controlled by using Proportional Derivative Controller and Jacobian Transpose Control. Details of limb control are explained in Section 5. System overview of each end effector is illustrated in Fig.1.

III. H UMAN BODY MODEL Our articulated human body model consists of 15 body

parts and 14 joints with 26 degrees of freedom in total. We will call right hand, right foot, left hand and left foot of the body as end-effectors. Fig. 2 illustrates our human body model with joint degrees of freedom and end effectors. A limb chain is associated with each end effector. Fig. 3 illustrates limb-chains.

Fig. 2. Character degrees of freedom and end effectors.

IV. END EFFECTOR STATE MACHINE Movement of an end effector during a vertical wall

climbing motion can be categorized as follows: Holding the wall, swinging limb to reach the wall, reaching the wall within a desired duration or giving up to swing by holding the nearest point on the wall. During climbing, each end effector transitions between these movements and each of them have different tasks, starting and ending conditions. In our system, each end effector has its own finite state machine for managing the transitions between these movements. The states are: Holding State, Swinging State, Reached State and Gave-up

State. States and transitions of end effector state machine are illustrated in Fig. 4.

Fig. 3. Each end effector has an associated limb chain used for desired pose tracking.

Fig. 4. End effector state machine.

A. Holding State Holding state of the state machine stands for the holding

movement of an end-effector. A climber can try to keep his/her associated limb-chain in a fixed pose while holding the wall or can prefer to move the limb-chain towards a desired pose. Both of these options are modeled in our system within the holding state as illustrated in Fig. 5. Conditions for starting the transition from fixed pose to movement can be defined by the user within the climb strategy. When pose of moving limbs get similar to the desired pose or a pre-determined time passes, limb poses get fixed again. Fig. 6 illustrates the desired poses for holding and swinging states.

B. Swinging State Swinging state manages the swinging movement of an end

effector. While swinging, the limb-chain associated with the end effector tries to reach a given desired pose within a given

Current pose ~ target pose

Swing start conditions hold AND wait swing duration is over

Touched the wall Touched

the wall

Give up duration is over

GAVE UP

SWINGING

REACHED

HOLDING

End Effector Right Hand

End Effector Left Hand

End Effector Left Foot

1 DOF

3 DOF

2 DOF

3 DOF 1 DOF

1 DOF

1 DOF

1 DOF

3 DOF

2 DOF

2 DOF

1 DOF 2 DOF

Left hand limb chain

Right hand limb chain

Left foot limb chain

Right foot limb chain

3 DOF

End Effector Right Foot

Page 4: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

duration. For this purpose, swinging state consists of two phases: one for physics based tracking of the desired pose with PD Controller and the other one for controlling whether the desired pose is reached. The reaching control is done with a simple orientation metric that measures the difference between two poses. Until desired pose is reached or give up time is over, swinging limb continues to track desired pose.

Fig. 5. Holding state consists of two states: Fixed and moving. In fixed state, limb chain associated with the end effector remains in a fixed pose, while in moving state limb chain tries to reach a given target pose.

Fig. 6. Desired poses for end effector limb chains. a) Right hand limb chain desired pose in holding state. b) Right and left hand limb chain desired pose in swining state (just straight arm). c) Left hand limb chain desired pose in holding state. d) Right foot limb chain desired pose in swinging state. e) Right and left foot limb chain desired pose in holding state (just straight leg). f) Left foot limb chain desired pose in swinging state.

C. Reached State and Gave-up State Swinging motion of an end-effector can conclude in one

positive and one negative situation. Positive one is to be able to reach the desired position in a reasonable time. But negatively, climber can spend too much time on trying to reach and eventually decides to give up. For handling this situation, a give-up duration is determined by the user for each end effector. In both situations climber aims to touch the wall at its nearest point. In Section 5-e, control for trying to touch wall is expressed in detail.

D. Building a climbing strategy There doesn’t exist only one way for vertically climbing a

wall. Climbers usually decide to move some limbs before others, or some limbs in a coordinated manner, according to the grips or obstacles on the wall. Since the main aim of vertical climbing is to carry the body upwards, it’s important for a climber to move right limbs in right time for carrying the center

of mass upwards. Our system doesn’t aim to make a climb planning according the grips or obstacles, but includes a strategy manager which enables the user to build a desired climbing strategy. Strategy manager enables to determine the relative time of an end effector state’s starting according to other end effectors’ states as well as the ordering of different end effectors’ states. For this purpose, required conditions are determined for an end effector to start swinging state. As an example, the required condition for right hand to start swinging can be determined as follows: 5 seconds passed after left hand and right foot started holding state. Moreover, timing of passing from fixed limb state to moving limbs within holding state can be determined as a part of the strategy. Determining the correct strategy plays an important role for carrying center of mass of the body upwards. In Fig. 7, an example strategy is shown, which enables coordinated movement of crosswise end effectors.

Fig. 7. A climbing strategy example: trh time after left hand’s and right foot’s holding states start, right hand starts to swing. And tlf time after left hand’s and right foot’s holding states start, left foot starts to swing. Similar holds for left hand’s and right foot’s swing states start. If trh equals tlf and tlh equals to trf then a synchronized strategy is obtained in which left hand and right foot are swinging together while right hand and left are holding and vice versa.

V. LIMB CONTROL Our climbing controller system is based on tracking desired

limb poses which are determined according to the state of the associated end effector. If an end effector is in swinging state, then associated limbs try to reach desired pose by using PD Controller and gravity compensation. If an end effector is in reached or gave-up state, then torques for associated limbs are calculated by Jacobian Transpose Control which will make the end effector touch the closest point on the wall. In this section, fundamental concepts like Proportional Derivative Controller, Jacobian Transpose Control and gravity compensation are mentioned. Also the control for making the end effector try to touch wall is explained in detail.

Start LH-SS

Start LH-HS

Start RH-SS

Start RH-HS

Start RF-SS

Start RF-HS

Start LF-SS

Start LF-HS

SS: Swinging state HS: Holding state LH: Left hand RH: Right hand LF: Left foot RF: Right foot trh: Right hand swing wait duration tlh: Left hand swing wait duration trf: Right foot swing wait duration tlf: Left foot swing wait duration

a)

b)

c)

d)

e)

f)

Aftertlf

Current pose ~ target pose

MOVING

FIXED

HOLDING STATE

Movement start conditions hold

Aftertrh

After tlh

After trf

ANDtlh

ANDtlh

Page 5: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

A. Proportional Derivative Controller Proportional derivative controller is one of the most widely

used controllers, which has a simple formulation [33]. PD Controller calculates the torque to take a joint from its current state (orientation and angular velocity) to the desired one in the next frame. PD Controller does this job by weighted sum of differences between current and desired states. In an explicit manner, let 𝑞! and 𝑞! be the current orientation and current angular velocity of a body segment respectively and 𝑞! and 𝑞! be the desired orientation and desired angular velocity in the next frame. Then the appropriate torque 𝜏 to take the segment from current state to the desired one is calculated with PD-Controller as follows

𝜏 =  𝑘! 𝑞! − 𝑞! + 𝑘! 𝑞! − 𝑞! (1)

where 𝑘! and 𝑘! are proportional and derivative gains respectively. It’s clear that, calculated torque will change as proportional and derivative gains change, and appropriate gains should be found for each character and motion. To find appropriate gains we’ve just made a manual tuning which will result in non-stiff and also not loosely character motion.

B. Jacobian Transpose Control To simulate a desired motion, applying a force directly to a

body part of the character results in an unnatural motion, since it contradicts with the joint based structure of character. To simulate the effect of this linear force, appropriate joint torques should be computed. For calculating these torques, we’ve used Jacobian Transpose Control method [34, 35]. For applying this control, first we determine a chain of limbs whose joints will apply the emulating torques. Fig. 8 shows the Jacobian Transpose chains for emulating a force applied at end effectors.

Let p be the global coordinates of the point that the linear force will be applied and let F denote the linear force. Here 𝐹 is not actually applied at the point but only its effect is emulated. Let 𝑞! denote the position of the 𝑖!! joint in the limb chain. Then the torque 𝜏! that must be exerted on this joint is calculated as below.

𝜏! = 𝐹× 𝑝 − 𝑞! (2)

Torque for each joint in the chain is calculated in the same way and the effect of linear force at point 𝑝 is emulated by applying these torques to the joints.

Jacobian Transpose Control is used in gravity compensation and “try to touch wall control” parts of our system.

C. Gravity Compensation Gravity force creates an undesired effect on body parts

which impedes them from reaching a desired pose with PD Controller. This is caused by the simple formulation of PD Controller which discards gravity. To overcome this effect gravity compensation torques are calculated, which compensate the effect of gravity [36]. Gravity effects a body

part by leading to the force 𝑚𝑔 applied on the center of mass of the body part. Here m is the mass of the body part and g is gravity force. To compensate this effect, the effect of a counter force should be emulated by internal joint torques. By using Jacobian Transpose control gravity compensation torques are calculated and applied to joint torques in the limb chain.

Fig. 8. Jacobian transpose chain for a) left hand b) right hand c) right foot d) left foot.

D. Try to touch wall control In the states of reached or gave-up, the aim of an end

effector is to touch the wall at its closest point. For this purpose, first the projection of the current hand position (𝑝!) on the wall is taken. Let 𝑝! denote this projected point. A virtual force is calculated which will drive the end effector to 𝑝! with a simple PD Controller formula as below.

𝐹! =  𝑘! 𝑝! − 𝑝! − 𝑘!𝑝! (3)

Here 𝐹! denotes the virtual force and 𝑝! denotes the end effector velocity. We cannot apply 𝐹! directly to the end effector for sake of reality, so we find appropriate torques of joints of Jacobian transpose chain by using Jacobian transpose control. Applying these torques drives the end effector directly to the wall in a realistic manner.

VI. IMPLEMENTATION AND RESULTS We have presented a framework that enables interactive

physics based synthesis of vertical wall climbing motions. We tested our framework with different climbing strategies. Our

a)

b)

c)

d)

Page 6: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

experiments show that coordinated movement of limbs is of great importance for carrying body upwards.

We have made our experiments on an Intel Core i7 2.4 GHz CPU. Our system simulates vertical climbing motion in real time. Our simulation time step is 0.0001. Bullet physics engine is used for dynamic simulations.

Proportional and derivative gains are set manually for body joints with a reference-scaling method. We determined the shoulder joint as reference and we set proportional and derivative gains of it manually. These are called reference gains. To find gains of another joint, we scale the reference gains with the ratio of the joint’s mass to reference joint’s mass. Our reference joint proportional and derivative gains are 200 and 20 respectively. Proportional and derivative gains of virtual force PD Controller described in Section 5-d are also set manually. We don’t determine a fixed value for these gains. They can be tuned according to the desired speed of the end effector towards wall.

Modeling hand or foot interactions with wall or grips on the wall is beyond the scope of this work. When an end-effector makes transition to holding state, we freeze it at its current position to emulate a scene like it’s holding a grip on the wall. Associated limbs of holding end effector keep their current orientations by using PD controller and gravity compensation.

We’ve tested our controller with several climbing strategies. Although we use the same desired target poses (Fig. 6) the overall motion can have completely different characteristics. This situation arises by means of our timer and condition based strategy. Different climbing strategies and their results are illustrated form Fig. 9 to Fig. 13.

Fig. 9. Frog like synchronized climbing strategy. For this motion arms swing cooperatively while legs are moving in hold state. And legs swing cooperatively while arms are moving in hold state.

Fig. 10. Crosswise synchronized climbing strategy. Cross arm-leg pairs move cooperatively. This is the result of the strategy explained in Fig. 7.

Fig. 11. Three to one climbing strategy. Right arm moves seperately while other three move cooperatively.

Fig. 12. Asynchronized frog like climbing strategy. Asynchronized version of frog like strategy in Fig. 9. Asynchronization is achieved by altering swing wait durations. Swing wait duration of left arm and left leg is 0.5 and swing wait duration of right arm and right leg is 0.05.

Page 7: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

Fig. 13. Leg waiting frog like strategy. This is also a synchronized frog like strategy but legs start moving lately in the holding state.

VII. FUTURE WORK Climbing is created by coordinated movement of nearly all

body parts and it can be realized in very different ways. In our framework we enabled user to define different climbing strategies. But we constrained body parts to some predefined key poses during climbing. Thus our results are rich in point of movement strategy but very simple in point of motion of body parts. Following Contact Before Motion planning instead of Motion Before Contact planning can be a future direction to overcome this situation. Another possible future direction can be utilizing motion capture in our current system for achieving a more human like style.

VIII. ACKNOWLEDGEMENTS This work is supported by the Scientific and Technological

Research Council of Turkey (TUBITAK, project number 112E105).

REFERENCES [1] A.E. Chapman, “Biomechanical Analysis of Fundamental Human

Movements”, Human Kinetics, 2008. [2] T. Bretl, J. Latombe, and S. Rock, “Toward autonomous free-climbing

robots,” in Int. Symp. Rob. Res., Siena, Italy, 2003. [3] T. Bretl, S. Lall, J. Latombe, and S. Rock, “Multi-step motion planning

for free-climbing robots,” in WAFR, 2004. [4] K. Hauser, T. Bretl, and J.C. Latombe, “Non-gaited humanoid

locomotion planning. In Humanoids”, Tsukuba, Japan, 2005. [5] R. Brooks, “A robust layered control system for a mobile robot”, IEEE

Journal of Robotics and Automation, RA-2(1):14-23, 1986.

[6] J. Laszlo, M. van de Panne, and E. Fiume. “Interactive control for physically-based animation.” Proceedings of SIGGRAPH 2000, pages 201–208, July 2000. ISBN 1-58113-208-5.

[7] S. Jain, Y. Ye, and C. K. Liu, “Optimization-based interactive motion synthesis,” ACM Trans. Graph., vol. 28, no. 1, pp. 1–12, Jan. 2009.

[8] I. Mordatch, E. Todorov, and Z. Popović, “Discovery of complex behaviors through contact-invariant optimization,” ACM Trans. Graph., vol. 31, no. 4, pp. 1–8, Jul. 2012.

[9] W. Neubauer, “A Spider-like Robot That Climbs Vertically in Ducts or Pipes,” Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS’94) 2, 1178–1185, 1994.

[10] F. Sibella, I. Frosio, F. Schena, and N.A. Borghese, “3D analysis of the body center of mass in rock climbing,” Human Movement Science, 26, 6 (Dec. 2007), 841–852.

[11] T. Schmid, R. Shea, J. Friedman, M.B. Srivastava, “Movement Analysis in Rock-Climbers,” 2007 6th International Symposium on Information Processing in Sensor Networks (April 2007): 567–568.

[12] H. Ouchi, Y. Nishida, I. Kim, Yoichi Motomura, Hiroshi Mizoguchi, “Detecting and Modeling Play Behavior Using Sensor-Embedded Rock-Climbing Equipment,” Proceedings of the 9th International Conference on Interaction Design and Children - IDC ’10 (2010): 118.

[13] R. Kajastila, P. Hämäläinen “Augmented Climbing  : Interacting With Projected Graphics on a Climbing Wall,” CHI ’14 Extended Abstracts on Human Factors in Computing System (2014): 1279–1284.

[14] J. Pfeil, J. Mitani, and T. Igarashi, “Interactive Climbing Route Design Using a Simulated Virtual Climber,” SIGGRAPH Asia 2011 Sketches on - SA ’11 (2011): 1.

[15] M. Kalisiak and M. van de Panne, “A Grasp-Based Motion Planning Algorithm for Character Animation,” The Journal of Visualization and Computer Animation 12, no. 3 (July 2001): 117–129, doi:10.1002/vis.250.

[16] R. Aladdin and P.G. Kry, “Static Pose Reconstruction with an Instrumented Bouldering Wall,” Proceedings of the 18th ACM Symposium on Virtual Reality Software and Technology - VRST ’12 (2012): 177.

[17] S. Tonneau, J Pettré, and F Multon, “Task Efficient Contact Configurations for Arbitrary Virtual Creatures,” Proceedings of the 2014 Graphics … (2014): 9–16.

[18] A. Nagakubo and Shigeo Hirose, “Walking and Running of the Quadruped Wall-Climbing Robot,” Robotics and Automation, 1994. … (1994): 1005–1012.

[19] D. Bevly, Steven Dubowsky, and C. Mavroidis, “A Simplified Cartesian-Computed Torque Controller for Highly Geared Systems and Its Application to an Experimental” 122, no. March (2000): 27–32.

[20] D. M. Bevly, S. Farritor and S. Dubowsky, “Action Module Planning and Its Application to an Experimental Climbing Robot” no. April (2000).

[21] H. Amano, K. Osuka, and T.J. Tarn, “Development of Vertically Moving Robot with Gripping Handrails for Fire Fighting,” Proceedings 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the the Next Millennium (Cat. No.01CH37180) 2 (2001): 661–667.

[22] T. Bretl, S. Rock, and J.C. Latombe, “Motion Planning for a Three-Limbed Climbing Robot in Vertical Natural Terrain,” Robotics and Automation, 2003. … (2003): 2946–2953.

[23] T. Bretl, S.Rock, J.C. Latombe, B. Kennedy and H. Aghazarian., “Free-Climbing with a Multi-Use Robot”, In Int. Symp. Exp, (2004): 1–10.

[24] T. Bretl, “Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints  : The Free-Climbing Robot Problem” (2006): 1–35.

[25] K. Hauser, T. Bretl, K, Harada and J.C. Latombe, “Using Motion Primitives in Probabilistic Sample-Based Planning for Humanoid Robots” (2008): 1–16.

[26] S. Coros, A. Karpathy, B. Jones, L. Reveret, M. van de Panne “Locomotion Skills for Simulated Quadrupeds,” ACM SIGGRAPH 2011 Papers on - SIGGRAPH ’11 1, no. 212, 2011.

[27] K. Wampler and Z. Popović, “Optimal Gait and Form for Animal Locomotion,” ACM Transactions on Graphics 28, no. 3, 2009.

Page 8: Simple Vertical Human Climbing Control with End Effector ... · Ankara, TURKEY gurcay@hacettepe.edu.tr Tolga Çapın Dept. of Computer Eng. TED University Ankara, TURKEY tolga.capin@tedu.edu.tr

[28] L. Skrba, L. Reveret, F. Hétroy, M.P. Cani, and C. O’Sullivan, “Quadruped animation”, In Eurographics State-of-the-Art Report, 2008.

[29] D.W. Marhefka, D.E. Orin, J.P. Schmiedeler, K.J. Waldron “Intelligent Control of Quadruped Gallops,” IEEE/ASME Transactions on Mechatronics 8, no. 4, 2003.

[30] N. Torkos, M. van de Panne: Footprint–based quadruped motion synthesis. In Graphics Interface, pp. 151–160, 1998.

[31] Z. Bhatti, A. Shah and F. Shahidi, “Procedural Model of Horse Simulation”, VRCAI '13. 139–146, 2013.

[32] S. Levine and J. Popovi, “Physically Plausible Simulation for Character Animation”, SCA '12, 221-230, 2012.

[33] J.K. Hodgins, W.L. Wooten, D.C. Brogan, and J.F. O’Brien. “Animating human athletics”, Proceedings of the 22nd annual conference on Computer graphics and interactive techniques, Pp. 71–78, 1995.

[34] C. Sunada, D. Argaez, S. Dubowsky, and C. Mavroidis, “A coordinated jacobian transpose control for mobile multi-limbed robotic systems”, In Proc. IEEE Int’l Conf. on Robotics and Automation, 1994, 1910–1915.

[35] J. Pratt, C. Chew, A. Torres, P. Dilworth, and G. Pratt, “Virtual model control: An intuitive approach for bipedal locomotion”, 2001, Int’l J. Robotics Research 20, 2, 129.

[36] S. Coros, P. Beaudoin, M. van de Panne, “Generalized biped walking control”, ACM Transactions on Graphics 29 (2010).