Google

Sunday, September 14, 2008

Scribbler Robot

The Scribbler Robot is an intelligent programmable robot for ages eight years and older. Rolling around on three wheels, it communicates via light and sound. It has light and infrared sensors, allowing it to find its way around objects, detect light sources, and follow lines drawn on the floor. It's called the "Scribbler" because it can also draw patterns and lines as it moves.
Picture of product

The three large holes in the center are the light detectors. The two holes nearer the front are infrared emitters. The center front hole is the infrared detector.The center top hole is called the "Pen Port", enabling the robot to "scribble": Place a marker in that hole, and the marker will touch the ground on the other side, thus drawing a line as the robot moves. The grilled hole below that is the speaker. Below the "Scribbler Robot" logo we have 4 LED lights, used for communication and status.
Below the LEDs, we have a 9-pin female serial connector - this "Programming Port" is what the unit uses to communicate with a computer for programming. To the left of the Programming Port is the red reset button. To the right of the Programming Port is the Scribbler's On / Off switch.
The battery the lower half (the Scribbler requires 6 AA batteries, and rechargeables work fine). Above the center "Pen Port" we see the four infrared line sensors used for detecting lines on the ground as the unit moves.

Vex Robotics

The Vex Robotics Design System, is a build-it-yourself robot creation kit. Like an electric erector set, you need some batteries, some imagination, and a desire to build. The results will be a functional robot you can control with a wireless radio transmitter (like a remote-controlled car). With upgrades to the basic kit, you can add more features, parts, abilities, and even the ability to program the robot, allowing it to interact with the world on its own.

The excellent Vex manual provides you with instructions on how to build a basic robot, capable of movement and collision detection. The three shots below are a slightly-modified version of that robot.
The battery pack is the blue box on top of the unit. The radio receiver is the smaller yellow box beside the battery pack. The red and gray buttons on the front and back ends are collision detectors: If the robot bumps into something, it stops the wheels from turning (preventing your from stripping the gears or wearing out the axle mounts or motors). The large gray unit below the battery pack and radio receiver is the brain of your robot: The Vex Micro Controller. Plugging motors, sensors and other things into this unit allows your robot to move and interact with the world.

The Vex is intended for use by children and adults able to not only understand basic mechanics, but those able to work with small parts (like screws and motor components) and understand basic electronics concepts (you'll need to do a bit of tweaking to adjust trim levels on the radio transmitter, and motors and batteries and radio receivers need to be connected correctly for everything to function. The manuals do an excellent job of describing how everything works, but you still need the patience and delicate handing such components require

Robot arm edge gripping device

An edge gripping device grips and ungrips a substrate, such as a semiconductor wafer. A blade extends in a distal direction from a base of the device. At least one distal contact member is provided at the tip of the blade. Two proximal lever arms are pivotally coupled for synchronized, oppositely directed rotation to the base. Each lever arm has at least one proximal contact member at an outer end. A biasing member is coupled to the two proximal lever arms and to an actuator to effect pivoting movement of the lever arms.

The pivoting motion moves the ends of the arms generally radially toward and away from the center of the substrate to be gripped or ungripped, thereby minimizing sliding of the substrate. The biasing member is biased to retain the lever arms in a closed position in the event of a power failure. Ramps are provided next to each contact member. The contact members and ramps are profiled to minimize the zone of the substrate edge that is contacted. The lever arms are pivotally mounted with flexural pivot members having no sliding motion, to minimize particle generation.

The edge gripping device of the present invention eliminates the need for separate actuators to move both proximal contacts. The synchronized, radial motion of the lever arms is able to provide centering of the substrate on the device, in some cases eliminating the need for a pre-aligner device. The device is able to accommodate substrates that are slightly off center on their supports or slightly warped. The edge exclusion, the zone of contact along the substrate's edge, is minimized, for example to less than 1 mm for semiconductor wafers. The lever arms are mounted using flexural pivot members that have no sliding motion, thereby minimizing particle generation.

Kranius

Kranius is a two-wheeled robot that you can program without a personal computer. The intellectual brain consists of an 8 bit micro-controller and keyboard with 33 tactile buttons. This bundle of brains can store up to 60 programming steps and 30 FOR-NEXT multiplex loops. In addition to its futuristic and powerful design, it features 6 vision sensors to see in front and below the robot. The eyes that enable it to see in front of itself has two infrared LEDs and an infrared detector IC. 4 floor light sensors (CdS sensor) will enable it to distinguish the contrast of light underneath its shell.

Dr. Robot says this robot is more than just fun. Assembling, building, and following instructions help develop fine motor skills and hand-eye coordination. Because it's programmable, one has to plan ahead, think systematically and logically, develop problem-solving skills, and will challenge you to think creatively.

Easy to assemble, this OWIKIT Intermediate building level robot makes a great entrant for robotic competitions, robotic workshops, after-school programs, special events, gifts, science enrichment camps, and classroom activities.

Power Source: 2-"AA" batteries and 1-"9V" battery.

Size is W145 x H85 X L140 mm. No Soldering Required.

Robot Kit

A robot kit is a special construction kit for building Robots. Robot kits are also supplied by several companies. In some cases, the kits can be available without electronics as well, to provide the user the opportunity to use his or her own.
Beginner series of robot kits inspires first level of insights into electronic & scientific principles, & do not require soldering.

There are intermediate and advanced kits require soldering.Soldering tools and batteries indicated for each kit are not included.They are mostly made of plastic elements like Lego Mindstorms and the robotics bioloid, or aluminium elements like Lynxmotion's servo erector set and the Qfix set.

The kits can consist of structural elements, mechanical elements, motors, sensors and a controller board to control inputs and outputs.

Sunday, December 30, 2007

Speech recognition

The 1990s saw the first commercialization of spoken language understanding systems. Computers can now understand and react to humans speaking in a natural manner in ordinary languages within a limited domain. Basic and applied research in signal processing, computational linguistics and artificial intelligence have been combined to open up new possibilities in human-computer interfaces.

Voice recognition and speech synthesis technologies may not have developed to the degree some science fiction writers hoped, but have nevertheless seen some startling successes. ... Voice synthesis has been around for a long time. Bell Labs demonstrated a computer-based speech synthesis system running on an IBM704 in 1961, a demonstration seen by the author Arthur C. Clarke, giving him the inspiration for the talking computer HAL9000 in his book and film '2001: A Space Odyssey'. Forty-five years later, voice synthesis technology can be found in products as diverse as talking dolls, car information systems and various text-to-speech conversion services such as the one recently launched by BT. Many of these modern systems can convert text into a computer synthesised voice of quite respectable quality. ... Voice recognition has turned out to be a much harder task than researchers realised when work began on the problem over forty years ago. However, limited voice recognition applications are starting to creep into everyday use, voice input telephone menu systems are now commonplace, speech-to-text dictaphones are increasingly used for note-taking by doctors and lawyers, and voice input has started to appear in computer games systems. The success of some of these limited-application voice recognition systems has recently prompted the big software heavyweights, Microsoft and IBM, to make further investments. ... However, there are still a lot of technological hurdles to overcome; to understand what these are, we need to delve further into the technology. ... Speech recognition - Speech recognition, on the other hand, is a much harder task, and commercial off-the-shelf systems have only been available since the 1990s. Because every person's voice is different, and words can be spoken in a range of different nuances, tones and emotions, the computational task of successfully recognising spoken words is considerable, and has been the subject of many years of continuing research work around the world. A variety of different approaches are used, dynamic algorithms, neural networks, and knowledge bases, with the most widely used underlying technology being the Hidden Markov Model. These techniques all attempt to search for the most likely word sequence given the fact that the acoustic signal will also contain a lot of background noise."

Are you talking to me? Speech recognition: Technology that understands human speech could be about to enter the mainstream. The Economist Technology Quarterly (June 7, 2007). "Speech recognition has taken a long time to move from the laboratory to the marketplace. Researchers at Bell Labs first developed a system that recognised numbers spoken over a telephone in 1952, but in the ensuing decades the technology has generally offered more promise than product, more science fiction than function. ... Optimistic forecasts from market-research firms also suggest that the technology is on the rise. ... An area of great interest at the moment is in that of voice-driven 'mobile search' technology, in which search terms are spoken into a mobile device rather than typed in using a tiny keyboard. ... The resulting lower cost and greater reliability mean that speech-based systems can even save companies money. Last August, for example, Lloyds TSB, a British bank, switched all of its 70m annual incoming calls over to a speech-recognition system based on technology from Nuance and Nortel, a Canadian telecoms-equipment firm. ... Another promising area is in-car use. ... There are military uses, too. ..."

Computer Vision and Speech. " If you are interested in computers with human capabilities, vision and speech open an entirely new world of computers that can see and talk like we do. Computer vision is the moody input cousin of computer graphics-in graphics, you have all the time you can afford to program the rendering, but visual input is an unpredictable and messy reality. Computer speech is both input and output, like in systems capable of spoken dialogue. Viewed as enabling technologies, computer speech arguably holds the lead over computer vision. Even though a speech signal is enormously rich in information and we are still far from mastering important aspects of it like online recognition and generation of speech prosody, it is still much easier to shut up the people in a room in order to get a clear speech signal than it is to control the room's lighting conditions and to identify and track all of its 3-D contents independently of the viewing angle. Given the state of the art, it makes good sense that the papers in this issue of Crossroads are about speech or vision. Two articles address different stages of the process of making computers understand what is commonly called the speaker's communicative intention, i.e., what the speaker really wishes to say by uttering a sequence of words. Deepti Singh and Frank Boland [Voice Activity Detection] discuss approaches to the important pre-(speech)-recognition problem of detecting if and when the acoustic signal includes speech in the first place. ... Nitin Madnani's introduction [Getting Started on Natural Language Processing with Python] to natural language processing, or NLP, is likely to tempt computer scientists to try out NLP for themselves

"Speech recognition software matches strings of phonemes -- the sounds that make up words -- to words in a vocabulary database. The software finds close matches and presents the best one. The software does not understand word meaning, however. This makes it difficult to distinguish among words that sound the same or similar. The Open Mind Common Sense Project database contains more than 700,000 facts that MIT Media Lab researchers have been collecting from the public since the fall of 2000. These are based on common sense like the knowledge that a dog is a type of pet rather than the knowledge that a dog is a type of mammal. The researchers used the phrase database to reorder the close matches returned by speech recognition software. ... 'One surprising thing about testing interfaces like this is that sometimes, even if they don't get the absolutely correct answer, users like them a lot better,' said [Henry] Lieberman. 'This is because they make plausible mistakes, for example 'tennis clay court' for 'tennis player', rather than completely arbitrary mistakes that a statistical recognizer might make, for example 'tennis slayer','

Sunday, December 16, 2007

Genetic programming

Genetic programming is a branch of genetic algorithms. The main difference between genetic programming and genetic algorithms is the representation of the solution. Genetic programming creates computer programs in the lisp or scheme computer languages as the solution. Genetic algorithms create a string of numbers that represent the solution. Genetic programming, uses four steps to solve problems:
1) Generate an initial population of random compositions of the functions and terminals of the problem (computer programs).

2) Execute each program in the population and assign it a fitness value according to how well it solves the problem.

3) Create a new population of computer programs.
i) Copy the best existing programs
ii) Create new computer programs by mutation.
iii) Create new computer programs by crossover(sexual reproduction).

4) The best computer program that appeared in any generation, the best-so-far solution, is designated as the result of genetic programming .


Figure 1: genetic programming Flowchart.



Fitness Function
The most difficult and most important concept of genetic programming is the fitness function. The fitness function determines how well a program is able to solve the problem. It varies greatly from one type of program to the next. For example, if one were to create a genetic program to set the time of a clock, the fitness function would simply be the amount of time that the clock is wrong. Unfortunately, few problems have such an easy fitness function; most cases require a slight modification of the problem in order to find the fitness.


Gun Firing Program
A more complicated example consists of training a genetic program to fire a gun to hit a moving target. The fitness function is the distance that the bullet is off from the target. The program has to learn to take into account a number of variables, such as wind velocity, type of gun used, distance to the target, height of the target, velocity and acceleration of the target. This problem represents the type of problem for which genetic programs are best. It is a simple fitness function with a large number of variables.

Water Sprinkler System
Consider a program to control the flow of water through a system of water sprinklers. The fitness function is the correct amount of water evenly distributed over the surface. Unfortunately, there is no one variable encompassing this measurement. Thus, the problem must be modified to find a numerical fitness. One possible solution is placing water-collecting measuring devices at certain intervals on the surface. The fitness could then be the standard deviation in water level from all the measuring devices. Another possible fitness measure could be the difference between the lowest measured water level and the ideal amount of water; however, this number would not account in any way the water marks at other measuring devices, which may not be at the ideal mark.

Maze Solving Program
If one were to create a program to find the solution to a maze, first, the program would have to be trained with several known mazes. The ideal solution from the start to finish of the maze would be described by a path of dots. The fitness in this case would be the number of dots the program is able to find. In order to prevent the program from wandering around the maze too long, a time limit is implemented along with the fitness function.


Functions and Terminals
The terminal and function sets are also important components of genetic programming. The terminal and function sets are the alphabet of the programs to be made. The terminal set consists of the variables and constants of the programs. In the maze example, the terminal set would contain three commands: forward, right and left. The function set consists of the functions of the program. In the maze example the function set would contain: If "dot" then do x else do y. In the gun firing program is the terminal set would be composed of the different variables of the problem. Some of these variables could be the velocities and accelerations of the gun, the bullet and target. The functions are several mathematical functions, such as addition, subtraction, division, multiplication and other more complex functions.

Crossover Operation
Two primary operations exist for modifying structures in genetic programming. The most important one is the crossover operation. In the crossover operation, two solutions are sexually combined to form two new solutions or offspring. The parents are chosen from the population by a function of the fitness of the solutions. Three methods exist for selecting the solutions for the crossover operation.

The first method uses probability based on the fitness of the solution. If is the fitness of the solution Si and

is the total sum of all the members of the population, then the probability that the solution Si will be copied to the next generation is [Koza 1992]:


Another method for selecting the solution to be copied is tournament selection. Typically the genetic program chooses two solutions random. The solution with the higher fitness will win. This method simulates biological mating patterns in which, two members of the same sex compete to mate with a third one of a different sex. Finally, the third method is done by rank. In rank selection, selection is based on the rank, (not the numerical value) of the fitness values of the solutions of the population.

The creation of the offsprings from the crossover operation is accomplish by deleting the crossover fragment of the first parent and then inserting the crossover fragment of the second parent. The second offspring is produced in a symmetric manner.