Difference between revisions of "S16: Autonomous Lane Changer"

From Embedded Systems Learning Academy
Jump to: navigation, search
(My Issue #1)
(Schedule)
Line 76: Line 76:
 
! scope="row"| 4
 
! scope="row"| 4
 
| 4/24
 
| 4/24
| Complete project and begin testing and debugging.
+
| Finalize project and begin testing and debugging.
 
| Still need to fine turn turning algorithm. May need to fix mounted sensors.  
 
| Still need to fine turn turning algorithm. May need to fix mounted sensors.  
 
| 4/26
 
| 4/26
 
|-
 
|-
 
! scope="row"| 5
 
! scope="row"| 5
| 4/24
 
| Finalize project and begin testing and debugging.
 
| Completed?  Problems Encountered?
 
|
 
|-
 
! scope="row"| 6
 
 
| 5/2
 
| 5/2
 
| Implement additional features. Ex. safety features.  
 
| Implement additional features. Ex. safety features.  
Line 92: Line 86:
 
|
 
|
 
|-
 
|-
! scope="row"| 6a
+
! scope="row"| 5a
 
| 5/6
 
| 5/6
 
| Finalize project and prepare car for demo purposes.  
 
| Finalize project and prepare car for demo purposes.  

Revision as of 04:39, 27 April 2016

Grading Criteria

  • How well is Software & Hardware Design described?
  • How well can this report be used to reproduce this project?
  • Code Quality
  • Overall Report Quality:
    • Software Block Diagrams
    • Hardware Block Diagrams
      Schematic Quality
    • Quality of technical challenges and solutions adopted.

Autonomous Lane Changer

  • Include Image Later

Abstract

This project proposes an autonomous RC car that follows lines along the sides that can also change lanes when possible. In the real world, cars driven on the street follow lane markers, unless the car is trying to change lanes. Cars can only change lanes when the lane lines are broken. While autonomous cars are becoming increasingly popular, one of the things to consider besides the car driving itself is the way the car operates on the street, two of those things being to stay within lane markers and changing lanes. Other line following cars follow lines directly in front of them; however, our vehicle will follow lines on its side. When the lines along the side of the car are broken, our car will be able to change lanes. Doing so allows these cars to be integrated onto real city streets without having to change current road infrastructure that are already in place. The aim of this project is to mimic this idea at a smaller scale in hopes of not only finding a way for autonomous vehicles to be integrated onto existing city streets, but also for us, as inexperienced students, to learn an important skills that will be applied in our future careers.

Objectives & Introduction

Show list of your objectives. This section includes the high level details of your project. You can write about the various sensors or peripherals you used to get your project completed.

Team Members & Responsibilities

  • Patrick-Daniel Llanes
    • Programming Sensors
    • Programming Line Following Algorithm
    • Programming Lane Changing Capability
    • Report Writing
  • Jonathan Lo
    • Car assembly
    • Sensor Mounting
    • Programming Line Following Algorithm
    • Programming Lane Changing Capability
    • Report Writing

Schedule

Show a simple table or figures that show your scheduled as planned before you started working on the project. Then in another table column, write down the actual schedule so that readers can see the planned vs. actual goals. The point of the schedule is for readers to assess how to pace themselves if they are doing a similar project.

Week# Date Task Status Completion Date
1 4/6 Gathered and ordered parts for Autonomous Lane Changer. Completed. 4/11
2 4/11 Begin building autonomous car. Completed. 4/18
2a 4/13 Complete build and begin testing IR sensors and motors. Completed. 4/18
3 4/17 Compute PWM duty cycles for motors. Completed. 4/19
3a 4/20 Integrate IR sensors and begin testing sensors. Completed. 4/22
4 4/24 Finalize project and begin testing and debugging. Still need to fine turn turning algorithm. May need to fix mounted sensors. 4/26
5 5/2 Implement additional features. Ex. safety features. Completed? Problems Encountered?
5a 5/6 Finalize project and prepare car for demo purposes. Completed? Problems Encountered?

Parts List & Cost

Give a simple list of the cost of your project broken down by components. Do not write long stories here.

Quantity Description Price
1 Shadow Chassis $12.95
1 Wheel-65mm (Rubber Tire, Pair) $2.95
6 SparkFun Line Sensor Breakout QRE1113 (Analog) $2.95 each = $17.70
2 Motors $3.95 per pair
2 MC14051 Analog Multiplexer $0.49 each = $0.98
1 IR reflecting tape TBD
30 Jumper Cables TBD

Design & Implementation

The design section can go over your hardware and software design. Organize this section using sub-sections that go over your design and implementation.

Hardware Design

Discuss your hardware design here. Show detailed schematics, and the interface here.

Hardware Interface

In this section, you can describe how your hardware communicates, such as which BUSes used. You can discuss your driver implementation here, such that the Software Design section is isolated to talk about high level workings rather than inner working of your project.

Software Design

Show your software design. For example, if you are designing an MP3 Player, show the tasks that you are using, and what they are doing at a high level. Do not show the details of the code. For example, do not show exact code, but you may show psuedocode and fragments of code. Keep in mind that you are showing DESIGN of your software, not the inner workings of it.

Implementation

This section includes implementation, but again, not the details, just the high level. For example, you can list the steps it takes to communicate over a sensor, or the steps needed to write a page of memory onto SPI Flash. You can include sub-sections for each of your component implementation.

Testing & Technical Challenges

Describe the challenges of your project. What advise would you give yourself or someone else if your project can be started from scratch again? Make a smooth transition to testing section and described what it took to test your project.

Include sub-sections that list out a problem and solution, such as:

Issue #1

The first issue we came across was the ADC converters. For our design, we decided to use 6 analog IR sensors, used to detect lane markers on the road. After looking at the board's schematic, we realized only 3 ADC pins were available to us. After doing some research, we found an IC that solved our issue: MC14051, an analog multiplexer. This multiplexer allowed up to 8 analog inputs, which was more than enough for the amount of sensors we had. What also made this multiplexer a good fix was that the control pins were digitally controlled, allowing us to configure GPIO pins from the SJOne board for the control signals.

Issue #2

Discuss the original sensor layout and how it posed a problem.

Issue #3

Conclusion

Conclude your project here. You can recap your testing and problems. You should address the "so what" part here to indicate what you ultimately learnt from this project. How has this project increased your knowledge?

Project Video

Upload a video of your project and post the link here.

Project Source Code

References

Acknowledgement

Any acknowledgement that you may wish to provide can be included here.

References Used

List any references used in project.

Appendix

You can list the references you used.