Project Z: Stereo Range Finding Based on Motorola Dragonball
Download
Report
Transcript Project Z: Stereo Range Finding Based on Motorola Dragonball
Project Z: Stereo Range Finding Based
on Motorola Dragonball Processor
Zach Allen
Chris Chan
Ben Wolpoff
Shane Zinner
Overview
Introduction
System Overview
Hardware
Software
Features
Implementation
Potential Issues
Schedule
Milestones
Contingency Plans
Parts List
Cost/Expense
Estimates
Marketability
Investment Returns
Conclusion
Introduction
Purpose
High Level Functionality
Familiarize and learn about embedded computing based on a state
of the art processor.
Learn about Board Layout and Issues.
Learn about an embedded operating system and issues associated
with a real-time environment.
Precision range finding based on a stereo range finding system.
Run embedded software.
Goals
Fabricate the board and run simple code.
Interface with video encoding chip and code for range finding.
Run embedded Linux.
System Overview
Hardware
Motorola MC68VZ328
Dragonball Processor
32MB Flash Memory
Conexant BT835 Graphics
Processor
Grayscale 640x512 LCD
Grayscale ASCII Text LCD
NTSC Standard Cameras
Xilinx FPGA
Laser Pointer
Software
Range Finding
Image Processing
LCD Interaction
Memory Management
Embedded Linux (uCLinux)
Features
LCDs
Plain ASCII Text LCD
640x512 TFT Grayscale LCD
Embedded Operating System
uCLinux
Range Finding
Dual Camera Stereo Vision
Laser Pointer Tracking
Large Internal Storage
32 MB Flash Memory
Board Implementation
Board Design
Layout in P-Cad
Fabrication and Population
Hardware Implementation
Stereo Range finding
2 NTSC Cameras
Conexant BT835 Graphics Processor
Up to 4 Analog NTSC Inputs
Outputs in YCrCb Which Is Easily Converted To An RGB Signal
Hardware Scaling and Filtering
Low Cost Solution
1 Common Physical Point Are Found From Both Cameras (Laser
Pointer). Based on the positions of the Cameras and the pixel
differences in the red laser dot, a distance can be calculated.
Motorola Dragonball MC68VZ328 Processor
TQFP
Product Specs Can Be Found At:
http://e-www.motorola.com/webapp/sps/site/prod_summary.jsp?code=MC68VZ328
Software Implementation
LCD Interaction
Drivers
Range Finding
Trigonometric Algorithm
Convert to RGB Scale
Find Common Laser Points
BT835 Drivers
Memory Management
OS Implementation
uCLinux
uClinux is a derivative of Linux 2.0 kernel intended for
microcontrollers without Memory Management Units (MMUs).
Common Linux API
uCkernel < 512 kb
uCkernel + tools < 900 kb
Successfully Run On the Motorola Dragonball EZ Processor and
Other 68k Derivatives
Schedule
Project Timeline
Overall
Layout of Tasks
Timeline for Completion
Milestones
Milestone
1
Milestone 2
Expo
Potential Problems
Contingency Plans
Milestones
Milestone 1
Board designed around Dragonball VZ processor, laid out, fabricated
and populated.
Boot monitor designed, tested and working.
Design, test, and run RAM interface and be able to run simple
instructions (nop).
Milestone 2
Boots internally.
Rangefinder built, and code developed for video chip interface, range
finding, and LCD display.
Milestones
Expo
Get system to run embedded Linux.
Linux interfaces with graphics chip.
Modify code to run on Linux.
Final Debugging.
Magical Demonstration and working project. It will be “the one.”
Potential Issues/Problems
Interfacing Between the Conexant BT835 and Motorola Dragonball
Processor.
FPGA Bus Speed Issues.
Addressing Issues With Large Amount of Memory.
May Need Some External RAM Storage for LCD.
Various Real Time Issues.
Embedded Linux (Drivers, Compilation, Running)
All or Nothing Fabrication Process (Finances).
Learning All The Software (P-Cad, uCLinux, CodeWarrior/Microtek)
Contingency Plans
Instead of Stereo Range Finding Switch To Ultrasonic Range Finding.
Select Different FPGA In The Event of Bus Speed Issues.
Reduce Memory Size or Redesign Addressing Space In the Event of Address Space
Issues.
May Need To Use Part of Flash Memory For Peripherals or Integrate DRAM (needs to
be done before board fabrication) if LCD needs External Storage.
Will Need To Keep Real Time Issues In Mind and Modify Coding Style.
Embedded OS
Drivers – Interact Directly with the Device
Do Not Run an Embedded OS.
Parts List
Cost/Expense Estimates
Marketability
Military
Survey Sites
Golf
Aerospace Applications
People That Like to Think They’re James Bond
Investment Returns
Conclusion
Stereo Range Finding
Motorola Dragonball VZ
Processor
Real Time Embedded
Software
Modularity in Design
Sufficient Market Demand