Difference between revisions of "2019WinterTeam7"

From MAE/ECE 148 - Introduction to Autonomous Vehicles
Jump to: navigation, search
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
Welcome to the wiki page of Team 7! Our autonomous vehicle project consists of 4 parts which are '''indoor autonomous driving''', '''outdoor autonomous driving''', '''parallel parking''' and '''stop sign recognition'''. In this wiki page we are going to walk you through our autonomous vehicle designing process.
+
Welcome to the wiki page of Team 7! Our autonomous project consists of 4 parts which are '''indoor autonomous driving''', '''outdoor autonomous driving''', '''parallel parking''' and '''stop sign recognition'''. In this wiki page we are going to walk you through our autonomous vehicle designing process.
  
 
Our GitHub repository can be found here: [https://github.com/jerryyang1997/ECE148Team7Winter2019]
 
Our GitHub repository can be found here: [https://github.com/jerryyang1997/ECE148Team7Winter2019]
Line 18: Line 18:
 
'''Schematics'''
 
'''Schematics'''
  
[[File:sch.png | 500px |alignment=center]]
+
OE - Output enable. Can be used to quickly disable all outputs. When this pin is low all pins are enabled. When the pin is high the outputs are disabled. Pulled low by default.
 
+
The 12.4V Lipo battery supplies power to the Electrical Speed Controller (ESC), The relay and the Raspbberry Pi.To power a raspberry Pi, a 12V to 5V step down is needed and the output will be from a USB port so that it can power the Raspberry Pi directly. The battery power goes to a switch and then goes to the RF controlled relay, which serves as an emergency stop switch of the entire system. The COM pin of the relay is connected to the 3.3V pin on the Raspberry Pi which provides the “high logic”. The NO pin stands for the “normally open” which controls logic level for the red LED. The NC pin stands for “normally closed” which controls logic level for the blue LED and it is connected to the output enable “OE” pin on the Pulse Width Modulation (PWM) module which disables the PWM pins on logic high. With this circuit built, we are able to shut down the steering and throttle control using a remote control.  
'''Circuitry Explained'''
+
OE - Output enable. Disables all output pins on logic high
The 12.4V Lipo battery supplies power to the Electrical Speed Controller (ESC), The relay and the Raspbberry Pi.To power a raspberry Pi, a 12V to 5V step down is needed and the output will be from a USB port so that it can power the Raspberry Pi directly. The battery power goes to a switch and then goes to the RF controlled relay, which serves as an emergency stop switch of the entire system. The COM pin of the relay is connected to the 3.3V pin on the Raspberry Pi which provides the “high logic”. The NO pin stands for the “normally open” which controls logic level for the red LED. The NC pin stands for “normally closed” which controls logic level for the blue LED and it is connected to the output enable “OE” pin on the Pulse Width Modulation (PWM) module which disables the PWM pins on logic high. With this circuit built, we are able to shut down the steering and throttle control using a remote control. The "OE" pin on the PWM module stands for  output enable, which disables all output pins on logic high
+
Battery powers RPi thru a “step-down” converter
 
+
Battery powers ESC, which controls DC motor
Battery powers RPi thru a “step-down” converter
+
Battery powers RF relay, which is a part of the emergency stop button
 
+
Red LED is on when PWM is disabled, blue LED is on when PWM enabled
Battery powers ESC, which controls DC motor
+
PWM module controls servo motor
 
+
Problem encountered:
Battery powers RF relay, which is a part of the emergency stop button
+
Broken RF Relay :(
 
+
Partial power failure :(
Red LED is on when PWM is disabled, blue LED is on when PWM enabled
 
 
 
PWM module controls servo motor
 
 
 
'''Problem Encountered and Lessons Learned:'''
 
 
 
Broken RF Relay
 
 
 
Partial power failure: Since the Raspberry Pi supplies a 3.3V power to the PWM module which has the output enable (OE) pin, once the Raspberry Pi loses its power while the ESC power is still on, the kill switch will not work anymore because the partial power failure.
 
  
 
'''Calibration Values'''
 
'''Calibration Values'''
After assembling the vehicle, the circuit and installed Donkey. We were able to calibrate the steering and throttle with PWM values as follow and reset the configuration file:
+
After assembling the vehicle, the circuit and installed Donkey. We were able to calibrate the steering and throttle with PWM values as follow:
  
 
''Steering'':
 
''Steering'':
Line 52: Line 43:
 
Forward max 450
 
Forward max 450
 
Backward min 290
 
Backward min 290
 +
  
 
== Indoor Autonomous Driving ==
 
== Indoor Autonomous Driving ==
Line 62: Line 54:
 
== Outdoor Autonomous Driving ==
 
== Outdoor Autonomous Driving ==
 
The outdoor driving model took us much more effort to build. After training our vehicle on the outdoor track with different time and weather conditions, we realized 10am - 2pm would be a good time  
 
The outdoor driving model took us much more effort to build. After training our vehicle on the outdoor track with different time and weather conditions, we realized 10am - 2pm would be a good time  
A short demo can be found here:  
+
A short demo can be found here: [https://www.youtube.com/watch?v=nAYo9gsQZ9E&t=4s]
 
 
{{#evu:https://www.youtube.com/watch?v=nAYo9gsQZ9E&t=9s
 
|alignment=center
 
}}
 
  
  
 
== Parallel parking ==
 
== Parallel parking ==
{{#evu:https://www.youtube.com/watch?v=zFrD8Qqie0I
+
[[File:IMG_1605.MOV | 200px]]
|alignment=center
 
}}
 
 
 
{{#evu:https://www.youtube.com/watch?v=l8N4FTa2AsY
 
|alignment=center
 
}}
 
  
  
 
== Stop Sign Recognition ==
 
== Stop Sign Recognition ==
 +
[[File:Stop_Detection.png | 2042px|1220px|We initialized the haar cascade classifier model and trained it using an pre-trained stop sign model. We then ]]
 +
[[File:Rectangle.png | 646px|491px|]]

Revision as of 19:31, 6 March 2019

Introduction

Welcome to the wiki page of Team 7! Our autonomous project consists of 4 parts which are indoor autonomous driving, outdoor autonomous driving, parallel parking and stop sign recognition. In this wiki page we are going to walk you through our autonomous vehicle designing process.

Our GitHub repository can be found here: [1]

Car1new.png

Team Members

(Jerry) Yihui Yang

Chris Jensen

Jessica Yang

Alan Kuo

Vehicle Design

Schematics

OE - Output enable. Can be used to quickly disable all outputs. When this pin is low all pins are enabled. When the pin is high the outputs are disabled. Pulled low by default. The 12.4V Lipo battery supplies power to the Electrical Speed Controller (ESC), The relay and the Raspbberry Pi.To power a raspberry Pi, a 12V to 5V step down is needed and the output will be from a USB port so that it can power the Raspberry Pi directly. The battery power goes to a switch and then goes to the RF controlled relay, which serves as an emergency stop switch of the entire system. The COM pin of the relay is connected to the 3.3V pin on the Raspberry Pi which provides the “high logic”. The NO pin stands for the “normally open” which controls logic level for the red LED. The NC pin stands for “normally closed” which controls logic level for the blue LED and it is connected to the output enable “OE” pin on the Pulse Width Modulation (PWM) module which disables the PWM pins on logic high. With this circuit built, we are able to shut down the steering and throttle control using a remote control. OE - Output enable. Disables all output pins on logic high Battery powers RPi thru a “step-down” converter Battery powers ESC, which controls DC motor Battery powers RF relay, which is a part of the emergency stop button Red LED is on when PWM is disabled, blue LED is on when PWM enabled PWM module controls servo motor Problem encountered: Broken RF Relay :( Partial power failure :(

Calibration Values After assembling the vehicle, the circuit and installed Donkey. We were able to calibrate the steering and throttle with PWM values as follow:

Steering: Neutral 330 Left 240 Right 420

Throttle: Neutral 360 Forward Min 370 Forward max 450 Backward min 290


Indoor Autonomous Driving

We were able to build a decent model for our vehicle to drive autonomously on the indoor track for 5 laps after collecting 16k data, a short demo can be found here:

Outdoor Autonomous Driving

The outdoor driving model took us much more effort to build. After training our vehicle on the outdoor track with different time and weather conditions, we realized 10am - 2pm would be a good time A short demo can be found here: [2]


Parallel parking

200px


Stop Sign Recognition

We initialized the haar cascade classifier model and trained it using an pre-trained stop sign model. We then Rectangle.png