Difference between revisions of "Networking Cars"

From ESE205 Wiki
Jump to navigation Jump to search
Line 18: Line 18:
 
== Challenges ==
 
== Challenges ==
 
'''<big>Safety</big>''' <br>
 
'''<big>Safety</big>''' <br>
<big>DC Motor accelerates and drives too quickly</big> <br>
+
<big>DC Motor Accelerates and Drives too Quickly</big> <br>
 
''Solution:''
 
''Solution:''
 
* Program the ESC to artificially limit the speed and acceleration of the DC motor
 
* Program the ESC to artificially limit the speed and acceleration of the DC motor
 
* Create a manual override killswitch, so a human operator can stop the car remotely with the RC Controller
 
* Create a manual override killswitch, so a human operator can stop the car remotely with the RC Controller
 +
 +
'''<big>Ease of Use</big>''' <br>
 +
<big>Implement Reliable Communication with the Pi Car</big> <br>
 +
''Solution:''
 +
* Use the RC Controller and receiver to communicate with the Arduino, and Interpret inputs as commands
 +
* Interpret PWM output from the receiver, and remap the outputs to a value that can be used by the ESC.
 +
* Add a toggle function between remote control and homing modes, create a switch condition that can be sent from the RC Controller
 +
 +
'''<big>Function</big>''' <br>
 +
<big>Not All Components are Properly Powered</big> <br>
 +
''Solution:''
 +
* DC Motor and ESC are on a separate battery than the Arduino and connected sensors
 +
* Switched 9V battery with a LiPo battery for better capacity and amperage (The Arduino would occasionally lose power when too many actions were called simultaneously)
 +
* Limited the number of sensors we used on the car to help regulate the power use
 +
 +
<big>Implement Homing Function</big> <br>
 +
''Solution:''
 +
* Mount IR Sensor above the car with line of sight in all directions. Route wires so there are no obstructions to the sensors.
 +
  
 
* Getting the car to reliably find, move to and stop near an IR beacon <br>
 
* Getting the car to reliably find, move to and stop near an IR beacon <br>
Line 27: Line 46:
 
* Mounting all sensors securely on the car <br>
 
* Mounting all sensors securely on the car <br>
 
* Ensuring transition between driving modes are quick and reliable  <br>
 
* Ensuring transition between driving modes are quick and reliable  <br>
* Learning how the PiCar ESC and remote functions
+
* Learning how the Pi Car ESC and remote functions
  
 
== Budget ==
 
== Budget ==

Revision as of 00:49, 4 December 2017

Overview

The goal of this project is to build a remote controlled car which can be toggled to home to a stationary base. This project is a first step in to creating a network of remote controlled vehicles which can also autonomously move and do specific work. The base car of this project is a PiCar, an open source remote controlled car project developed by Prof. Xuan Zhang and her lab. On the base PiCar platform, which is essentially a remote controlled car which can be connected to an Arduino/Raspberry Pi, we installed an Arduino Uno and an IR beacon to, and wrote code to enable the homing functionality. Near the end of the project, we decided to add an additional feature of having the car be able to follow black lines on the floor using IR obstacle sensors.

Weekly Log

Team Members

Curtis Hoffman
Deep Jyoti
Andrew O'Sullivan (TA)

Objectives

  • Design sensor system to communicate relative location between two objects.
  • Integrate sensors in order to allow Pi Car to interpret signals into usable commands.
  • Assemble Pi Car Chassis with Arduino and all required sensors mounted.
  • Build install killswitch mechanisms for safety.
  • Add code to enable the car to toggle back and forth from being remote controlled to autonomously run.

Challenges

Safety
DC Motor Accelerates and Drives too Quickly
Solution:

  • Program the ESC to artificially limit the speed and acceleration of the DC motor
  • Create a manual override killswitch, so a human operator can stop the car remotely with the RC Controller

Ease of Use
Implement Reliable Communication with the Pi Car
Solution:

  • Use the RC Controller and receiver to communicate with the Arduino, and Interpret inputs as commands
  • Interpret PWM output from the receiver, and remap the outputs to a value that can be used by the ESC.
  • Add a toggle function between remote control and homing modes, create a switch condition that can be sent from the RC Controller

Function
Not All Components are Properly Powered
Solution:

  • DC Motor and ESC are on a separate battery than the Arduino and connected sensors
  • Switched 9V battery with a LiPo battery for better capacity and amperage (The Arduino would occasionally lose power when too many actions were called simultaneously)
  • Limited the number of sensors we used on the car to help regulate the power use

Implement Homing Function
Solution:

  • Mount IR Sensor above the car with line of sight in all directions. Route wires so there are no obstructions to the sensors.


  • Getting the car to reliably find, move to and stop near an IR beacon
  • Writing Arduino code to toggle between remote control and autonomous driving
  • Mounting all sensors securely on the car
  • Ensuring transition between driving modes are quick and reliable
  • Learning how the Pi Car ESC and remote functions

Budget

Total Cost: $159.00

Gantt Chart

Gantt Chart For Networking Pi Cars