Friday, May 22, 2009

PIC 16F877A & L293 motor driver.

what needed to make it live!

1). PIC 16F 877A microcontroller

2). Oscillator 4MHz.

3). Coupling 22pF capacitors.

4). 5 Volt and Vss pin is connected to Ground.

The balancing robot has two DC motors as actuators. In order to drive the motor, an interfacing

circuit between microcontroller and motor is needed because the microcontroller itself is unable

to supply high current to each motor. Typically, the microcontroller it can only source and sink

approximately 25mA from their output pin. Therefore, a motor driver L293B was used to drive

the motor.

CIRCUIT DIAGRAM


This is the simplest circuit after do some reference.

the region selected must in linear characteristic, the suitable distance to mount the sensor where

the sensor acting in linear characteristic is in between 5cm to 11cm. The performance from sensor

is optimum here and the robot can maintain in upright equilibrium position.

SENSOR-GP2D12 distance measurement sensor




Two GP2D12 distance measurement sensor ; Two general purpose distance measuring sensors

(GP2D120) were used on the balancing robot in order to detect the current angular position of the

robot. The sensors are mounted on Perspex plate and placed at the front and back of the robot.

The line of sight is toward the ground at an angle of 90 degree. The output of the sensors is an

analog voltage. The GP2D12 can sense a height from minimum 4cm to maximum 30 cm. The

robots always balance by measuring the height at the front and back of it-self and rock the wheels

to maintain equal height.

The sensitivity of the sensor is measured by selecting the region of linearity the sensor behavior.

Fig. shown, the output sensor reading with small noise and this noise are filter-out by capacitor.