Koledzy, dziękuje za zainteresowanie, prawie wszyscy macie rację. A Kolega ma555rek - dotknął chyba istoty problemu. Jeszcze parę dodatkowych informacji:
Czujniki robią za enkoder absolutny - dla pewności powinny być 4 (a właściwie 5 bo nie mam czujnika przy ryglu) ale nie miałem więcej czujników.
Nie ma żadnego zera, nie ma żadnej bazy - głowica jest dwukierunkowa, obraca się bezpośrednio na zadaną pozycję, bez liczenia 'mijanych' numerów gniazd. Dla tego użyłem silnika krokowego (oraz jako 'sprzęgła' bezpieczeństwa). Jest on skonfigurowany jako oś liniowa.
Program liczy ile kroków (wielokrotność jednej odległości, czyli np. 3x100 kroków lub 2x100 kroków) ma zrobić i w jakim kierunku. I to działa - wystarczy że przy pierwszym wywołaniu narzędzia - potwierdzę - ten numer, na którym aktualnie głowica się znajduje.
Ale jak napisał Kolega 251mz, to mógłby być silnik DC - i taka wersja ma gotowy komponent na forum LinuxCNC. Jest też wersja z krokowcem bez czujników. Dlatego mój komponent posklejałem z tych dwóch.
Przy okazji, Kolega Kamar poruszył poważny problem - numer narzędzia jest jednocześnie numerem gniazda. Czyli mam tylko osiem narzędzi... A przecież w tabeli jest miejsce na wiele więcej! Ale ja nie wiem jak to zrobic - nie rozgryzłem tego jeszcze. Coś tam jest na forum ale to mocno skomplikowane. Dlatego proszę Kolegę o podpowiedź, jak rozdzielić numer gniazda od numeru narzędzia.
W komponencie mam jako żądany numer narzędzia:
' pin in s32 toolnumber "Receives Tx data from M6 (tool number requested) Only allows 1-6"; (akurat umnie jest 8 ).
No i jest tu tylko Tx - czyli jedna liczba. A Koledzy widzę piszą o pozycji np. 1.0.1 - jak to zrobić?
Znaleziono 2 wyniki
Wróć do „Głowica rewolwerowa VDI :) komponent”
- 29 sty 2015, 12:35
- Forum: LinuxCNC (dawniej EMC2)
- Temat: Głowica rewolwerowa VDI :) komponent
- Odpowiedzi: 44
- Odsłony: 6389
- 24 sty 2015, 14:23
- Forum: LinuxCNC (dawniej EMC2)
- Temat: Głowica rewolwerowa VDI :) komponent
- Odpowiedzi: 44
- Odsłony: 6389
Głowica rewolwerowa VDI :) komponent
Zrobiłem głowicę rewolwerową do tokarki. Zbudowana jest na silniku krokowym a za enkoder (numer gniazda) robią trzy czujniki (ich wartości to 1, 2 i 4). Zaadaptowałem komponent z forum linuxa (posklejałem z kilku) i w zasadzie wszystko działa, ale jest jedno ale: kiedy zmieniam narzędzie po raz pierwszy - podaje komendę np. M6 T3, to muszę podać ten numer narzędzia/gniazda, w którym aktualnie głowica się znajduje (czyli w tym przypadku 3). Trochę tego nie rozumiem, bo przecież program najpierw odczytuje aktualny nr narzędzia i porównuje go z zadanym. Jeśli wpisze 'błędny' numer - to zachowuje się dziwnie: obraca o jeden więcej w prawo i o jeden za mało w lewo - czyli nie jest w stanie znaleźć prawidłowej pozycji.
Mój system to 8.04 i LinuxCNC 2.5.4
I tu pytanie do Kolegów - czy za pierwszym razem tak już musi być czy coś mam popieprzone w komponencie lub gdzie indziej
?
]
Mój system to 8.04 i LinuxCNC 2.5.4
I tu pytanie do Kolegów - czy za pierwszym razem tak już musi być czy coś mam popieprzone w komponencie lub gdzie indziej


