Download presentation
Presentation is loading. Please wait.
Published bySamir Foulger Modified over 9 years ago
1
PROJECT HEAD CASE Final Presentation Dan Klowden Jon Burns cse477 – Spring 2000
2
THE PURPOSE Provide paraplegics the ability to perform daily tasks such as household chores without assistance
3
OUR GOALS Create a robot that can be controlled by head motion and eye movement patterns – Wheeled robot that picks up things – Helmet control device – Wireless communication between helmet and robot A “sampler” of the bigger picture
4
FINAL SYSTEM DESCRIPTION All goals accomplished! – Lego Mindstorm robot – Infrared communication – Control helmet It works!
5
SYSTEM OVERVIEW Accelerometer Interface Camera Interface 8051 Atmel Microprocessor FPGA IR Robot Communication HCUXS-40 NQC Xilinx Sim. Keil µVision
6
ACCELEROMETER INTERFACE Left / Right Head Tilt Forward / Backward Head Tilt Accelerometer X, Y Signal to 8051
7
CAMERA INTERFACE
8
THE ATMEL 8051 Accelerometer X and Y Signals Camera SigChg Signal 8051 Wireless Communication To Robot
9
ATMEL 8051 – CONT. Integration of all components! – Serial Communication Timer2 initializations Serial interrupt settings – Lego Protocol Parity bit calculation Organization of packets – Accelerometer Interface X,Y interrupts Calibration – Camera Interface and the Control State SigChg ACK
10
CONTROL STATE DIAGRAM Wheeled Base Mid Arm Joint, Wrist Spin Clamp, Lower Arm Joint #1#2#3 Dependent on SigChg signal from camera interface
11
DESIGN DETAILS Lego RCX Control Routines – RCX Command Center – NQC Coding Wireless Communication – Serial Interface – Lego Protocol
12
THE LEGO RCX RCxCC – The Command Center
13
LEGO RCX – CONT. Not Quite C /*Sets the power to the motor depending on the tilt*/ void motor_drive(int forwardR,int forwardL, int powerR, int powerL) { if(forwardR) OnRev(OUT_A); else OnFwd(OUT_A); if(forwardL) OnRev(OUT_C); else OnFwd(OUT_C); SetPower(OUT_A,powerR); SetPower(OUT_C,powerL); }
14
SERIAL COMMUNICATION 2400 baud rate – Timer 2 generated 16 bit auto-reload (T2MOD=0x02) Re-load value = 65,224 Mode 3 – Variable baud rate – 9 bit UART – Programmable 9 th bit (parity) //Timer 2 DMA locations sfr T2MOD = 0xC9; sfr T2CON = 0xC8; sfr RCAP2L = 0xCA; sfr RCAP2H = 0xCB; //initializations T2MOD = 0x02; T2CON = 0x34; //timer reload values = 65,224 RCAP2H = 0xFE; RCAP2L = 0xC8; // set SMOD to 1 PCON = 0x80;
15
LEGO PROTOCOL 8 bit data; start and stop bits Not Return to Zero (MAX232) Odd parity Packet Protocol – 0x55 0xFF 0x00 0x14 0xEB 0x01 0xFE 0x02 0xFD 0x02 0xFD 0x00 0xFF 0x19 0xE6 Header Command Variable Source type (always 2) Value lower byte Value upper byte Checksum
16
LEGO PROTOCOL – CONT. Fill Data Buffers Trigger Serial Interrupt Routine Stall Atmel 8051 Invert Parity
17
ACCOMPLISHMENTS Functional Robot Wireless Communication Eye Pattern Detection Stylish Head Gear…
18
GOOD / BAD DECISIONS? Lego Mindstorm set was a good investment – Included IR tower – RCX micro processor – RCxCC / NQC easy to code Thresholding image processing of the eye Initial plan to use RC-2, 256K memory
19
FUTURE IMPROVEMENTS? Eye Pattern Detection – FSM robustness issues – More patterns to detect? – A different approach? Edge detection of pupil? – A better camera than the RC-1 would be nice Communication error checking – Check response from RCX’s Stronger, better robot
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.