160 likes | 294 Vues
The VIPER project (Virtual Imaging Peripheral for Enhanced Reality) is an innovative augmented/virtual reality system that tracks the location and perspective of a handheld unit. This technology enables users to view a virtual environment through an LCD screen, making the handheld unit a "window" into that virtual world. Users can explore a tabletop-sized environment, with the system adjusting to changes in posture and movement, facilitating various viewing angles. Key criteria include data communication capabilities, image display functionality, and precise positioning estimations using a combination of sensors.
E N D
Virtual Imaging Peripheral for Enhanced Reality Aaron Garrett, Ryan Hannah, Justin Huffaker, Brendon McCool
Project Overview Our project, code named Virtual Imaging Peripheral for Enhanced Reality or VIPER, is an augmented/virtual reality system. It will track a handheld unit’s location and perspective and use this information to find the location of a camera position in a virtual environment. Through a LCD screen on the handheld unit the user will see the virtual environment at the cameras location as if the handheld unit was a window into the virtual world. As the user moves the handheld unit around a table top sized environment the handheld unit’s actual and virtual perspective changes, allowing for different viewing angles of the virtual space.
Project-Specific Success Criteria • An ability to communicate time stamp data using RF between the base unit and handheld unit. • An ability to display images to the LCD display. • An ability to estimate the angle and position of the handheld unitwith respect to an origin point using accelerometer, gyroscope, compass, visual data, and ultrasonic data. • An ability to find angle displacement of the handheld unit’s front face relative to the IR beacon origin using mounted camera. • An ability to find distance from base to handheld unit using ultrasonic emitter and receiver.
Beacon Unit – Software Design Considerations • Requires use of • PWM for • LED • Ultrasonic • UART • Xbee • Timer • Control Interrupt • Global Variables • timeToStartPWM_flag • timeToStopPWM_flag • pwmActive_flag
VPChip – Software Design Considerations • Requires use of • I2C (TWI) • Camera Commands • SPI • Transmit IR displacement angle • ISI (Image Sensor Interface) • AIC (Advance Interrupt Controller) • Global Variables
USB HUB – Software Design Considerations • Requires use of • SPI • IR displacement angle input • UART • Xbee • AtD • Ultrasonic Receiver input • I2C • Sensor Control and Data bus • USB • External Interrupts • Timer • Elapsed Timer • Flags • accelerometerDataReady • gyroscopeDataReady • magnetometerDataReady • atdReady • serviceFlagsQueue • serviceFlagsCount • Variables • newDataFlagArray • dataArray • elapsedTimerCounter • recievingUltrasonic • currentSPIInputByte • tempDataArray • Rs-232 circle buffer • Head/Tail buffer pointers
Beagle – Software Design Considerations • Requires use of • USB • Graphics/OpenGL • Running ÅngströmLinux distribution • Global Variables • State Vector • External angle quaternion