hotwire i kod xy
-
Autor tematu - Sympatyk forum poziom 1 (min. 40)
- Posty w temacie: 4
- Posty: 42
- Rejestracja: 09 mar 2009, 14:31
- Lokalizacja: poznań
hotwire i kod xy
Witam
Mam taki problem:
mam 4 osiową maszynę do cięcia styropianu (klasyczna modelarska maszyna do cięcia skrzydeł) - każda oś sterowana osobno. Czyli do pracy potrzebuje gcodu z 4 osiami (x,y,u,v) - taki gcod mam z programu do projektowania skrzydeł (profili) i wszystko działa ok.
Ale czasami przydałoby się wyciąć jakiś detal zaprojektowany np w qcadzie (detal oczywiście z obu stron xy/uv wygląda identycznie). Dla maszyny 2/3 osiowej nie ma problemu - dxf'a z qcada przepuszczam przez dxf2gcode i mam gcode dla emc. Udało mi się przerobić dxf2gcode tak, aby produkował kod 4 osiowy (wartości dla u i v sa takie same jak dla x i y) - ale problem jest z łukami, bo z tego co wiem g02/g03 działa tylko w jednej płaszczyźnie - nie ma chyba sposobu by zrobić jednocześnie łuk w xy i uv. Więc taki gcod na nic się nie zdaje.
Wpadłem więc na inny pomysł - przerobię hala tak aby komendy dla osi x szły od razu na dwa silniki, po lewej i po prawej stronie - co z maszyny 4 osiowej zrobi 2 osiową i nie ma problemu z 4 osiowym gcodem. Ale pojawia sie problem z bazowaniem. Nie mam pojęcia jak zbazować dwie niezależne osie, z własnymi krańcówkami aby emc uznał to za jedną oś.
Mam dwa pomysły:
1) w halu mam konfiguracje jak dla maszyny 4 osiowej. Bazowanie odbywa się normalnie. Następnie na podstawie parametru halui.joint.<n>.is-homed przełączam wyjścia stepperów, tak aby jeden kierował dwoma silnikami/osiami. Teoretycznie do zrobienia, ale hal zrobi sie strasznie skomplikowany
2) bazuje maszynę używając zwykłej konfiguracji, następnie przełączam się na konfiguracje 2 osiowa i pracuje bez bazowania - ale to wymaga pamiętania o bazowaniu i ogólnie mi się nie podoba.
Czy ktoś z kolegów ma jakiś lepszy pomysł jak rozwiązać mój problem?
Tzn albo jak skonfigurować maszynę xyuv aby działała na kodzie xy, albo jak z dxf'a uzyskać gcod 4 osiowy?
Mam taki problem:
mam 4 osiową maszynę do cięcia styropianu (klasyczna modelarska maszyna do cięcia skrzydeł) - każda oś sterowana osobno. Czyli do pracy potrzebuje gcodu z 4 osiami (x,y,u,v) - taki gcod mam z programu do projektowania skrzydeł (profili) i wszystko działa ok.
Ale czasami przydałoby się wyciąć jakiś detal zaprojektowany np w qcadzie (detal oczywiście z obu stron xy/uv wygląda identycznie). Dla maszyny 2/3 osiowej nie ma problemu - dxf'a z qcada przepuszczam przez dxf2gcode i mam gcode dla emc. Udało mi się przerobić dxf2gcode tak, aby produkował kod 4 osiowy (wartości dla u i v sa takie same jak dla x i y) - ale problem jest z łukami, bo z tego co wiem g02/g03 działa tylko w jednej płaszczyźnie - nie ma chyba sposobu by zrobić jednocześnie łuk w xy i uv. Więc taki gcod na nic się nie zdaje.
Wpadłem więc na inny pomysł - przerobię hala tak aby komendy dla osi x szły od razu na dwa silniki, po lewej i po prawej stronie - co z maszyny 4 osiowej zrobi 2 osiową i nie ma problemu z 4 osiowym gcodem. Ale pojawia sie problem z bazowaniem. Nie mam pojęcia jak zbazować dwie niezależne osie, z własnymi krańcówkami aby emc uznał to za jedną oś.
Mam dwa pomysły:
1) w halu mam konfiguracje jak dla maszyny 4 osiowej. Bazowanie odbywa się normalnie. Następnie na podstawie parametru halui.joint.<n>.is-homed przełączam wyjścia stepperów, tak aby jeden kierował dwoma silnikami/osiami. Teoretycznie do zrobienia, ale hal zrobi sie strasznie skomplikowany
2) bazuje maszynę używając zwykłej konfiguracji, następnie przełączam się na konfiguracje 2 osiowa i pracuje bez bazowania - ale to wymaga pamiętania o bazowaniu i ogólnie mi się nie podoba.
Czy ktoś z kolegów ma jakiś lepszy pomysł jak rozwiązać mój problem?
Tzn albo jak skonfigurować maszynę xyuv aby działała na kodzie xy, albo jak z dxf'a uzyskać gcod 4 osiowy?
Tagi:
-
Autor tematu - Sympatyk forum poziom 1 (min. 40)
- Posty w temacie: 4
- Posty: 42
- Rejestracja: 09 mar 2009, 14:31
- Lokalizacja: poznań
Chyba się nie zrozumieliśmy. Mój gcod wygląda np tak:rc666 pisze:Probowales zmienic plaszyzna na ktorej pracujesz
G17 xy plaszczyzna
G18 xz plaszczyzna
G19 yz plaszczyzna
Z tego co zrozumialem to obracasz czesc na 4-tej osi
G0 X090.998 Y023.756 U090.998 V023.756
F200
G1 X073.528 Y045.610 U073.528 V045.610
G3 X054.000 Y055.000 I-19.528 J-15.610
G1 X054.000 Y050.000 U054.000 V050.000
G2 X054.000 Y010.000 I000.000 J-20.000
G1 X054.000 Y000.000 U054.000 V000.000
G1 X104.000 Y000.000 U104.000 V000.000
G1 X104.000 Y015.000 U104.000 V015.000
G3 X099.000 Y020.000 I-05.000 J000.000
G1 X098.809 Y020.000 U098.809 V020.000
G2 X090.998 Y023.756 I000.000 J010.000
jak widac dla komend g1 i g0 wartosci u i v sa takie same jak x i y. Dzięki temu lewa strona maszyny rysuje ten sam kontur co prawa. Problem jest z G2 i G3, bo trzeba by aby jednoczesnie działało w płaszczyźnie xy i uv - a tego wedle mojej wiedzy się nie da zrobic.
A rozbicie tego na dwie osobne komendy i zmiana plaszczyzn w trakcie nic nie da, bo zamiast wyciac walec ze styropianu powstana dwa stożki. Mam na myśli cos w stylu:
G17 xy plaszczyzna
G3 X099.000 Y020.000 I-05.000 J000.000
G?? uv plaszczyzna
G3 U099.000 V020.000 I-05.000 J000.000
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 2
- Posty: 1268
- Rejestracja: 27 cze 2011, 14:48
- Lokalizacja: Chrząszczyżewoszyce
Przedewszystkim widze tutaj 5 osi w takim razie.
U i V sa to 2 osobne osie w tym przypadku.
Pokaz co chcesz konkretnie zrobic.
Po to aby zmienic plaszczyzne sa wlasnie komendy G17 G18 G19.
Jezeli chodzi o G0 to ja bym nie probowal ciecia w tej komendzie.
U i V sa to 2 osobne osie w tym przypadku.
Pokaz co chcesz konkretnie zrobic.
Po to aby zmienic plaszczyzne sa wlasnie komendy G17 G18 G19.
Jezeli chodzi o G0 to ja bym nie probowal ciecia w tej komendzie.
Nie ma głupich pytań, są tylko głupcy którzy ich nie zadają...
-
Autor tematu - Sympatyk forum poziom 1 (min. 40)
- Posty w temacie: 4
- Posty: 42
- Rejestracja: 09 mar 2009, 14:31
- Lokalizacja: poznań
dostaje komunikat: 'dwa kody g z tej same grupy modalnej' i maszyna ani drgie.jarenio pisze:a sprawdzales co sie stanie jak dasz na przykład
G2 X090.998 Y023.756 I000.000 J010.000 G2 U090.998 V023.756 I000.000 J010.000
??
a jak zrobie
G2 X090.998 Y023.756 I000.000 J010.000
a potem
G2 U090.998 V023.756 I000.000 J010.000
to maszyna najpierw robi kawałek łuku a potem pętelkę, ale porusza się tylko lewa strona. Prawa (czyli płaszczyzna u/v) ani drgnie.
[ Dodano: 2011-11-24, 12:05 ]
Na podstawie takiego pliku (to dxf stworzony w qcadzie):rc666 pisze:Pokaz co chcesz konkretnie zrobic.

chce wyciąć ze styropianu taką formatkę:

(przepraszam za jakość zdjęcia, robione komórką).
Jak na razie działam w sposób jaki opisałem w 1 poście - stworzyłem dodatkową konfigurację hala, gdzie jeden stepper ma wyjścia na dwa silniki krokowe (ale muszę pracować bez bazowania, co mi się niezbyt podoba) - a w pliku gcode mam tylko odwołanie do współrzędnych x,y
-
- Lider FORUM (min. 2000)
- Posty w temacie: 1
- Posty: 9323
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: hotwire i kod xy
No to zmień upodobania, bo to najrozsądniejsze co można zrobić.ter_haar pisze:2) bazuje maszynę używając zwykłej konfiguracji, następnie przełączam się na konfiguracje 2 osiowa i pracuje bez bazowania - ale to wymaga pamiętania o bazowaniu i ogólnie mi się nie podoba.
.
-
Autor tematu - Sympatyk forum poziom 1 (min. 40)
- Posty w temacie: 4
- Posty: 42
- Rejestracja: 09 mar 2009, 14:31
- Lokalizacja: poznań
Sam sobie dopowiem, może komuś kiedyś się przyda:
Okazuje się, że w emc2 jest moduł gantrykins - przeznaczony do suwnic, bramownic i innych podobnych maszyn, gdzie jedna oś napędzana jest kilkoma silnikami. I właśnie przy zastosowaniu takiej kinematyki maszyna działa dokładnie tak jak ja chciałem - bazowanie działa jak w maszynie 4 osiowej (każda oś ma swoją krańcówke), po zbazowaniu zmienia się tryb pracy (na tzw 'teleop mode') i jedna oś logiczna (x,y,z...) może sterować kilkoma silnikami naraz.
Mapować można oczywiście dowolnie.
Opis gentrykins: http://linuxcnc.org/docs/html/man/man9/ ... ins.9.html
Okazuje się, że w emc2 jest moduł gantrykins - przeznaczony do suwnic, bramownic i innych podobnych maszyn, gdzie jedna oś napędzana jest kilkoma silnikami. I właśnie przy zastosowaniu takiej kinematyki maszyna działa dokładnie tak jak ja chciałem - bazowanie działa jak w maszynie 4 osiowej (każda oś ma swoją krańcówke), po zbazowaniu zmienia się tryb pracy (na tzw 'teleop mode') i jedna oś logiczna (x,y,z...) może sterować kilkoma silnikami naraz.
Mapować można oczywiście dowolnie.
Opis gentrykins: http://linuxcnc.org/docs/html/man/man9/ ... ins.9.html