1 / 56

ECE 485: Electrical Engineering Design I Project

ECE 485: Electrical Engineering Design I Project. By Group 2: Joel Marcia, Paul Rosensteel, Scott Laminack, and Justin Lanham. Overview: The Problem. To design and implement the hardware and software to control the Trekker Robot in three competitions: Go around outside loop 3 times.

azriel
Download Presentation

ECE 485: Electrical Engineering Design I Project

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. ECE 485: Electrical Engineering Design I Project By Group 2: Joel Marcia, Paul Rosensteel, Scott Laminack, and Justin Lanham

  2. Overview: The Problem • To design and implement the hardware and software to control the Trekker Robot in three competitions: • Go around outside loop 3 times. • Go around outside loop at least once, then take the inside loop twice. • Evade an obstacle on the track and follow the guidelines from competition 2.

  3. Overview: Specifications • OOPic R with a L7806 – 6V Voltage Regulator (TO220 Package) • OOPic R Expansion Board Pictures from http://www.superdroidrobots.com/shop/category.asp?catid=25

  4. Overview: Specifications • A Sharp GP2D12 IR Sensor • A Devantech SRF04 Ultrasonic Ranger

  5. Overview: Specifications • 4 QRB1134 Phototransistors with mounting bracket • 2 HiTec HS-422 servos to control the wheels • 1 HiTec HS-311 servo to control the ranger or IR sensor Pictures from http://www.superdroidrobots.com/shop/category.asp?catid=25

  6. Optimizing Software andAlgorithms

  7. Game Plan • No “If … Then” statements • Might be easier getting stated, but more work in the long run • Use object codes to create a virtual circuit • Simplify the code • Easier to debug • Changes are easier to make

  8. oServoSP1 oTracker oNavCon oCompare2 Key Object Codes Used

  9. oServoSP1 • Designed to control servos or to interface servos with different objects • Specifically used with hacked servos • Supports URCP values (positive and negative values) • Unique property – set Value property to 0, no pulses are sent to the servo (wheels stop completely)

  10. *Key Points using oServoSP1 • Set the left servo InvertOut property to “1” – sets wheels turning in the same direction • Set Refresh property to “1” – doubles the pulses sent to servos (increases torque) • Tested using o’scope: 36.2 Hz to 73.53 Hz

  11. oTracker • Designed to use digital sensor inputs (line followers) to determine the location of a black line on a white background • Formats URCP readings to express how much it needs turn • Range of values +/-8, +/-16, +/-24, +/-32 • Maximum of four sensor inputs

  12. *Key Points using oTracker • Setting the Width property to “1” allows the use of only three sensors • Range of values +/-8, +/-24, +/-32 (no +/-16) • The fourth sensor was used to detect the “inner circle” with an oEvent

  13. oNavCon • Coverts the information received from oTracker into motor control speed for the servos • Takes the predetermined “Speed” value then adds or subtracts the values received from oTracker (URCP values) and send them to the servos

  14. *Key Point using oNavCon • Set oNavCon to ”0” to turn off the line following subroutine • This allowed us to turn off or override the line following subroutine to make adjustments for a special “event”

  15. oCompare2 • Used with the sonar sensor • Triggered depending on distance • Compares two numbers (predetermined upper and lower limits) and sets the servo speed values to follow a along a wall or go around a “box”

  16. Basic Flow Diagram Line following (oTracker) oNavCon on oNavCon oNavCon off oNavCon off Inner Circle (oEvent) Go around box (oCompare2) Wheels (oServoSP1)

  17. Competitions 1 & 2

  18. Round #1 of Line Following Competition Objective: To complete three laps around the black line track where one lap must be around the outer loop of the track.

  19. The Line Following Sensors

  20. The Line Following Circuit • The circuit for an individual line-follower • Pull-Up Resistor = 10 kW • Rf Resistor = 220 W • Line follower Capacitor = 0.1 mF

  21. Complete Line Following Circuit

  22. The Line Following Printed Circuit Board

  23. Capacitors Used in Line Following Circuit Board • We found documentation explaining how capacitors could be included in the line following circuit to reduce noise that the line followers may pick up. • The capacitors are connected to the line followers in hopes of leveling out the ripple in the signal out.

  24. No Significant Difference • We tested the Trekker with, and without the capacitors in the circuit • No significant difference was found. • Therefore we chose to remove the capacitors from the line following circuit board. • Our design of the circuit board made removal of the capacitors easy, as they were connected from behind using free wires • These wires were cut, electronically removing the capacitors from the circuit

  25. Direction of Travel Around the Track

  26. Servo Values S4 and S5 • The coded values of S4 and S5 refer to server rotational speeds • S4’s value directly corresponds with the Right Wheel’s rotational speed • S5’s value directly corresponds with the Left Wheel’s rotational speed

  27. Finding the center of the servos rotational speed values • From Trekker Experiment #3 • S4 and S5 relationship with the rotational speed of the wheel was found

  28. Left and Right Wheel Speeds are not the same

  29. Reversal of Direction • Because the left servo and the right servo are opposite of each other, they each travel in opposite directions relative to one another • To remedy this, one of the servo’s values is inverted • Now both wheels will move the Trekker forward at the same time.

  30. First Competition Program Works!! • The initial line following program was uploaded to the OOPic R. • The Trekker successfully went around the outer loop of the track • First run around the track was very slow

  31. Improvements to Program • Had to find a good value for the servo speeds • Not too slow, or the Trekker would take too long around the turns. It would have a very “jerky” stop and go manuever. • Not too fast, or the Trekker would leave the black line on the turns and not return. • A speed value of 31 was found to be the best for what we needed

  32. Number of Line Following Sensors • The more line following sensors employed in the design, the faster the Trekker should be able to traverse the course • Using Four Sensors • Time around track = 1 min 6 sec • Using Three Sensors • Time around track = 1 min 5 sec • Three sensors are used in the final design of the Line Following program

  33. Three Outer Loops, no Inner Loops • Our Trekker made it successfully around the outer loop of the track three times. • No inner loop attempt was made

  34. Round #1 Line Following Competition Results • Best time around the track: • 01:00.75 • Competition Ranking: • 4th Place overall • 8 Points awarded

  35. Round #2 of Line Following Competition Competition Objectives: • To complete three laps around the black line track • One lap around track must be upon the outside loop Group Objectives: • To complete two laps around the inner loop of the track • Make a better time around the track three times than in Round #1 of the Line Following Competition

  36. Line Following and Inner Track Sensors • Line Following Sensors • Three used, as were used in the Round #1 of the competition • Inner Track Sensors • One was used away from the three Line Following Sensors

  37. Direction of Travel and Inner Loop Sensor Placement • Direction of Travel around track • Clockwise • Placement of Inner Loops Sensor • On the left side of the Trekker when facing the Trekker front first.

  38. Line Following and Inner Loop Sensor Placement

  39. Outer Loop Behavior • For the first lap, the Inner Loop Sensor will record each time it passes over the inner loop.

  40. Inner Loop Behavior • After the first lap, and the inner sensors having noted the inner loop twice. • Every time the inner loop sensor notices a black line the Trekker will turn to the right, and take the Inner Loop around until it finds the opposite side of the track on the Outer Loop

  41. Testing and Improvements • We needed to make the Trekker have smoother turns around the corners of both the outer and inner loops of the track • This was done by changing the coded values for the right servo’s center, the left servo’s center, the oNav.Center, the LeftServo.Value, the RightServo.Value, and the overall speed of the Trekker

  42. Results of Testing and Round #2 of the Line Following Competition

  43. Round #2 Line Following Competition Results • Best time around track: • 0:50.51 • Competition Ranking: • 3rd Place Overall • 18 Points Awarded

  44. Competition 3

  45. Round #3 of Line Following Competition • A familiar problem: • Recognize Inner Loop • Recognize Tool Box • Line Follow: once outer Loop, and twice inner Loop • Oh, and navigate at most 8.5 inches from Tool Box

  46. Hardware: Devantech SRF04 Ultrasonic Range Finder HiTec HS-311 Servo Objects to utilize hardware: oSonarDV oServoSP1 oCompare2: Properties (Above, Below and Between) Tool Box Solution

  47. The Set Up 1st oCompare2.Input set to oSonar.Value 2nd ReferenceIn1 set to Lower oSonar.Value = 53 and ReferenceIn2 set to Upper oSonar.Value = 58 3rd Allow oCompare to call Sub Routines to maintain 8.5 inches from tool box

  48. Sonar • Operation of Sonar device • Maximize sample rate. How? (Link Sonar.Operate to OOPIC.HZ60)

  49. Need to toggle at a rate that sonar needs to monitor SRF04 Timing

  50. SRF04 Graph

More Related