View Single Post
  #2   Spotlight this post!  
Unread 14-03-2011, 20:52
jhellr13 jhellr13 is offline
Registered User
FRC #4272
Team Role: Mentor
 
Join Date: Jan 2011
Rookie Year: 2010
Location: US
Posts: 187
jhellr13 is an unknown quantity at this point
Re: Please Review My Autonomous Codes

Quote:
Originally Posted by Greg McKaskle View Post
There are a number of things you may want to change. First off, unless you have disabled the safety for the motors, you cannot set the speed of a motor and simply leave it on for 1 or two seconds. If you don't tell it to stay on, it will turn off after 100ms.

I've attached a VI that I really wish we'd put into the palettes. It works the same as last year's Delay and Feed VI, but instead of feeding the watchdog it updates the given motor. You can use it like the delay block, but wire in seconds, and also wire in the error I/O for sequencing and the motor refnum for updating. Don't worry too much about the nap time input.

The snapshot shows what the equivalent diagram looks like with this. I've also attached a subVI, Autonomous Clipboard.vi, with the code --in case you want to copy/paste instead of rebuilding it.

Be sure to put the WPIMotor...DelayAndFeed VI into Program Files\National Instruments\LabVIEW 8.6\vi.lib\Rock Robotics\WPI\Motor Control folder before you use it.

Other considerations? -1 seems really fast to be reversing the robot for three seconds while moving the arm. I suspect that you'll need to dial that down. I also wouldn't be surprised if you need to lower the arm and then start backing up. But that dead-reckoning adjustment is something you should work out at or during the scrimmage.

Good luck.
Greg McKaskle
Hey Greg
I have a week before my team competes at our regional, and i am still attempting to make an autonomous mode. Our robot is basically a 6wd arcade drive with 4 motors. We are unsure about using the sensors because we haven't mounted them yet. My mentors wanted me to write a code for the line sensors, and one for if we don't have the line sensors. For the code without the line sensors, i was trying to use your attached code, but i ran into a problem because our arm is a relay, not a motor like shown, and i couldn't figure out a way to make it work. For the code WITH the line sensors, i have having trouble finding the spot to add my extra stuff. I know to keep the default line code, but we want some other things done. This is what we are trying to attempt in order of occurence: Follow the line to the T. Not following the Y. Next, or as its moving, raise our arm for x amount of time. Our arm is run by a spike relay. Next, have the robot move forward for let's say half a second to put the tube over the peg. Next, have the arm drop for x amount of time. Lastly, drive away for x seconds. Its a long wish list, but it would mean a lot. I'm a rookie programmer, and if i can get autonomous working with the help of others, would be a great feeling. All the timing and such, i can figure out, i am just stuck in where to put the stuff and how to make this code effectively.

Thanks,
Jared
Reply With Quote