Help! My robot has a mind of it's own!

Alright, the programmers on my team have run into a serious problem… It seems like we can’t quite control our autonomous mode. At the beginning of autonomous mode, our 2x ball grabbing mechanism (a big arm powered by pneumatics) bashes itself into the ground. All the code in autonomous mode has been completly removed (except for the basic neccesary stuff, getdata, putdata, etc) and yet the arm continues to hit the ground. I won’t have the code until Thursday at the latest, but if anyone has any idea what’s going on, it would be extraordinarily helpful. Thanks!

did you add the pwm initilazations to the begining of the code?

sorry for spelling mistakes

Well, lacking the code it is hard to make a guess at the issue … but, by chance, did you check out this page, describing how the RC can cause your bot, at the start of autonomous mode, to be stuck using stale values (last remembered values from OI)?

Are you using a single solenoid? If so, it’s probably not the code at all. You must know that single solenoids have what’s called a “default position,” which is the position the solenoid reverts to when it’s not given power. What happens is that when your robot switches on and the compressor starts pumping air, it will pump air through the solenoid in default position. Quick fix: swap the two pneumatic tubing outputs at the solenoid.
Hope this helps,

yea we’ve tried putting that stuff everywhere. Our arm runs on relays, and we want it to be this:
relay5_fwd = 1;
relay5_rev = 0;
relay6_fwd = 1;
relay6_rev = 0;
but whenever we printf it, it shows 1, 1, 0, 0 respectively, which makes absolutly no sense whatsoever seeing as how relay5_fwd AND relay5_rev shouldn’t be 1 at the same time…

In response to #3:
That thought did cross our mind, see above

In response to #4:
I’m not even sure if it’s running on a solenoid, or for that matter, what a solenoid is, I’m not an electrician (but I am trying to learn for next year)

Hmmmmm…we’ve had some problems with pneumatics acting strangely during autonomous mode occasoinally, though never consistantly. A few thoughts:

First, set the pneumatics to what they should be in the program at the top of every loop. Sometimes the default can get messed up and your pneumatics will adjust…

Search your program (even parts that you really really believe aren’t called) for any line of code that might set the arm doing what it does. Put printf’s near them and test, see if any of them are being called. Because theres usually one more pass through the main user function when auto is called (when all inputs are set to neutral), something may be set improperly.

If it’s still acting out of control, I’m out of ideas for the moment…probably electrical =.

Does the arm use a pneumatic cyliner to “bash itself into the ground”?

EDIT: I reread post #1 and now that I see that it does indeed operate on pneumatics, there will be a solenoid. I’m willing to bet the problem is what post #4 has described.

I just talked to one of our chief mechy’s and I guess all of our cylinders are on double acting solenoids.
Another thing of relative interest:
http://www.innovationfirst.com/FIRSTRobotics/
Issue two I already thought of, but havn’t yet had the chance to test it. I just got back from my regional last night, so I won’t be able to put any of this hardware testing into practice until nationals.

Guys ill give a lil heads up on this issue. I dont know the programming side but i will help you know the stance of the mechanical and electrical side. Our Arm has a “claw” on the end of it which has 2 positions. These are controlled by 2 independent double acting solenoids each on its own pistion. It seems that only one of them are extending at the start of auton and just stays at that position for auton mode. We have no problems with the arm in manual control. As for the issue with the controllers firmware issue, Ricky from IFI said that, that would not be the issue because it occurs during each time our bot went into auton mode.

–oops
It’s actually supposed to be the other way around.

ok, as the senior Mech on our team, I take great pride in…whacking dez in the head a few times. yes, we are using double acting selonoids. it occured to me that we may not be initializing the selonoids to the closed position at the beginning of the auton mode, im not a programmer on the team, although I am in c/C++ at school, so I do know what im talking about…to some extent. Our programmers have been working really hard to resolve this problem, and many helpful people from teams, and ifi at UTC tryed to give us a hand, and I thank everyone who helped for doing so.

Just thought I need to emphasize that corey…

South Albany was having a problem like this at the PNW regional this year, and I had to help solve it. Make absolutely sure you are downloading the correct file to the controller. They had 2 different projects, and just happened to download the wrong one. Also, if you are changing anything in the user_routines.c file, take that out, too, just to see if that is the problem. Only remove it, however, if you have added something extra that did not come pre-programmed. Good luck.

WHAT, your robot has a mind of it’s own!!!yeap, you never know whats going on in that mind of that robots. it goes crazy sometimes.~~nAncEe~~ :yikes: :smiley:

In reply to #14:
Yea, I’ve run into that problem before. That wasn’t it this time though…
What a funny coincidence, Colonie is a suburb of Albany, NY…

You may be on to something here, look at the instructions for the blue spikes on the innovation first web site. They give much more depth than the robot manual, and your print if may be pointing to the double valuve having both sides on and that according to the pneumatics manual, makes odd things happen. Good luck