Termpaper ai
-
Upload
sumit-mishra -
Category
Education
-
view
91 -
download
1
Transcript of Termpaper ai
![Page 1: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/1.jpg)
FORWARD AND INVERSE KINEMATICS KANISH ROSHAN(11103385)
Section:E1E52
Abstract— The design of complex dynamic
motions for humanoid robots is achievable only through the use of robot kinematics. In this paper, we study the problems of forward and inverse kinematics for the Aldebaran NAO humanoid robot and present a complete, exact, analytical solution to both problems, including a software library implementation for real-time on-board execution. The forward kinematics allow NAO developers to map any configuration of the robot from its own joint space to the three-dimensional physical space, whereas the inverse kinematics provide closed-form solutions to finding joint configurations that drive the end effectors of the robot to desired target positions in the three-dimensional physical space. The proposed solution was made feasible through a decomposition into five independent problems (head, two arms, two legs), the use of the Denavit-Hartenberg method, the analytical solution of a non-linear system of equations, and the exploitation of body and joint symmetries. The main advantage of the proposed inverse kinematics solution compared to existing approaches is its accuracy, its efficiency, and the elimination of singularities. In addition, we suggest a generic guideline for solving the inverse kinematics problem for other humanoid robots. The implemented, freely-available, NAO kinematics library, which additionally offers center-of-mass calculations and Jacobian inverse kinematics, is demonstrated in three motion design tasks: basic center-of-mass balancing, pointing to a moving ball, and human-guided balancing on two legs.
I. INTRODUCTION
Service robots operating in domestic environments are
typically faced with a variety of objects they have to deal with
or they have to manipulate to fulfill their task. A further complicating factor is that many of the relevant objects are
articulated, such as doors,windows, but also pieces of
furniture like cupboards, cabinets, or larger objects such as garage doors, gates and cars. Understanding the spatial movements of the individual parts of articulated objects is
essential for service robots to allow them to plan relevant
actions such as door-opening trajectories and to assess
whether they actually were successful. In this work, we
investigate the problem of learning kinematic models of
articulated objects and using them for robotic manipulation
tasks. The design of complex dynamic motions is achievable
only through the use of robot kinematics, which is an
application of geometry to the study of arbitrary robotic
chains. However, past work has not fully solved the inverse
kinematics problem for the NAO robot, since it focuses
exclusively on the robot legs. Furthermore, the widely-known
analytical solution for the inverse kinematics of the legs is
purely geometric and cannot be generalized to other kinematic
chains. Also, existing numerical solutions are inherently
prone to singularities and, therefore, lack in robustness.
In this term paper, we present a complete and exact analytical
forward and inverse kinematics solution for all limbs of the
Aldebaran NAO humanoid robot, using the established
Denavit–Hartenberg convention for revolute joints. The main
advantage of the proposed solution is its accuracy, its
efficiency, and the elimination of singularities. In addition, we
contribute an implementation of the proposed NAO
kinematics as a freely-available software library1 for real-time
execution on the robot. This work enables NAO software
developers to make transformations between configurations in
the joint space and points in the three-dimensional physical
space and vice-versa, on-board in just microseconds, as the
library is designed for high-performance real-time execution
on the limited embedded platform of the robot. The
implemented NAO kinematics library, which additionally
offers center-of-mass calculations, is demonstrated in two
tasks2: basic center-of mass balancing and pointing to the ball.
The library has been integrated into the software architecture
of our RoboCup team Kouretes and is currently being used in
various motion design problems, such as dynamic balancing,
trajectory following, dynamic kicking, and omni directional
walking. Extrapolating from our work on the NAO, we also
present some guidelines for finding analytical solutions to the
inverse kinematics problem for any humanoid with revolute
joints of up to 6 degrees of freedom (DOF) per manipulator.
![Page 2: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/2.jpg)
II. KINEMATICS OF PARALLEL MANIPULATORS
Kinematic analysis of parallel manipulators includes solution to
forward and inverse kinematic problems. The forward kinematics of
a manipulator deals with the computation of the position and
orientation of the manipulator end-effector in terms of the active
joints variables. Forward kinematic analysis is one of essential parts
in control and simulation of parallel manipulators. Contrary to the
forward kinematics, the inverse kinematics problem deal with the
determination of the joint variables corresponding to any specified
position and orientation of the end-effector. The inverse kinematics
problem is essential to execute manipulation tasks. Most parallel
manipulators can admit not only multiple inverse kinematic solutions,
but also multiple forward kinematic solutions. This property
produces more complicated kinematic models but allows more
flexibility in trajectory planning [15]. In other words, a manipulator
configuration can be defined either by actuator coordinates q=[q1, ..,
qn]T or by Cartesian end-effector coordinates x= [x1, .., xn]T with n
the DOF of the manipulator under study. The transformation between
actuator coordinates and Cartesian coordinates is an important issue
from viewpoint of kinematic control. Computation of the end-
effector coordinates from given actuator coordinates (forward
kinematics) can be written in the general form
x= ƒFKP(q) (1)
The inverse task which is to establish the actuator
coordinates corresponding to a given set of end effector
coordinates (inverse kinematics) can be also written in the
general form
q= ƒIKP(x) (2)
Then the kinematic constraints imposed by the limbs can be
written in the general form
ƒ(x,q)=0 (3)
Differentiating Eq.(3) with respect to time, we obtain a
relationship between the input joint rates and the end-effector
output velocity
x J x=J q
Where
Jx= fx ∂∂ and Jq= f
Inverse kinematic singularity occurs when different inverse
kinematic solutions coincide that happens usually at the
workspace boundary. Hence the manipulator loses one or
more degrees of freedom. Mathematically they can detected
by det (Jq)=0
Forward kinematic singularity occurs when different
forward kinematic solutions coincide. Hence the manipulator
gains one or more degrees of freedom. That happens inside
the workspace so it is a great problem. Mathematically they
can detected by det (Jx)=0
III. ARTIFICIAL NEURAL NETWORKS
Artificial neural network (ANN) is an algorithm that model
brain performs a particular task, and is usually implemented
using electronic components or simulated in software on
digital computers. It has the ability of imitating of the
mechanisms of learning and problem solving functions of the
human brain which are flexible, powerful, and robust. In
artificial neural networks implementation, knowledge is
represented as numeric weights, which are used to gather the
relationships between data that are difficult to realize
analytically, and this iteratively adjusts the network
parameters to minimize the sum of the squared approximation
errors using a gradient descent method . One category of the
artificial neural networks is the multilayer perceptron (MLP)
which be considered a supervised back propagation learning
algorithm. It consists of an input layer, some hidden layers
and an output layer as shown . MLP is trained by back
propagation of errors between desired values and outputs of
the network using some effective algorithms such as gradient
descent algorithm. The network starts training after the weight
factors are initialized randomly. Weight adjusting takes place
until, we get reasonable errors or no more weight changes
occur. There is no available theoretical procedures to choose
the appreciate network architecture, i.e. number of hidden
layers and number of neurons of each layer. This depends on
the problem under investigation and user’s experience.
![Page 3: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/3.jpg)
IV FORWARD KINEMATICS
Forward set of transformations become important when the
pattern of movements to be controlled. In order to drive the
limb along a particular trajectory, the appropriate torques must
be applied at the joints. The transformation from joint torques
to movements referred to as forward dynamics (Figure 1/3).
The pattern of muscle activation to achieve these torques may
be generated in a variety of ways, including pure feedback
(closed loop) control, pure feed forward (open loop) control,
or combination of feedback and feed forward control (Houk &
Rymer 1981).
Muscle mechanical properties, such as stiffness and
viscosity, also contribut to the applied torques (Bizzi et al
1978). For fast movements such as a baseball pitch, feedback
control can play only a small role in controlling the movement
because of information transmission delays.
Instead, the nervous system must specify the pattern of
muscle activation corresponding to the desired pattern of
motion. The transformation from a desired pattern of motion
to the actuator command necessary to achieve that motion is
referred to as inverse dynamics .
The inverse dynamics transformation from a desired pattern
of motion to muscle activation may be broken up into a series
of transformations: pattern of motion to joint torques, joint
torques to muscle forces, and muscle forces to the necessary
muscle activations. Equations 2 and 3 give
the
joint torques (z~ and 22) for the idealized two-joint arm
model as function of the desired joint positions (0~ and 02),
joint velocities (01 02), and joint accelerations (0"1 and 0"2)
Each segment of the arm has a mass (m~ and m2), a
location of the center
of mass relative to the proximal joint [the vectors 21 =
(Cx,,cyl) and c2 = (c~2, cy~)], and a moment of inertia for
rotations around the joint axis (I~ and I~) (The parame
inertial parameters of mass, mass moment (the product of
the arm segment mass and its center of mass location), and
moment of inertia appear linearly in the inverse dynamics.
Simpler models may be used to approximate the dynamics.
Different versions of the equilibrium trajectory approach, for
example, either ignore dynamics or use a configuration-
independent mass-spring-damper model to approximate the
dynamics (Hogan et al 1987, Feldman 1986).
In both engineering and biology, control problems can be
posed in the following way: The mechanical apparatus to be
controlled transforms its inputs (commands) into some outputs
(performance). The control system generates the appropriate
commandsb ased on the desired performance of the motor
apparatus. To achieve high levels of performance a control
system must implement the inverse of the transformation
performed by the motor apparatus (Figure 1C). This is true
even when using feedback
control, and it is especially true in biological systems where
signaling delays limit possible feedback gains. One view of
motor learning is that its goal is to build an accurate inverse
model of the motor apparatus.
![Page 4: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/4.jpg)
V. INVERSE KINEMATICS
Inverse models of the motor apparatus can be represented
in many ways.
The inverse kinematic transformation is used here as an
example. The inverse kinematic transformation for the
idealized two-joint arm model can be represented
mathematically:
To control a two-joint robot arm, the inverse kinematic
transformation could be implemented as a digital computer
program (Figure 3A), a special purpose analog (or digital)
computational circuit that corresponds to the mathematical
Expressions 4 and 5 (Figure 3B), or a lookup table (Figure3C).
These are examples of how the same information-processing
problem i.e. computing the inverse kinematic transformation,
can be solved by different algorithms and implementations.
The nervous system could also use a variety of mechanisms to
implement
the inverse kinematic transformation. Neural circuits might
exist that correspond to or approximate the circuit .. Many
hypothesized brainstem circuits for coulometer control are of
this nature, in that signals are represented by the amount of
neural firing, and operations on signals are performed by the
interaction of signals with operations analogous to
addition, multiplication, and integration (Robinson 1981).
Other proposed
neural representations are similar to the tabular
implementation of Figure
3 C, in that a signal is represented by activity at a particular
location within a neural structure, and operations on signals
are performed using patterns of connections or mappings
between neural structures (Knudson et al1987). The superior
colliculus is an example of such a tabular representation,
in that activity at a particular location in the superior
colliculus corresponds to a particular eye movement.
![Page 5: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/5.jpg)
VI CONCLUSION
In this term paper, we represented a complete, exact, and analytical solution for the problems of forward and inverse kinematics of the NAO robot. The main advantage of the solution is its accuracy, its efficiency, and the elimination of singularities.. Our approach to NAO kinematics is based on standard Principled methods for studying robot kinematic chains. The currently widely known solution of team B-Human applies only to the legs, is purely geometric, and cannot be generalized to other kinematic Chains. We have tried to implement the other analytical solution for the legs , but we were not able to reproduce their results. Finally, the numerical solution offered is a proprietary implementation, which unfortunately is inherently prone to singularities and, therefore, lacks in robustness. It should be noted that none of the two demonstrations we presented in this paper could be realized with the existing solutions and implementations of NAO kinematics. The methodology offers a generic guideline for Addressing the problem of inverse and forward kinematics in humanoid robots.
ACKNOWLEDGMENT
I wish to acknowledge and thanks Ms. Manie Kansal and
lovely professional university for providing me an opportunity
to have an deep insight into the given topic forward and
inverse kinematics .The topic mentioned helped me in one
way and many to know about robotic design and implement
consideration. I also wish to acknowledge my friends and
other faculty members of CSE and ECE who helped me a lot
in understanding the subject and topic in better way.
REFERENCES [1] D. Gouaillier and P. Blazevic, “A mechatronic platform, the Aldebaran Robotics humanoid robot,” in Proceedings of the 32nd IEEE Annual Conference on Industrial Electronics (IECON), 2006, pp. 4049–4053. [2] C. Graf, A. Hart, T. Rofer, and T. Laue, “A robust closed-loop gait for the Standard Platform League humanoid,” in Proceedings of the Fourth Workshop on Humanoid Soccer Robots, 2009, pp. 30–37. [3] M. G. Jadidi, E. Hashemi, M. A. Z. Harandi, and H. Sadjadian, “Kinematic modeling improvement and trajectory planning of the NAO biped robot,” in Proceedings of the 1st Joint International Conference on Multibody System Dynamics, 2010. [5] Aldebaran Robotics, “Nao documentation,” 2012, only available online: www.aldebaran-robotics.com/documentation. [6] J. Denavi t and R. S. Hardenberg, “A kinematic notation for lower-pair Mechanicsms based on matrices,” ASME Journal of Applied Mechanics, vol. 22, pp. 215–221, 1955. [7] howstuffworks.com
![Page 6: Termpaper ai](https://reader036.fdocuments.net/reader036/viewer/2022071921/55cff0e7bb61eb4d328b45df/html5/thumbnails/6.jpg)
REFERENCES
[1] S. M. Metev and V. P. Veiko, Laser Assisted Microtechnology, 2nd ed., R. M. Osgood, Jr., Ed. Berlin, Germany: Springer-Verlag, 1998.
[2] J. Breckling, Ed., The Analysis of Directional Time Series:
Applications to Wind Speed and Direction, ser. Lecture Notes in Statistics. Berlin, Germany: Springer, 1989, vol. 61.
[3] S. Zhang, C. Zhu, J. K. O. Sin, and P. K. T. Mok, “A novel ultrathin
elevated channel low-temperature poly-Si TFT,” IEEE Electron Device Lett., vol. 20, pp. 569–571, Nov. 1999.
[4] M. Wegmuller, J. P. von der Weid, P. Oberson, and N. Gisin, “High
resolution fiber distributed measurements with coherent OFDR,” in Proc. ECOC’00, 2000, paper 11.3.4, p. 109.
[5] R. E. Sorace, V. S. Reinhardt, and S. A. Vaughn, “High-speed digital-
to-RF converter,” U.S. Patent 5 668 842, Sept. 16, 1997. [6] (2002) The IEEE website. [Online]. Available: http://www.ieee.org/
[7] M. Shell. (2002) IEEEtran homepage on CTAN. [Online]. Available:
http://www.ctan.org/tex-archive/macros/latex/contrib/supported/IEEEtran/
[8] FLEXChip Signal Processor (MC68175/D), Motorola, 1996. [9] “PDCA12-70 data sheet,” Opto Speed SA, Mezzovico, Switzerland.
[10] A. Karnik, “Performance of TCP congestion control with rate feedback:
TCP/ABR and rate adaptive TCP/IP,” M. Eng. thesis, Indian Institute of Science, Bangalore, India, Jan. 1999.
[11] J. Padhye, V. Firoiu, and D. Towsley, “A stochastic model of TCP
Reno congestion avoidance and control,” Univ. of Massachusetts, Amherst, MA, CMPSCI Tech. Rep. 99-02, 1999.
[12] Wireless LAN Medium Access Control (MAC) and Physical Layer
(PHY) Specification, IEEE Std. 802.11, 1997.