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)

Mr. Lim 29-03-2010 20:40

Re: Programmers: I Have A Challenge For You
 
A wise mentor once told me:

The smart have a great understanding of the things they know.

The wise have a great understanding of the things they do not know.

David, as a teacher I would NEVER stop a student from pursuing a project as ambitious as this. Based on your other threads, you definitely strike me as a VERY smart young individual. My only word of advice is that I hope there can be a very wise (and hopefully smart!) mentor to provide some wisdom along the way. I guarantee it will be the difference between having the most hard-working, fulfilling and successful 6-weeks of your life, versus a few moments of undirected enthusiasm followed by sustained frustration, eventually giving up, and resorting to playing Madden on your hand-held.

If you can find that mentor and successfully work with them, I'll certainly give you an internet high-five regardless of whether you actually produce a functioning fully-autonomous robot...

Deal?

Chris is me 29-03-2010 20:41

Re: Programmers: I Have A Challenge For You
 
1024 could have done that in 2008.

I don't see why I should do this when I could spend my time winning instead, especially because game pieces are basically in random locations and 5 other robots are on the field too. Implementing fully autonomous control, with any semblance of strategy, isn't going to happen.

davidthefat 29-03-2010 20:47

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

Originally Posted by Mr. Lim (Post 945334)
A wise mentor once told me:

The smart have a great understanding of the things they know.

The wise have a great understanding of the things they do not know.

David, as a teacher I would NEVER stop a student from pursuing a project as ambitious as this. Based on your other threads, you definitely strike me as a VERY smart young individual. My only word of advice is that I hope there can be a very wise (and hopefully smart!) mentor to provide some wisdom along the way. I guarantee it will be the difference between having the most hard-working, fulfilling and successful 6-weeks of your life, versus a few moments of undirected enthusiasm followed by sustained frustration, eventually giving up, and resorting to playing Madden on your hand-held.

If you can find that mentor and successfully work with them, I'll certainly give you an internet high-five regardless of whether you actually produce a functioning fully-autonomous robot...

Deal?

:)
Well one of my programming mentors is very supportive of my ideas, I wanted to used C++ this year, but he didn't trust my skills to pull it off since I was brand new and just a sophomore, but by the end of the 6 weeks, I have managed to get his attention and hes letting me use C/C++ next year. the other one thinks I will get extremely frustrated or something trying to use C++ and move back to Java. I have learned C++ as my first language and have been using it for 4 year, I don't think I will give up on it. Yea both are great mentors, but I have yet to deliver this message to them yet. I told them to let all the other programmers to code in Java and I will just out perform them with my C++ code.

slavik262 29-03-2010 20:56

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

Originally Posted by Chris is me (Post 945335)
I don't see why I should do this when I could spend my time winning instead, especially because game pieces are basically in random locations and 5 other robots are on the field too. Implementing fully autonomous control, with any semblance of strategy, isn't going to happen.

Essentially what I was going to say. Ambition is never a bad thing - it should always be a reward to go above and beyond. However, I think you underestimate how much work fully autonomous code is. Granted, I've never done it myself, but imagine how much you have to do. I'm not doubting anybody's programming ability, but you have to face the facts: even if you do extensive work during the off-season, you only have six weeks to tailor all of your code to a game. Good AI that adapts to the current situation is difficult enough to write by itself. Making a robot respond to it adds another very large layer.

A much more practical goal would be semi-autonomous systems which would let the robot "help" the driver in accomplishing certain taks, i.e. lining up for a shot.

apalrd 29-03-2010 20:59

Re: Programmers: I Have A Challenge For You
 
It's amazing how much automation creeps up as the years go by...

In 2001 (Back in the day of PBASIC) we had a robot that could balance itself on the ramp with the push of a button. A weight on a pot was all it needed. That's autonomy, however basic it is.

Then, in 2003, FIRST added Autonomous mode. I've heard stories from former members and mentors of back then ("Back in 2003, the robot entered Autonomous and hit a wall at full speed") and how bad it was programming it ("We had 63 bytes of RAM and spent more code caching things into EEPROM to save RAM then actually doing stuff")

In 2004 we had a decent processor and real autonomous programs began. This year, we also had an automatic transmission (autonomy in Teleop). It automatically shifted based on RPM's of the wheels vs output speed,

Several of our other robots have had semi-autonomy in Teleop. 2007 had some pretty sweet arm software that I would say goes beyond the "rc car" definition (you could slide the end point in and out and it would calculate joint angles on the fly, as well as make sure it didn't hit itself on the way). This is my personal favorite robot of ours, so I went and wrote a LabVIEW demo to illustrate automation of the arm (combining some elements from the 2005 game, notably the ability to store game pieces).

This LabVIEW demo was known as "the belly manager" and basically allowed the operator to perform many tasks with only 4 buttons. The total actions: Get Floor, Get Human, Score Hi, Score Lo, Hold Hi, Hold, Belly1, Belly2, Belly3 (get and put belly), as well as several intermediate states. The operator requested a Score Hi, Score Lo, Get Human, or Get Floor and the robot automatically stored game pieces in the belly when slots were available, and always tried to either empty or fill the claw. Based on states of the claw or belly slots, it would either hold the arm in a high position that makes manipulation easy or fold down to a lower position to be more stable. With the single press of Score Hi or Score Lo, it would execute a sequence to move to the setup position (possibly many steps depending on starting position), "stab" the goal, drop the game piece, and return on a path that was as stable and efficient as possible. The "robot" would try to determine the operators desired action (score, retrieve, move, etc) and act accordingly. While this never exited the simulator, this kind of automation could easily be incorporated into FIRST robots.

Radical Pi 29-03-2010 20:59

Re: Programmers: I Have A Challenge For You
 
This would be a fun project to tackle...except for the problem that in the past years our programming team has barely even had a day to work our magic with the robot, much less calibrate it for autonomous operation.

I know of a few teams that have implemented an "autonomous kicker", which, after pushing a button, will automatically align the robot with the goal, calculate the kicker force required to hit the goal, and then kick. It's a great mechanism (one that has caused me to recieve complaints from our drivers...), but nowhere near the level you are talking about

davidthefat 29-03-2010 21:06

Re: Programmers: I Have A Challenge For You
 
So noone here is actually going to take the challenge? Oh well, I think I will have a great time trying to figure this out...

edit: if you think this will not go well with your team, just make your autonomous mode in one function that you just call in both the real autonomous mode and tele op. So if your driver does not want that, he can flip a switch so its back to full tele op

apalrd 29-03-2010 21:27

Re: Programmers: I Have A Challenge For You
 
I would accept your challenge, but I an quite sure the mentors wouldn't like the idea of full autonomy when a human driver can do much better. It all depends on the next game, which apparently the GDC is already working on.... So we just need Dave to add some extra punctuation to his sentences and we can get a nice head-start on the automation.

As for discussion of kicker automation, has anyone seen the Killer Bees robot? We have some automation on the kicker/ball-o-fier (suck button, kick button, distance knob) to result in a kicker recoiling with aprox. feet (nonlinear scaling), kick sequence (reverse ball motor, kill kicker motor, pop clutch, wait, re-engage clutch, restore ball motor, restore kicker motor, wait out rest of 2 second delay). This is all very basic to us. We also have a P control loop on our arm, with a total of 8 different gains to use depending on the loading, direction, and other factors. This is a simple Gain Scheduler, another thing that is very basic to us. Yet, many teams still struggle in software. I have reviewed the code of several local teams and seen that both of them limited themselves to Teleop, Disabled, and Autonomous Independent and/or Autonomous Iterative. They didn't know how to use the most basic of functions, like feedback nodes (One had "Jim the Cluster" that they passed into the main loop so they could use the shift registers), or Enum's (a different team had a bool for each option). Many teams still need to overcome many of the basic programming challenges, so FIRST should not require more automation then these teams can handle. That isn't to say it's not impossible, just something that the game won't require for a long time.

davidthefat 29-03-2010 21:31

Re: Programmers: I Have A Challenge For You
 
I just emailed my main mentor/teacher (hes my AP Comp Sci teacher) hopefully he will allow this and not think its too much of a mouthful for me

theprgramerdude 29-03-2010 21:35

Re: Programmers: I Have A Challenge For You
 
This sounds like fun. Team 2503 is willing to do it (no one else can actually object, since I am the only programmer.)

The only problem would be convincing the rest of the team; they're kind of addicted to driving it.

EthanMiller 29-03-2010 21:38

Re: Programmers: I Have A Challenge For You
 
Very new to programming here, but I'm working on that for our Breakaway bot, hopefully portable to next year. Our drive team's retiring (Seniors), so we can just tell the new guys that it's always been done that way.

We'll probably end up with a half broken autonomous period and then a teleop code, though. This year, mistake in auto. made the robot spin around for the entire auto period. It was at FLR... who remembers?

davidthefat 29-03-2010 21:42

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

Originally Posted by EthanMiller (Post 945397)
Very new to programming here, but I'm working on that for our Breakaway bot, hopefully portable to next year. Our drive team's retiring (Seniors), so we can just tell the new guys that it's always been done that way.

We'll probably end up with a half broken autonomous period and then a teleop code, though. This year, mistake in auto. made the robot spin around for the entire auto period. It was at FLR... who remembers?

At first, I did not take the autonomous mode seriously, I was seriously considering spinning around for the whole period, until out team leader got the IR sensors and made me do the autonomous per

theprgramerdude 29-03-2010 21:47

Re: Programmers: I Have A Challenge For You
 
On another note, does anyone know if it would be legal/possible to mount two camera's and route them back to the crio? They wouldn't have to be the Axis 206.

davidthefat 29-03-2010 21:50

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

Originally Posted by theprgramerdude (Post 945402)
On another note, does anyone know if it would be legal/possible to mount two camera's and route them back to the crio? They wouldn't have to be the Axis 206.

Yes I believe that you have to get another camera, and treat it as a digital input or something.

apalrd 29-03-2010 21:52

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

Originally Posted by EthanMiller (Post 945397)
We'll probably end up with a half broken autonomous period and then a teleop code, though. This year, mistake in auto. made the robot spin around for the entire auto period.

I've made it go backwards. Autonomous errors tend to be followed with more "What is this Palardymalarchy?" then match losses, however. Apparently joysticks are messed up so -1 = forward, and WPI dosen't fix this so -1 = forward. That's not what I would expect, so I made +1 = forward and -1 = reverse. Oops. I'm the only programmer, but I never do any major changes without approval of the lead mentors (mostly Jim) or change any of the drive team's controls without asking them. Most of your team would probably be happy with human drivers that can react to issues, mentor suggestions, strategy, etc. and regional wins more then they would like an innovation in control award. I'm not saying I wouldn't do full automation, but that FRC isn't ready for it uet.


All times are GMT -5. The time now is 18:52.

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