LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
-
marekms
Autor tematu - Specjalista poziom 1 (min. 100)

- Posty w temacie: 5
- Posty: 102
- Rejestracja: 18 mar 2007, 16:44
- Lokalizacja: mazowieckie
LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Chcę zbudować coś w rodzaju ramienia pomiarowego z enkoderem w każdym stawie aby móc odczytywać pozycję końcówki pomiarowej w dowolnej chwili. Projekt ma być nisko budżetowy.Czy na jakimś jednopłytkowym komputerku (raspberry i podobne) da się odczytywać dane z 4 enkoderów i odczytywać pozycję na wyświetlaczu w Linuxcnc?
Czy trzeba montować dodatkowe moduły typu karty Mesa?
Marek
Czy trzeba montować dodatkowe moduły typu karty Mesa?
Marek
-
tuxcnc
- Lider FORUM (min. 2000)

- Posty w temacie: 6
- Posty: 9874
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Budżetowo to będzie na jakimś STM32 (ma sprzętową obsługę enkoderów kwadraturowych).
Jeśli tylko chcesz czytać wynik na wyświetlaczu, to nie ma sensu zaprzęgać do tego LinuxCNC.
Ale jeśli się uprzesz na RPi, to da się skonfigurować na PIO, tyle że będzie działać tak tragicznie, że nie da się tego używać.
RPi plus MESA to już nie będzie budżetowo.
-
marekms
Autor tematu - Specjalista poziom 1 (min. 100)

- Posty w temacie: 5
- Posty: 102
- Rejestracja: 18 mar 2007, 16:44
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Na czym polega tragiczność działania enkoder+RPI? Będzie gubiło pozycje, czy będzie długi czas reakcji? Będę używał sporadycznie i raczej prędkości będą żadne (ramię pomiarowe).
Marek
Marek
-
tuxcnc
- Lider FORUM (min. 2000)

- Posty w temacie: 6
- Posty: 9874
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Naprawdę myślisz, że jak będziesz używał sporadycznie, to będzie działało inaczej?
Chodzi o prędkości chwilowe, a te potrafią być duże, nawet kiedy ich nie widać (np, drgania).
RPi będzie miał jitter rzędu 50 µs, co się przełoży na częstotliwość odczytów enkodera poniżej 20 kHz.
Jeśli chcesz coś mierzyć, to zapewne użyjesz enkoderów o największej rozdzielczości w rozsądnych pieniądzach (5000 p/r ?) co da najwyżej jeden obrót na sekundę (i to musi być płynny ruch).
Takie urządzenie czasem zmierzy dobrze, czasem źle, czyli ogólnie będzie do du**.
-
marekms
Autor tematu - Specjalista poziom 1 (min. 100)

- Posty w temacie: 5
- Posty: 102
- Rejestracja: 18 mar 2007, 16:44
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Raczej myślałem o enkoderach 400-1000p/r i sprzęgnięcie 1:1 , dodatkowo prędkość to 20-30st/s więc chyba się zmieści w zakresie pomiarowym.
Marek
Marek
-
tuxcnc
- Lider FORUM (min. 2000)

- Posty w temacie: 6
- Posty: 9874
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
400 p/r przy odczycie kwadraturowym i ramieniu 100 mm to rozdzielczość 0,4 mm.
Ty najwyraźniej nie masz bladego pojęcia co chcesz zbudować...
-
marekms
Autor tematu - Specjalista poziom 1 (min. 100)

- Posty w temacie: 5
- Posty: 102
- Rejestracja: 18 mar 2007, 16:44
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Chcę zbudować coś w rodzaju ramienia pomiarowego a nie dokładnie ramię pomiarowe. Przyjmując ramię 2000mm, enkoder 400 p/r daje rozdzielczość na poziomie 80mm, ale przy 1000p/r rozdzielczość wynosi 32mm a to jest wielkość akceptowalna dla tego projektu.
Marek
Marek
-
tuxcnc
- Lider FORUM (min. 2000)

- Posty w temacie: 6
- Posty: 9874
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Po raz ostatni:
Stan enkodera musi być odczytywany częściej niż się zmienia, więc liczy się prędkość chwilowa. Jeśli szarpniesz dwumetrowym ramieniem, to na pewno zgubisz pozycję (bezwładność, ugięcie, oscylacje).
Potrzebujesz szybkiego mikroprocesora z licznikami w trybie sprzętowej obsługi enkodera kwadraturowego, najlepiej coś z rodziny STM32, bo są tanie i produkowane od lat, więc mają dobrą dokumentację i dobre wsparcie.
Ale wtedy też nie zrobisz cudów, bo ograniczy Cię pasmo użytych enkoderów.
Przerabiałem ten temat bardzo dokładnie, kiedy robiłem szybki odczyt enkodera wrzeciona tokarki.
To wszystko co mam do powiedzenia w tym temacie, a Ty rób sobie co chcesz.
-
drzasiek90
- Lider FORUM (min. 2000)

- Posty w temacie: 2
- Posty: 2401
- Rejestracja: 25 kwie 2016, 11:58
- Lokalizacja: Jodlowa
- Kontakt:
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Chcesz tylko wyświetlić odczyt pozycji z 4 enkoderów na ekranie czy coś chcesz z tym więcej robić?
Pamiętaj, że będzie toi pozycja względna. ewentualnie można index enkodera wykorzystać do bazowania.
Generalnie da się to zrobić z linuxcnc i na malinie ale nie powiedziałbym, że to będzie budżetowe rozwiązanie.
Obstawiam, że nie potrafisz programować mikrokontrolerów skoro pytasz o takie coś - a to jednak na mikrokontrolerze byłoby najłatwiej i najtaniej.
Podaj trochę więcej szczegółów tego co chcesz osiągnąć, będzie łatwiej pomóc.
Pamiętaj, że będzie toi pozycja względna. ewentualnie można index enkodera wykorzystać do bazowania.
Generalnie da się to zrobić z linuxcnc i na malinie ale nie powiedziałbym, że to będzie budżetowe rozwiązanie.
Obstawiam, że nie potrafisz programować mikrokontrolerów skoro pytasz o takie coś - a to jednak na mikrokontrolerze byłoby najłatwiej i najtaniej.
Podaj trochę więcej szczegółów tego co chcesz osiągnąć, będzie łatwiej pomóc.
-
tuxcnc
- Lider FORUM (min. 2000)

- Posty w temacie: 6
- Posty: 9874
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: LInuxcnc+4enkodery+komp jednopłytkowy' jak to zrobić?
Jak chcesz pomóc, to mogę podrzucić Ci na PW mój rozbabrany projekt na CH32V307 (to ta płytka z Ethernetem za 60 PLN albo i taniej).drzasiek90 pisze: ↑15 gru 2025, 17:10Podaj trochę więcej szczegółów tego co chcesz osiągnąć, będzie łatwiej pomóc.
To jest wersja mojego SpindleEth, doprowadzona do stanu obsługi jednego enkodera i współpracy z LinuxCNC.
Żeby to przepisać na cztery enkodery wystarczy trochę kodu paste/copy i zmienić nazwy rejestrów.
Mi się nie chce, bo mam co innego do roboty.




