Internal Pages

Login to access

Robots\Kobot

From KOVAN

(Difference between revisions)
(About Manual)
(Driving the Kobot)
Line 162: Line 162:
=== Driving the Kobot ===
=== Driving the Kobot ===
-
Kobot is driven by two high quality motors with encoders. The control of these motors is done by the main controller of the robot using SI9988 motor driver IC. The truth table of SI9988 is given in Figure 6-a. In this table, OUTA and OUTB are motor outputs and they are connected directly to motor terminals. /EN pin of a motor driver is connected to a PWM output of the main controller and PWM pin is used to control the direction of the motor. This modification is necessary for controlling both the direction and speed of the motors. The encoder output of a motor is connected to an external CLK input of a timer module inside the main controller. Although, the encoder of a motor has two channel output signals only one of them is connected to the main controller.
+
Kobot is driven by two high quality motors with encoders. The code number of the motors is 1512U003S R 112:1 IE2-8 and you can reach the datasheet from [[File:e_1512SR_IE2-8_FTB.pdf]]. The control of these motors is done by the main controller of the robot using SI9988 motor driver IC. The truth table of SI9988 is given in Figure 6-a. In this table, OUTA and OUTB are motor outputs and they are connected directly to motor terminals. /EN pin of a motor driver is connected to a PWM output of the main controller and PWM pin is used to control the direction of the motor. This modification is necessary for controlling both the direction and speed of the motors.  
-
Encoders give approximately 750 ticks for 10 cm displacement.
+
-
As the naming convention, right motor is the one on the right side while the robot moving forward and the other is the left motor.
+
The encoder output of a motor is connected to an external CLK input of a timer module inside the main controller. Although, the encoder of a motor has two channel output signals only one of them is connected to the main controller. Each encoder gives 896 ticks for one revolution of the wheel and wheels have a diameter of 38 mm.
-
The PWM modules, direction control pins and timer modules used to control the motors are given in Figure 6-b.
+
The PWM modules, direction control pins and timer modules used to control the motors are given in Figure 6-b. As the naming convention, right motor is the one on the right side while the robot moving forward and the other is the left motor.
-
For the example routines of controlling motor speed (open loop) and direction please refer to “motorDriverExample.c” file in the example code package.  
+
For the example routines of controlling motor speed (open loop) and direction please refer to “motorDriverExample.c” file in the example code package. Also there is "encoderReadingExample.c" again in the code package showing how to get information from the encoders.
-
Also there is "encoder.c" example showing how to get information from the encoders.
+
[[File:fig6.png]]
[[File:fig6.png]]

Revision as of 09:47, 27 October 2010

Contents

Introduction

Kobot mobile robot platform is specifically designed for swarm robotic studies. The robot has the size of a CD (diameter of 12 cm), a weight of 350 grams, and it is differentially driven by two high quality DC motors. It has eight IR sensors for kin and obstacle detection and a digital compass for heading measurement. An IEEE 802.15.4/ZigBee compliant XBee wireless module with a range of approximately 20 m indoors is used for communication between robots and between the robots and a computer console. The robot hosts a 20 MHz PIC18F4620A microcontroller.

Image:Kobot.jpg Image:Kobots small.png

Block Diagam

Image:BlockDia.png

Mechanical Design

Image:Base small.png Kobot(tm) body consists of two pieces:

  • A cylindrical base, which houses the motors, the battery pack and the short-range sensor board,
  • A cylindrical cap that covers the body.

Both pieces are manufactured by casting polyurethanes, a low-density material that is ideal to create a light yet durable body structure for the robot. The cap is wrapped with white paper, to increase the visibility of the robots to each other.

Image:Motors.png The cap also carries three lightpipes to transfer the light from the LEDs on the sensor board.

Two high efficiency, low profile and high torque DC gear-head motors from FTB Inc. of Faulhaber are used in Kobot. They are directly connected to the wheels. The motors are driven using Vishay Inc.(tm)'s high switching frequency Si9988 motor drivers.

Short-Range Sensing System

Image:SensorBoard.pngFor sensing the obstacles located in short-range positions, KOBOT features a short-range sensing system, consisting of 8 modules IR sensors with the following properties:

  • PIC12F683 for each sensor
  • PIC16F877A for controlling all sensors
  • Measurements using 38 KHz infrared signal
  • Very low ambient light interference
  • Outputting object distances at 7 discrete levels from ~0 up to 21 cm range
  • Kin robot detection capability
  • 18 Hz update rate
  • Power consumption: around 60 mA for 8 sensors & controller

Figure shows the sensor board which acts as the main board of the Kobot onto which other electronic cards are mounted using smallform connectors.

Imaging System

Image:KobotWithMirror.pngKOBOT can view its environment through an omnidirectional mirror it carries on top of itself, and a camera located to face with the mirror. OmniVision 6620 Single-Chip Cmos CIF Color Camera is used for this purpose. It has the following features:

  • 352 x 288 resolution
  • 60 frames per second
  • Focal length: 6.0 mm
  • F#: 1.6
  • Analog video output in black & white PAL format

The control of the camera is done by using FPGA-based digital control and incoming image frames that are being outputted by the camera at 25Hz are stored to the RAM using DMA.

Image:Imaging.pngThe imaging system contains also a 200MHz PXA255 microprocessor, which runs the Linux operating system on 32MB EEPROM program memory and 32MB RAM providing a powerful research platform for the on-board execution of machine vision algorithms in nearly real-time.

Communication System

Image:Xbee.pngIn Kobot, Maxstream(tm)'s XBee module is used as the communication hardware. XBee modules are IEEE802.15.4/ZigBee protocol compliant which supports point-to-point, point-to-multipoint and peer-to-peer communication, as well as mesh networking.

On this communication hardware, we have implemented the parallel programming feature using one of the most popular bootloaders, the Screamer of Sparkfun Inc. Since Screamer does not support wireless or parallel programming, we have extended its capabilities accordingly. Left below figure shows a screenshot of our loader program. Image:Screamer.png

Simulator

Image:Simulator.png Kobot features a physics-based simulator based on the ODE (Open Dynamics Engine), which enables the modeling of actual physical interactions by implementing physical concepts such as friction and collision. It is calibrated against the physical robots using the results of systematic experiments.