Skocz do zawartości

Sterowanie robotami LineFollower


Xweldog

Pomocna odpowiedź

Co do mostków w LF. Gdy jedzie prosto, oba silniki na full to nie pojedzie szybciej niż to full. Co można zrobić gdy zgubi linię:

- wyłączyć przeciwny silnik: przez chwilę jednak będzie się kręcił i promień skrętu będzie malał aż ustali się minimalny. Tu czas odszukania linii będzie najdłuższy

- zahamować go: stanie "natychmiast". Promień skrętu praktycznie od razu będzie minimalny a za tym krótszy czas odszukania linii

- dać mu przeciwne obroty. Promień skrętu będzie najmniejszy, praktycznie to LF będzie się kręcił w miejscu. I tu na pewno będzie też najkrótszy czas odszukania linii.

Co myślisz / myślicie o powyższych punktach ?

Link do komentarza
Share on other sites

To chyba nie miejsce na dywagacje o algorytmach LF. Moim zdaniem obaj mamy takie pojęcie o sterowaniu zaawansowanym LFem jak typowy posiadacz prawa jazdy (czyli ja na przykład) o technice jazdy na OS Mistrzostw Polski. Ja co najwyżej widzę, że nie jeżdżą do tyłu - to wszystko.

Nie jest celem jak najszybsze znalezienie linii tylko jak najszybsze pokonanie trasy zgodnie z przepisami - to dwie różne rzeczy.

Link do komentarza
Share on other sites

To nie są dwie różne tylko jedna, ta sam rzecz: jak zminimalizować czas przejazdu. Jak miejsce nie to co - mam zakładać osobny temat ?

Jak napisałem, w danym wykonaniu, silniczkach, mostku ect, prędkości full na w prost się nie przekroczy. Czyli, jedyne co można zrobić to max. skrócić czas tracony na odszukanie / naprowadzenie modelu na linię. Podałem 3 warianty, do pierwszego nie jest potrzebny mostek, w drugim wystarczy pół a pełny jest potrzebny do trzeciego. Jeżeli ktoś już ma LF z mostkami to modyfikując program może sprawdzić wszystkie trzy warianty. Ale tu uwaga, w trzecim wobec mostka będą większe wymagania prądowe.

Link do komentarza
Share on other sites

Xweldog, od początku tej strony wątku (a być może i wcześniej) pisałeś o "minimalzacji czasu odszukania linii". Próbowałem Cię przekonać, że to nie to samo co minimalizacja czasu przejazdu. Teraz po namyśle przyznałeś rację i udajesz, że sprawy czasu odszukiwania linii w ogóle nie było. Co więcej, wciskasz, że to to samo. Nie bądź dziecinny, wystarczy spojrzeć kilka postów wyżej. Mam tu cytować i bić pianę? To fajnie, że przemyślałeś problem i doszedłeś do tych samych wniosków co ja ale nie ściemniaj, że to to samo zagadnienie. Jeden dobrze wykonany stały fragment gry nie zapewnia zwycięstwa. Na sukces składa się strategia pokonywania całej trasy i umiejętnego łączenia wszystkich decyzji w płynną jazdę po torze (o, to zabrzmiało całkiem nieźle, aż się sobie dziwię).

Robot który będzie starał się szybko odszukać linię poprzez wyhamowanie do zera a nawet cofnięcie koła wewnętrznego wytraci cały pęd i nawet kiedy linię już znajdzie, będzie praktycznie stał w miejscu. Taki cosiek nie wygra z maszynką która robi wszystko by się nie zatrzymać nawet kosztem dłuższego (niż tamten) braku kontaktu z linią. Może robocik zbudowany z prostego schemaciku na kilku tranzystorach będzie zatrzymywał któryś silnik lub nawet go cofał ale jakoś nie zauważyłem, by któryś z tych przyssawkowych mutantów z pierwszej piątki w Polsce robił takie numery.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Cały Marek1707, czy Ty nie możesz obejść się bez napaści, wydziwiania, przeinaczania, kombinowania że rzekomo się z czegoś wycofuję ( jeżeli już to z tego, że LF nie potrzebuje mostków ). Spodziewałem się "mocnego argumentu" że nikt tak nie robi. Podziwiam Twój upór z brakiem zrozumienia oczywistej oczywistości, że całkowity czas przejazdu to suma czasów przejazdów po prostych i przez zakręty. A LF na zakrętach zawsze musi zwolnić. Dlaczego, po co ? By odnaleźć linię i znów dawać na full ( oczywiście jeżeli skończy się krzywizna ). Nie musisz mnie przekonywać do tego co oczywiste i b.dobrze wiem. Nie chodzi mi o czas potrzebny µC na obróbkę inf tylko czas potrzebny na fizyczne przemieszczenie się LF, skręt. Jakie "hamowanie do zera" ? Nic z tego nie zrozumiałeś więc coś sobie uroiłeś. Myślałem o optymalizacji skręcania w ruchu. Ale, dalej to na pewno nie w tym temacie i na pewno nie z Tobą.

Link do komentarza
Share on other sites

"Cały Marek1707, czy Ty nie możesz obejść się bez napaści, wydziwiania, przeinaczania, kombinowania " - na jakoś mi trudno, wybacz. Czasem wyłazi ze mnie 👹

W sumie to liczyłem, że odezwą się Koledzy od LFów (takie dyskusje zawsze zwiększają oglądalność 😉 ) ale tu pewnie nie zaglądają, szkoda.

Link do komentarza
Share on other sites

Też liczyłem na głosy innych. Przyszło mi na myśl, że warto rozważyć skręcanie po zaobserwowaniu, że jedne LF b.ładnie i szybko pokonują zakręty ( czyli, odszukują linię ) a inne nie. Nie wykluczam, że co niektórzy b.dobrze wiedzą jak duże ma to znaczenie ale nie chcą się dzielić doświadczeniami. Bo po co przysparzać sobie nowych konkurentów na zawodach ?

Link do komentarza
Share on other sites

Robot który będzie starał się szybko odszukać linię poprzez wyhamowanie do zera a nawet cofnięcie koła wewnętrznego wytraci cały pęd i nawet kiedy linię już znajdzie, będzie praktycznie stał w miejscu. Taki cosiek nie wygra z maszynką która robi wszystko by się nie zatrzymać nawet kosztem dłuższego (niż tamten) braku kontaktu z linią. Może robocik zbudowany z prostego schemaciku na kilku tranzystorach będzie zatrzymywał któryś silnik lub nawet go cofał ale jakoś nie zauważyłem, by któryś z tych przyssawkowych mutantów z pierwszej piątki w Polsce robił takie numery.

Mój się cofa, mam tak dobrane nastawy, że w odpowiednich momentach jedno koło zaczyna obracać się do tyłu.

A w temacie szybciej się nie udzielałem, bo nie spodziewałem się znaleźć takiej dyskusji w sprawdzaniu schematów 🙂

Link do komentarza
Share on other sites

Może zacznijmy od skręcania robota mającego dwa koła napędzane dwoma silniczkami. Są takie możliwości spowodowania wykonania skrętu:

- 1 wciąż dostaje prąd full, 2 zwalnia np. PWM

- 1 wciąż full, 2 przerwano dostarczanie prądu

- 1 wciąż full, 2 został zahamowany elektrodynamicznie ( zwarcie pinów )

- 1 wciąż full, 2 dostaje odwrotny prąd i kręci się w drugą stronę

- 1 staje ( załóżmy że przerwa prądu ), 2 zaczyna się kręcić do tyłu

To chyba nie są wszystkie przypadki ale imo tylko te 4-ry pierwsze są warte rozważenia. Bo w trzech pierwszych robot wciąż się porusza m/w do przodu ale będą różne promienie skrętu. W czwartym, przestaje się poruszać do przodu ale za to ma najmniejszy promień skrętu.

Nie skreślał bym 4-tego bo im mniejszy promień skrętu tym szybciej czujka LF dotrze do szukanej linii.

Link do komentarza
Share on other sites

O fajnie, dzięki.

Skoro znaleźliśmy pole na którym spotykają się algorytmy z tranzystorami, to może czegoś się dowiem. Jeśli ktoś z Poszukiwaczy Linii mógłby podzielić się swoimi doświadczeniami z wypracowywania algorytmów sterowania LFami, to zapraszam do dyskusji. Jeśli ma to zaowocować lepszymi konstrukcjami, to może warto?

Moje zdanie już znacie - wystarczy tylko do przodu, w imię sprawności i osiągów, na pohybel mostkom. Jasne, że każdy może sobie wyobrazić sytuację w której cofanie kółka szybciej przesunie niuchacz robota ale czy taka sytuacja w ogóle w nowych i szybkich LFach jest brana pod uwagę? Czy w rezultacie taki obrót dookoła środka leżącego wewnątrz obrysu robota wychodzi mu na zdrowie a właścicielowi na podium? Czy warto wstawiać regulację dwukierunkową?

EDIT: Ojć, chciałem napisać zgrabną zajawkę dyskusji a tu Xweldog ubiegł mnie ciężkimi technikaliami. No trudno..

Link do komentarza
Share on other sites

Nie skreślał bym 4-tego bo im mniejszy promień skrętu tym szybciej czujka LF dotrze do szukanej linii.

Tak właśnie działa to u mnie. Jeśli macie jakieś pytanie to piszcie, a odpowiem (albo BotlandTeam) jak to wygląda w praktyce 🙂

Moje zdanie już znacie - wystarczy tylko do przodu, w imię sprawności i osiągów, na pohybel mostkom. Jasne, że każdy może sobie wyobrazić sytuację w której cofanie kółka szybciej przesunie niuchacz robota ale czy taka sytuacja w ogóle w nowych i szybkich LFach jest brana pod uwagę? Czy w rezultacie taki obrót dookoła środka leżącego wewnątrz obrysu robota wychodzi mu na zdrowie a właścicielowi na podium? Czy warto wstawiać regulację dwukierunkową?

Przy długiej prostej, za którą od razu jest przykładowo kąt prosty takie zachowanie jest pomocne. Nie mówię, że kręcę do tyłu z dużą prędkością, bardziej rozpatrywałbym to na kręcenie w tył, które po zaimplementowaniu w praktyce sprowadza się do mocnego hamowania oraz do ewentualnie małego cofnięcia. Teoria, a zachowanie silników (czas reakcji) to dwie różne sprawy.

Link do komentarza
Share on other sites

Marek1707, nie załamuj się moimi wywodami. Ale, Treker już dał odpowiedź jaki sposób skręcania umożliwia najszybsze odszukanie linii, zwłaszcza te 90°. Niestety, mostki.

Wątpliwości u mnie zbudziła ma własna podpowiedź bodajże Sosonusowi, że LF ich nie trzeba. Męczyło mnie czy rzeczywiście, czy przypadkiem nie napisałem to pochopnie.

Link do komentarza
Share on other sites

Nie mam powodów do załamania. Chcę (i pewnie nie tylko ja) się dowiedzieć jak sterują LFami najlepsi. Na razie Treker dał odpowiedź jak to zrobił u siebie, dziękuję. Ciekawe czy będzie wielu chętnych na zdradzenie tajemnic swojego warsztatu. Zaznaczam, że nie chodzi tu o szczegóły, czasy, kody programów itp. Tylko ogólne ale prawdziwe wytyczne mogące wpłynąć na sprzęt, który zabieramy na pokład. Czy na rzeczywistych, zawodniczych trasach wasze LFy kręcą kółkami wstecz?

Link do komentarza
Share on other sites

W naszych konstrukcjach również wykorzystujemy sterowanie silnikami w przeciwną stronę - znacząco ułatwia to pokonywanie krętych tras. Przy długiej prostej, po której spotkamy zakręt pod kątem 90° i prędkościach >2m/s bardzo ciężko utrzymać się 'nad linią' bez ustawienia przeciwnych obrotów na jednym z silników. Tak jak wspominał Treker, głównie dla szybszego wyhamowania silnika, sytuacja kiedy drugie koło zdąży znacząco rozkręcić się w drugą stronę zdarza się tylko w skrajnych przypadkach. Chodzi o to, aby znaleźć kompromis pomiędzy dokładnością śledzenia linii, a prędkością pokonywania trasy, aby bezsensownie nie wytracać prędkości na łagodnych zakrętach, które nie wymagają zatrzymania jednego z kół.

EDIT:

Sytuację dobrze obrazuje filmik z zawodów T-BOT, a szczególnie trasa finałowa:

Do pokonania większości zakrętów wystarczy szybkie zatrzymanie jednego z kół, jednak ostatnia pętelka wymagała obrotu praktycznie w miejscu, a co za tym idzie zmiany kierunku obrotów jednego z kół.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.