Project WEAVER Project WEAVER Wi-Fi Wi-Fi Enabled Enabled Active Video Active Video Experimental Rover Experimental Rover
Senior Project by: Senior Project by: Amber Blake Amber Blake Janos Opra Janos Opra Tyler Lloyd Tyler Lloyd
Project WEAVER Project WEAVER Wi-Fi Enabled Enabled Wi-Fi Active - - PowerPoint PPT Presentation
Project WEAVER Project WEAVER Wi-Fi Enabled Enabled Wi-Fi Active Video Active Video Experimental Rover Experimental Rover Senior Project by: Senior Project by: Amber Blake Amber Blake Janos Opra Janos Opra Tyler Lloyd Tyler Lloyd
Senior Project by: Senior Project by: Amber Blake Amber Blake Janos Opra Janos Opra Tyler Lloyd Tyler Lloyd
Hardware Hardware
– Obstacle Detection and Obstacle Detection and Avoidance Avoidance – Wireless Interface Wireless Interface – Power Regulation Power Regulation – Video Interface Video Interface – DSP Processor DSP Processor – Motors and Interfaces Motors and Interfaces
H-Bridge Motor Driver H-Bridge Motor Driver
– PCB Design and PCB Design and Verification Verification – Assembly Assembly
Software Software
– Obstacle Avoidance Obstacle Avoidance – PC Wireless PC Wireless Implementation Implementation – PC Video Stream Viewer PC Video Stream Viewer – DSP Video Pre-Processing DSP Video Pre-Processing – PC Movement Control PC Movement Control – Rover Wireless Rover Wireless Implementation Implementation – DSP Movement Control DSP Movement Control – GUI Wrapper GUI Wrapper
Schedule Schedule
– Hardware Hardware – Software Software
Vehicle PC
Vehicle Control PC Wireless Card
Sensors IR LEDS Camera
DSP
Left/Right Motor Forward/ Reverse Motor High/Low Motor Vehicle Wireless Card Power Regulator MPEG Encoder Wireless Link
AP Video
Interface
Two Components – Hardware and Two Components – Hardware and Software Software Hardware on Car Hardware on Car
– IR LEDs, receivers, and resistors IR LEDs, receivers, and resistors IR receivers create a signal when the IR receivers create a signal when the reflected IR signal is detected reflected IR signal is detected – Input from HPWM on DSP Input from HPWM on DSP Duty cycle controls power level to LEDs Duty cycle controls power level to LEDs which changes the sensitivity which changes the sensitivity – Output to a general purpose I/O pin Output to a general purpose I/O pin Receiver signal sent back to DSP Receiver signal sent back to DSP
A A
On the Car On the Car
– Hardware Hardware The Plan: PC card, connectors, and bus to The Plan: PC card, connectors, and bus to the DSP. the DSP. Back-up: Wireless Flash or chip set Back-up: Wireless Flash or chip set Reference Design Reference Design – Software on the DSP Software on the DSP
A A
Sources Sources
– 9.6V Ni-Cad rechargeable (Motors) 9.6V Ni-Cad rechargeable (Motors) – 9V alkaline 6 AA cells in series (Digital) 9V alkaline 6 AA cells in series (Digital)
Power sequencing Power sequencing
– Digital power is available first Digital power is available first – Motor driver power after H-Bridge is initialized Motor driver power after H-Bridge is initialized
Single switch disables all voltage sources Single switch disables all voltage sources Digital voltage regulation Digital voltage regulation
– DSP DSP – Camera Camera – Wireless card Wireless card – Obstacle avoidance Obstacle avoidance
J J
CCD Camera CCD Camera
– Toshiba TW10794V Digital Camera Toshiba TW10794V Digital Camera – Ribbon Cable Input/Output and Power Ribbon Cable Input/Output and Power
MPEG Codec MPEG Codec
– NEC µPD61051 MPEG2 Hardware Encoder NEC µPD61051 MPEG2 Hardware Encoder
208 pin TQFP (Thin Quad Flat Pack) package 208 pin TQFP (Thin Quad Flat Pack) package 2.5 and 3.3 V requirements 2.5 and 3.3 V requirements Samples en route Samples en route
– Native Streaming Video Output Native Streaming Video Output
Mounting Hardware Mounting Hardware
– Nuts and Bolts. Nuts and Bolts.
J J
Digital Signal Processor (DSP) Digital Signal Processor (DSP)
– Motorola DSP56F807 Motorola DSP56F807 – On chip interfaces On chip interfaces
SPI SPI UART UART CAN CAN SCI SCI JTAG JTAG External Memory interface port External Memory interface port
– 16bit data 16 bit address 16bit data 16 bit address
– We have a development kit for the 801 version We have a development kit for the 801 version – We have samples of the 805 and 807 versions We have samples of the 805 and 807 versions
T T
One motor for forward and reverse One motor for forward and reverse One motor for left and right One motor for left and right One motor for High and Low gear One motor for High and Low gear Hardware Pulse Width Modulator (HPWM) Hardware Pulse Width Modulator (HPWM) to apply the signals to move to apply the signals to move HPWM duty cycle will determine speed. HPWM duty cycle will determine speed.
– Duty Cycle range 0% - 100% Duty Cycle range 0% - 100% – Provides maximum motor speed Provides maximum motor speed
Rotation is proportional to the current Rotation is proportional to the current passing through it passing through it
T T
Allows bidirectional operation with minimal control Allows bidirectional operation with minimal control signals signals Provide a “break” to stop the rotation of the motor Provide a “break” to stop the rotation of the motor requires one HPWM and either 2 or 4 IO pins requires one HPWM and either 2 or 4 IO pins
Protel 99se schematic and layout Protel 99se schematic and layout environment environment
– Output Gerber files Output Gerber files
Verification, Review Verification, Review
– Schematic prior to PCB production Schematic prior to PCB production – Analyze current requirements to size traces Analyze current requirements to size traces – Component footprints Component footprints – PCB trace paths PCB trace paths
Circuit Graphics PCB fabrication PCB fabrication
T T
– PCB PCB – Camera Camera – Wireless Card Wireless Card
T T
Software on DSP Software on DSP
– Sensor Control Sensor Control
Input – Approximate speed from Motor Control Input – Approximate speed from Motor Control Software (duty-cycle of the HPWM) Software (duty-cycle of the HPWM) Output – Duty cycle of the HPWM input to IR LEDs Output – Duty cycle of the HPWM input to IR LEDs
– Evasive Action Evasive Action
Input – Output of the IR sensors Input – Output of the IR sensors Output – Communication to Motor Control Software to Output – Communication to Motor Control Software to avoid the object avoid the object Obstacles avoided by either turning the car, applying Obstacles avoided by either turning the car, applying the motor breaks, or both the motor breaks, or both
– Allow this feature to be disabled from the PC Allow this feature to be disabled from the PC
A A
802.11g wireless network (54 Mbps) 802.11g wireless network (54 Mbps) Hardware – PC card Hardware – PC card Software – Write to and read from as a socket Software – Write to and read from as a socket – Wireless input - Video sent from the Rover Wireless input - Video sent from the Rover – Socket output – Relay Video to the PC Socket output – Relay Video to the PC – Socket Input – Command Codes sent from the Socket Input – Command Codes sent from the PC PC – Wireless output – Relay Commands to the Wireless output – Relay Commands to the Rover Rover – UDP transfer protocol UDP transfer protocol There will also be a wireless access point that will There will also be a wireless access point that will act as a network switch act as a network switch
A A
Video stream viewer Video stream viewer
– Input – MPEG video stream from the car Input – MPEG video stream from the car received through Wireless Communication received through Wireless Communication Software Software – Output – Streaming video display on the Output – Streaming video display on the monitor monitor – Decode using Windows Media Player or similar Decode using Windows Media Player or similar
Create a viewer in a reserved section of Create a viewer in a reserved section of the GUI the GUI
A A
Initialize CCD Camera Initialize CCD Camera
– Send configuration op-codes Send configuration op-codes
Frame-rate, Resolution, Etc. Frame-rate, Resolution, Etc.
Initialize MPEG encoder Initialize MPEG encoder
– Define input characteristics (Digital) Define input characteristics (Digital) – Set compression type (MPEG2) Set compression type (MPEG2) – Set output to real-time stream Set output to real-time stream
Receive stream into DSP from encoder Receive stream into DSP from encoder Make stream available for wireless Make stream available for wireless transmission transmission
J J
– Keyboard Keyboard – Explore joystick option Explore joystick option – Variable speeds Variable speeds
Forward/Reverse Forward/Reverse Left/Right Left/Right
J J
Hardware – PC card in a connector mounted to Hardware – PC card in a connector mounted to the PCB the PCB Software level1 Software level1
– Interface Interface
IDE IDE Card Bus Card Bus
Software Level2 Software Level2
– Write to and read from as a socket Write to and read from as a socket Wireless input - Command Codes sent from the PC Wireless input - Command Codes sent from the PC Socket output – Relay Commands to the Rover Socket output – Relay Commands to the Rover Socket Input – Video sent from the Rover Socket Input – Video sent from the Rover Wireless output – Relay Video to the PC Wireless output – Relay Video to the PC
– UDP transfer protocol UDP transfer protocol
T T
– Change the duty cycle of one or more Change the duty cycle of one or more HPWMs HPWMs – Apply the break Apply the break – Change direction Forward/Reverse Change direction Forward/Reverse
T T
All Basic assembly All Part acquisition PCB build All P CB design Tyler Motor driver Amber Collision avoidance circuitry Janos Camera interface circuitry mber ireless transmission circuitry Tyler DSP circuitry Janos Power regulation 27 20 13 6 30 23 16 9 2 25 1 8 1 1 28 21 1 4 point- person Tasks
August July June May
Documentation All PC laptop GUI wrapper Amber C laptop Video interface software Janos PC laptop Motor control Amber PC laptop Wireless communication SP MPEG encoding Amber DSP Sensor processing and collision avoidance Janos DSP Video interface Tyler SP Motor control Tyler DSP Wireless communication 3 2 6 1 9 1 2 5 2 9 22 15 8 1 2 4 1 7 1 point-person asks
ec November October eptember