Go to Post Life is too short to spend 40 hours a week doing something you are not enthusiastic about. - Karthik [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 07-02-2004, 21:58
Hop_of_752 Hop_of_752 is offline
Registered User
#0752 (Knights of Fury)
Team Role: Programmer
 
Join Date: Jan 2004
Location: Newark
Posts: 11
Hop_of_752 is an unknown quantity at this point
Send a message via AIM to Hop_of_752
Dead Reckonin

Hey, I was wondering can anyone give me some pointers or even tell me where I should start when it comes to dead reck'. I dont even know where to begin I have the concept down. I just need someone to point me in the right direction. Thanx
  #2   Spotlight this post!  
Unread 07-02-2004, 23:03
The Lucas's Avatar
The Lucas The Lucas is offline
CaMOElot, it is a silly place
AKA: My First Name is really "The" (or Brian)
FRC #0365 (The Miracle Workerz); FRC#1495 (AGR); FRC#4342 (Demon)
Team Role: Mentor
 
Join Date: Mar 2002
Rookie Year: 2001
Location: Dela-Where?
Posts: 1,564
The Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond reputeThe Lucas has a reputation beyond repute
Send a message via AIM to The Lucas
Re: Dead Reckonin

First of all you need a counter. The 26.2 ms area of the autonomous loop ( between Getdata() and Putdata()) should work nicely. You can just increment an int every time the new data if statement is true with no need to mess with interrupt driven timers. Next you can use the "rom" prefix to store large arrays of constants in program space instead of ram (ex: rom const unsigned char left_motor_values[] = {254, 195, 127, 42}). Create these arrays for left motor, right motor, and any other functions (10pt ball remover?) with one value for each segment or time period of the autonomous period (a segment could be to drive forward, or to turn, or to hit the ball). Also make a time length array that contains the number of cycles each segment should last. Then create a variable be the segment index for the arrays. Whenever the counter reaches value in the time length array, increment the index and reset the counter to zero to move on to the next segment. The last segment probably should do nothing, because if you just keep driving, you are bound to find a wall to slam into and the refs hate to see a robot spinning wheels and burning a hole in the carpet

To store more than one routine (left and right starting positions for example) on the robot, simply make more arrays with slightly different names (left_motor_values01, left_motor_values02, etc...) and use switches on the robot or OI to select which set of values to use. If you wanted something more advanced then you could make 2by2 matrices instead of arrays and use switches to select the row to use. Well that’s about all I can think of right now. Good Luck!
__________________
Electrical & Programming Mentor ---Team #365 "The Miracle Workerz"
Programming Mentor ---Team #4342 "Demon Robotics"
Founding Mentor --- Team #1495 Avon Grove High School
2007 CMP Chairman's Award - Thanks to all MOE members (and others) past and present who made it a reality.
Robot Inspector
"I don't think I'm ever more ''aware'' than I am right after I burn my thumb with a soldering iron"
  #3   Spotlight this post!  
Unread 08-02-2004, 18:56
Astronouth7303's Avatar
Astronouth7303 Astronouth7303 is offline
Why did I come back?
AKA: Jamie Bliss
FRC #4967 (That ONE Team)
Team Role: Mentor
 
Join Date: Jan 2004
Rookie Year: 2004
Location: Grand Rapids, MI
Posts: 2,071
Astronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud ofAstronouth7303 has much to be proud of
Re: Dead Reckonin

Creative! I would have hard-coded it!
  #4   Spotlight this post!  
Unread 08-02-2004, 19:28
Gabriel Gabriel is offline
Registered User
#1409 (Fightin' Llamas)
 
Join Date: Jan 2003
Location: Great Barrington MA
Posts: 150
Gabriel is just really niceGabriel is just really niceGabriel is just really niceGabriel is just really nice
Send a message via AIM to Gabriel
Re: Dead Reckonin

Keep in mind that dead reckoning is only as good as the hardware platform its on. In software everything should always be constant - the real world never works that way. Motors behave differently in different environments for example. You can calibrate your software fairly precisely, but it will probably degrade over time. If you're going to use dead reckoning you need something that will make sure it stays accurate. You can use rotation counters on your wheels for example but those have their own problems.
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
White Paper Discuss: 2003 Automated Dead Reckoning Test Code CD47-Bot Extra Discussion 10 07-09-2005 11:25
What to do with autonomous Rickertsen2 Programming 48 17-02-2004 16:22
Q&A Discuss: parts as dead weight? CD47-Bot Extra Discussion 3 24-01-2003 12:30
dead robot in the finals? srawls Rules/Strategy 2 24-03-2002 14:44
Did you notice robots dead on the field? Matt Reiland General Forum 16 19-03-2002 20:24


All times are GMT -5. The time now is 04: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