Download presentation
Presentation is loading. Please wait.
Published byPauline Fleming Modified over 9 years ago
1
Group #2 Jorge Avilla Luis Bonilla Redwood Diego Nunez
2
Project Purpose:
3
Project Overview Create a robot that is able to collect tennis balls either autonomously or manually.
4
Goals and Objectives To autonomously or manually pick up tennis balls. Recognize objects using a vision system. Able to keep track of number of balls collected. Wireless control from a remote control if it’s not on autonomous mode.
5
Specifications & Requirements Robot cost around $700.00. Weight less than 7 lbs. Ability to carry 3-5 tennis balls. Range of 120 ft. Battery life of around 1 hour.
6
Project Components Vision System: To identify objects DC Motors: For movements of the robot Batteries: To provide power to all components of the robot to function properly Ball Collecting Mechanism: To collect the tennis balls Wireless Device: To manually operate the robot
7
Chassis Design Custom Chassis Modeled in SolidWorks Built the actual chassis using clear acrylic sheets Connect the robot’s platform using L-brackets
8
Paddle Wheel design. Built with PVC and clear acrylic sheet. The system uses a DC motor to rotate the paddle in order to collect the balls. Ball Collecting Mechanism
9
Chassis Design
10
ABC uses 2 Sharp IR Range Sensors. Each sensor eliminates the 10 cm minimum distance of the other. The sensors are located inside the chassis, behind the wheel paddle. Ball Counter
11
Drive Train
12
Motors 2 DC motors for movement Operating Voltage = 12 volt Operating Current = 90 mA Stall Current = 1.5 A Stall Torque = 123.20 oz.-in RPM = 120 Weight = 5.36 oz. Price = 21.95 each
13
Wheels Rear Wheels ◦ 2 All Terrain Wheels Front Wheels ◦ 2 Caster Wheel to provide balance
14
Visual System Blackfin Camera: Color Detection Motion Detection Compatible with WebBot Library It communicates via UART SpecificationsBlackfin Camera ProcessorBlackfin BF537 Processor’s Speed500 MHz Input Voltage3.3 V Current Draw (max)145 mA UART2 Number of Timers4 Frames per Second30 I/O pins16 Resolution640x480
15
Microcontroller SpecsAtmega328 Pins32 I/O pins23 EEProm1K Program Memory32K SPIYes USART1 Timers 8/16 bit2/1 PWM pins6 ADC channels8 Programming LanguageC Max Clock Rate20 MHz Voltage1.8-5.5V Price$5 Atmega328
16
Why atmega328: More Programmable Memory Previous experience with atmega8 and atmega168 Already had programmer available. WebBot Library: Functions library compatible with the 328 and with the Blackfin Camera Simplifies programming process. Microcontroller
17
3 Microcontrollers: Simplifies testing of the different parts separately Allows for the coding to be divided among the group Main Controller: Brain of the robot, receiving and transmitting information between the other two microcontrollers and the camera Motor Controller: Receives input from the main controller or the laptop(RC mode). Controls the input of the h-bridges. Counter: Keeps count of the number of balls the have been loaded on the vehicle and instructs the Main to return to the base once the goal has been reached. Microcontroller Design
18
Main Controller and Counter Schematic
19
Motor Controller modes: Autonomous mode: Receives its input from the main controller Controlling Truth Table: Pins Main Controller/Motor Controller C3/C3C4/C4C5/C5Action 000Stop 001Forward 010Reverse 011Turn Right 100Turn Left 101Roller on Forward 110Roller on Reverse 111Roller OFF
20
Motor Controller Modes: Remote Control Mode: Receives its inputs from a Laptop via XBee.
21
H-Bridge: Receives the input from the motor controller and provides the power to the DC motors. Protects the microcontroller from any shorts from the motors. L298 from STMicroelectronics Characteristics: SpecsL298 Logic Supply Voltage5V Voltage Supply (motors)Up to 45V DC Current Supply per Channel2A # Channels2 PWM Capable PinsYes Logical 0 Input VoltageUp to 1.5 V
22
L298 Configuration Schematic: Diodes are fast response Schottky diodes.
23
Motor Controller with L298s Schematic:
24
SpecsXbeeBlueSmirf Range300ft350ft Voltage3.3V4.5-5.5V Current TX45mAUp to 120mA Current RX50mA40mA Idle current<10uA2mA Frequency2.4GHz InterfaceTTL Price$19$64 Wireless Adapters vs.
25
12V Battery ◦ To power all the DC motors such as the drive train and the ball collecting mechanism 9.6V Battery ◦ To power all the electronic components such as the camera, the sensors, and the wireless devices for the remote control NiMH Rechargeable Batteries
26
Power Management
27
ComponentQuantityVoltageMax Current Drive Train motors212 V1.5 A Ball Collecting Mechanism motor 112 V1 A Camera13.3 V150 mA Sensors35 V5 mA Wireless devices for Remote Control 13.3 V50 mA Microcontrollers: ATMEGA 328 35V80mA H-Bridge: L29825V50mA Power Distribution
28
Collision Avoidance The Maxbotix LV-EZ1 ultrasonic rangefinder provides accurate readings from a minimum tested distance of 6 in. to a maximum of 255 in., according to Sparkfun Electronics. The robot is designed such that it registers any object sensed 1 ft. away as a possible collision, and performs a evasive procedure. The single rangefinder mounted on the chassis is not enough to provide full collision detection.
29
Programming Environment: AVR Studio 4 AVR Pocket Programmer Pros: Provides power to the microcontroller. Pololu USB AVR Programmer Pros: Integrates directly to AVR Studio 4, allowing direct programming. WebBot Library o http://webbot.org.uk/iPoint/ipoint http://webbot.org.uk/iPoint/ipoint “This site contains useful software utilities for both the amateur and professional robot builder. Whilst this software is Open Source I would hope, if it has been useful, that you will visit the download page and click on the Donate button on the top right of the page and give what you can.” Software Design
30
abcr_core.h Includes sys/atmega328P.h switch.h Definitions Enumerations operation_mode Structures none Global Variables opSwitch Functions appControl appRCControl appAUTOControl retrieveOperationMode sys/atmega328P.h Systems file from the WebBot Library which configures the targets the functionalities of the Atmel Atmega 328. operation_mode RC – Remote Control. AUTO – Autonomous. Enable the program to be easily switched between the two different types of operation modes we want to handle.
31
event.h Includes none Definitions none Enumerations event_mode Structures event_type event_map Global Variables none Functions twoPowerOf appConfigureEvents transmitEventCode transmitEventRef transmitEventName receiveEventCode receiveEventName receiveEventRef event_type Represents an event that can be sent or received between microprocessors. event_map Structure that represents an interaction that will occur between microprocessors. Intended for structuring the interactions that will be performed between microcontrollers.
32
Acquisition.( h | c ) Includes abcr_core.h a2d.h event.h Sleep.h Sensors/Distance/Maxbotix/EZ1.h Definitions IR_LEFT IR_RIGHT PERCENT_ERROR_DETECTION_THRESHOLD COUNTTHRESHOLD HOMEBASETHRESHOLD FREQUENCY Enumerations Structures Global Variables _IREventMap __prevIRLeftDistance __prevIRRightDistance _totalCount _irSensing mDistanceSensor _ballAcquiredDelay Functions isBallAcquired appConfigureEvents appRCControl appInitHardware appInitSoftware appAUTOControl CollisionDetected Implements the sensing and counting of tennis balls as well as informing the autonomous code of a full tennis ball storage compartment. At each iteration of the main loop, we call the isBallAcquired function and determine the message to send to the autonomous controller from the result.
33
Command vbcvccy1y2u1u2v1v2vm Response ##vbc dd\r\n ssss x1 x2 y1 y2\r\n.... ###vcc\r\n ##vmean yy uu vv\r\n Description The 'vb' command searches for blobs matching the colors in color bin #c, indicates the number of blobs found as dd, and returns a count of matching pixels in the blob, along with coordinates of an x1, x2, y1, y2 rectangular region containing the matching pixels. up to 16 blobs can be returned, and the blobs are sent in order of pixel count, though blobs smaller than MIN_BLOB_SIZE (currently set to 5 pixels) aren't shown. The 'vc' command directly sets the contents of color bin #c. this command will return string with 'vc' followed by the color bin number. For example, we could save a set of colors to color bin #3 corresponding to measurements taken at another time, such as the above mentioned orange golf ball color measurement, using 'vc3127176086111154200'. We could then confirm that the colors were properly stored by issuing the command 'vr3' to retrieve the contents of color bin #3. Computes mean values for Y, U, and V over the entire image.
34
Autonomous.( h | c ) Includes buffer.h abcr_core.h Cameras/Surveyor/blackfin.h event.h Sleep.h Definitions UART_RX_BUFFER_SIZE UART_TX_BUFFER_SIZE BLACKFIN_RESOLUTION_DEFAULT BLACKFIN_TENNIS_BALL_BIN_RANGE BLACKFIN_HOME_BASE_BINS_RANGE BLACKFIN_RESOLUTION_CENTER_WIDTH BLACKFIN_RESOLUTION_CENTER_HEIGHT OBJECT_CENTERED_WIDTH_RANGE_ERROR_NEAR OBJECT_CENTERED_WIDTH_RANGE_ERROR_FAR OBJECT_CENTERED_HEIGHT_RANGE_ERROR BLOB_LOST_DEFAULT_WAIT BLOB_LOST_DEFAULT_SPRINT ROLLER_CHECK_DEFAULT ROLLER_CHECK_BLOB_NEAR DEFAULT_SERVO_SPEED SERVO_SPEED_MAX SERVO_SPEED_MID SERVO_SPEED_MIN SERVO_STEP AUTO_ROLLER_ON AUTO_ORTH_TURN_DELAY 18 AUTO_LONG_DELAY 70 AUTO_MED_DELAY 30 AUTO_SHORT_DELAY 12 FREQUENCY 20000; Responsible for capturing of commands from the Blackfin camera and transmitting the right movement instructions to the drive train. setColorBins Dynamically change the color bin range that the camera searches for depending on the mean color of the image. detectBlobs Process the action that needs to be performed from the data gathered from the camera.
35
Eagle Cad Software: Extensive Library Parts and Good tutorials on the web Manufactured by 4PCB: Student discounts PCB Design
36
Traces have different widths depending on the amount of current flowing on them. Signal traces are thinner that power traces Ground Plane Combines surface mount parts with through hole. PCB Design
37
PCB with the surface components mounted. PCB Design
38
Project Management
39
Project Budget ItemAmount Camera$ 230.00 Battery/Charger$ 80.00 GPS$ 100.00 RC Unit$ 65.00 Chassis$ 30.00 Sensors$ 60.00 Motor/Wheels$ 50.00 Electronics$ 30.00 PCB$ 55.00 TOTAL$ 700.00 Expected Project Budget ItemAmount Camera $ 171.56 Battery/Charger $ 60.35 XBee $ 91.45 Ball Collecting Mechanism$ 45.08 Chassis $ 120.00 Sensors $ 30.00 Motor/Wheels $ 75.80 Electronics $ 60.00 PCB $ 60.00 TOTAL $ 714.24 Final Project Management
40
Caster wheels affecting motion ◦ Solution: Compensate as much as possible in code Missing connection on the board ◦ Solution: Soldered cables directly to the board Project Challenges
41
Color Specification: The Blackfin camera takes a range of colors to define a blob. A color blob is not a accurate method for searching for a specific object. Possible improvements: Machine learning: http://research.microsoft.com/en-us/um/people/viola/Pubs/Detect/violaJones_IJCV.pdf Edge finding Project Challenges
42
All project information is available at: http://eecs.ucf.edu/seniordesign/su2010fa2010/g02/ http://eecs.ucf.edu/seniordesign/su2010fa2010/g02/ Questions? More Information
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.