|
|
|
An Overview The primary objective of the Project is the development of an autonomous micro-controlled land vehicle with the inherent ability for absolute collision avoidance. It will have the forte to navigate from a pre-determined static point to a desired location, expertly evading obstacles in its path. Our design incorporates 5 static obstacles, placed on a level surface.
{ check if already present at destination ; call check_IR(); while not at destination { call spin(turn_angle); call move(move_power); } we have reached destination; }
int check_IR() { if not moving in preferred direction (away from destination) { if right is preferred direction check IR sensor in that direction
if an obstacle is detected, adjust turn_angle else move ahead; else (left is preferred direction) repeat above procedure for right is preferred direction } else (moving in preferred direction) { if no obstacles detected ahead move ahead else
if obstacle is not detected adjust turn_angle in that direction; check if that direction is preferred or not else adjust turn_angle in other direction and check if it is preferred; /*note :left is a preferred direction in this case and if obstacles are detected by both sensors,rover will move left*/ } } void spin (float turn_angle ) { switch motors in reverse direction causing it to rotate about its central axis } void move ( int move_power ) { start both motors at 90% power in forward direction while (both motors are on) { Find which is preferred direction keep checking whether distance has been covered by at least one motor if so stop that motor, adjust motor speed so that slipping is minimised; check whether rover is moving north,south,east,west and adjust *x_rovptr or *y_rovptr; /*note:if direction is north south y has to be changed else x*/ check whether x or y distance has been covered : if so stop and rotate towards destination; turn=check_IR() ; if (turn) get out of while loop } stop all motors }
Power, Power Monitor, CPU, and Serial Line Circuitry The components used in designing the power supply, voltage monitor, oscillator and serial line circuitry are listed below . ResistorsAll resistors are 1/8 watt unless noted otherwise. R1 (2.2M--red, red, green)R2 (1K--brown, black, red) R8 and R15 (47 K--yellow, purple, orange) R13 (47 ohm--yellow, purple, black) R14 (47 ohm--yellow, purple, black, 1/2 watt) RP4 (1 K x 4 resistor pack, 8 pins, labelled ``102'') Capacitors C1 and C2 (22 pF, labelled ``220'') Note: these are only provided if X1 is a crystal. If X1 is a ceramic resonator, these are not used. C3 (470 µF, axial electrolytic) C7 and C9 (0.1 µF, labelled ``104'') C8 (4.7 µF, tantalum, labelled ``4µ7'') Diodes and LED's D1 (1N914 signal diode, glass casing) Integrated Circuits U1 (MC68HC11A1FN or MC68HC11E1FN microprocessor)U12 (DS1233-10 voltage monitor) U13 (LM7805CTB 5 volt regulator) Connectors and Sockets J5 (RJ11 telephone jack, top entry)J12 (coax DC power jack) PLCC (52-pin plastic leaded chip carrier socket) Switches SW1 (silver/red SPDT slide switch) SW3 (pushbutton switch) Other X1 (8 MHz crystal or ceramic resonator) The power supply circuit is the main circuit used to supply continuous power to the Handy Board. The circuit can be used to retain the Interactive C program in the RAM even when the battery supply is withdrawn. The circuit is also used to drive the motors, through a 8 - cell AA Ni-Cd battery pack, supplying a voltage of 9.6V. When an I/P voltage (12 - 20V) is applied, power is supplied to the Board from the adapter jack and the board is switched on using SW1. For a brief instant, the charge LED15Y flashes, indicating power flow through the Board, which is used to charge the main system capacitor C3 (470 ?F).The LED is supplemented by a voltage divider network of resistances R13,R14 (47 K) and the current flows through the power diode D3 (IN4001). Depending on the applied signal at UNSWPWR (which is the O/P from pin 3 of jack J5), the power supplied can be used to turn on the motors, retain the IC program in the RAM or assert a RESET signal to the microprocessor. When the supply I/P signal is less than 4.5V (invalid voltage), the switch SW1 is kept closed. Thus, an invalid signal is registered by the DS1233-10 voltage monitor chip, which measures the system voltage. This, in turn, asserts a RESET signal to the microprocessor, ensuring that the microprocessor is idle during power-on, when system voltage is ramping up from zero volts to its normal operating level, and during power-off, when system voltage falls from normal operating level to zero volts. The output of the voltage monitor chip is connected to an LED (LED11R, marked BATT). When the chip asserts the ``invalid'' signal, the BATT LED will light. This happens for a brief interval when power is switched off, and for 1/3 of a second when it is switched on. The BATT LED also serves as a low-battery indicator, since if the battery is not charged enough to raise the system voltage to its normal operating level, the DS1233 chip will continuously assert the signal that lights the BATT LED. The capacitors C3,C7,C8,C9 are used to filter the spikes and valid O/P voltage of 4.9 - 5.1V is applied between pins 48/26 and 23/01 for 48 pin DIP/ 52 pin PLCC package. When the switch SW1 is open, the applied signal, after being filtered by the capacitors C4,C5, is applied to the MEM-PWR pin of the MC68HC11A1FN.This ensures that the Interactive C program is retained in the RAM of the 6811. The MEM-PWR pin in turn is the pin 10 of the expansion bus J3. Thus, the program need not be reloaded from the PC each time it is accessed. The 8 - cell Ni - Cd battery pack supplies a voltage of 9.6 V (= 8 X 1.2V), through the motor power header J13. The voltage is applied at the pin MOTORPWR, which is used to drive the motors.
|
|
1999 IEEE VESIT Student Branch Hits :
Webmaster : Saumitra Mohan Das |