Você está na página 1de 10

A Project Report On Wall Climbing Robot: Simulation on STK500 kit

In partial fulfillment of the requirement for the award of the degree of

POST GRADUATE DIPLOMA IN EMBEDDED SYSTEM AND VLSI DESIGN


(PGDEVD-XXI)

Submitted by
Amareshwar Kaushik Ravindra Mathanker Rohit Chaturvedi Sumit Verma Under the Esteemed Guidance of

Mr. Pradeep Nandan

Centre for Development of Advanced Computing, NOIDA

CDAC, NOIDA

PGDEVD - XXI

CERTIFICATE

This is to certify that the project entitled Wall Climbing Robot: Simulation on STK500 kit has been prepared jointly by four students Amareshwar Kaushik, Ravindra Mathanker, Rohit Chaturvedi, Sumit Verma of PGDEVD and submitted under my supervision. The Students have prepared a basic conceptual simulation model of Wall Climbing Robot by themselves. The project is being submitted by the students as partial fulfillment of the requirement for the award of PGDEVD of CDAC, NOIDA.

RMr.

Pradeep Nandan CDAC, NOIDA

I Mr.

Vinod Sharma Program Co-ordinator CDAC, NOIDA

CDAC, NOIDA

PGDEVD - XXI

ACKNOWLEDGEMENT

We express our sincere thanks to Mr. Vinod Sharma Program Coordinator, PGDEVD for his guidance and cooperation throughout the work. In spite of his busy schedule he extended full cooperation with keen interest for discussion and correct suggestion. We immensely thankful to Mr. Pradeep Nandan for their help and kind cooperation time to time. We are also indebted to all faculty members of PGDEVD, for their kind cooperation and advices given to us time to time.

rPGDEVD

Batch XXI (Aug11- Jan11) CDAC, NOIDA

t Amareshwar Kausik Ravindra Mathanker Rohit Chaturvedi Sumit Verma

CDAC, NOIDA

PGDEVD - XXI

Wall climbing Robot for dedicated task Introduction


Our target is to build a wall-climbing robot that can climb walls, walk on ceilings, crawl through pipes and traverse on floors. The Wall Climbing Robot (WCR) having capability that it can stick on a vertical as well as inclined surface and can easily move over the surface. The targeted capability to stick with surface can be achieved by either suction cups or electrostatic chucks. Suction cups create a vacuum pressure used to stick with vertical or inclined surface. Electrostatic Chucks create a controlled adhesion by means of some intermolecular or charged force. The movement on the surface can be achieved by stepper motor wheel or a balanced movement of suction cup legs. The whole action is controlled by an 8bit microcontroller ATMega32.

Components
The major components required for building targeted robot are as follows:1. Microcontroller 8bit ATmega 32. 2. Suction Cups or Supersonic air jet. 3. Stepper motors. 4. Robot legs and accessories. 5. Chassis for robot. 6. Pressure or IR sensors. 7. Power and Voltage regulating ICs. 8. Power and connecting cables. 9. Fluid control pipes and vacuum pump.

Primary Diagram

CDAC, NOIDA

PGDEVD - XXI

Working steps
The steps of programming flow for movement of robot:Check suction cups/Supersonic on surface (Pressure sensors)

On the Vacuum pump/Fluid control valve and wait for pressure sensor indication

Send signals to stepper motor to move the legs

Wait for Pressure sensor indication and perform next instruction

CDAC, NOIDA

PGDEVD - XXI

BLOCK DIAGRAM

SW 0

SW 1

PA0 PA1 PA2 MICROCONTROLLER ATMEGA32 PB7 PB3-PB0 PD0-PD3

PD7

SW 2

Relay 1

Relay 2

Stepper 1 (LEG1)

Stepper 2 (LEG2)

Vacuum Pump 1 Suction Cup 1 Suction Cup 2

Vacuum Pump 2

CDAC, NOIDA

PGDEVD - XXI

#include<avr/io.h> #define F_CPU 11059200UL #include<util/delay.h> /************************************************************************************************/ /* code for Wall cimbing robot controlling function Presented for PROJECT at CDAC NOIDA */ /* CDAC- NOIDA , PGDEVED-21 PROJECT- Wall Climbing Robot functional Simulation on STK-500/600 */ /*Prepared simulation by- Amareshwar Kaushik, Ravindra Mathanker, Rohit Chaturvedi, Sumit Verma */ /* */ /* The Robot have 2 leg and both have sctuin cup at bootom side and stepper motor at upper side. */ /* The leg1 -have stepper1 is jointed by a rod to leg2 assembly so that if moves so pull the leg2 */ /* Similarly Leg2-stepper2 is jointed by a rod to leg1 assembly so that it can pull the leg1 assembly */ /* */ /* Three Switches to controll the fuctioning of Robot */ /* Switch sw0-turn on both vacuume pump1 and 2 respectively connected by pipe to suction cup1 and 2 of leg1 and 2 */ /* Switch sw1-turn on only vacuume pump2 and off pupm1 to move leg1 of robot */ /* Switch sw2-turn on only vacuume pump1 and off pupm2 to move leg2 of robot */ /* after pressing leg1-leg2 movement switches legs will move only for 30'-60' only and stops */ /************************************************************************************************/

int step_seq1[4]={0x78,0x7C,0x74,0x76,0x72,0X73,0X79}; //stepper motor1 full sequences clock wisw defined with relay1(PB7) on int step_seq2[4]={0x79,0x73,0x72,0x76,0X74,0X7C,0X78}; //stepper motor2 full sequences anti-clock wise definedwith relay1(PD7) on volatile int step=0; //step is a count for how many sequences run volatile int stepstop=50; //a limit for the defined sequences unsigned int cnt=0; // for display array value void relayall(); void leg1(); void leg2(); int main() { DDRA=0x00; DDRB=0xFF; DDRD=0xFF; PORTA=0xFF; PORTB=0xFF; PORTD=0xFF; while(1) { if(PINA==0xFE) { relayall(); } if(PINA==0xFD) { leg1(); PINA=0xFE; relayall(); } if(PINA==0xFB) { leg2(); PINA=0xFE; relayall(); } } } void relayall() //fuction for on both relay1 and relay2 { do{ PORTB=0x7F; _delay_ms(10); PORTD=0x7F; _delay_ms(10); }while(PINA==0xFE); //this will call all relays relay0, and ralay1 on //this will move the leg 1 of the robot by off relay1 and move stepper1 //this will move the leg 2 of the robot by off relay2 and move stepper2

// switches connected to POTRA input sw0-PA0,sw1-PA1, sw2-PA2 //relay connection PORTB output PB7-relay1,stepper motor1-PB0-PB3 //relay connection PORTD output PD7-relay2,stepper motor2-PD0-PD3, //intialize //values //at ports //continuous loop for execuiton by microcontroller //sw0 - for ON both relay

//sw1- move leg1 (for only ON relay1 and call foe stepper1 sequence)

//sw1- move leg2 (for only ON relay2 and call foe stepper2 sequence)

} void leg1() { step=0; cnt=0; for(;step<stepstop;cnt++) { PORTB=step_seq1[cnt]; _delay_ms(50); if(cnt>=4) cnt=0; step++; } } void leg2() { step=0; cnt=0; for(;step<stepstop;cnt++) { PORTD=step_seq2[cnt]; _delay_ms(50); if(cnt>=4) cnt=0; step++; } } //call fuction for mov leg1 //stop relay1 enclosed to leg1 and //move stepper1 for 50 steps //after that relay1 and relay2 //are both on and leg will //be fixed by suction cup

//call fuction for move leg2 //stop relay1 enclosed to leg1 and //move stepper1 for 50 steps //after that relay1 and relay2 //are both on and leg will //be fixed by suction cup

Working
The Flow - chart for the control of Wall Climbing Robot having following steps

Power Supply Must be On

Press Switch sw0- for turn on supply for relay1 and relay2 of Leg1 & Leg2 respectively

Relay1 switch on Vacuum pump1 and Relay2 on the Vacuum pump2.

Press switch sw1 for move Leg1: This will send signal to relay1 and stepper1

Relay1 being off and during this stepper1 will start rotation

After 30-60 movement stepper stops and relay1 with relay 2 will again be on.

Press switch sw2 for move Leg2: This will send signal to relay2 and stepper2

Relay2 being off and during this stepper2 will start rotation

After 30-60 movement stepper stops and relay2 with relay 1 will again be on.

CDAC, NOIDA

PGDEVD - XXI

Applications A Wall-Climbing Robot system has wide applications include remotely monitoring hazardous environments, reconnaissance, defects inspection, and fire fighting. However, for current needs in areas such as biomedical, aerospace, environmental and military systems, walking or climbing autonomous robots are needed. Object manipulation and surveillance are crucial for many applications, and in many cases, require an ability to climb walls.

CDAC, NOIDA

PGDEVD - XXI

Você também pode gostar