Posts Tagged ‘kinematics’

January 17th, 2012

iCub drums and crawls using bio-inspired control - article


Toward simple control for complex, autonomous robotic applications: combining discrete and rhythmic motor primitives
Sarah Degallier, Ludovic Righetti, Sebastien Gay, Auke Ijspeert

Ever see a lizard effortlessly run up a wall?

Like most vertebrates, lizards are able to quickly adapt to new environments in a robust way thanks to a special type of movement generator. The idea is that a high-level planner (the brain) is responsible for determining the key characteristics of a movement such as the position that needs to be reached by a limb or the amplitude and frequency with which the limbs should perform rhythmic motions. These high-level commands then serve as an input to motion primitives responsible for activating muscles in the correct sequence. Motion primitives are typically organized at the spinal level through neural networks called central pattern generators (CPGs).

This control architecture has many advantages for robotics. First, once the motion primitives are designed, only high-level commands are required to control the entire motion of the robot. Therefor, instead of planning the positions of all joints, the motion planner only needs to issue high-level goals such as “reach there” or “move your arm rhythmically with this amplitude and this frequency”. This greatly reduces the complexity of planning motions for robots with many degrees of freedom. Furthermore, CPGs are very fast, have low computational cost and can be modulated by sensory feedback in order to obtain adaptive behaviors.

Using this control architecture, Degallier et al. were able to turn the iCub humanoid seen in the video below into an on-demand drummer. Random users at a robotics conference were able to change on-line a score that the iCub was playing or test how well it could adapt when its drums were moved. To show the generality of their approach, they then applied the same architecture to make the iCub crawl and reach for objects. Although one behaviour was rhythmic (crawling) and the other discrete (reaching), the robot was easily able to switch between the two.

| More

Related posts

October 12th, 2011

From iCub to artist - article


Teaching a humanoid robot to draw Shapes
Vishwanathan Mohan, Pietro Morasso, Jacopo Zenzeri, Giorgio Metta, V. Srinivasa Chakravarthy, Giulio Sandini

Learning how to perceive shapes and act on them is what allows us to interact with our world. Whether it’s grasping for an object, drawing or dancing.

With this in mind, Mohan et al. have been teaching the iCub, a child-sized humanoid, to draw shapes. Starting from simple shapes like ‘I’ and ‘U’ the robot goes on to writing its full name and finally drawing a portrait of Gandhi.

To do this, the iCub observes a human teacher drawing the shape before trying to reproduce it. The task requires a host of skills such as vision processing, imitating the teacher’s motions, practicing the drawings, exploring new actions, trajectory formation and inverse kinematics, and finally generalizing lessons learned to new tasks.

For a complete explanation of how the system works, have a look at the excellent presentation below narrated by the author of the paper.

| More

Related posts

July 6th, 2011

Internal models of robot bodies - article


Universally manipulable body models—dual quaternion representations in layered and dynamic MMCs
Malte Schilling

Robots that have an internal model of their body could potentially use it to predict how a motor action will affect their position and what sequence of actions will bring them to a desired configuration (inverse kinematics). Knowing in what state a robot’s body is can also be useful for merging sensor readings, for example to determine the position of an arm using a head mounted camera and joint angle sensors.

Ideally the model should be able to simulate all movements that are physically possible for a given robot body. For this purpose, Malte Schilling uses a special type of recurrent neural network called a “Mean of Multiple Computation” (MMC) network. The model can be used for the tasks described earlier (predictions, inverse kinematics and sensor fusion) simply by changing the values that are fed as input to the network. However, work so far using MMC networks has been limited to 2D or simple 3D scenarios. For more general 3D models, Schilling introduces dual quaternions as a suitable representation of the kinematics of a body.

The robot's task is to reach all the target points in the 3D environment.

Experiments were done in simulation using a three-segment arm. The task was to reach for targets in 3D space, beginning at a predefined starting position. Results shown in the figure below depict the successful robot motion using this model. Unlike other models in the literature, the MMC network does not require the precomputation of the complete movement, it is able to deal with extra degrees of freedom and it can accomodate external constraints.

Movement of a robot arm reaching for target 6 (previous figure) controlled by the MMC network.

In the future, authors hope to build a network that can represent a complete body, for example, the body of a hexapod walker with 18 joints and to use this body model for planning ahead.

| More

Related posts

October 30th, 2010

Human motion database - article


Human motion database with a binary tree and node transition graphs
Katsu Yamane, Yoshifumi Yamaguchi, Yoshihiko Nakamura

By creating a database of human motions, Yamane et al. hope to allow robots to recognize human behaviors or move like humans. To do this, they analyze motion clips of people performing all sorts of actions such as jumping, running and walking. Motion clips can be seen as a sequence of frames in which the body’s state is described by virtual markers that have a specific position and velocity as shown below. The challenge is then to break these clips down so that the important information can be stored and used in an intelligent manner.


The method used to create the database is described in the figure below. Starting from motion clips, they construct a binary tree. The root of this tree contains all frames in all clips. The root is then split into two groups where each group has similar features. Each one of these groups is then divided and so on until the tree is complete. Each layer of the tree contains all the frames in the dataset. Since for each frame it is known what frame follows (based on the clips), it is possible to compute the probability of transitioning from one node to the other (node transition graphs).

By using this database, Yamane et al. are able to recognize newly observed motion sequences, estimate the current state and predict future motions, and plan new human-like motions.

| More

Related posts

August 6th, 2010

Human-like arm movements - article


A biomimetic approach to inverse kinematics for a redundant robot arm
Panagiotis Artemiadis, Pantelis Katsiaris, Kostas Kyriakopoulos

Many robots are required to move like humans. Human-like motion is useful to efficiently interact with humans and environments built for them, make realistic humanoids or replace actual limbs (prosthetics).

To this end, Artemiadis et al. propose a technique to generate anthropomorphic motion with a robot arm. The task consists in making the robot extremity reach a specific position in 3D in a human-like way. The challenge is that robots with many degrees of freedom can reach a specific point by following many different trajectories (redundant robots).

To choose what trajectory is more human-like, robots observe humans moving their arm (see figure below). This data is then used to create a probabilistic model (Bayesian Network) that describes how joints are related to each other (inter-joint dependencies). These dependencies are taken into account when planning the arm trajectory using inverse kinematics.

Using this technique, robots were able to replicate arm motions previously performed by humans and even generate new ones that had never been observed!

| More

Related posts