Autonomous Tracking Unit John Berglund Randy Cuaycong Wesley Day Andrew Fikes Kamran Shah Professor: Dr. Rabi Mahapatra CPSC 483 - Spring 1999 Autonomous.

Slides:



Advertisements
Similar presentations
1 Chapter 11 I/O Management and Disk Scheduling Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and.
Advertisements

Components of a computer system
Bus arbitration Processor and DMA controllers both need to initiate data transfers on the bus and access main memory. The device that is allowed to initiate.
Chapter 8 Interfacing Processors and Peripherals.
Bus Specification Embedded Systems Design and Implementation Witawas Srisa-an.
Chapter 7: System Buses Dr Mohamed Menacer Taibah University
Fast A/D sampler FINAL presentation
Computer Architecture
System Integration and Performance
1 General-Purpose Languages, High-Level Synthesis John Sanguinetti High-Level Modeling.
Flip-Flops and Registers
Autonomous Tracking Unit (New Name -- Same Great Project) John Berglund Randy Cuaycong Wes Day Andrew Fikes Kamran Shah Spring 1999 CPSC 483 Midterm Evaluation.
The Crazy Camera Killing Compadres John Berglund Randy Cuaycong Wes Day Andrew Fikes Kamran Shah Spring 1999 CPSC 483 Proposal.
Overview Memory definitions Random Access Memory (RAM)
Systems Analysis and Design in a Changing World, Fifth Edition
Creating and Adding Custom IP
Computer Organization and Architecture
Sumitha Ajith Saicharan Bandarupalli Mahesh Borgaonkar.
Programmable Interval Timer
Engineering 4862 Microprocessors Lecture 23 Cheng Li EN-4012
Night Vision James Stacy Brian Herre Maurio Grando Eric Faller Chris Bawiec James Team Bender.
MICRO PROCESSER The micro processer is a multipurpose programmable, clock driven, register based, electronic integrated device that has computing and decision.
Local Trigger Control Unit prototype
PDACS Midterm Presentation Michelle Berger John Curtin Trey Griffin Aaron King Michael Nordfelt Jeffrey Whitted.
Motion Tracking Recorder 360 (MTR-360) Group #1 Lee Estep Philip Robertson Andy Schiestl Robert Tate.
Team Morphing Architecture Reconfigurable Computational Platform for Space.
Motion Tracking Recorder 360 (MTR-360) Group #1 Lee Estep Philip Robertson Andy Schiestl Robert Tate.
© 2004 Xilinx, Inc. All Rights Reserved Implemented by : Alon Ben Shalom Yoni Landau Project supervised by: Mony Orbach High speed digital systems laboratory.
Firmware implementation of Integer Array Sorter Characterization presentation Dec, 2010 Elad Barzilay Uri Natanzon Supervisor: Moshe Porian.
Wireless Motion Capture Mid-Year Design Review Seth Berkowitz Dean Howarth Eric Marklein Ashesh Rastogi Advisor: Professor Daniel Schaubert.
User-friendly stylus and video surface CAD system Jeremy Schwartz Paul Peeling Faraz Ahmad.
1 Project supervised by: Dr Michael Gandelsman Project performed by: Roman Paleria, Avi Yona 26/4/2004 Multi-channel Data Acquisition System Final_A Presentation.
Dual-Camera Motion Tracking Recorder (DCMTR) Group #1 Lee Estep Philip Robertson Andy Schiestl Robert Tate.
PDACS Final Presentation Michelle Berger John Curtin Trey Griffin Aaron King Michael Nordfelt Jeffrey Whitted.
Basic Computer Organization CH-4 Richard Gomez 6/14/01 Computer Science Quote: John Von Neumann If people do not believe that mathematics is simple, it.
Critical Design Review 27 February 2007 Black Box Car System (BBCS) ctrl + z: Benjamin Baker, Lisa Furnish, Chris Klepac, Benjamin Mauser, Zachary Miers.
Lab 2: Capturing and Displaying Digital Image
DARPA Digital Audio Receiver, Processor and Amplifier Group Z James Cotton Bobak Nazer Ryan Verret.
Live Action First Person Shooter Game Patrick Judd Ian Katsuno Bao Le.
Pinewood Derby Timing System Using a Line-Scan Camera Rob Ostrye Class of 2006 Prof. Rudko.
Elad Hadar Omer Norkin Supervisor: Mike Sumszyk Winter 2010/11, Single semester project. Date:22/4/12 Technion – Israel Institute of Technology Faculty.
1 SERIAL PORT INTERFACE FOR MICROCONTROLLER EMBEDDED INTO INTEGRATED POWER METER Mr. Borisav Jovanović, Prof.dr Predrag Petković, Prof.dr. Milunka Damnjanović,
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Image Compression With Discrete Cosine Transforms Initial Project Proposal – (9/21/99) David Oltmanns Delayne Vaughn John Hill.
Firmware based Array Sorter and Matlab testing suite Final Presentation August 2011 Elad Barzilay & Uri Natanzon Supervisor: Moshe Porian.
Some features of V1495 Shiuan-Hal,Shiu Everything in this document is not final decision!
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
Design of a Novel Bridge to Interface High Speed Image Sensors In Embedded Systems Tareq Hasan Khan ID: ECE, U of S Term Project (EE 800)
Electronic Analog Computer Dr. Amin Danial Asham by.
A 3-D Rendering System Final Project Ben Hebert & Mayur Desai Spring 2005.
Design & Implementation VHDL ET062G & ET063G Lecture 7 Najeem Lawal 2012.
PS/2 Mouse/Keyboard Port
CS 1410 Intro to Computer Tecnology Computer Hardware1.
Parallel accelerator project Final presentation Summer 2008 Student Vitaly Zakharenko Supervisor Inna Rivkin Duration semester.
TFT-LCD Display + Camera
Status and Plans for Xilinx Development
MADEIRA Valencia report V. Stankova, C. Lacasta, V. Linhart Ljubljana meeting February 2009.
Class Exercise 1B.
Depth Analysis With Stereo Cameras
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Introduction to Microprocessors and Microcontrollers
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Digital Logic & Design Dr. Waseem Ikram Lecture 40.
Programmable Peripheral Interface
Registers.
ADSP 21065L.
Dynamic Image Spherization using Programmable Logic
Presentation transcript:

Autonomous Tracking Unit John Berglund Randy Cuaycong Wesley Day Andrew Fikes Kamran Shah Professor: Dr. Rabi Mahapatra CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Project Goals –Develop a 2-dimensional servo control system –Develop a camera platform –Implement an FPGA to camera interface –Develop a memory and camera control system –Develop a motion tracking algorithm –Implement the algorithm in hardware –Integrate components –Graduate Project Status Objective –Develop an autonomous camera that can identify and track an object in motion CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

System Diagram SRAM Algorithm Camera Interface Camera Servo Control Memory & Camera Control Servos CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Servos: Pulse Width Modulation CPSC Spring 1999 Autonomous Tracking Unit 17-20ms 0º160º 1.25ms 1.75ms CPSC Spring 1999 Autonomous Tracking Unit

8-bit input angle with 9-bit internal counter Test the MSB for minimum pulse length Minimum pulse length => 1|0000|0000 b - minimum number of pulses Servos: Final Design CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Servo Control Components CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Camera Interface II Memory and Camera Control Camera Interface Module QuickCam Start Hold Send Valid Data (8) Nibble (4) PCAck Reset Command CamRdy Command (8) Remove asynchronous data exchange Reduce complexity of controlling logic Provide a configurable initialization sequence Goals: CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Camera Interface II Components CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Camera Interface II Success! Testing Issues –BSII cannot trigger on an edge of a signal –Camera’s CCD decays at a rapid rate Performance Measurements –Store a 128x120 image in 32 ms (31 fps) Future Improvements –Implement the byte mode transfer –Implement memory storage logic inside the interface CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Memory & Camera Control (MCC) “Memory System: This will involve implementing an SRAM interface that will store image representations and allow for them to be accessed by other system components.” CPSC Spring 1999 Autonomous Tracking Unit Isolates the Algorithm from the details of memory access and camera control This module went through several design changes

Original MCC Design CPSC Spring 1999 Autonomous Tracking Unit Asynchronous communications with the Algorithm and the Camera Control Module 256x243 pictures and 6-bit pixels Expected to use 256K of memory to store 3 frames Did not unpack the pixels Complex initialization sequence Tested in simulation CPSC Spring 1999 Autonomous Tracking Unit

MCC Final Design Frame (3 bit)Vertical Offset (7 bits)Horizontal Offset (6 bits) Final Memory Addressing Scheme CPSC Spring 1999 Autonomous Tracking Unit Fifth and final design One bit Command Streams data from the camera synchronously Camera Control module writes directly to memory 64K of addressable memory, 8K needed Reduced frame size to 128x120 CPSC Spring 1999 Autonomous Tracking Unit

Tested with BS2 and Camera Control module Observed inconsistent results We made a separate project to unit test the MCC Worked almost perfectly in testing Needed to the camera’s cord! MCC Final Design (Continued) CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

CPSC Spring 1999 Autonomous Tracking Unit MCC Final Block Diagram CPSC Spring 1999 Autonomous Tracking Unit

Our “Simple” Environment Single rigid object Object is darker than its background Object is smaller than its background Object is travelling at a reasonable pace CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Algorithm Test & Development Goal was to develop and test several algorithms Use software to help us visually compare solutions Tests were used to compare performance in different scenarios CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Algorithm Step 1: Create a histogram of the object Step 2: Locate edges by subtracting Step 3: Calculate the center of the object Step 4: Adjust camera CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Algorithm Issues Problems: –No object in frame –Partial object in frame –Handshaking timing issues Solutions: –No object: Use buffers to filter out non-significant deltas –Partial object: Make frame extremes default boundaries of the object –Timing issues: Add more states to ensure correct propagation CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

System Integration Phase 1: Integrate Camera Interface Module and Memory & Camera Control Module –Simulated in Xilinx –BSII used to simulate algorithm module –Capture data with PC serial port Phase 2: Algorithm Module Revision –Image simulated with a Xilinx stub module –Unit integrated with one dimensional movement –Two dimensional movement implemented after testing horizontal and vertical tracking individually CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

System Integration Phase 3: Performance Improvement. –Initial unit integration with the Algorithm Module on a 500kHz clock –Increasing Algorithm Module clock resulted in choppy movement, due to Servo operation –Frame clock used to synchronize Servo operation –Decreasing the frame clock period from 20.2ms to 17.0ms increased the image processing rate CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit

Performance (Frame Clock = 20.2 ms) CPSC Spring 1999 Autonomous Tracking Unit 16.6 images per second CPSC Spring 1999 Autonomous Tracking Unit

Performance Improvement (Frame Clock = 17 ms) CPSC Spring 1999 Autonomous Tracking Unit 19.7 images per second 18.7% improvement CPSC Spring 1999 Autonomous Tracking Unit

Possible Improvements Use 2 SRAM chips simultaneously –Image is retrieved and processed from one chip while the next image is being stored –Pin limitations Implement entire unit in Xilinx –Use internal RAM to store histogram information – bit storage locations required –45 CLBs required to store histogram information CPSC Spring 1999 Autonomous Tracking Unit CPSC Spring 1999 Autonomous Tracking Unit