Difference between revisions of "ECE497 Project Electric Car"

From eLinux.org
Jump to: navigation, search
m (Moved to ECE497Fall2013)
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:ECE497 |Project]]
+
[[Category:ECE497Fall2013 |Project]]
 
{{YoderHead}}
 
{{YoderHead}}
  
Line 9: Line 9:
  
 
<pre style="color:red">
 
<pre style="color:red">
00 Executive Summary
+
07 Executive Summary - Not up to date
00 Installation Instructions  
+
09 Packaging - Nice sequence of photos documenting the assembly. Show where car came from.
00 User Instructions
+
09 Installation Instructions - Good
00 Highlights
+
09 User Instructions - Good
00 Theory of Operation
+
09 Highlights - Nice video, but add audio to tell what's happening.
00 Work Breakdown
+
08 Theory of Operation - Some more details would be nice.
00 Future Work
+
09 Work Breakdown - Also report the time spent building the car
00 Conclusions
+
09 Future Work - Good
00 Demo
+
09 Conclusions - OK
 +
10 Demo
 
00 Late
 
00 Late
 
Comments: I'm looking forward to seeing this.
 
Comments: I'm looking forward to seeing this.
  
Score:  10/100
+
Score:  88/100
 
</pre>
 
</pre>
 
<span style="color:red">(Inline Comment)</span>
 
  
 
== Executive Summary ==
 
== Executive Summary ==
 +
[[File:Electric Car.jpeg|500px]]
 +
<span style="color:green">(Nice picture)</span>
  
This project interfaces the Beaglebone with motor-based electronic mini-car. The gpio pins are used to control the motor on the car to remote it. Some additional interfaces, such as a lighting sensor to control the moving direction of the car, and an analog input to control the speed of the car, are considered to be done based on the progress of the project.
+
This project interfaces the Beaglebone with motor-based electronic mini-car. The gpio pins are used to control the motor on the car to remote it. Some additional interfaces, such as a IR sensor to control the moving direction of the car, and an analog input to control the speed of the car, are considered to be done based on the progress of the project.
  
Currently almost nothing works, we are planning on borrowing or purchasing a electronic car, or building one by ourselves.  
+
Currently we have the small car which can be controlled by keyboard, or IR sensor. With the keyboard controlling, the car can go foreword and backward, make a turn to both right and left. With the IR sensor controlling, the car can keep space before the barrier in front of item.  
  
Things to be done: interfacing with the motors on the car, setting up some controlling equipments(buttons, etc).  
+
At first, we use the H-bridge to control four motors which connect to four wheels for the car. And use the GPIO pins to control this H-bridge. And then use a analog input pin to get the signal feedback from the IR sensor.
  
Depending on how difficult this turns out to be, we may or may not switch to a different project.
+
Depending on the time, in the feature time, there are lots of works can be done for this robot car.
 +
<span style="color:red">(This isn't up to date)</span>
  
 
== Packaging ==
 
== Packaging ==
 +
Parts List:
 +
{| class="wikitable"
 +
|-
 +
! Parts !! Quantity
 +
|-
 +
| Robot Car Kits <span style="color:red">(Give link)</span>|| 1
 +
|-
 +
| Beaglebone || 1
 +
|-
 +
| sharp 2d120x f IR sensor || 1
 +
|-
 +
| L293 H-Bridge Chip || 1
 +
|-
 +
| 1N4004 Diodes || 8
 +
|-
 +
| 100 ohm Resistors || 2
 +
|-
 +
| On/Off Switch || 1
 +
|}
  
If you have hardware, consider [http://cpprojects.blogspot.com/2013/07/small-build-big-execuition.html Small Build, Big Execuition] for ideas on the final packaging.
+
Packaging:
 
+
<gallery>
Parts List:
+
File:H-Bridge Control Board.jpeg|Top
#sharp 2d120x f IR sensor     X1
+
File:H-Bridge Control Board2.jpeg|Button
#L293 H-Bridge Chip            X1
+
</gallery>
#1N4004 Diodes                    X8
+
Soldering the L293 H-bridge chip, rsistors, and diodes together. And put the control board on the car.
#100 ohm Resistors              X2
+
<gallery>
#DC Brush motor                  X4
+
File:Motor Connect.jpeg|Motor connection
#On/Off Switch                      X1
+
</gallery>
#Robot Kits                            X1
+
Connect the motor to the control board.
#Beaglebone                          X1
+
<gallery>
 +
File:IR Sensor.jpeg|IR Sensor
 +
</gallery>
 +
Glue the IR Sensor in front of the car.
 +
<gallery>
 +
File:Sensor & Switch connect.jpeg|Sensor & Switch connection
 +
</gallery>
 +
Connect both on/off switch and IR sensor to the beaglebone.
 +
<gallery>
 +
File:Wire the beaglebone.jpeg|Wire the Beaglebone
 +
</gallery>
 +
wire eveything to the beaglebone.
 +
<gallery>
 +
File:Electric Car.jpeg|Electric Car
 +
</gallery>
 +
Our Electric Robot Car is ready to go.
  
 
== Installation Instructions ==
 
== Installation Instructions ==
Line 54: Line 90:
 
The Github Link for this project is [https://github.com/weizhen1883/Electric-Car.git https://github.com/weizhen1883/Electric-Car.git].
 
The Github Link for this project is [https://github.com/weizhen1883/Electric-Car.git https://github.com/weizhen1883/Electric-Car.git].
  
Give step by step instructions on how to install your project.
+
#connect the H-bridge signal pin to P9_11(LeftFront) P9_12(LeftBack) P9_13(RightFront) P9_14(RightnBack)
 +
#connect the IR sensor signal to P9_35 AIN6
 +
#connect both H-bridge and IR sensor power to sys_5V and GND
 +
#power the beaglebone
 +
#run make to get ECar and GoForwordwithSensor files
 +
#run ./ECar to work with keyboard controlling
 +
#run ./GoForwordwithSensor to work with IR Sensor controlling
  
* Be sure your README.md is includes an up-to-date and clear description of your project so that someone who comes across you git repository can quickly learn what you did and how they can reproduce it.
+
== User Instructions ==
* Include a Makefile for you code.
 
* Include any additional packages installed via '''opkg'''.
 
* Include kernel mods.
 
* If there is extra hardware needed, include links to where it can be obtained.
 
  
== User Instructions ==
+
# Login to the Beaglebone and open the project folder.
 +
# $beagle ./ECar to run the keyboard control model.
 +
# $beagle ./GoForwordwithSensor to run the IR sensor control model.
  
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.
+
At the keyboard control model
 +
:*'w'----go forward
 +
:*'x'----go backward
 +
:*'a'----turn left
 +
:*'d'----turn right
 +
:*'s'----stop
  
 
== Highlights ==
 
== Highlights ==
  
Here is where you brag about what your project can do.
+
At this time, this Electric Car can only controlled by keyboard, and run forward and backward to keep the space between item and the barrier in front of item.  
  
Include a [http://www.youtube.com/ YouTube] demo.
+
[http://www.youtube.com/watch?v=FGacJAb1dLQ&feature=youtu.be The YouTube video to show the demo.]
  
 
== Theory of Operation ==
 
== Theory of Operation ==
  
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.
+
[[File:EcCarDiagram.jpeg|500px]]
  
 
== Work Breakdown ==
 
== Work Breakdown ==
  
List the major tasks in your project and who did what.
+
The major tasks in your project is to make the car can sensing the distance in the front, and when the distance is too small it will go backward, when it is too big, it will go forward. If the distance is just within the range, the car will stop.
 
 
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.
 
  
 
== Future Work ==
 
== Future Work ==
 
+
For this project, in the future there are lots of works can be done.
Suggest addition things that could be done with this project.
+
:First, to add the battery package, to make the robot work without cable connected.
 +
:Second, add more IR sensors to make it can run and make the turn and also go pass the barriers.
 +
:Third, it should be possible to add the GPS sensor to sensing the location, and make the robot go around our campus.
  
 
== Conclusions ==
 
== Conclusions ==
  
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.
+
For this project, we just do a very sample demo with beaglebone, we can do a lot of things in the future. Anyway, at this time, we make the car run by beaglebone controlling. We get our milestone.
  
 
{{YoderFoot}}
 
{{YoderFoot}}

Latest revision as of 04:41, 14 October 2014

thumb‎ Embedded Linux Class by Mark A. Yoder


Team members: Junxuan Hou, Zhen Wei

Grading Template

I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!

07 Executive Summary - Not up to date
09 Packaging - Nice sequence of photos documenting the assembly. Show where car came from.
09 Installation Instructions - Good
09 User Instructions - Good
09 Highlights - Nice video, but add audio to tell what's happening.
08 Theory of Operation - Some more details would be nice.
09 Work Breakdown - Also report the time spent building the car
09 Future Work - Good
09 Conclusions - OK
10 Demo
00 Late
Comments: I'm looking forward to seeing this.

Score:  88/100

Executive Summary

Electric Car.jpeg (Nice picture)

This project interfaces the Beaglebone with motor-based electronic mini-car. The gpio pins are used to control the motor on the car to remote it. Some additional interfaces, such as a IR sensor to control the moving direction of the car, and an analog input to control the speed of the car, are considered to be done based on the progress of the project.

Currently we have the small car which can be controlled by keyboard, or IR sensor. With the keyboard controlling, the car can go foreword and backward, make a turn to both right and left. With the IR sensor controlling, the car can keep space before the barrier in front of item.

At first, we use the H-bridge to control four motors which connect to four wheels for the car. And use the GPIO pins to control this H-bridge. And then use a analog input pin to get the signal feedback from the IR sensor.

Depending on the time, in the feature time, there are lots of works can be done for this robot car. (This isn't up to date)

Packaging

Parts List:

Parts Quantity
Robot Car Kits (Give link) 1
Beaglebone 1
sharp 2d120x f IR sensor 1
L293 H-Bridge Chip 1
1N4004 Diodes 8
100 ohm Resistors 2
On/Off Switch 1

Packaging:

Soldering the L293 H-bridge chip, rsistors, and diodes together. And put the control board on the car.

Connect the motor to the control board.

Glue the IR Sensor in front of the car.

Connect both on/off switch and IR sensor to the beaglebone.

wire eveything to the beaglebone.

Our Electric Robot Car is ready to go.

Installation Instructions

The Github Link for this project is https://github.com/weizhen1883/Electric-Car.git.

  1. connect the H-bridge signal pin to P9_11(LeftFront) P9_12(LeftBack) P9_13(RightFront) P9_14(RightnBack)
  2. connect the IR sensor signal to P9_35 AIN6
  3. connect both H-bridge and IR sensor power to sys_5V and GND
  4. power the beaglebone
  5. run make to get ECar and GoForwordwithSensor files
  6. run ./ECar to work with keyboard controlling
  7. run ./GoForwordwithSensor to work with IR Sensor controlling

User Instructions

  1. Login to the Beaglebone and open the project folder.
  2. $beagle ./ECar to run the keyboard control model.
  3. $beagle ./GoForwordwithSensor to run the IR sensor control model.

At the keyboard control model

  • 'w'----go forward
  • 'x'----go backward
  • 'a'----turn left
  • 'd'----turn right
  • 's'----stop

Highlights

At this time, this Electric Car can only controlled by keyboard, and run forward and backward to keep the space between item and the barrier in front of item.

The YouTube video to show the demo.

Theory of Operation

EcCarDiagram.jpeg

Work Breakdown

The major tasks in your project is to make the car can sensing the distance in the front, and when the distance is too small it will go backward, when it is too big, it will go forward. If the distance is just within the range, the car will stop.

Future Work

For this project, in the future there are lots of works can be done.

First, to add the battery package, to make the robot work without cable connected.
Second, add more IR sensors to make it can run and make the turn and also go pass the barriers.
Third, it should be possible to add the GPS sensor to sensing the location, and make the robot go around our campus.

Conclusions

For this project, we just do a very sample demo with beaglebone, we can do a lot of things in the future. Anyway, at this time, we make the car run by beaglebone controlling. We get our milestone.




thumb‎ Embedded Linux Class by Mark A. Yoder