Pages

Friday, November 30, 2018

Analytical IK Solution - Improvements

Boundary singularities  

“In the elbow the singularity occurs when the elbow is fully stretched out, because then, the last axis of the upper arm and the first axis of the lower arm are in line. In such a case there are multiple solutions for the orientation of the elbow.” (Kumar, 2011, p. 5)

The singularity created when the target is out of range produces an infinite number of possibilities, which prevents the calculation of a suitable chain configuration.

When the target is unreachable, the exterior angle of the second joint in the chain is outside the arccosθ domain.


Wednesday, November 28, 2018

Analytical IK Solution - Implementation

As in my brief Forward Kinematics blog, I will use Unity’s child-parent structure to parent objects in sequence to those higher in the chain hierarchy.

Figure 1: Hierarchy within Unity

This simulates forward kinematics with each child being rotated in world space proportional to that of their parent, while their individual joint space is only affected when they are specifically modified – and so on down the chain.


Saturday, November 24, 2018

Analytical IK Solution - Research

As explored in my previous entry, an IK solution does not direct the chain but rather aims to reach the chain’s end effector toward a global coordinate by manipulation of joints throughout the chain length.

An analytical solution makes use of the trigonometric methods to solve joint configurations. The relative simplicity of this approach makes analytical solutions extremely efficient in comparison to other methods, though limits their reasonable application to chains with relatively low degrees of freedom.

“for manipulators that are redundant or with high dof, there are hardly effective solutions to the inverse kinematics problem” (Gan et al., 2005, p. 123).

This makes an analytical implementation an ideal starting point to begin development into the locomotion of a 2D biped, as it can be used to simulate shoulder and elbow joints to correctly position the hands as well as hip and knee joints to correctly position the feet.

Tuesday, November 20, 2018

Inverse Kinematics: Solution Analysis

“Inverse Kinematics is defined as the problem of determining a set of appropriate joint configurations for which the end effectors move to desired positions as smoothly, rapidly, and as accurately as possible” (Aristidou and Lasenby, 2011).

As explored in my last blog entry, forward kinematics is concerned with identifying the position and rotation of the kinematic chain’s end effector, while inverse kinematics aims to position the kinematic chain so that it can accommodate the position of the end effector.

This relationship between the two operations is described in figure 1.

Figure 1: Relationship between forward and inverse kinematics (Kucuk and Bingul, 2006, p. 118)

Forward kinematics assesses the local position and rotation of each joint to determine the end effector rotation and position in global space. Inverse kinematics uses this global position and adjusts the local rotation of each joint so that the end effector reaches the target position.

My solution will rely on an IK implementation to affect the rotations on joints in the biped limbs to reach towards target positions while applying constraints which maintain realistic human joint rotation limits.

Thursday, November 15, 2018

Forward Kinematics

Kinematics is the branch of mechanics concerned with the motion of objects without reference to the forces which cause the motion.

A kinematic chain is comprised of a series of linked rigidbodies (bones) where each successive bone is connected to its previous bone by joints, from the root joint to the last joint in the chain; the end effector – as discussed by Kenwright (2013, pp. 2-9).

“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.” (Ezzat A Showaib, 2013, p. 1)

Figure 1: Kinematic chain of bones joined by connecting joints (Kucuk and Bingul, 2006, p. 119)

A kinematic chain is a hierarchical structure. By altering the rotation of any joint, all it’s child joints will be rotated relatively without their individual rotations being altered (as shown in figure 2).