fsd.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · web viewrobot coordinates are...

14
Functional Specification Document Robot Soccer ECEn 490 - Senior Project WALL-E Jacob White 1

Upload: others

Post on 25-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Functional Specification Document

Robot SoccerECEn 490 - Senior Project

WALL-EJacob White

Jordan HofhiensGreg Stewart

Christopher Knell

1

Page 2: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Table of ContentsTable of Contents ...........................................................................................................................2

IntroductionBackground .....................................................................................................................................3Product Description .......................................................................................... .............................3

Project RequirementsProduct Analysis: Meeting the Customers Needs ................................................................. .........4Interpreting and Ranking Customer Needs .....................................................................................5Analysis of Needs and Priorities .....................................................................................................5

Project SpecificationsMetrics .............................................................................................................................................6Analysis ...........................................................................................................................................6

Linking Project Specs and NeedsNeeds vs. Metrics ............................................................................................................................7

Summary...................................................................................................................................8

2

Page 3: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

IntroductionThis document contains the function specification for the autonomous robotic soccer system designed by team 5, also known as team ‘WALL-E’. The team has been given certain constraints defined by the customer (Professors) as to how the robot should look and operate. The constraints have been listed later on in this document based on priority

Background:Robot soccer is a senior project originally done by BYU over ten years ago. The project, historically, brought crowds of people to see robots play soccer by themselves. The project was canceled for several years, but now the BYU electrical engineering department brought it back to gain new insight into new designs. The final product will be two sets of robots playing soccer that try to score the most amount of goals in a single game.

Product DescriptionThe current version operates with a single overhead camera relaying information to a full size desktop Linux based computer to process vision algorithms. Robot coordinates are then relayed to an onboard computer where all other information is processed. In prior versions, all information was processed by the full size computer and only motor control was sent to the robot. In future versions, all information will be processed on the onboard computer.

The onboard computer will be an ODRIOD running a version Ubuntu which is a Linux based operating system. The ODRIOD will take the robot’s position and the positions of the opponents, and it will decide what strategies to execute to defend and score goals. The game begins after a start command is sent to all robots and ends after three minutes.

The robot itself must fit within a can with a diameter of 8 inches and height of 8 inches. It must also have a three wheel design that allows it to move in any direction from any orientation.

3Figure 1: The initial field on which the robotic soccer competition will occur

Page 4: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Critical Assumptions Robots must fit in a can with an 8-inch diameter and 10-inch height. All robots must be

fully autonomous using on-board resources: other than start and stop directives, no information can be sent to the robots during play from human operators or from the team’s base station computer.

The ball is a standard golf ball, with the color to be determined by majority vote. We can choose from any currently available ball. (The ball will not be painted or modified.)

The field will be five feet wide by 10 feet long. The goals will be two feet wide and specially marked with a unique color. The sides of the field will be angled so that the ball cannot get stuck against the sides or in the corner. There will be six markers at the four corners and at centerfield. The markers will be three feet high, with three one-foot color sections. The colors will be arranged so that each marker is unique.

Each team will be assigned one of two fixed colors for each game. All players on that team must be able to wear the assigned color, and that color must be clearly visible from all angles at player height. All players on each team will be marked in the same way, so there will be no designated goalkeeper.

Robots must be designed and operated in such a way that they do not damage other robots, the field, or human spectators. Kickers are not allowed to shoot the ball so hard that it damages other players. Robots are to avoid collisions. Any contact with a defender while in the defense area will be deemed a violation. Outside the defense area, causing substantial contact with an opposing robot will be deemed a violation. (Contact is considered substantial if it noticeably changes a player’s orientation, position, or motion.) If the responsibility for contact is not obvious play may be allowed to continue.

The offside rule will not apply. It will be deemed a violation if a robot drops parts on the field. Robots are not allowed to fix the ball to their body, or encompass the ball in any way that

prevents access by other players. 80% of the area of the ball must be outside the convex hull of the robot, when viewed from the side at a perpendicular angle.

No robot can use adhesives such as glue or tape for purposes of controlling the ball or constructing a dribbler. It is a violation to leave residue on the ball or the field. Dribbling devices that exert backspin on the ball (to maintain contact with the robot) are permitted, provided that the spin on the ball is perpendicular to the plane of the field.

Project RequirementsProduct Analysis - Meeting Customer Needs:

# Customer Statement Interpreted Need Priority

1 “I need a robot that can score” The robot should navigate the ball to the opponent’s goal and push or kick it in

1

2 “I want a robot that is unmanned” The robot should use sensors in a control loop to make decisions on how to move, score goals, and defend goals

1

3 “I need a robot that can put the ball where I Robot is able to manipulate ball motion according 1

4

Page 5: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

want it” to specified instructions

4 “I want a robot to defend goals like a goal keeper in soccer”

The robot should return to the goal and stay in front of the ball when the opponent’s tries to score

2

5 “The robot must be small” The robot must fit within an 8” cube. 1

6 “I need a robot that is able to move whatever way I want”

Robot is able to move in any direction 3

7 “I need a robot that can overcome opponent defense”

Based on opponent positioning, robot is able to move the ball in a manner so that it goes toward the goal without being blocked by opposing robots.

2

8 “I need robots that can work together” Robots on a common team are able to strategize and coordinate movements

2

9 “I need to be able to stop and start robots remotely”

Robots respond to remote stop and start commands 1

10 “I need a robot that strategizes” Robot can estimate where the opponents, ball and goal are and make strategic decisions

3

11 “I need a robot that can play a whole game, and maybe more”

Robot must be power efficient and be able to run on batteries for a period of time

2

Table 1.

5

Page 6: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Interpreting and Ranking Customer Needs:Customer’s needs and interpretation were stated in figure 1. The priority of these needs and interpretations are as follows: 1) High Priority, must be included to function and highest time requirement. 2) Medium Priority, must be included to function, but time requirement and/or technical skill less significant than priority 1 needs. 3) Low Priority, not required to function.

Analysis of Needs and Priorities:Based on the needs and priorities rated in figure 1 the main objectives will be:1. Have robots manipulate the ball to a desired position. (The Goal)2. Robot will be able to locate its current position. 3. Robot needs to predict ball location.4. Robot needs to move in any direction.

Figure 2. Single overhead IP Camera used for vision analysis

6

Page 7: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Figure 3. The ODRIOD used for processing strategy algorithms and making decisions

7

Page 8: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

Project Specifications

Metric # Metric Units Min/Max Ideal

1 Design and implementation Time Hours < 1000 < 700

2 Cost per Vehicle $/ vehicle < $2000 < $1000

3 Coordinate Configuration time (vision) ms < 500 < 200

4 Coordinate Configuration Accuracy cm < 0.75 < 0.1

5 Robot Movement Accuracy cm < 1 < 0.15

6 Ball Movement Prediction Accuracy cm < 1 < 0.15

7 Battery Life minutes > 30 > 120

8 Wireless Communication Range feet > 10 > 15

Table 2.

Analysis:The metrics above have been arranged according to their importance with the metric of highest importance listed first. Design and implementation time play a huge role in the planning associated with this project because we are operating under a 4 month deadline. Due to the fact that the majority of our metrics have to do with presenting at the ECE On Display event, it is imperative that our development be minimized or else there will be no viable product to display. We estimate that with a minimum of 8 hours per week contributed by each member of our 5 person team we will be able to meet our design and implementation goals in a timely manner.

Cost per vehicle is also a major issue. We are operating under a tight budget of just $5000 for an entire class consisting of 26 students. With that money every team will need to buy, at the very least, two robots outfitted with wheels along with the corresponding motor driver boards, the MinnowBoard to handle processing, and the Kinect like sensor for vision. That assumes that no components are ever damaged during development, which is never a safe assumption. The total cost of materials purchased so far (for our group alone) is $600. There are 5 total groups for a total of $3000 of the $5000 budget already spent on hardware. Luckily, none of the students will be charging for the time they are putting into development, so as long each group keeps its expenses under $400 for repairs or additional components, we should not have any monetary challenges.

8

Page 9: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

The rest of our metrics involve setting quantitative goals that will allow us to measure our progress during development to ensure that we will have a product that functions at the end of the next 4 months. If these benchmarks are not achieved in a timely fashion, then it is unlikely that our product will be able to play soccer in a manner that is pleasing to an audience.

Linking Project Specs and Needs

Design and Implementation Time

Cost per Vehicle

Coordinate Configuration time (vision)

Coordinate Configuration Accuracy

Robot Movement Accuracy

Ball Movement Prediction Accuracy

Battery Life

Wireless Communication Range

Robot is capable of putting the soccer ball into a predefined goal region.

X X X X

Robot is able to predict ball motion and coordinate movements to reach position.

X X X X

Robot is able to manipulate ball motion according to specified instructions.

X X X

Robot is able to locate relative position on the field. X X X XRobot is able to protect a predefined region. X X X XRobot is able to move in any direction. XRobots on a common team are able to strategize. X X X XRobots respond to remote stop and start commands. XRobot must be power efficient and be able to run on batteries. X X X

Table 3.

9

Page 10: FSD.docxrwbclasses.groups.et.byu.net/lib/exe/fetch.php?media=... · Web viewRobot coordinates are then relayed to an onboard computer where all other information is processed. In

SummaryWe want to build two robots that work together to play and win a soccer game against another similar system. The game should consists of strategies the two robots can use to work together to maximize the amount of goals scored. We hope the competition will be fun and enjoyable to watch. Our intent is to meet all design requirements specified by the customer. The final design has been created based on these customer needs, time restraints, and budget. As time permits, we will increase our efforts on strategies to win the competitions in the future.

10