1 / 50

Group 12 Jason M ersch V ictor M orales V ictor R obles D anielle A nderson

Group 12 Jason M ersch V ictor M orales V ictor R obles D anielle A nderson. ParkBot. Project Overview. Autonomous valet parking vehicle with search, park, and return functionality Provides a low cost solution to automatic valet parking with potential use in real world vehicles

july
Download Presentation

Group 12 Jason M ersch V ictor M orales V ictor R obles D anielle A nderson

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Group 12Jason MerschVictor MoralesVictor RoblesDanielle Anderson ParkBot

  2. Project Overview • Autonomous valet parking vehicle with search, park, and return functionality • Provides a low cost solution to automatic valet parking with potential use in real world vehicles • Cars with this functionality would have their own designated row of spaces

  3. Requirements • Front-end parking • Carpeted surface with no incline • Avoid objects in path • Parked centered in space • All parking spaces uniform and designated • Return to drop-off position • Low cost to implement • Simulate potential real world environment • Battery powered

  4. Specifications • Maximum RC car dimensions: 20”L x 6”W • Max Speed: 6 mph • Max search and park time: 5 minutes • Max pull out and return time: 5 minutes • Parked front end clearance: 3 in • Safe distance from obstacle in park search mode: 10 in • Safe distance from obstacle in park mode: 3 in • Max cost: $400.00

  5. Testing Area Specifications • Real World Measurements • Typical parking space • 240 in L x 94.8 in W • Dimensions of average mid-sized car • 181.4 in L x 70.2 in W • Scaled Down Testing Area Measurements (1:10) • Parking space • 24 in L x 9.5 in W • 4 inch clearance between cars • 12 spaces total – 6 on each side • Total parking lot dimensions: 60 in L x 96 in W • 48 inches will separate left and right spots

  6. Components Overview • RC car platform • DC motor for forward and reverse propulsion • Steering servo for left and right maneuvers • Power Supply • Transmitter/Receiver pair • Obstacle avoidance sensors • Microcontroller

  7. RC Car

  8. RC Car Comparison • Hobby grade RTR car • Fully proportional steering • Large, full function, but didn’t fit budget • RTR car • Left/Right /Center steering • Purchased: Mercedes AMG R/C Car (1:10 scale) • Large and fit budget • Dimensions: 18.125 in L x 7.5 in W x 5 in H

  9. Motor Requirements: • Bi-directional • Speed control • Speed less than 6 mph • Utilize existing motor in R/C car • Operating voltage: 2.5 to 6V • Max speed: 5 mph (existing load)

  10. Motor Control Options • Controlling the direction of motor rotation is achieved by implementing an H-bridge • Manually build H-bridge with BJT or MOSFET • 2PNP • 2 NPN • Diodes • Resitors • Implement Dual H-bridge IC • Chose: SN754410 • 4 drivers (2 bi-polar channels) • 1A max per channel • Supports: 4.5V-36V • Built in clamping diodes • Thermal shutdown

  11. H-bridge Implementation • SN754410 • Utilize pins 1-8 and 16 • MCU PWM to Pin1 • Vcc2 Existing Power 7.2V • Vcc1 Secondary Power 5V • Pins 2 & 7 MCU input • Pins 3 and 6 Motor leads

  12. Steering Servo • R/C car’s existing servo • 6-wire servo motor with potentiometer • 4 Control lines • Blue - left • Yellow - right • Brown - always low • White – always high • 2 Power leads • Will be controlled by microcontroller

  13. Sensors & Remote Control

  14. Transmitter & Receiver • Motivation: • Basic functionality • Send signal to begin parking spot search • Send signal to pull out of parking spot and return to point of origin • Allows for expansion if different wireless features want to be added

  15. Transmitter & Receiver Methods Considered • Bluetooth • Too expensive to implement • Infrared • Poor range • Wi-Fi • Components needed to implement system are too large • Chose: RF • Good range • Easy to implement on microcontroller

  16. RF Transmitter • MO-SAWR-A • Transmits at a frequency of 315Mhz • Range up to 500 ft. • No line of sight needed for transmission • Common in car alarm remotes, beepers, and many similar devices • Operating voltage: 2 to 12v

  17. RF Receiver • MO-RX3400-A • Receives signal at 315Mhz from RF transmitter • Range of up to 500 ft. • Common in car alarm remotes, beepers, and many similar devices • Operating voltage: 5V • Current draw: 2.3 to 3 mA • Digital signal to to microcontroller for easy data processing

  18. Sensors Considered • Infrared Sensors • Sharp IR GP2D12 Sensor • 450 –750 nanometer range of visible light • Covers a range of 10 to 80cm with a optimized distance of 24cm • Operating Voltage: 0.3 to 7 volts • Max current draw: 10mA • Imaging Sensors • TSL 1401 Linescan Imaging Sensor Daughterboard • 128-pixel sensor chip • 7.9mm focal length imaging lens • Operating voltage: 3.3 to 5 volts. • Max current draw: 5mA

  19. Sensors Considered cont’d • Ultrasonic Sensors • Chose: Ping Ultrasonic Range Finder • Emit a short 40 kHz signal • Range 0.8 in to 118.8 in (3.3 yd) • Operating Voltage: 5 volts • Max current draw: 35mA

  20. SensorsAdvantages and Disadvantages • Ultrasonic sensor • Fastest response time at 115 us up to 18.5 ms • Smallest at 0.84 in W x 1.8 in L • Best range at 0.8 in to 118.8 in • Infrared sensor • Poor range • Imaging sensor • Poor range • Slow response time • Expensive

  21. Ultrasonic Sensor Considerations • The sensor must be mounted perpendicular to the floor for accurate performance • Echo-free environment for the most accurate readings • The object that the sensor will detect has to be large enough for the ultrasonic waves to deflect off of it

  22. Ultrasonic Sensor Mounting • The small size of the sensors make it easy for mounting onto the frame of the car • There will be three sensors mounted on ParkBot one in the front and one on each side of the car • These sensors will be connected in series to keep the current draw low • Sensors will be mounted at different heights to determine optimal height

  23. Power Supply

  24. Power Supply • It was decided to divide the power system into two parts: • One for the drive and servo motors • The other for remaining components

  25. Voltage Regulation • Required to regulate a voltage of 5VDC for the components operating at this voltage and the logic part of the H-Bridge(VCC1) • Required to regulate a voltage of 6VDC for the front motor(servo/steering) with high current • Decided to use a simple linear regulator for the 5VDC and a variable regulator for the 6VDC • The components operating at 5VDC are not going to draw much current so the dissipated power at the regulator is not going to be large. (7.2-5)V*107.5mA=2.2*107.5=236.5mW • For the 6VDC regulator the amount of current draw will be about 1000m (7.2-5)V*1000mA=2.2*1000=2.2W • For the 5VDC regulator a LM7805 IC is going to be used, and for the 6VDC a LM 317t

  26. Voltage Regulation • LM317 • VOUT = 1.25 * ( 1 + R2/R1 ) • R2 = R1 * ( (VOUT/1.25) -1 ) • R1=240, R2=910 Vin=7.2 Vout = 6Vd • LM7805 • Power 4 components • Connected from the 7.2v battery

  27. Power Supply 1 • Chose: Tenergy 7.2V Ni-MH 3000mAh battery • The battery will be connected to a LM317 variable voltage regulator to power the steering servo motor and rear motor • The battery was chosen based on the amp/hours and volts needed to properly operate the steering servo and rear motor • In charge of powering the rear motor and steering servo H-Bridge SN754410 VCC2 Rear Motor F/B 7.2v NiMH LM317 6VDC Steering Servo

  28. Power Supply 2 • Came with the RC car • 7.2v 700mAH Ni-Cd battery pack • It will be in charge of powering the additional components added to the car • It will be connected to a LM7805 linear voltage regulator. Regulates voltage to 5V. This will power: • Ultrasonic Sensors, RF Receiver unit, H-Bridge chip Vcc1 Logic, and microcontroller LM7805 5VDC Microcontroller 7.2v NiCD Sensors RF Receiver unit H-Bridge VCC1 logic

  29. MCU

  30. MCU Requirements • I/O pins needed: • 4 digital (for obstacle avoidance sensors and RF receiver) • 3 digital PWM (for DC motor control and servo control) • Open source • Well documented with online examples • Uses a familiar programming language • Sufficient memory and processing power • Operating voltage of 5V • Chose: Atmel ATMega328

  31. MCU Specifications • Atmel ATMega328 • With ArduinoBootloader for use with the Arduino language • Arduino language based on C/C++ • Max frequency: 20MHz • 32KB of program space • 23 I/O Pins • Operating Voltage: 5V

  32. Pin Configuration Overview

  33. Overall MCU Diagram

  34. Programming the MCU • Use a SFE FTDI USB to Serial Basic Breakout Board that interfaces with the MCU • Optimized to work with 5V Arduino boards and cloned 5V Arduino boards • Easy loading of code onto MCU through USB port on PC • Cheaper than buying USB to serial converter cable ($33 vs. $14)

  35. PCB • We decided to go with a 28 pin development board perfect for the Atmega328 microcontroller. • We will solder the PCB after successful testing of the implemented parts on the board • Optimized Arduino configuration will be used for maximum perfomance for our system • Size: 5" x 3.7" (127 x 93.98mm)

  36. Software

  37. Parking Spot Search Algorithm

  38. Parking Algorithm

  39. Software Structure ParkBot • intnumSpotsOccupied • intrightOrLeftSpotAvail • intobstacleDetectedFlag • Servo steeringServo • const intleftSensorPin • const intrightSensorPin • const intfrontSensorPin • const intmotorPosTerminal • const intmotorNegTerminal • const intrfReceiverPin • intnumSpotsOccupied • Keeps track of the number of occupied left and right spots. Increments after each occupied pair of spots is detected • intrightOrLeftSpotAvail • Set to 1 if a right spot is available and 2 if left spot is available once open spot is detected • intobstacleDetectedFlag • Set to 1 if there is a front obstacle, 2 if there is a left obstacle, and 3 if there is a right obstacle during obstacle avoidance loop + void moveForward(long distance) + void moveBackward(long distance) + void turnWheels(int direction) + long timeToDistance(long sensorReading) + long getFrontDistance() + long getLeftDistance() + long getRightDistance() + void pullCarIn() + void takeCarOut() + void threePointTurn() + intisCentered()

  40. Motor and Steering Servo Functions • void moveForward(long distance) • Moves ParkBot forward for the designated distance given in inches • void moveBackward(long distance) • Moves ParkBot backwards for the designated distance given in inches • void turnWheels(int direction) • If direction parameter is equal to 1, this function will turn ParkBot’s wheels to the left. If direction parameter is equal to 2,

  41. Obstacle Sensor Functions • long getFrontDistance() • Returns the distance in inches of the nearest obstacle to the front of ParkBot • long getLeftDistance() • Returns the distance in inches of the nearest obstacle to the left of ParkBot • long getRightDistance() • Returns the distance in inches of the nearest obstacle to the right of ParkBot

  42. Obstacle Sensor Functions cont’d • long timeToDistance(long sensorReading) • Sensor-read helper function. Takes in a time in microseconds (i.e. reading from an Ultrasonic sensor) and converts the time into a distance in inches (i.e. distance from nearest object to sensor). • According to Parallax's datasheet for the PING))) Ultrasonic sensor, there are 73.746 microseconds per inch. Also the sensor reading in microseconds is the total time, outbound and return, so we must divide by 2 to get the distance to the obstacle. This gives us the following conversion: distanceInInches = sensorReading / 73.746 / 2

  43. Algorithm Functions • void pullCarIn(intrightOrLeft) • Does the process of pulling ParkBot into a parking spot. If the rightOrLeft parameter is 1, ParkBot will pull into the parking spot on the right side. If the rightOrLeft parameter is 2, ParkBot will pull into the parking spot on the left side • Common Pull Into Parking Spot Scenario (figure not drawn to scale):

  44. Algorithm Functions cont’d • void takeCarOut(intrightOrLeft) • Does the process of pulling ParkBot out of a parking spot. If the rightOrLeft parameter is 1, ParkBot will pull into the parking spot on the right side. If the rightOrLeft parameter is 2, ParkBot will pull into the parking spot on the left side • During the execution of pullCarIn() and takeCarOut(), all sensors will be checked at a rate of 2 Hz to detect whether there is an object within 3 inches of ParkBot on all sides. If an object is detected during either of the two algorithms, the process will be repeated again with minor modifications according to where the obstacle was detected • intisCentered() • Returns a 1 if ParkBot’s left and right side clearance values are within 0.2 inches of each other. Returns a 0 otherwise.

  45. Testing Scenarios • The following scenarios will be accounted for and mastered: • Spot available on left • Spot available on right • No spots available • Spot too small on the left • Spot too small on the right

  46. Administrative Content

  47. Budget

  48. Milestone

  49. Timeline

  50. Questions???

More Related