Go to Post Hype levels are reaching critical levels... - wjd13 [more]
Home
Go Back   Chief Delphi > Technical > Programming > Java
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 13-03-2011, 20:04
LeelandS's Avatar
LeelandS LeelandS is offline
Robots don't quit, and neither do I
AKA: Leeland
FRC #1405 (Finney Falcons)
Team Role: Tactician
 
Join Date: Nov 2007
Rookie Year: 2005
Location: Webster, NY
Posts: 545
LeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond reputeLeelandS has a reputation beyond repute
Double Tube Autonomous

Alright Chief Delphi community, this is something that I think needs to be talked about.

We've all seen a hand full of teams include a unique ability into their autonomous: The ability to hang two tubes in autonomous. I first heard of this phenomenon after hearing of the RoboWranglers inplementation of this. I then was able to witness it live during the Pittsburgh regional, from 1114.

I want to know your thoughts on this. How did they do it? What makes it work so precisely? Obviously, the act of hanging those two uber tubes is one that requires both serious speed and precision of control. Did they use a camera? Did they follow lines? What do you think?
__________________
My heart will forever lie with SparX
1126: 2008 - 2011; Where it All Began.
1405: 2013 - Present; A Wanderer is Born.

Work hard, play hard. And maybe someday...
Reply With Quote
  #2   Spotlight this post!  
Unread 13-03-2011, 20:05
Chris is me's Avatar
Chris is me Chris is me is offline
no bag, vex only, final destination
AKA: Pinecone
FRC #0228 (GUS Robotics); FRC #2170 (Titanium Tomahawks)
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2006
Location: Glastonbury, CT
Posts: 7,630
Chris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond repute
Send a message via AIM to Chris is me
Re: Double Tube Autonomous

You need a roller claw, patience, and practice. If you have those three things, you've got it.
__________________
Mentor / Drive Coach: 228 (2016-?)
...2016 Waterbury SFs (with 3314, 3719), RIDE #2 Seed / Winners (with 1058, 6153), Carver QFs (with 503, 359, 4607)
Mentor / Consultant Person: 2170 (2017-?)
---
College Mentor: 2791 (2010-2015)
...2015 TVR Motorola Quality, FLR GM Industrial Design
...2014 FLR Motorola Quality / SFs (with 341, 4930)
...2013 BAE Motorola Quality, WPI Regional #1 Seed / Delphi Excellence in Engineering / Finalists (with 20, 3182)
...2012 BAE Imagery / Finalists (with 1519, 885), CT Xerox Creativity / SFs (with 2168, 118)
Student: 1714 (2009) - 2009 Minnesota 10,000 Lakes Regional Winners (with 2826, 2470)
2791 Build Season Photo Gallery - Look here for mechanism photos My Robotics Blog (Updated April 11 2014)
Reply With Quote
  #3   Spotlight this post!  
Unread 13-03-2011, 20:06
davidthefat davidthefat is offline
Alumni
AKA: David Yoon
FRC #0589 (Falkons)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2010
Location: California
Posts: 792
davidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud of
Re: Double Tube Autonomous

From the looks of it, I am not impressed by the programming, but I am impressed for being able to do the feat. I heard 33 used a potentiometer to track the angle of the robot.
__________________
Do not say what can or cannot be done, but, instead, say what must be done for the task at hand must be accomplished.
Reply With Quote
  #4   Spotlight this post!  
Unread 13-03-2011, 20:17
mwtidd's Avatar
mwtidd mwtidd is offline
Registered User
AKA: mike
FRC #0319 (Big Bad Bob)
Team Role: Mentor
 
Join Date: Feb 2005
Rookie Year: 2003
Location: Boston, MA
Posts: 714
mwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond reputemwtidd has a reputation beyond repute
Re: Double Tube Autonomous

Quote:
Originally Posted by davidthefat View Post
From the looks of it, I am not impressed by the programming, but I am impressed for being able to do the feat. I heard 33 used a potentiometer to track the angle of the robot.
Actually they use a gyro for that. Encoders for distance.

What I think is also an interesting question is how accurate the teams are.
First tube and second tube accuracy.
I know 40 had a good 1 tube cap, but when they went for 2 sometimes they missed both.
__________________
"Never let your schooling interfere with your education" -Mark Twain
Reply With Quote
  #5   Spotlight this post!  
Unread 15-03-2011, 01:11
PatJameson PatJameson is offline
Registered User
FRC #0011 (MORT)
Team Role: Alumni
 
Join Date: Mar 2011
Rookie Year: 2011
Location: USA
Posts: 16
PatJameson is on a distinguished road
Re: Double Tube Autonomous

Quote:
Originally Posted by lineskier View Post
I know 40 had a good 1 tube cap, but when they went for 2 sometimes they missed both.
This may have been because they needed to speed up their first cap in order to have time to complete a second one.
Reply With Quote
  #6   Spotlight this post!  
Unread 15-03-2011, 01:27
Chris is me's Avatar
Chris is me Chris is me is offline
no bag, vex only, final destination
AKA: Pinecone
FRC #0228 (GUS Robotics); FRC #2170 (Titanium Tomahawks)
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2006
Location: Glastonbury, CT
Posts: 7,630
Chris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond reputeChris is me has a reputation beyond repute
Send a message via AIM to Chris is me
Re: Double Tube Autonomous

They really didn't miss their first cap all that often. I think the match you reference is one where they just got unlucky.

As a side note, I'm glad with the completion of autonomous mode 40 got to show the virtues of a "single scorer" alliance.
__________________
Mentor / Drive Coach: 228 (2016-?)
...2016 Waterbury SFs (with 3314, 3719), RIDE #2 Seed / Winners (with 1058, 6153), Carver QFs (with 503, 359, 4607)
Mentor / Consultant Person: 2170 (2017-?)
---
College Mentor: 2791 (2010-2015)
...2015 TVR Motorola Quality, FLR GM Industrial Design
...2014 FLR Motorola Quality / SFs (with 341, 4930)
...2013 BAE Motorola Quality, WPI Regional #1 Seed / Delphi Excellence in Engineering / Finalists (with 20, 3182)
...2012 BAE Imagery / Finalists (with 1519, 885), CT Xerox Creativity / SFs (with 2168, 118)
Student: 1714 (2009) - 2009 Minnesota 10,000 Lakes Regional Winners (with 2826, 2470)
2791 Build Season Photo Gallery - Look here for mechanism photos My Robotics Blog (Updated April 11 2014)
Reply With Quote
  #7   Spotlight this post!  
Unread 15-03-2011, 01:43
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Re: Double Tube Autonomous

Quote:
Originally Posted by SparxProgrammer View Post
Alright Chief Delphi community, this is something that I think needs to be talked about.

We've all seen a hand full of teams include a unique ability into their autonomous: The ability to hang two tubes in autonomous. I first heard of this phenomenon after hearing of the RoboWranglers inplementation of this. I then was able to witness it live during the Pittsburgh regional, from 1114.

I want to know your thoughts on this. How did they do it? What makes it work so precisely? Obviously, the act of hanging those two uber tubes is one that requires both serious speed and precision of control. Did they use a camera? Did they follow lines? What do you think?
I can't speak for every team, but the way we are shooting to do this (competing this weekend) is by creating a queue of smaller, more controllable events. You can create a bunch of commands (Drive Distance, Turn Degrees, Raise Arm, etc), tune the heck out of each one separately, and then string them together to do something more difficult. The code from 254's robot last year had a system like this: http://www.chiefdelphi.com/media/papers/2397

We did the same type of thing in Java this year by creating an Interface for AutoModeCommands and making each one of our subtasks as a class that implements the interface. We could then just make a queue of tasks and execute them one by one. Easy. If you want to see more I can send you some code snippets.

Quote:
Originally Posted by davidthefat View Post
From the looks of it, I am not impressed by the programming ... I heard 33 used a potentiometer to track the angle of the robot.
You may not be impressed for the same reason you think a potentiometer can keep track of robot heading.
Reply With Quote
  #8   Spotlight this post!  
Unread 15-03-2011, 15:09
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Re: Double Tube Autonomous

Quote:
Originally Posted by Tom Bottiglieri View Post
If you want to see more I can send you some code snippets.
Here is the AutoModeController. You give this guy a list of commands, and then tell it to execute them.
PHP Code:
public class AutoModeController {
    
// Variables

    
NutronsQueue cmdList = new NutronsQueue();
    
AutoModeCommand curCmd null;

    
// Add commands
    
public void addCommand(AutoModeCommand cmd) {
        
cmdList.push(cmd);
    }

    public 
void flush() {
        
cmdList.removeAllElements();
        
curCmd null;
    }

    
// Execute commands
    
public void handle() {
        
boolean firstRun false;
        if(
curCmd == null) {
            
curCmd = (AutoModeCommandcmdList.pop();
            if(
curCmd != null) {
                
System.out.println("Popped a command: " curCmd);
            }
            
firstRun true;
        }

        if(
curCmd != null) {
            if(
firstRun) {
                
curCmd.init();
                
firstRun false;
            }
            if(
curCmd.doWork()) {
                
// this will happen when command is done
                // Will grab next command on next call of handle()
                
curCmd.finish();
                
curCmd null;
                
System.out.println("work done");
            }
        }
        else {
            
// Maybe add something for do nothing?
        
}
    }

Here's an example of an AutoModeCommand (In this case, it raises the elevator)
PHP Code:
public class SignalElevatorPosCommand implements AutoModeCommand {

    
double wantedPos 0;

    public 
SignalElevatorPosCommand(double pos) {
        
wantedPos pos;
    }

    public 
boolean doWork() {
        
ElevatorController.getInstance().gotoScoringPosition(wantedPos);
        return 
true;
    }

    public 
void init() {
        
// Init code for this command goes here!
    
}

    public 
void finish() {
        
// Clean up goes here!
    
}

Here's a way to set it all up:
PHP Code:
public class MyCoolAutonomousRobot extends IterativeRobot {

    
AutoModeController ac = new AutoModeController();
 
    public 
void autonomousInit() {
       
ac.flush();
       
ac.addCommand(new DriveDistanceCommand(100.7510)); // 10 feet, .75 power, 10 sec timeout
       
ac.addCommand(new SignalElevatorPosCommand(Elevator.POS_TOP_PEG)); 
       
ac.addCommand(new CapTubeCommand());
       
ac.addCommand(new DriveDistanceCommand(-10,0.75,10));
       
ac.addCommand(new TurnDegreesCommand(-1801.03.0); // 180 deg, 1.0 max power, 3s timeout
    
}

    public 
void autonomousPeriodic() {
        
ac.handle();
    }

Hope this helps!
Reply With Quote
  #9   Spotlight this post!  
Unread 16-03-2011, 18:57
davidthefat davidthefat is offline
Alumni
AKA: David Yoon
FRC #0589 (Falkons)
Team Role: Alumni
 
Join Date: Jan 2011
Rookie Year: 2010
Location: California
Posts: 792
davidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud ofdavidthefat has much to be proud of
Re: Double Tube Autonomous

Quote:
Originally Posted by Tom Bottiglieri View Post

You may not be impressed for the same reason you think a potentiometer can keep track of robot heading.
I assumed it was for the motors to make a giant servo.
__________________
Do not say what can or cannot be done, but, instead, say what must be done for the task at hand must be accomplished.

Last edited by davidthefat : 16-03-2011 at 19:00.
Reply With Quote
  #10   Spotlight this post!  
Unread 17-03-2011, 19:06
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,050
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Double Tube Autonomous

For some reason I was under the impression that you could only start with one ubertube? Or did they grab a tube from their teammates...
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
Reply With Quote
  #11   Spotlight this post!  
Unread 17-03-2011, 23:40
PatJameson PatJameson is offline
Registered User
FRC #0011 (MORT)
Team Role: Alumni
 
Join Date: Mar 2011
Rookie Year: 2011
Location: USA
Posts: 16
PatJameson is on a distinguished road
Re: Double Tube Autonomous

Quote:
Originally Posted by virtuald View Post
For some reason I was under the impression that you could only start with one ubertube? Or did they grab a tube from their teammates...
This is correct.

<G06> Each ROBOT must be in contact with one UBERTUBE. No more than one ROBOT may be contacting an UBERTUBE.

Check out some double cap videos to see how some teams do it.
Reply With Quote
  #12   Spotlight this post!  
Unread 18-03-2011, 18:03
Kingofl337's Avatar
Kingofl337 Kingofl337 is offline
You didn't see anything....
AKA: Adam
FRC #0501 (Power Knights)
Team Role: Mentor
 
Join Date: Feb 2005
Rookie Year: 1998
Location: Manchester, NH
Posts: 861
Kingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond reputeKingofl337 has a reputation beyond repute
Send a message via Yahoo to Kingofl337
Re: Double Tube Autonomous

I posted in this thread how we did it.

We did use Java.

Linky
__________________
FIRST Team 501 PowerKnights - Mentor
FIRST Team 40 Checkmate - Mentor Alum
FIRST Team 146 Blue Lightning - Alumni
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 11:20.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


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