Go to Post I can't help looking at the new center piece my wife put on the dinning room table and think to myself, "non-functional decoration" - DarrinMunter [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 01-03-2006, 08:57
JamesBrown JamesBrown is offline
Back after 4 years off
FRC #5279
Team Role: Engineer
 
Join Date: Nov 2004
Rookie Year: 2005
Location: Lynchburg VA
Posts: 1,281
JamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond repute
How does your auto-aim work?

How does your auto aim work? Did you have the camera drive the pan and tilt motors on your turret until it was aimed right? Did you use encoders to line up the gun with the target? Did you mount the camera with tilt and pan servos to the turret? Or did you do something different?


Our camera searches with the pan and tilt servos. It is mounted to the gun once it as been tracking for a few loops (10 I believe). It pans and tilts the gun until the camera faces the same direction as the gun. This works very well for us, it allows us to shoot while moving in our low gear or to shoot while we get pushed.

So how (if at all) did you do it?
__________________
I'm Back


5279 (2015-Present)
3594 (2011)
3280 (2010)
1665 (2009)
1350 (2008-2009)
1493 (2007-2008)
1568 (2005-2007)
  #2   Spotlight this post!  
Unread 01-03-2006, 10:27
steven114 steven114 is offline
Programming Wizard and Team Captain
AKA: Steven Schlansker
FRC #0114 (Eaglestrike)
Team Role: Programmer
 
Join Date: Feb 2004
Location: Los Altos, CA
Posts: 335
steven114 is a jewel in the roughsteven114 is a jewel in the roughsteven114 is a jewel in the rough
Send a message via AIM to steven114
Re: How does your auto-aim work?

The camera finds the target, then uses the pan and tilt angles to grab a pair of positioning numbers from lookup tables. Those numbers are plugged in to the PID control which aims the turret, and then we fire
__________________
Shift to the left, shift to the right!
Pop up, push down, byte, byte, byte!
  #3   Spotlight this post!  
Unread 01-03-2006, 14:13
Eldarion's Avatar
Eldarion Eldarion is offline
Electrical Engineer / Computer Geek
AKA: Eldarion Telcontar
no team (Teamless Orphan)
Team Role: Alumni
 
Join Date: Nov 2005
Rookie Year: 2005
Location: Númenor
Posts: 558
Eldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond reputeEldarion has a reputation beyond repute
Send a message via AIM to Eldarion Send a message via Yahoo to Eldarion
Re: How does your auto-aim work?

The camera finds the target, calculates range and passes it to some physics equations which give speed. Speed of shooter wheels is controlled with PD loop, same with turret position.
__________________
CMUCam not working? Tracks sporadically? Try this instead: http://www.falconir.com!
PM me for more information if you are interested (it's open source!).

Want the FIRST Email blasts? See here: http://www.chiefdelphi.com/forums/sh...ad.php?t=50809

"The harder the conflict, the more glorious the triumph. What we obtain too cheaply, we esteem too lightly; it is dearness only that gives everything its value."
-- Thomas Paine

If it's falling apart it's a mechanical problem. If it's spewing smoke it's a electrical problem.
If it's rampaging around destroying things it's a programming problem.

"All technology is run on 'Magic Smoke' contained within the device. As everyone knows, whenever the magic smoke is released, the device ceases to function."
-- Anonymous

I currently speak: English, some German, Verilog, x86 and 8051 Assembler, C, C++, VB, VB.NET, ASP, PHP, HTML, UNIX and SQL
  #4   Spotlight this post!  
Unread 01-03-2006, 14:44
bear24rw's Avatar
bear24rw bear24rw is offline
Team 11 Programming Captain
AKA: Max T
FRC #0011 (MORT)
Team Role: Programmer
 
Join Date: Sep 2005
Rookie Year: 2005
Location: Flanders, NJ
Posts: 385
bear24rw is a splendid one to beholdbear24rw is a splendid one to beholdbear24rw is a splendid one to beholdbear24rw is a splendid one to beholdbear24rw is a splendid one to beholdbear24rw is a splendid one to beholdbear24rw is a splendid one to behold
Send a message via AIM to bear24rw
Re: How does your auto-aim work?

Our camera is mounted stationary on top of the shooter... we have two pots to keep track of the pan and tilt of the turret.... we find the pot value when the turret is center and the pot when the shooter is a 45 degrees, then use that center value to line the turret up with the camera servo pan, through the ratio of servo steps to pot steps, for the tilt, we take the servo tilt convert it to a degree, take the turret tilt (from the pot) convert that to a degree and then pass those through a lookup table generated from a physics equation to acuatly position the tilt.
  #5   Spotlight this post!  
Unread 01-03-2006, 15:17
phrontist's Avatar
phrontist phrontist is offline
Proto-Engineer
AKA: Bjorn Westergard
FRC #1418 (Vae Victus)
Team Role: College Student
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Falls Church, VA
Posts: 828
phrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond reputephrontist has a reputation beyond repute
Send a message via AIM to phrontist
Re: How does your auto-aim work?

We don't aim tilt automatically... it seems kind of pointless. You can hit the goal with the same tilt from a variety of distances, it's easier to just have the human driver do that. We have the camera mounted in the pan/tilt gimbal provided on the panning base of the shooter. The camera tries to track constantly, and when our Easy Button is depressed a PID loop tries to center the camera. It works quite well, only occassionally oscillating a bit when it's up close to the goal, but altering the PID equation to account for distance from the target could fix this.
__________________

University of Kentucky - Radio Free Lexington

"I would rather have a really big success or a really spectacular crash and failure then live out the warm eventual death of mediocrity" - Dean Kamen
  #6   Spotlight this post!  
Unread 01-03-2006, 15:28
Stuart's Avatar
Stuart Stuart is offline
#include coffee.h
FRC #1745 (P51- Mustangs)
Team Role: Mentor
 
Join Date: Jan 2006
Rookie Year: 2004
Location: Dallas, TX
Posts: 414
Stuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond reputeStuart has a reputation beyond repute
Send a message via AIM to Stuart
Re: How does your auto-aim work?

operator pulls the turret triger the camera locks on to the target and the turret then turns in an atempt(a very good attempt If I might add) to get the camera to 128. . . then if the operator hits his thumb switch the robot will look at the camera tit then looks up that value in a table and sets the cannon to that speed
__________________
Proud mentor of Team #1745 the P-51 Mustangs

If at first it doesn't work, use a hammer.
If that doesn't work, use a bigger hammer.
  #7   Spotlight this post!  
Unread 01-03-2006, 15:35
Chriszuma's Avatar
Chriszuma Chriszuma is offline
Jack of all trades
AKA: Chris Hammond
FRC #0068 (Truck Town Thunder)
Team Role: Alumni
 
Join Date: Oct 2004
Rookie Year: 2005
Location: Clarkston, MI
Posts: 290
Chriszuma is just really niceChriszuma is just really niceChriszuma is just really niceChriszuma is just really nice
Send a message via AIM to Chriszuma
Re: How does your auto-aim work?

We have no turret, and thus we didn't need servos. The camera is bolted (pop-riveted, whatever) right next to the shooter. The chassis driver holds the two top buttons down and the code takes over, aiming the robot by adjusting the drive motors in a PI loop. When the robot is ligned up a LED on the OI tells driver 2 that he can fire without missing. The LED actually turns on whenever it is aimed correctly, even if it's not being centered. It provides a nice way to tell if the robot is going to score a 3-pointer or poof someone in the head.
__________________
2006 T3 World Tour: Great Lakes - Waterloo - Palmetto - IRI
2006 Awards: Motorola Quality - RadioShack Innovation in Control

My website: http://zuma.phire.org/
Truck Town Thunder's website: http://trucktownthunder.com/

Last edited by Chriszuma : 01-03-2006 at 15:38.
  #8   Spotlight this post!  
Unread 01-03-2006, 16:46
Rickertsen2 Rickertsen2 is offline
Umm Errr...
None #1139 (Chamblee Gear Grinders)
Team Role: Alumni
 
Join Date: Dec 2002
Rookie Year: 2002
Location: ATL
Posts: 1,421
Rickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant future
Send a message via AIM to Rickertsen2 Send a message via Yahoo to Rickertsen2
Re: How does your auto-aim work?

The camera has a tilt axis only. The camera's pan is locked to our turret. I am using a lookup table that maps camera angle to gun angle. I wrote a nifty script to generate the lookup talbes using quadratic interpolation given a few points generated through trial and error. A PD control loop is used on both the pan and tilt axis. There is a FIR-like filter on the D term of the tilt. If the camera looses sight of the target the turret reverts to manual control mode. It is up to the turret driver to get the target back in sight.

To determine the position of the pan and tilt axis we have an encoder on each as well as a limit switch to determine "home" position. When the robot is power up, both axis automagically find their home position. At this point, the pan encoder is really only used to make sure we don't try to spin the turret around too many times and for the magic button that goes back to come posistion. The OI has "target locked" and "ready to fire" lights.
__________________
1139 Alumni

Last edited by Rickertsen2 : 01-03-2006 at 22:08.
  #9   Spotlight this post!  
Unread 01-03-2006, 17:55
Denz's Avatar
Denz Denz is offline
Registered User
FRC #0772 (Sabre Bytes Robotics)
Team Role: Programmer
 
Join Date: Jan 2006
Location: LaSalle, Ont, Canada
Posts: 66
Denz is on a distinguished road
Send a message via MSN to Denz
Re: How does your auto-aim work?

Camera is mounted on the robot, and is free to move with pan and tilt servos. When align trigger is pressed, the robot aligns itself with the target. When then shoot trigger is pressed, the camera takes the tilt angle, puts it into a table of values and gets the correct motor speed generated by trial and error testing. Then all we have to do it FIRE! We also have LEDs writed from the OI that turn on and off according to alignment, correct speed, camera on/off things like that.
__________________
www.sabrerobotics.com
  #10   Spotlight this post!  
Unread 01-03-2006, 19:23
DonRotolo's Avatar
DonRotolo DonRotolo is offline
Back to humble
FRC #0832
Team Role: Mentor
 
Join Date: Jan 2005
Rookie Year: 2005
Location: Atlanta GA
Posts: 7,014
DonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond reputeDonRotolo has a reputation beyond repute
Re: How does your auto-aim work?

Camera is mounted to the pan table, a PI loop (No pun intended, but no D either) drives the pan motor until the camera says the target is straight ahead. We also use a PI loop with a potentiometer to control tilt based on camera tilt angle. We liked the idea of only one sensor, while maintaining the camera's ability to look around for the target without being hindered by being tilted too.

Don
__________________

I am N2IRZ - What's your callsign?
  #11   Spotlight this post!  
Unread 01-03-2006, 22:07
Rickertsen2 Rickertsen2 is offline
Umm Errr...
None #1139 (Chamblee Gear Grinders)
Team Role: Alumni
 
Join Date: Dec 2002
Rookie Year: 2002
Location: ATL
Posts: 1,421
Rickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant future
Send a message via AIM to Rickertsen2 Send a message via Yahoo to Rickertsen2
Re: How does your auto-aim work?

Quote:
Originally Posted by Don Rotolo
Camera is mounted to the pan table, a PI loop (No pun intended, but no D either)...
Don
Why PI instead of PD or PID?
__________________
1139 Alumni
  #12   Spotlight this post!  
Unread 01-03-2006, 22:10
Unsung FIRST Hero
Greg Marra Greg Marra is offline
[automate(a) for a in tasks_to_do]
FRC #5507 (Robotic Eagles)
Team Role: Mentor
 
Join Date: Oct 2004
Rookie Year: 2005
Location: San Francisco, CA
Posts: 2,031
Greg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond reputeGreg Marra has a reputation beyond repute
Re: How does your auto-aim work?

Have any of you tried aiming your shooter without auto aim? I found it easier than I thought (in practice, anyway) to line up the robot to score from the base of the ramp. I don't think we're going to be accurate enough to score on the other end of our parabola, but from the base of the ramp we didn't have too much difficulty visually gauging whether we were in place or not.

Now autonomous...
  #13   Spotlight this post!  
Unread 01-03-2006, 22:22
JonBell JonBell is offline
Registered User
None #0546 (Technotics)
Team Role: Programmer
 
Join Date: Mar 2005
Rookie Year: 2004
Location: CT
Posts: 79
JonBell is just really niceJonBell is just really niceJonBell is just really niceJonBell is just really niceJonBell is just really nice
Send a message via AIM to JonBell
Re: How does your auto-aim work?

Quote:
Originally Posted by Greg Marra
Have any of you tried aiming your shooter without auto aim? I found it easier than I thought (in practice, anyway) to line up the robot to score from the base of the ramp. I don't think we're going to be accurate enough to score on the other end of our parabola, but from the base of the ramp we didn't have too much difficulty visually gauging whether we were in place or not.

Now autonomous...
Actually, now that you mention it...
Due to a number of technical fowl ups (including robot not being done on time, programming team degrading to just myself, and school being closed during last the last week, forcing our pickup to be the friday before), I spent a few hours playing with our robot with just the manual controls. I have had no problem adjusting the altitude (I made a knob that scales the shooter from max legal range to min to reach target), and pretty much always hit the right horizontal, but as distance increases, it's harder to line it up centered. Hopefully during the fix it window I'll be able to program the camera to stay fixed and just tell us when we're in the left-right sweet spot (it seems like this should be relatively easy).

One thing that I noticed with all of these auto-locator robots is this:
Will you have had enough practice shooting without your camera assistance? It seems like (on most robots), the camera is mounted below the shooter, making it very easy to get in between it and the vision target, a defense that may prove to be very successfull.
  #14   Spotlight this post!  
Unread 01-03-2006, 22:29
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,188
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: How does your auto-aim work?

Quote:
Originally Posted by Rickertsen2
Why PI instead of PD or PID?
I've always thought it was a rule of thumb to use PI for position control and PD for velocity control, especially with the dead band on the victors.

In position control, you want to accurately stick to one position. (yeah, I know... duh... ) With just P control, the error can get so small that you are sending a output of 0 (-10 - 10 - victor dead band) to the motor control. You want the integral term to look at that error building up and over power it.

In velocity control, you want to change your output on the fly, and compensate for where you think you need to be. PD works fine.
  #15   Spotlight this post!  
Unread 01-03-2006, 22:58
Rickertsen2 Rickertsen2 is offline
Umm Errr...
None #1139 (Chamblee Gear Grinders)
Team Role: Alumni
 
Join Date: Dec 2002
Rookie Year: 2002
Location: ATL
Posts: 1,421
Rickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant futureRickertsen2 has a brilliant future
Send a message via AIM to Rickertsen2 Send a message via Yahoo to Rickertsen2
Re: How does your auto-aim work?

Quote:
Originally Posted by Tom Bottiglieri
I've always thought it was a rule of thumb to use PI for position control and PD for velocity control, especially with the dead band on the victors.

In position control, you want to accurately stick to one position. (yeah, I know... duh... ) With just P control, the error can get so small that you are sending a output of 0 (-10 - 10 - victor dead band) to the motor control. You want the integral term to look at that error building up and over power it.

In velocity control, you want to change your output on the fly, and compensate for where you think you need to be. PD works fine.
Maybie i am mistaken, but it thought the opposite was true and you were suppsoed to use PD for position and PI for velocity/temperature. It seems to me that when controlling velocity, I would be very important because it ends up canceling out friction and other forces that would prevent P alone from reaching the setpoint. It seems like D is very important in a position control system because it makes the system stable. If you model a perfect frictionless system with a position P controller applying a force to a mass, the system will oscillate in a sinusiodal fashion. If you add D, it becomes stable. You make a good point though about I eliminating the steady state error.
In my PD code i have a minimum output signal that the controller is allowed to output so long as the controller is outside of its allowable tolerance. This minimum is just enough to overcome friction, the victor deadband etc.

Perhaps i should code in an I to my control loop.

Obviously PID is the ideal solution.
__________________
1139 Alumni

Last edited by Rickertsen2 : 01-03-2006 at 23:01.
Closed Thread


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
What Artist Influence You? Koko Ed Chit-Chat 12 01-12-2006 11:33
Springs and Work sanddrag Math and Science 11 17-05-2005 18:35
(part II) We aim for the stars Ken Leung General Forum 6 03-05-2005 16:57
Who knows how the motors [I]really[/I] work? Wetzel Chit-Chat 5 13-02-2002 21:50
Does anyone on this board work at home depot? mnkysp6353 General Forum 2 30-12-2001 13:27


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

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