Skocz do zawartości

Pomiar przebytej drogi bez enkodera


Pomocna odpowiedź

Napisano

Sposób na obliczenie przebytej drogi z użyciem sonaru eliminujący błędy poślizgu.

Sposób możliwy do zastosowania gdy robot ma "kontakt" z przeszkodą i przeszkody są statyczne.

Dodatkowo z kompasem trzymającym kierunek(w przypadku gdy poślizg ma jedna strona) może to być całkiem skuteczny sposób pomiaru tak mi się wydaje ale trzeba to sprawdzić?

task main() 
{ 
int y=1,x=0; 

for(;;) 
{ 
x=SensorValue(sonarSensor);//przypisanie zmiennej x wartosci z odczytu sonaru
while(SensorValue[sonarSensor] > x-20)// kazda petla(pole) to 20 cm
{ 
motor[motorA] = 35;//silniki kreca az odleglosc zmniejszy sie o 20 cm
motor[motorB] = 35;// bez wzgledu na poslizgi
   } 
    if(SensorValue[sonarSensor]<20){break;};// robot staje na ostatnim w pelni wolnym polu
    	y++;//przesuniecie wspolrzednych na mapie o wartosc y; 
}}
  • 5 miesiące później...

Jeśli przeszkody są statyczne, to pomysł jak najbardziej jest dobry.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...