Subject:
|
Precise moves with cybermaster
|
Newsgroups:
|
lugnet.robotics
|
Date:
|
Mon, 7 Dec 1998 00:40:08 GMT
|
Viewed:
|
1023 times
|
| |
| |
Anyone got a really good accurate move algorithm for a cybermaster. I'm
currently using the following mechanism...
BeginOfSub(0);
ClearTachoCounter("01");
On("01");
While(BOT_TACHO, 0, LT, BOT_VAR, BOT_COUNT);
SetVar(BOT_TEMP, BOT_TACHO, 1);
SetVar(BOT_TEMP2, BOT_TACHO, 0);
SubVar(BOT_TEMP, BOT_VAR, BOT_TEMP2);
If(BOT_VAR, BOT_TEMP, EQ, BOT_CONST, 0);
On("01");
Else();
If(BOT_VAR, BOT_TEMP, LT, BOT_CONST, 0);
Float("0");
On("1");
Else();
Float("1");
On("0");
EndIf();
EndIf();
EndWhile();
Off("01");
EndOfSub();
The above works reasonably well most of the time but I see a couple of
problems...
1. I often but not always get a small over-shoot.
2. Often at the end of a move tacho0 and tacho1 have slightly different
values (off by 1-4).
I use the above code for both forwards/backwards and turns. Anyone else got
anything better?
Also what type of bot chasis are people using with the cybermaster. I've
tried various types but
keep returning to the standard tracked version. I find that this loses some
accuracy on turns but
seems to deal with carpets better than other designs. However I would really
like to get a slower
moving bot with a greater resolution. Any suggestions?
Andy
PS Any good bumber designs yet :-)
|
|
Message has 1 Reply: | | Re: Precise moves with cybermaster
|
| I'm going to start working on this in a couple of days, but there are a few things you might want to look at: 1. Don't Float the motors. Float is very imprecise. Make them Stop in the spot! 2. If you are maneuvering, slow down the motors. Don't do (...) (26 years ago, 7-Dec-98, to lugnet.robotics)
|
2 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|