s_13 Napisano Marzec 25, 2016 Udostępnij Napisano Marzec 25, 2016 Jako, że to mój pierwszy post, wypada się przywitać, więc witam się 🙂 A teraz do sedna. Nie wiem jak to zrobić, aby silnik zachowywał się jak serwo (które w mindstormie nie występuje). Czyli ramię przymocowane do osi wychylało się o zadany kąt, odczytywany na bieżąco, ot choćby z czujnika światła. Silnikiem można sterować zadając mu obrót o okreslony kąt, ale to nie to. Nadmienię, że ogarniam tylko ( aż... i to z ogromnym wysilkiem) domyslny program bloczkowy do ev3, żadne tam pisanie kodu 🙂, chociaż z funkcją liniową (podobno tutaj niezbędną) już sobie daję radę 🙂). Pomóżcie "zielonemu" i "humaniście" wybrnąć z twarzą przed synem 8-mio letnim "programistą. " Link do komentarza Share on other sites More sharing options...
Chumanista Marzec 25, 2016 Udostępnij Marzec 25, 2016 s_13, gdzieś tam na bloczku był do wyboru tryb pracy silnika. Tym bloczku w edytorze. Link do komentarza Share on other sites More sharing options...
s_13 Marzec 25, 2016 Autor tematu Udostępnij Marzec 25, 2016 Zgadza się, tylko ten tryb to jest sterowanie obrotami: w zadanym czasie, w zadanej liczbie obrotów, albo o zadany kąt. Nie da się po prostu przełączyć silnika w tryb serwa, który odczytuje aktualny odchył względem ustalonej pozycji "0". Próbowałem ożenić bloczek mierzący obroty silnika (w stopniach obrotu) z bloczkiem sterowania silnikiem, wsadzając po drodze czujnik światła. Teoretyzowałem, że jak od odczytu ilości światła (0-100) odejmę aktualny odczyt miernika obrotu kątowego (po wcześniejszym zresetowaniu w pozycji "0"), i przeniesieniu wyniku na wejście sterujące obrotem kątowym silnika, otrzymam ładnie działający algorytm odchylający ramię od 0 do 100 stopni... niestety, w praktyce ramię "silnikoserwa" buja się niestabilnie w te i we wte, aż w końcu "rzuca się" w skrajną pozycję i blokuje 🙁 załączam printscrena moich prób. Link do komentarza Share on other sites More sharing options...
Chumanista Marzec 25, 2016 Udostępnij Marzec 25, 2016 s_13, bujanie się niestabilnie to z mojego doświadczenia ulubione zachowanie Lego Mindstorms. Z tego co wiem obrót o kąt to najbliżej serwa jak to potrafi niestety. Szczerze nie lubię tego zestawu. Tyle zmarnowanego potencjału. Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. 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
s_13 Marzec 27, 2016 Autor tematu Udostępnij Marzec 27, 2016 No i wspólnymi siłami (ja i potomek) udało się coś tam zdziałać🙂. Nie wkleję teraz screena, ale opiszę (sorry, że zbyt łopatologicznie i niefachowymi terminami się posługuję): Najpierw kalibruję czujnik, czyli ustawiam nad czarnym tłem i zapisuję wartość jako minimum, potem białe tło i maximum. Wychodzi, że czarne to 0, białe to 100. Tworzę zmienne "odczyt" i "ostatni_odczyt" ustawiam je wstępnie na 50, teraz w pętli: odczyt czujnika, zapis do "odczyt", odejmuję "ostatni_odczyt", wynik wychodzi do sterowania silnika, jako obrót o x stopni (wychył w stopniach od -50 do 50, jeśli nie pasi, to dodać mnożnik). Odczyt z czujnika zapisuję do "ostatni_odczyt" do użycia w następnym przebiegu pętli. Dodaję jeszcze "delay", żeby silnik zdążył się obrócić, wartość jest proporcjonalna do wielkości obrotu w aktualnej pętli, oczywiście wartość bezwzględna i mnożnik, bo to jakieś milisekundy będą. Teraz doświadczalnie dostrajam wszystko za pomocą zmiany dwóch parametrów: mocy silnika i mnożnika "delay". Wszystko chodzi w miarę płynnie, oczywiście bezwładność jakaś tam jest, i to płynna, ale dla moich potrzeb akceptowalna. Da się wyregulować, żeby nie było bujania w te i we wte i przede wszystkim nie rozregulowuje się, czyli "zero" jest zawsze w tym samym położeniu. Dziękuję i polecam się 🙂 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
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ę »