To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.roboticsOpen lugnet.robotics in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / 1183
1182  |  1184
Subject: 
Re: Precise moves with cybermaster
Newsgroups: 
lugnet.robotics
Date: 
Mon, 7 Dec 1998 11:04:08 GMT
Original-From: 
Laurentino Martins <lmartins@marktest.pt[stopspam]>
Viewed: 
3322 times
  
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 it a full speed or you might overshot the spot you want to stop.
3. 1/4 in the tacho counter in very little. I'd call it precise enough.

This weekend I've made a program that detects impacts *without* sensors!
And it's flexible enough to work the whole range of speeds.
It detects when the motors are not responding to the speed I told them to be and stop them as soon as the speed slows down with an error.

It's pretty amazing the things one can do with the Tachometers!!! :-)


Laurentino Martins

[lau@mail.telepac.pt]
[http://www.terravista.pt/Enseada/2808/]

--//--

At 00:40 07-12-1998 Monday , you wrote:
> 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 is in Reply To:
  Precise moves with cybermaster
 
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); (...) (28 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
    

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR