Znaleziono 12 wyników

autor: drzasiek90
28 lut 2024, 07:31
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

qqaz pisze:
28 lut 2024, 00:15
jednym z oczywistych ruchów jest programowy zjazd na "bazę" G53. Gdy za blisko to wpakuje się na limity.
Nie zrozumiałem o co w tych 2 zdaniach ci chodziło.
Mam je interpretować jako jedną wypowiedź, czy każde zdanie osobno? Bo nie mogę sensu złapać :)
autor: drzasiek90
27 lut 2024, 20:04
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

Natychmiastowe zatrzymanie maszyny to najlepsze co można zrobić. I to także zazwyczaj uratuje "drogocenny" frez :)
Jeśli którakolwiek z osi znajduje się w sytuacji awaryjnej, trzeba sprawdzić co się stało a nie pozwolić maszynie ruszać innymi osiami.
Nie kombinuj :)
autor: drzasiek90
27 lut 2024, 09:29
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

tuxcnc pisze:
27 lut 2024, 08:55
No to je przygotuj i sprawdź, bo to Tobie jest ono potrzebne, a mi nie.
Nie jest mi potrzebne, ponieważ działające rozwiązanie już mam.
To ty chciałeś pokazać rozwiązanie "właściwsze".
Najpierw pokazałeś niewłaściwe rozwiązanie.
Szkoda, że dopiero na 3 stronie zrozumiałeś o co chodzi w problemie z bazowaniem.
Mógłbyś zaoszczędzić nam kupę złośliwości, jaką wylałeś tu od początku.
tuxcnc pisze:
27 lut 2024, 08:55
Wracając do twojego kodu, to jest on błędny w samym założeniu.
Tak naprawdę, to sygnał bazujący może być podłączony na stałe do odpowiednich pinów HAL od bazowania osi, a odcinać na czas bazowania trzeba sygnał podłączony do pinów HAL od limitów.
Zgadza się.
Ale to nijak nie upraszcza tego rozwiązania. Nawet kod konfiguracji nie będzie krótszy.
Jedynie linia:

Kod: Zaznacz cały

net and2_1_out =>  joint.0.home-sw-in 
zamieniona zostanie na:

Kod: Zaznacz cały

net both-home-xz =>  joint.0.home-sw-in 
a linia:

Kod: Zaznacz cały

net and2_0_out =>  joint.1.home-sw-in 
zamieniona zostanie na:

Kod: Zaznacz cały

net both-home-xz =>  joint.1.home-sw-in 
tuxcnc pisze:
27 lut 2024, 08:55
Czyli mój kod, do którego się tak uczepiłeś, jest prawidłowy, z tym, że załatwia on tylko bazowanie
A więc nie jest prawidłowy.
Albo inaczej, nie jesk kompletny. A nieprawidłowe jest stwierdzenie:
tuxcnc pisze:
25 lut 2024, 19:47
Sprawę załatwia następujący wpis w pliku hal:
Bo nie załatwia. Co najwyżej częściowo.

Jeśli potrzebujesz program, który będzie otwierał klapę, wysuwał prowdnicę i zaświecał światło a dostaniesz program który tylko wysuwa prowadnicę, nie otwierając klapy i nie zaświecając światła, to czy jest on prawdiłowy?

Tak więc nadal jedyny zaprezentowanym tutaj działającym rozwiązaniem jest to, które przedstawiłem w pierwszym poście.
tuxcnc pisze:
27 lut 2024, 08:55
więc potrzebujesz dopisać kod blokujący zadziałanie limitów, wszystkich na raz, bo one i tak nie biorą udziału w bazowaniu.
Ale co to zaoszczędzi?
Teraz używam 2 komponenty and2 blokując działanie limitów w przypadku bazowania innej osi.
Jeśli użyję jednego komponentu and2 blokując limity nielależnie która oś się bazuje, to będę musiał i tak użyć komponent or2 aby podłączyć sygnały informujące o trwającym bazowaniu na jedno wejście and2 (to dla 2 osi)
tuxcnc pisze:
27 lut 2024, 08:55
sygnał wejściowy jest odłączany od pinów HAL od limitów, na czas bazowania dowolnej osi.
To jest tak włanie napisane.
tuxcnc pisze:
27 lut 2024, 08:55
Spróbuj swój kod przepisać na cztery bazowane osie, to zrozumiesz...
Ale ja to bez tego rozumiem.
Natomiast zaproponowałem rozwiązanie dla konkretnego problemu, nigdzie nie twierdziłem, że jest uniwersalne.
autor: drzasiek90
26 lut 2024, 21:19
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

tuxcnc pisze:
26 lut 2024, 14:49
Natomiast w niczym nie zmienia to faktu, że zaprezentowany przez autora wątku kod jest przekombinowany
Możliwe, że jest przekombinowany - wspominałem o tym już w pierwszym poście. Ale działa dokładnie tak jak powinien.
Możliwe, że można prościej, śmiało można zaprezentować "konkurencyjne" rozwiązania.
tuxcnc pisze:
26 lut 2024, 14:49
Linuxcnc nie rozpozna który switch zadziałał, żaden program tego nie rozpozna, bo to jest jedno wejście i jeden bit.
Ale rzecz w tym, że podłączając wszystkie czujniki pod jeden pin nikt nie oczekuje rozpoznania który to sygnał.
I LinuxCNC nie rozpoznaje który, więc w momencie wykrycia stanu aktywnego na tym pinie, zgłasza zadziałanie wszystkich czujników które zostały pod ten pon skonfigurowane (również czujniki krańcowe), co powoduje zatrzymanie procedury bazowania.
tuxcnc pisze:
26 lut 2024, 14:49
Właściwym rozwiązaniem wydaje się więc użycie komponentu LUT5
W jaki sposób klasyfikujesz które rozwiązanie jest właściwe a które niewłaściwe?

Jeśli istnieją np. dwa rozwiązania i obydwa spełniają swoją funkcję i działają tak jak powinny, to które z nich jest właściwe a które nie?
Rozumiem, że może być rozwiązanie lepsze i gorsze, bardziej optymalne i mniej optymalne.
Ale jeśli jest właściwe i niewłaściwe, to to niewłaściwe powinno dawać niewłaściwe/nieprawidłowe efekty.
Natomiast rozwiązanie które zaprezentowałem (może i nie jest optymalne - zapraszam do podania bardziej optymalnego) ale nie można nazwać niewłaściwym, ponieważ działa dokładnie tak jak powinno.
Niewłaściwym rozwiązaniem do tego problemu natomiast jest to:
tuxcnc pisze:
25 lut 2024, 19:47
Sprawę załatwia następujący wpis w pliku hal:

Kod: Zaznacz cały

net min-home joint.0.home-sw-in joint.1.home-sw-in parport.0.pin-15-in-not
Czy rozwiązanie z komponentem LUT5 jest właściwe będzie można ocenić, gdy zostanie przygotowane i sprawdzone.
autor: drzasiek90
26 lut 2024, 08:52
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

qqaz pisze:
26 lut 2024, 00:54
dodaj jeszcze programowe przesunięcie od zejścia z krańcówki tak aby zbazowana oś była wystarczająco daleko od zluzowanej krańcówki.
Tak jest, w każdej maszynie to mam.
autor: drzasiek90
25 lut 2024, 22:32
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

forestgril pisze:
25 lut 2024, 22:29
Nie trzeba sterować. Wystarczy napisać kilka linijek kodu demultipleksera, zamieniającego daną krańcówkę na wartość bitową albo poziom napięcia i odpalać to razem z całym systemem.
LinuxCNC wykrywa stan na wejściu. Jak chcesz za pomocą jednego wyjścia z demultipleksera przesłać który to stan? PWM? Jakieś impulsy?

I teraz jak przekonasz LinuxCNC aby to tak dekodował. Oczywiście można, bo źródła są dostępne. Tylko to zupełnie bez sensu.
forestgril pisze:
25 lut 2024, 22:29
Poza tym są sytuację, gdzie jest to bardzo istotne, która krańcówka daje sygnał. Dlaczego więc nie?
Jakie np?
Jeśli zadziała którakolwiek krańcówka, maszyna ma się zatrzymać.
autor: drzasiek90
25 lut 2024, 22:23
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

tuxcnc pisze:
25 lut 2024, 21:51
Przy rozpoczęciu procedury bazowania, wszystkie czujniki muszą być nieaktywne.
Ty nie rozumiesz, że to nie ja sobie to wymyśliłem, lecz tak działa LinuxCNC?
Czujniki są nieaktywne, ale w momencie najechania na czujnik bazujący podczas bazowania, linuxcnc wykrywa również na pozostałych (zbazowanych już osiach) zadziałanie czujnika krańcowego - bo to ten sam pin! Dlatego wykrywanie czujnika krańcowego na osi X jest MUSI ZOSTAĆ WYŁĄCZONE podczas bazowania osi Z a wykrywanie czujnika krańcowego osi Z MUSI ZOSTAĆ WYŁĄCZONE podczas bazowania osi X. I do tego służy konfiguracja jaką przedstawiłem.
tuxcnc pisze:
25 lut 2024, 21:51
W czasie normalnej pracy maszyny, zadziałanie dowolnego czujnika bazującego powoduje alarm i zatrzymanie programu.
Dlaczego nie czytasz ze zrozumieniem.
Przecież cały czas rozchodzi się o procedurę bazowania.
Możesz mieć 2 czujniki na osi, z czego jeden jako bazujący i krańcowy a drugi jako krańcowy z drugiej strony.
Użycie jednego pinu uniemożliwia użycie osobno czujnika bazującego pomiędzy czujnikami krańcowymi.


NOTO JESZCZE RAZ OD POCZĄTKU.
Mam maszynę 2 osiową. Mam po 2 czujniki na obu osiach. Czujnik na jednym końcu osi to czujnik krańcowy, czujnik na drugim końcu to czujnik krańcowy oraz bazujący. Na obydwu osiach to samo.

Ta twoja linijka konfiguracji którą podałeś NIE ZADZIAŁA!!! BAZOWANIE SIĘ NIE UDA ZAKOŃCZYĆ POPRAWNIE.
A więc całe twoje zaangażowanie jest tutaj nieuzasadnione.
autor: drzasiek90
25 lut 2024, 21:37
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

tuxcnc pisze:
25 lut 2024, 21:26
Tak to u Ciebie działa?
Czy sobie to wymyśliłeś?
Tak to działa na mojej maszynie. Tak działa LinuxCNC.
Tak to jest opisane w dokumentacji LinuxCNC.
tuxcnc pisze:
25 lut 2024, 21:26
Bo u mnie działa to inaczej...
Bo ty nie masz skonfigurowanych czujników krańcowych. Przecież ci to tłumaczyłem w pierwszej odpowiedzi, ale standardowo skupiony byłeś na rżnięciu specjalisty i obrażaniu mnie, zamiast czytać ze zrozumieniem.
autor: drzasiek90
25 lut 2024, 21:21
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

tuxcnc pisze:
25 lut 2024, 21:01
Masz jedno wejście sygnału binarnego.
To wejście oznacza, że któryś czujnik zadziałał.
Jeśli na wejściu procedury bazowania sygnał jest aktywny, to w tym momencie program kapituluje, wyświetla komunikat o błędzie i przerywa działanie, co jest to prawidłowe i logiczne.
Nie da się ani ustalić, ani odciąć tego trefnego czujnika żadnymi kombinacjami, bo to jest jeden fizyczny sygnał.
Kod konfiguracji którą podałem został sprawdzony na maszynie i działa.
Odcina reakcję na czujniki krańcowe na innych osiach, podczas bazowania danej osi.

Nie przeczytałeś ze zrozumieniem, czy to jest dla ciebie za trudne?

To co powyżej napisałeś oznacza, że nie rozumiesz istoty problemu.

Opiszę ci po kolei, może coś załapiesz:
Masz jedno wejście, które podłączone jest do czujników HOME i LIMIT dla osi X oraz HOME i LIMIT Y.
Masz ustaloną sekwencję bazowania, najpierw oś X potem oś Z.

Bazuje się oś X, Linux wykrywa zadziałanie czujnika bazowania, bazowanie przebiega prawidłowo.
Następnie bazuje się oś Z, zadziałał czujnik bazowania Z, ale linux wykrył także, że zadziałał czujnik krańcowy X (bo oś jest już zbazowana więc działa normalnie a czujnik jest na tym samym pinie) i zgłasza błąd: napęd X na krańcówce awaryjnej i wyłącza napędy i zatrzymuje bazowanie.

Łapiesz już?

Mój post pokazuje jak skonfigurować LinuxCNC, aby podczas bazowania jednej osi linux nie zgłaszał zadziałania krancówek na pozostałych osiach.
Ty zaś wpadłeś, skrytykowałeś i pokazałeś swój przykład, który jest zupełnie inny.
Twoja "interwencja" tutaj była zatem albo zwyczajnie złośliwa albo po prostu nie rozumiesz, co masz skonfigurowane.

A teraz darmowa porada (bo wychowanie na którymś etapie twojego życia zawiodło)
Nie każdy wszystko wie, nie każdy zawsze ma rację.
Jeśli wchodzisz do tematu, czytasz i uważasz, że się z czymś nie zgadzasz, to napisz to w sposób dyplomatyczny.
Ale rozmawiając w ten sposób:
tuxcnc pisze:
25 lut 2024, 21:01
Jak zwykle nic nie rozumiesz
Tradycyjnie niczego nie rozumiesz
reagujesz rżnąc urażonego narcyza...
popisujesz się inteligencją na poziomie dziecka z zespołem Downa...
swoimi kretyńskimi wpisami wprowadzasz ludzi w błąd.
ewidentnie nie wiesz czym się zajmujesz
bzdur które tu wygadywałeś?
Pieprznąłeś taką głupotę
Znowu pieprzysz jak potłuczony...
Chyba zamiast na fizykę chodziłeś na wagary...
Weź już przestań, bo tylko mieszasz ludziom w głowach.
to jest kwintesencja twojej głupoty....
zrozumiesz jakie głupoty wypisujesz...
wychodzisz na kretyna, tak jak teraz, gdy znowu okazuje się, że nie masz racji.

I kolejny raz, zamiast się przyznać, idziesz w zaparte...
autor: drzasiek90
25 lut 2024, 20:32
Forum: LinuxCNC (dawniej EMC2)
Temat: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT
Odpowiedzi: 27
Odsłony: 1187

Re: LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT

Szanowni Moderatorzy, czy nie można tego gościa jakoś doprowadzić do porządku? Przecież to co wypisuje to jakieś herezje.
Uczepił się mnie jak rzep psiego ogona i nawet bez czytania, bez zrozumienia, nawet w tematach o których nie ma pojęcia, wchodzi i krytykuje. Nie ważne, że nieprawda, nie ważne, że bez sensu. Byle tylko zabłysnąć.
To czytają inni i mogą odebrać te bzdury jako "dobrą poradę".
tuxcnc pisze:
25 lut 2024, 20:24
Podczas bazowania wszystkie czujniki krańcowe są w stanie nieaktywnym.
Znaczy się powinny być, ale jeśli nie są, to jest sytuacja awaryjna, wymagająca interwencji obsługi/serwisu.
Brak ci wiedzy i doświadczenia.
Ale mam dobry dzień, więc ci wytłumaczę.

Podczas Bazowanie nie działają limity programowe - bo nie mogą.
Jeśli czujniki krańcowe byłyby wyłączone, to w przypadku awaryjnym, gdyby czujnik bazowania nie zadziałał (bo się coś uszkodziło) lub ktoś sobie dziwnie wymyślił, że czujnik bazowania ma na środku a nie na końcu i rozpoczął bazowanie z drugiej strony czujnika?
Czujniki krańcowe MUSZĄ działać podczas bazowania.
Gdyby były dostępne a nie działały, byłoby to skrajnie głupie.
I twórcy LinuxCNC o tym wiedzą, dlatego w LinuxCNC czujniki krańcowe działają podczas bazowania.

Widzisz, myślałeś że nic cię dobrego już nie spotka dziś, a znowu czegoś pożytecznego się nauczyłeś (o ile zrozumiałeś).

Wróć do „LinuxCNC - jak podłączyć wszystkie czujniki bazowania oraz krańcowe do jednego pinu LPT”