Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Programmers: I Have A Challenge For You (http://www.chiefdelphi.com/forums/showthread.php?t=84797)

kamocat 11-04-2010 11:54

Re: Programmers: I Have A Challenge For You
 
15 seconds isn't enough to take advantage of full-field awareness.
It's only enough time to do something and hope it works. (For example, if you fire a ball into the goals from mid- or far- field, you don't have enough time to go over there and make sure it actually went in.)

Kevin Watson 11-04-2010 13:06

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by kamocat (Post 952084)
15 seconds isn't enough to take advantage of full-field awareness.
It's only enough time to do something and hope it works. (For example, if you fire a ball into the goals from mid- or far- field, you don't have enough time to go over there and make sure it actually went in.)

Back in 2004 we had an infrared beacon system that could be used to determine your position on the field and perform a fully autonomous action. It's demonstrated at about 1:40:40 of the kick-off video:

http://robotics.nasa.gov/first/2004/kickoff.htm

It used $10-$15 dollars worth of parts plus some custom code that's still available here:

http://kevin.org/frc/2004/

-Kevin

ideasrule 11-04-2010 13:12

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by Chris27 (Post 952081)
Good thing we have teams like 1114 to prove you dead wrong :rolleyes:

1114 didn't prove him dead wrong this year. 1114's ranking at any regional would definitely not have been different if they stayed still during autonomous. The robot was averaging 1-2 balls scored per autonomous mode. Our robot averaged 1 ball per autonomous mode, and despite being a much weaker team, the one match where that one score mattered was better known as the match where we got disqualified.

Chris27 11-04-2010 13:52

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by ideasrule (Post 952110)
1114 didn't prove him dead wrong this year. 1114's ranking at any regional would definitely not have been different if they stayed still during autonomous. The robot was averaging 1-2 balls scored per autonomous mode. Our robot averaged 1 ball per autonomous mode, and despite being a much weaker team, the one match where that one score mattered was better known as the match where we got disqualified.

Not as much this year but in Overdrive their auton alone could have won them 9/10 matches. I'm just saying its absurd to dismiss a 15s autonomous period as useless. I know there are not any bonus points this year for scoring in auton like in past years, but that was also the case last year. Before the season started many people on CD were also saying that auton would be mostly useless and the only really useful thing to do was to not get scored on. Not really meaning to toot my own horn but last year one thing that gave my team a substantial early advantage was that we were able to load up during auton. I think we set a good example of what could be done. I think a lot of the effort spent complaining about how FIRST views the role of autonomy would be better spent developing an autonomous mode that consistently scores 3-5 balls. That's nothing to sneeze at considering most alliances struggle to break 10 points.

Andrew Schreiber 11-04-2010 14:26

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by theprgramerdude (Post 952077)
Rather than the 5-second rule, I think a far better, and more adjustable, step for FIRST teams would simply be to expand the autonomous period past 15 seconds. Because, seriously, 15 seconds isn't enough to do anything worthwhile. It would make the autonomous a bit more important, and give some motivation to teams that decide "our drivers can make up for anything we dont do in autonomous."

2003, taking the entire stack on the top of the bump and then controlling the bump could win. (I wasn't around this year perhaps someone could figure out how much of a swing it could be)

2004, several teams hung in autonomous and then controlled the bar, they swung the match score up to 150 points (+50 for their hang -100 for their opponents not being able to hang). I guess that isn't serious.

2006, winning auton was a huge benefit. I saw many matches decided by auton alone.

2008, 1114, do I need to say more? Ok, 217. There you go. Auton could decide the match.

2009, on Einstein the final match autons consisted of loading up the bots to go dump a load into their opponents, not as important but it added many balls to the arsenal of the dumpers (or 217's shooter).

2010, 469 shows how useful a good auton can be. If they get set in auton you are pretty much down 4 points at the start of the match (They score 2 balls and then recycle them as soon as people start moving).

I would say that 15 seconds is plenty of time to do something important.

davidthefat 11-04-2010 22:48

Re: Programmers: I Have A Challenge For You
 
All who are trying this: I have a book for you. http://www.amazon.com/Introduction-A.../dp/026219502X
The TOC:
Code:

Contents
Acknowledgments                                                  xi
Preface                                                          xiii
1    Introduction                                                  1
    1.1 Introduction                                              1
    1.2 An Overview of the Book                                  10
2    Locomotion                                                  13
    2.1 Introduction                                            13
          2.1.1 Key issues for locomotion                        16
    2.2 Legged Mobile Robots                                    17
          2.2.1 Leg configurations and stability                  18
          2.2.2 Examples of legged robot locomotion              21
    2.3 Wheeled Mobile Robots                                    30
          2.3.1 Wheeled locomotion: the design space              31
          2.3.2 Wheeled locomotion: case studies                  38
3    Mobile Robot Kinematics                                      47
    3.1 Introduction                                            47
    3.2 Kinematic Models and Constraints                        48
          3.2.1 Representing robot position                      48
          3.2.2 Forward kinematic models                          51
          3.2.3 Wheel kinematic constraints                      53
          3.2.4 Robot kinematic constraints                      61
          3.2.5 Examples: robot kinematic models and constraints  63
    3.3 Mobile Robot Maneuverability                            67
          3.3.1 Degree of mobility                                67
          3.3.2 Degree of steerability                            71
          3.3.3 Robot maneuverability                            72
viii                                                                            Contents
    3.4  Mobile Robot Workspace                                                      74
          3.4.1 Degrees of freedom                                                    74
          3.4.2 Holonomic robots                                                      75
          3.4.3 Path and trajectory considerations                                    77
    3.5  Beyond Basic Kinematics                                                      80
    3.6  Motion Control (Kinematic Control)                                          81
          3.6.1 Open loop control (trajectory-following)                              81
          3.6.2 Feedback control                                                      82
 4  Perception                                                                        89
    4.1 Sensors for Mobile Robots                                                    89
          4.1.1 Sensor classification                                                  89
          4.1.2 Characterizing sensor performance                                      92
          4.1.3 Wheel/motor sensors                                                    97
          4.1.4 Heading sensors                                                        98
          4.1.5 Ground-based beacons                                                  101
          4.1.6 Active ranging                                                        104
          4.1.7 Motion/speed sensors                                                  115
          4.1.8 Vision-based sensors                                                  117
    4.2 Representing Uncertainty                                                    145
          4.2.1 Statistical representation                                            145
          4.2.2 Error propagation: combining uncertain measurements                  149
    4.3 Feature Extraction                                                          151
          4.3.1 Feature extraction based on range data (laser, ultrasonic, vision-based
                ranging)                                                              154
          4.3.2 Visual appearance based feature extraction                            163
 5  Mobile Robot Localization                                                        181
    5.1 Introduction                                                                181
    5.2 The Challenge of Localization: Noise and Aliasing                            182
          5.2.1 Sensor noise                                                          183
          5.2.2 Sensor aliasing                                                      184
          5.2.3 Effector noise                                                        185
          5.2.4 An error model for odometric position estimation                      186
    5.3 To Localize or Not to Localize: Localization-Based Navigation versus
          Programmed Solutions                                                        191
    5.4 Belief Representation                                                        194
          5.4.1 Single-hypothesis belief                                              194
          5.4.2 Multiple-hypothesis belief                                            196
Contents                                                                      ix
      5.5  Map Representation                                              200
            5.5.1 Continuous representations                                200
            5.5.2 Decomposition strategies                                  203
            5.5.3 State of the art: current challenges in map representation 210
      5.6  Probabilistic Map-Based Localization                            212
            5.6.1 Introduction                                              212
            5.6.2 Markov localization                                        214
            5.6.3 Kalman filter localization                                227
      5.7  Other Examples of Localization Systems                          244
            5.7.1 Landmark-based navigation                                  245
            5.7.2 Globally unique localization                              246
            5.7.3 Positioning beacon systems                                248
            5.7.4 Route-based localization                                  249
      5.8  Autonomous Map Building                                          250
            5.8.1 The stochastic map technique                              250
            5.8.2 Other mapping techniques                                  253
 6    Planning and Navigation                                                257
      6.1 Introduction                                                      257
      6.2 Competences for Navigation: Planning and Reacting                  258
            6.2.1 Path planning                                              259
            6.2.2 Obstacle avoidance                                        272
      6.3 Navigation Architectures                                          291
            6.3.1 Modularity for code reuse and sharing                      291
            6.3.2 Control localization                                      291
            6.3.3 Techniques for decomposition                              292
            6.3.4 Case studies: tiered robot architectures                  298
Bibliography                                                                305
      Books                                                                  305
      Papers                                                                306
      Referenced Webpages                                                    314
      Interesting Internet Links to Mobile Robots                            314
Index


As you can see, it covers everything from the Perception to Logic and even drive systems

gvarndell 12-04-2010 06:10

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by davidthefat (Post 952490)
All who are trying this: I have a book for you.

:) :) :)

Doug Leppard 12-04-2010 08:51

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by Andrew Schreiber (Post 952137)
2003, taking the entire stack on the top of the bump and then controlling the bump could win. (I wasn't around this year perhaps someone could figure out how much of a swing it could be)

2004, several teams hung in autonomous and then controlled the bar, they swung the match score up to 150 points (+50 for their hang -100 for their opponents not being able to hang). I guess that isn't serious.

2006, winning auton was a huge benefit. I saw many matches decided by auton alone.

2008, 1114, do I need to say more? Ok, 217. There you go. Auton could decide the match.

2009, on Einstein the final match autons consisted of loading up the bots to go dump a load into their opponents, not as important but it added many balls to the arsenal of the dumpers (or 217's shooter).

2010, 469 shows how useful a good auton can be. If they get set in auton you are pretty much down 4 points at the start of the match (They score 2 balls and then recycle them as soon as people start moving).

I would say that 15 seconds is plenty of time to do something important.

I would agree. As a mentor I have been there for all auto years. If the game is designed right you can do a lot in 15 seconds.

2003 purpose, to knock your boxes to your side of field. Auto gave you a good position and start against your opponents.

2004 Purpose to knock down the balls early in game. Gave you a small advantage. But mostly if you moved during auto you go noticed. It was a fun one to do and watch.

2005 It was the tetra year and idea was to put the tetra in place. It was a bust. Almost no one could do much with it, too hard.

2006 Aim high place balls in corner or middle target. It was 1902's rookie year and we had a simple auto mode that consistently put 10 balls in corner and gave bonus points. Because of that we were 9-0 in Houston.

2007 Rack and Roll, place tube on rack. Many said it did not help. I calculated it made the difference in winning or losing several matches.

2008 Race around track and knock down balls. This was the most fun and challenging auto mode. Could make huge difference.

2009 Auto was hard and mostly in my opinion did not make a big difference unless you didn't move and you got nailed for not moving.

Bottom line auto modes are fun and most years make a difference. Longer than 15 seconds and it becomes boring because most teams do not even move during that time.

I think auto mode is important for a team because you stand out during that the 15 seconds awhile so many others just sit there.

kamocat 12-04-2010 10:24

Re: Programmers: I Have A Challenge For You
 
The thing I notice about all of those is that autonomous is always playing an assistive role to teleop. I wonder if that could be reversed?

toastnbacon 15-04-2010 16:09

Re: Programmers: I Have A Challenge For You
 
I love the sound of this, but I can almost guarantee my team won't.

gblake 18-04-2010 20:38

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by toastnbacon (Post 954010)
I love the sound of this, but I can almost guarantee my team won't.

See post #231 Link_to_231

gblake 18-04-2010 20:59

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by kamocat (Post 952630)
The thing I notice about all of those is that autonomous is always playing an assistive role to teleop. I wonder if that could be reversed?

Another mentor wrote something like this during the Rack-N-Roll season - I'm paraphrasing:

Once you create a machine that can score a ring (or some other useful function) during the autonomous period, you use that capability like a macro to automate scoring during the entire match.

A good autonomous scorer, becomes a predictable/reliable tool for the drive team to use throughout teleop. It multiplies their effectiveness and frees them to think about higher level concerns, instead of the minutiae of the actions a machine can carry out on their behalf.

How about starting with this general mindset and then pushing it as far as we are able?

Blake

WJF2011 18-04-2010 21:14

Re: Programmers: I Have A Challenge For You
 
Understand this. This is a beatable robot. All robots can be defeated with strategy. - Alexander McGee

Please see team 71 in 2002:
http://www.youtube.com/watch?v=h4slvnvPHW8

kamocat 18-04-2010 21:49

Re: Programmers: I Have A Challenge For You
 
Quote:

Originally Posted by gblake
Once you create a machine that can score a ring (or some other useful function) during the autonomous period, you use that capability like a macro to automate scoring during the entire match.

A good autonomous scorer, becomes a predictable/reliable tool for the drive team to use throughout teleop. It multiplies their effectiveness and frees them to think about higher level concerns, instead of the minutiae of the actions a machine can carry out on their behalf.

Higher-level control?
Funny you should mention that.

One way I'd like to automate is the movement of the robot. However, since we don't have a touchscreen to say "go here", I've been wondering what the best way to do that is.
One idea is to have "canned moves" selected with a button and configured with a joystick.
In 2009, the canned moves would have been a non-slip turn, a trailer-swinging spin, or a backwards flip around the trailer.
(Each of these moves will work within certain parameters (speed, rate of turn, angle of trailer, weight of trailer vs weight of 'bot.)

Can you think of a simpler or more intuitive interface?

davidthefat 29-04-2010 21:01

Re: Programmers: I Have A Challenge For You
 
Anyone have any progress with this? LOL I really have not even officially started on it, just brainstormed and now I have AP tests and stuff... I don't have much time, Spring Football is coming up, final projects are due and wow...


All times are GMT -5. The time now is 14:58.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi