Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   OI Input Autonomous (http://www.chiefdelphi.com/forums/showthread.php?t=53426)

kaszeta 09-02-2007 00:33

Re: OI Input Autonomous
 
Quote:

Originally Posted by Astronouth7303 (Post 574732)
Close - You can set outputs, but they don't actually make it to the pins.

A useful nitpick. I use this very technique to demonstrate how the drive train feedback loop works every year, and how you can make sure the values are correct before enabling it.

Tt321b 09-02-2007 22:57

Re: OI Input Autonomous
 
I like that code that you found and i tried using it in our code but I get a syntax error on the line that says:

void auton_selector(void)

I declared the global variable in user_routines.c and put the extern int in the user_routines_fast.c (both are in the correct places). I changed the AUTON_UP and AUTON_DN to buttons on the joystick. I changed the 94 to 99. I also checked the lines before it so see if I left out a ; or } but I did'nt.

I also got another syntax error when I try using auton_select in user_routines_fast.c to select the autonomous.


Thanks!

TheRoche 10-02-2007 17:31

Re: OI Input Autonomous
 
Quote:

Originally Posted by pheadxdll (Post 574565)
I thought the Master code didn't allow any data transfer between the OI and the RC during autno mode.

I thought this too, for the competition radio completely disconnects the RC and OI, so maybe do this when you are on the field, but the match has not started

Mike Betts 10-02-2007 19:43

Re: OI Input Autonomous
 
The RC and OI are always in communication with each other (as long as they are on and the radio link is good). The OI/RC master code determines what information is passed depending on the competition port state (disabled, autonomous, et cetera).

AlmightyPiMan 10-02-2007 20:58

Re: OI Input Autonomous
 
sorry for my lack of knowledge, i'm a rookie, but i don't get why a team would want to set a button for autonomous mode at all. isn't it controlled via the competition port and thus out of our hands? in the docs for the OI it says that if you jumper pins 5 and 8, it puts the bot into auto mode. i imagine that's what they do at the competitions, not have a team member push a button on the controller...

Jim E 10-02-2007 21:10

Re: OI Input Autonomous
 
Basically, you want to build a dongle to simulate autonomous mode for code testing. Yes, during the competition, the field controls autonomous, but you need the dongle to test out your code (if any) prior to getting there. It can be built with $5.00 of parts. It is VERY USEFUL to have. Do the right thing and build it. Do not forget the disable switch either. You never know when your code registers may carry over and find you robot going backwards at maximum speed when you least expect it.

kaszeta 10-02-2007 21:39

Re: OI Input Autonomous
 
Quote:

Originally Posted by AlmightyPiMan (Post 575711)
sorry for my lack of knowledge, i'm a rookie, but i don't get why a team would want to set a button for autonomous mode at all. isn't it controlled via the competition port and thus out of our hands? in the docs for the OI it says that if you jumper pins 5 and 8, it puts the bot into auto mode. i imagine that's what they do at the competitions, not have a team member push a button on the controller...

You're confusing two (related) issues:

1. You can build a dongle or jumper the competition ports to test your autonomous mode during development. At the competition, you are correct, the competition port handles this.

2. Many teams have multiple autonomous strategies, or at least variations on strategies (for example, left- and right-handed versions of the same strategy for starting on that particular side of the field). Our team usually has a whole suite of strategies (eight last year, although only three of them turned out to be useful, plus a fourth we developed at the competition based upon experience), and we pick them right before the match in consultation with the rest of our alliance. Sometimes we also call an audible and change the strategy right at the last possible second. Of course, you can't change the code at this point, so you need a way to change which autonomous mode you're running, either from the robot (switches and pots hooked to digital or analog inputs), or from the OI (using the OI ports). The latter is what people are talking about here, ways of setting the autonomous strategy while the bot is disabled and the field is being set up, but before the match (and autonomous mode itself) starts.

Real example: Last year, our primary strategy was to drive towards the goal, line up, and shoot copious amounts of balls into the target. We had three versions of that strategy, with different amounts of distance to drive depending on which position we started from.

We also found that the other alliance would usually dedicate at least one bot into crashing into us during autonomous to either block us or mess with our aim, usually by dead-reckoning across the field. So we had a variant of the primary strategy that waited several seconds in our starting box before driving towards the goal and scoring (we scored very, very quickly, so we could afford to wait five seconds). This (usually) allowed the other team's defensive bot to drive right by, and we'd then move up and score. The decision on whether to drive directly at the goal or do the delayed version was decided by the drive team based upon how the other alliance lined up their bots: if they were obviously aiming to intercept us, we'd change strategies.


All times are GMT -5. The time now is 23:54.

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