LinuxCNC na USB lub Ethernet - reaktywacja

Dyskusja na temat Linumeric-LPT

Dyskusje dotyczące działania obsługi programu LinuxCNC

Autor tematu
drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 72
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

LinuxCNC na USB lub Ethernet - reaktywacja

#1

Post napisał: drzasiek90 » 06 kwie 2023, 17:34

LinuxCNC na USB? Ale to już było.
O przejściówce Linumeric-LPT może niektórzy słyszeli, może nie. Powstała około połowy 2020 roku, wróżono jej porażkę…
Obrazek
Czym jest Linumeric-LPT? To przejściówka USB-LPT dla LinuxCNC.
To nie jest zwykły konwerter USB-LPT lecz dedykowane urządzenie, które współpracuje tylko z LinuxCNC na zasadzie ścisłej komunikacji. Nie będę opisywał szczegółów, zainteresowani znajdą.

Może przejściówka nie osiągnęła spektakularnego sukcesu, ale do porażki również jej daleko. Nie przykładałem się zbytnio do reklamy a mimo wszystko całkiem sporo tego wyprodukowałem. W pewnym momencie zaczęły się problemy z dostępnością mikrokontrolerów, zaczęły też spływać zamówienia z różnych „dzikich” krajów gdzie wysyłka była problematyczna a i sam montaż ręczny nieco mi się uprzykrzył. Nastał czas, gdy płytka eval z mikrokontrolerem była tańsza niż sam mikrokontroler. Postanowiłem połączyć to wszystko i tak powstała wersja v2 – która programowo działała identycznie, ale była znacznie szybsza w montażu i jednocześnie dawała możliwość samodzielnego zbudowania przez każdego (każdego kto odrobinę technicznego pojęcia posiada i potrafi czytać instrukcję, którą zamieściłem). Instrukcję i schemat udostępniłem publicznie a sam zaprzestałem produkcji urządzeń, co było mi na rękę, bo miałem masę innych zajęć.
Obrazek
Wersja 2 składała się z płytki blue-pill, gniazda LPT, gniazda USB i PCB, a w najprostszej wersji wystarczy sama płytka blue-pill.

Linumeric-LPT to nie jest złoty środek dla każdego rozwiązania, dla każdej maszyny. Nie mam duszy handlowca, więc nie potrafię wciskać każdemu wszystkiego jako panaceum na wszystko. Opisuję za to rzetelnie wady i zalety rozwiązania.

Jak działa Linumeric-LPT? Urządzenie działa na zasadzie komunikacji buforowanej – to znaczy, że sygnały pojawiające się na wyjściu LPT mają pewne opóźnienie (wynikające z buforowania).
Opóźnienie to jest z punktu widzenia obsługującego niewidoczne i nieodczuwalne.
Odczuwalne jest jednak wszędzie tam, gdzie konieczne jest sprzężenie zwrotne, ponieważ sygnał zwrotny pojawi się w aplikacji z opóźnieniem czasu bufora względem sygnału sterującego.
Jakie to ma konsekwencje? A no takie, że jeśli chcemy podłączyć do linuxCNC np. enkoder to układ taki nie będzie działać poprawnie. Ale należy sobie odpowiedzieć na pytanie, jak często i przy jakich maszynach potrzebne jest sprzężenie zwrotne w czasie rzeczywistym?
Przykładowo tokarka, która ma sprzężenie zwrotne pozycji/prędkości wrzeciona nie może być sterowana z tego urządzenia.
Natomiast istnieje całe mnóstwo maszyn, które takiego sprzężenia nie potrzebują:
-plotery frezujące, frezarki
-ploter plasmowy
-ploter laserowy
-plotery tnące
-ostrzałki
-piły CNC
itd.

No ale hola hola, ktoś powie, że przecież każdy taki ploter również posiada sprzężenie zwrotne, np., z czujników bazowania, czujnik długości narzędzia itd.
Zgadza się, ale użycie buforowania w przypadku tego typu czujników powoduje niewielki błąd który da się policzyć i może być całkowicie pomijalny i nieszkodliwy, a co najważniejsze zazwyczaj jest powtarzalny więc nie powoduje nieprawidłowości.
Najazdy i odjazdy z czujników podzielone są na 2 etapy, najazd szybki (zgrubny) i powolny (dokładny). Jeśli prędkość najazdu dokładnego mamy przykładowo 50mm/min, to maksymalny błąd pomiarowy jaki wyniknie z buforowania dla Linumeric-LPT V3 to 0.005 mm. Tak, 5 um!
Trzeba sobie odpowiedzieć, czy dla naszej maszyny ma to znaczenie, czy nasz układ napędowy i pomiarowy jest na tyle dobry, aby oczekiwać więcej.

Dlaczego napisałem dla Linumeric-LPT V3?
Tak, bo właśnie jestem w trakcie realizacji 3 wersji urządzenia, w której pewne rzeczy będą poprawione, między innymi częstotliwość odczytu wejść będzie zwiększona do 1 kHz a nie tak jak było w wersji V1 i V2 – 50 Hz.

Co jeszcze będzie w wersji V3?
Najważniejsza zmiana, to Linumeric-LPT V3 będzie posiadał do wyboru 2 interfejsy sterowania – USB (jak do tej pory) oraz Ethernet.
Linumeric-LPT v1 i V2 to port LPT komputera a nie port USB maszyny – wynikało to z tego, że transmisja USB jest podatna na zakłócenia i nie może być prowadzona na długich dystansach oraz w pobliżu innych urządzeń i przewodów które mogą powodować zakłócenia. Stąd pomysł aby urządzenie posiadało interfejs Ethernet. Ethernet ma tą zaletę, że kupujesz kabel, zarabiasz wtyczki (lub zarabiają ci w sklepie), wpinasz i jest.
LinucCNC może działać jednocześnie z fizycznym portem LPT komputera i urządzeniem Linumeric-LPT. Mogą działać również 2 linumeric-LPT jednocześnie, możliwe jest nawet działanie jednego na USB a drugiego na ETH.
W ten sposób Linumeric-LPT można użyć zarówno jako główny port sterowania jak i jako drugi port rozszerzający, gdy brakuje wyprowadzeń w jednym porcie.

Linumeric-LPT V3 już działa. Teraz trzeba znaleźć czas na projekt PCB.
Prawdopodobnie również będzie dostępna wersja do samodzielnego zbudowania.
Żeby forum miało jakiś pożytek ze mnie, gdy urządzenie V3 i opis będzie kompletny, prześlę klucz autoryzacyjny urządzenia dla użytkowników forum (posiadających konto co najmniej od roku i napisanych minimum 500 postów) którzy będą chcieli przetestować urządzenie.

Tak jak pisałem wyżej, nie mam duszy handlowca i nie mam zamiaru nachalnie wciskać tego rozwiązania każdemu. Podaje informację o możliwościach, rzetelnie opisuje wady i zalety i liczę na to, że każdy potrafi sam podjąć decyzję według własnych potrzeb.



Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 34
Posty: 8104
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#2

Post napisał: tuxcnc » 06 kwie 2023, 18:12

drzasiek90 pisze:
06 kwie 2023, 17:34
Linumeric-LPT V3 będzie posiadał (...) Ethernet.
Ehernet jest w Linuksie realtime, gdybyś zrobił tani sterownik dla standardowego Linuxcnc, tobyś zarobił majątek (zobacz ile kosztuje MESA i jak trudno ją kupić).
Ale Ty znowu zrobisz jakąś protezę o mocno ograniczonej użyteczności i się będziesz jarał jakie to cudo....


tristar0
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 13
Posty: 2973
Rejestracja: 21 sty 2020, 17:48
Lokalizacja: Toruń miasto Tadeusza R

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#3

Post napisał: tristar0 » 06 kwie 2023, 18:24

drzasiek90 pisze:Dlaczego napisałem dla Linumeric-LPT V3
ale czemu nie pójść o krok dalej i zwiększyć ilość wejść /wyjść coś w stylu karty mesa .Tak jakoś od jakiegoś czasu przymierzam się pod linumeric tyle że właśnie mało wejść posiada bo jak tu podłączyć 3 enkodery , 3 krańcówki ,pomiar wysokości narzędzia , i parę własnych pomysłów skoro i tak mamy na wyjściu trochę szybsze lpt . obecnie mam 2 porty lpt jako wejścia bo kolokwialnie mówiąc pinów brakuje .

Dodane 6 minuty 10 sekundy:
tuxcnc pisze:Ale Ty znowu zrobisz jakąś protezę
może nie protezę ale gdyby zastosować inną bazę zasmiast blue-pill można by raz na zawsze zapomnieć o ilości wejść/wyjść . jakieś stm32 nucleo , bo wielkość płyty to żaden problem w tym przypadku.
Mam wyrypane na wszelkiej maści proroków ,mędrców i wszystkich którzy stawiają się ponad innymi ,i tak ich zjedzą robaki


Autor tematu
drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 72
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#4

Post napisał: drzasiek90 » 06 kwie 2023, 18:29

tuxcnc pisze:
06 kwie 2023, 18:12
Ehernet jest w Linuksie realtime, gdybyś zrobił tani sterownik dla standardowego Linuxcnc, tobyś zarobił majątek (zobacz ile kosztuje MESA i jak trudno ją kupić).
Wiesz jak to zrobić? Bo ja na chwilę obecną nie.
Mesa działa w inny sposób niż port równoległy.
Źródła LinuxCNC łatwe nie są w "odnalezieniu" się, chyba coś o tym powinieneś wiedzieć.
Gdyby to było takie dochodowe jak mówisz i jednocześnie proste w budowie, już mielibyśmy kilka zamienników MESA.
tuxcnc pisze:
06 kwie 2023, 18:12
Ale Ty znowu zrobisz jakąś protezę o mocno ograniczonej użyteczności i się będziesz jarał jakie to cudo....
Zapanuj nad emocjami.
Nikt ci niczego na siłę ni wciska.
Nikt się też nie jara "jakie to cudo".
Możliwości są ograniczone, o czym szczerze napisałem.
Ale nie są ograniczone mocno, lecz tylko trochę. Do zdecydowanej większości amatorskich maszyn ograniczenia te nie istnieją.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 34
Posty: 8104
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#5

Post napisał: tuxcnc » 06 kwie 2023, 18:30

tristar0 pisze:
06 kwie 2023, 18:24
gdyby zastosować inną bazę zasmiast blue-pill można by raz na zawsze zapomnieć o ilości wejść/wyjść . jakieś stm32 nucleo , bo wielkość płyty to żaden problem w tym przypadku.
Zaletą BluePill (BlackPill) jest sprzętowa obsługa enkoderów, ale w tym przypadku to chyba jedyna zaleta...
Pod Ethernet tobym spróbował z ESP32, tanim jak barszcz ale potężnym i posiadającym potrzebne biblioteki procesorem.


tristar0
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 13
Posty: 2973
Rejestracja: 21 sty 2020, 17:48
Lokalizacja: Toruń miasto Tadeusza R

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#6

Post napisał: tristar0 » 06 kwie 2023, 18:36

tuxcnc pisze:Zaletą BluePill (BlackPill) jest sprzętowa obsługa enkoderów, ale w tym przypadku to chyba jedyna zaleta
grzebie sobie od jakiegoś czasu na KA-NUCLEO-F411CE ma w standardzie obsługę enkoderów jak większość stm-ów ale jakoś się tym tak nie jaram ja ty .
Mam wyrypane na wszelkiej maści proroków ,mędrców i wszystkich którzy stawiają się ponad innymi ,i tak ich zjedzą robaki


Autor tematu
drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 72
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#7

Post napisał: drzasiek90 » 06 kwie 2023, 18:38

tristar0 pisze:
06 kwie 2023, 18:24
ale czemu nie pójść o krok dalej i zwiększyć ilość wejść /wyjść coś w stylu karty mesa
...
ale gdyby zastosować inną bazę zasmiast blue-pill można by raz na zawsze zapomnieć o ilości wejść/wyjść . jakieś stm32 nucleo , bo wielkość płyty to żaden problem w tym przypadku.
Geneza jest zupełnie inna.
Gdyby przerobienie LinuxCNC było takie proste jak się wydaje, można sobie różne rzeczy robić. Ale tak nie jest, a zwłaszcza dla mnie - nie jestem zawodowym programistą.
Nie sztuka jest coś nakodzić - sztuka aby to działało i nie popsuć tego co powinno działać oprócz tego.
Nie mam problemu w większym mikrokontrolerem - mam płytę z stm32 H7, ponad 100 IO, 500 MHz, ale nie o to chodzi.
Tu chodzi o to, aby zachować pewną funkcjonalność - w tym przypadku jest to np, tworzenie konfiguracji maszyny. Korzystając z portu równoległego, nadal korzystamy ze stepconf Wizard, przynajmniej wstępnie. Cała konfiguracja odbywa się identycznie jak w przypadku portu LPT, linuxCNC obsługuje do 8 portów LPT, teoretycznie można podłączyć tyle urządzeń. Można też się pokusić na jedno urządzenie, które emuluje 8 portów.

Ale czy to ma sens?
To jakby mieć pretensje do producenta samochodów, że produkuje osobówki zamiast tylko busy, przecież busem więcej osób i więcej towaru przewiezie.
Bus też ma wady, MESA też ma wady.
Każde rozwiązanie ma wady i zalety.
Ostatnio zmieniony 06 kwie 2023, 18:41 przez drzasiek90, łącznie zmieniany 1 raz.


tristar0
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 13
Posty: 2973
Rejestracja: 21 sty 2020, 17:48
Lokalizacja: Toruń miasto Tadeusza R

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#8

Post napisał: tristar0 » 06 kwie 2023, 18:40

mnie jak większości brakuje pinów wejściowych lub wyjściowych a prędkości na lpt są wystarczające nawet do obsługi sero napędów wiec co mi po tym że będzie dwa razy szybszy linumeric v3 skoro wej/wyj tyle samo .
Mam wyrypane na wszelkiej maści proroków ,mędrców i wszystkich którzy stawiają się ponad innymi ,i tak ich zjedzą robaki

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 34
Posty: 8104
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#9

Post napisał: tuxcnc » 06 kwie 2023, 18:41

drzasiek90 pisze:
06 kwie 2023, 18:29
Gdyby to było takie dochodowe jak mówisz i jednocześnie proste w budowie, już mielibyśmy kilka zamienników MESA.
Jest projekt Colorcnc, dość mocno zaawansowany, ale mający poważną wadę - jest to płytka posiadająca wyłącznie wyjścia, więc nawet kiedy kod osiągnie praktyczną użyteczność, nie będzie to plug&play, tylko mniej lub bardziej skomplikowana przeróbka, z którą wielu sobie nie poradzi.
Jeżeli natomiast chodzi o dokumentację Linuxcnc, to jeśli chodzi o Ethernet, to jest to chyba dość dobrze opisane.
Zresztą Ciebie większość by nie interesowała, bo przecież nie chcesz klonować karty MESA, musiałbyś tylko rozgryźć komunikację przez Ethernet.
No ale jak chcesz zbudować samochód z jednym biegiem i skręcający tylko w lewo, no to nikt Ci przecież nie zabroni...


Autor tematu
drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 72
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: LinuxCNC na USB lub Ethernet - reaktywacja

#10

Post napisał: drzasiek90 » 06 kwie 2023, 18:41

tristar0 pisze:
06 kwie 2023, 18:40
mnie jak większości brakuje pinów wejściowych lub wyjściowych a prędkości na lpt są wystarczające nawet do obsługi sero napędów wiec co mi po tym że będzie dwa razy szybszy linumeric v3 skoro wej/wyj tyle samo .
Dlaczego nie zakupisz MESA tylko sztukujesz portami LPT?

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”