Fast Object Tracking – Robot Computer Vision

I wanted my robot to be able to track object and follow them. The first thing I wanted to do is give the robot the ability to follow an object with its head camera. The head camera is mounted on a pan-tilt servo system, and hence is capable of moving left and right, up and down (as seen in the picture below).

My second object tracking goal was to make the robot chase after an object, much like a dog would chase a ball thrown by his owner. This kind of tracking is quite harder – it would use the head camera tracking from the previous step, and combine it with rest of the robot sensors to follow the object.

Read the rest of Fast Object Tracking — Robot Computer Vision

Linux Robotic Platform – an Intelligent Robot

Intellibot - an Intelligent Robot

I have always wanted to experiment with robotics, and lately I’ve found the time to build an “intelligent”, open-source robotic platform.

The platform runs embedded debian linux, and includes the following main capabilities:

1. Computer Vision (imitation of the human vision. The robot sees and “understands” what it sees). For this I have extensively used the OpenCV project.

2. Speech Synthesis (imitation of human speech. The ability to speak). For this I have used Espeak.

3. Speech Recognition (the ability to understand vocal commands). For this I have used CMU Sphinx 4 (after modifying some of the files in the project)

Read the rest of Linux Robotic Platform — an Intelligent Robot

Homemade DIY CNC Machine using Step Motors, Dremel, and EMC2

CNC MachineWhat is a CNC?

The abbreviation CNC stands for computer numerical control, and refers specifically to a computer “controller” that reads G-code instructions and drives a machine tool, a powered mechanical device typically used to fabricate components by the selective removal of material.

In simple words, a CNC is a machine which is controlled by a computer, and used to fabricate 3D objects.

This page will describe the process of building a CNC machine, from the design stage, the required materials and the process itself.

Read the rest of Homemade DIY CNC Machine using Step Motors, Dremel, and EMC2

Stepper Motor – Information, Advantages, Building a Stepper Motor Controller

Stepper Motor

Stepper motors (also called step motors) are electronic motors that offer precise rotation control . Stepper motors are very precise (an average stepper motor can turn in about 0.9 to 1.8 degrees in each direction) and in a relatively high rotational speed.

Stepper motors can be found in various types of hardware components: printers (the printer head moves left and right by using a stepper motor), scanners, computer hard disks, and so on.

Read the rest of Stepper Motor — Information, Advantages, Building a Stepper Motor Controller

Introduction to Robotics

What is a Robot?

A Robot is an automatic machine that is able to move. It’s controlled by a sophisticated controller, in many cases having an ‘Artificial Intelligence’.

Review of the structure and general sub-systems of a Robot

A typical robot will have several sub-systems, among which:

  • The Actuators Subsystem – a system which its purpose is to create the physical movement of the robot, in most cases by combining different kinds of motors, like step motors, servo motors, DC motors, and electronic ‘muscles’ motors.
  • Sensors Subsystem – a systems that performs the input for the robots’ actions, i.e. position sensors, temperature sensors, sound sensors, a camera (computer vision) etc.
  • Control Subsystems – subsystems which are responsible of operating complex parts of the robots, i.e. Stepper motor controller, Servo motor controller
  • Information Processing subsystem – The information processing subsystem is responsible for integrating the data from the sensors subsystem, analyzing it (usually using complex artificial intelligence algorithms), and then operating the control subsystems. It can be said that this system is the ‘brain’ of a robot.

Read the rest of Introduction to Robotics