dondu Wrzesień 25, 2011 Udostępnij Wrzesień 25, 2011 Jako metodę pomiaru wybrałem zliczanie impulsów w określonym okresie czasu z ww względu oraz dlatego, że enkoder przysparza problemów przy małych prędkościach. Można ustalić pewien próg prędkości obrotowej, przy którym następuje zmiana metody pomiaru z liczenia czasu na liczenie impulsów. Cytuj Link do komentarza Share on other sites More sharing options...
co_pat Wrzesień 25, 2011 Udostępnij Wrzesień 25, 2011 Jako metodę pomiaru wybrałem zliczanie impulsów w określonym okresie czasu z ww względu oraz dlatego, że enkoder przysparza problemów przy małych prędkościach. Można ustalić pewien próg prędkości obrotowej, przy którym następuje zmiana metody pomiaru z liczenia czasu na liczenie impulsów. Oczywiście można tylko pomiar okresu stosuje się dla małych prędkości obrotowych, a u mnie wtedy jest problem z impulsami co widać na wykresie wyżej dlatego ta metoda odpada. W wykorzystywanym przeze mnie projekcie liczba impulsów jest wystarczająca aby uzyskać aktualną prędkość z częstotliwością 100Hz z rozdzielczością ok 8 bitów metodą pomiaru ilości impulsów. Cytuj Link do komentarza Share on other sites More sharing options...
Barto Wrzesień 26, 2011 Udostępnij Wrzesień 26, 2011 Może troszkę offtop. co_pat- z własnego doświadczenia odradzam stosowanie rozwiązań teoretycznych/symulacyjnych, które w praktyce trudno byłoby zrealizować. Zwykły filtr uśredniający/dolnoprzepustowy RC o mniej/więcej dobranej stałej czasowej da niewiele gorsze efekty. Jak się domyślam próbki zebrane z fizycznej konstrukcji. Druga połowa wykresu obrazuje jakieś słabe hamowanie ewentualnie dziwne luzy (chodzi mi o niską zaszumioną prędkość obrotową). Warto też podpisywać osie 😉. ( oczywiście częstotliwość pracy regulatora powinna być możliwie jak największa). No niestety zdecydowanie się nie zgodzę. Ogólnie rzecz biorąc czas próbkowania powinien być dostosowany do obiektu. Zbyt mały - sprawa jasna- regulator się nie wyrobi/informacja nieaktualna. Ale zbyt duży- stosunek sygnału/szumu maleje. Dasz np. czas próbkowania 1 ms a reakcja na silnikach jest dopiero po kilkudziesięciu w najlepszym wypadku. Z klasycznego regulatora PID robi się zwykły dwustawny (który jednak też potrafi działać 🙂 ). Co do zmiennych warunków pomiaru- bardzo niebezpieczna sprawa. Załóżmy że jest jakiś ustalony prób wartości prędkości x, przy której zasada pomiaru ma się zmienić z 1. (ilość impulsów w stałym czasie) na 2. (czas pomiędzy impulsami). Będąc na pograniczu progu ±y% zacznie się kompletny bajzel, a dane będą niespójne- raz będzie jedna metoda a np następny pomiar spowodowany zakłóceniem będzie druga. Moim zdaniem metoda 1. jest prostsza, łątwiejsza w implementacji i opracowaniu, nie wymaga też dodatkowych obliczeń. Zawsze można zwiększyć czas próbkowania (łatwo) kosztem niestety większej pamięci dla pomiarów. Cytuj Link do komentarza Share on other sites More sharing options...
dondu Wrzesień 26, 2011 Udostępnij Wrzesień 26, 2011 Będąc na pograniczu progu ±y% zacznie się kompletny bajzel, a dane będą niespójne- raz będzie jedna metoda a np następny pomiar spowodowany zakłóceniem będzie druga. Oj nie będzie bajzlu, od tego jest histereza 🙂 A zysk jest bardzo duży, gdyż dzięki podziałowi zmniejsza się poziom błędu metody pomiarowej, a to bardzo istotne. Cytuj 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
co_pat Wrzesień 26, 2011 Udostępnij Wrzesień 26, 2011 Może troszkę offtop.co_pat- z własnego doświadczenia odradzam stosowanie rozwiązań teoretycznych/symulacyjnych, które w praktyce trudno byłoby zrealizować. Zwykły filtr uśredniający/dolnoprzepustowy RC o mniej/więcej dobranej stałej czasowej da niewiele gorsze efekty. Jak się domyślam próbki zebrane z fizycznej konstrukcji. Druga połowa wykresu obrazuje jakieś słabe hamowanie ewentualnie dziwne luzy (chodzi mi o niską zaszumioną prędkość obrotową). Warto też podpisywać osie 😉. Próbowałem rożnych filtrów w tym uśredniających, ale najlepsze efekty w tym najmniejsze przesunięcie fazowe uzyskałem właśnie dla Butterworth'a, a liczba obliczen niewiele większa. Dziwny wygląd przebiegu spowodowany jest rozpędzaniem napędu palcem 😋, a osie nie są podpisane bo wykres robiony na szybko w excelu 😋 ( oczywiście częstotliwość pracy regulatora powinna być możliwie jak największa). No niestety zdecydowanie się nie zgodzę. Ogólnie rzecz biorąc czas próbkowania powinien być dostosowany do obiektu. Zbyt mały - sprawa jasna- regulator się nie wyrobi/informacja nieaktualna. Ale zbyt duży- stosunek sygnału/szumu maleje. Dasz np. czas próbkowania 1 ms a reakcja na silnikach jest dopiero po kilkudziesięciu w najlepszym wypadku. Z klasycznego regulatora PID robi się zwykły dwustawny (który jednak też potrafi działać 🙂 ). Zgadzam się z Tobą w 100%, tylko mówimy tu o skrajnych przypadkach. Ja miałem na myśli regulator implementowany np. w ATmedze gdzie mamy dość okraniczoną moc obliczeniową 🙂 Cytuj Link do komentarza Share on other sites More sharing options...
Barto Wrzesień 26, 2011 Udostępnij Wrzesień 26, 2011 Owszem, można wprowadzić histerezę w dwa różne kierunki trendu, ale trzeba tą informację jeszcze zapamiętać a dokładniej chwilę wystąpienia zmiany metody ,najlepiej zsynchronizować z pomiarami. Ponadto jeżeli chce się przeliczyć czas pomiędzy impulsami na prędkość w stałej jednostce czasu to dochodzą bardzo niefajne dzielenia na intach (żeby tylko). Do tego jeżeli rozmawiamy o 8bitowcach może być jeszcze mniej ciekawie. Jeżeli dondu próbowałeś zaimplementować tego typu rozważania w praktyce to z chęcią zobaczyłbym wyniki. Jeśli nie, pozostanę przy swoim 🙂 co_pat- napisałem, że chodzi mi o rozwiązania "w praktyce"- rzeczywiste/namacalne, zrealizowane za pomocą układów elektronicznych. Cytuj Link do komentarza Share on other sites More sharing options...
dondu Wrzesień 26, 2011 Udostępnij Wrzesień 26, 2011 Owszem, można wprowadzić histerezę w dwa różne kierunki trendu, ale trzeba tą informację jeszcze zapamiętać a dokładniej chwilę wystąpienia zmiany metody ,najlepiej zsynchronizować z pomiarami. To szukanie dziury w całym. To tak krótki moment, że dla silnika niezauważalny, chociażby z powodu jego bezwładności. Ponadto jeżeli chce się przeliczyć czas pomiędzy impulsami na prędkość w stałej jednostce czasu to dochodzą bardzo niefajne dzielenia na intach (żeby tylko). Do tego jeżeli rozmawiamy o 8bitowcach może być jeszcze mniej ciekawie.. Jeżeli to BASCOM - być może tak (nie znam), ale w C nie ma tego problemu, a mikrokontroler spokojnie będzie się nudził, i to bardzo. Choć oczywiście zawsze można i C zarżnąć. Jeżeli dondu próbowałeś zaimplementować tego typu rozważania w praktyce to z chęcią zobaczyłbym wyniki. Jeśli nie, pozostanę przy swoim 🙂 Z chęcią pokaże rezultaty, gdy do nich dojdę: http://robonauci.blogspot.com lub przyznam rację jeżeli polegnę 🙂 Cytuj Link do komentarza Share on other sites More sharing options...
Harnas Wrzesień 27, 2011 Udostępnij Wrzesień 27, 2011 Witam. Jakie polecacie enkodery do MM dla silników pololu HP 30:1? Myślałem nad TCRT1000 + tarcza, jednak raczej ciężko będzie uzyskać przy tych silnikach dokładność powyżej 0.4mm przy zastosowaniu jako enkodera kwadraturowego. AS5040 jakoś mnie nie przekonują, ze względu na wymagania, chyba że ktoś już ma pozytywne doświadczenia z stosowania ich z tymi silnikami. Macie jakieś pomysły? Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Wrzesień 27, 2011 Autor tematu Udostępnij Wrzesień 27, 2011 Ja użyłem CNY70 i przy kompletnej prowizorce wyciągałem z tego 90 impulsów na obrót przy 30:1, ale tarcza u mnie była dość mała - 8mm. można podnieść silniki troszkę i wstawić większą tarczę, wtedy 120 nie powinno być problemem. Co do całego tematu, to aktualnie z braku czasu musiałem trochę odstawić projekt, ale powoli staram się testować różne rozwiązania. Cytuj Link do komentarza Share on other sites More sharing options...
Barto Wrzesień 27, 2011 Udostępnij Wrzesień 27, 2011 Z enkoderów proste i skuteczne rozwiązanie to tarcze z myszek kulkowych. Próbowałem też zrobić inkrementalny na bazie tarczy własnej roboty i KTIRów. Niestety w moich testach potrzebowałem minimum 2 mm szerokości pojedynczego paska- osiągalną rozdzielczość określa średnica tarczy. Jeżeli ktoś już próbował coś takiego robić z lepszym rezultatem to byłbym rad za jakąś wskazówkę, ewentualnie podrzuć Treker zdjęcie w miarę możliwości jak na tych wielkich CNY70 uzyskałeś takie rezultaty przy tarczy fi 16. Cytuj Link do komentarza Share on other sites More sharing options...
Harnas Wrzesień 28, 2011 Udostępnij Wrzesień 28, 2011 Tarcze z myszki raczej odpadają bo ciężko takie coś zamocować prosto na wale, aby nie biło przy 30 000 rpm. Jeżeli nic nowego nie wymyślę to zastosuję 2x TCRT1000 do pojedynczego silnika jako enkoder inkrementalny, i licząc "impuls" co każde zbocze. W ten sposób powinno się udać zastosować tarczę 4 pola białe i 4 czarne, co da łącznie 16 impulsów na 1 obrót wału silnika. Myślę że impuls co 0.2 mm powinien już wystarczyć. Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
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!