step2cnc - poważny problem
-
- Lider FORUM (min. 2000)
- Posty w temacie: 9
- Posty: 7861
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Ponieważ nie otrzymałem odpowiedzi na moje pytanie, ściągnąłem step2cnc, zainstalowałem i nakarmiłem pierwszym wadliwym kodem jaki mi przyszedł do głowy :
Program łyknął kod bez zająknięcia i ... wyciął trójkąt.
Jak na program za pięćset złotych to totalna porażka.
.
[ Dodano: 2011-12-17, 18:32 ]
A to już nie porażka, tylko masakra :
Step2cnc wycina kółko narysowane w Paincie ....
.
Kod: Zaznacz cały
G0 X10
G1 Y10
G2 R5
G3 X0Y0I10J10
G3 A1B2C3D4E5F6G7H8
G3 Z20
Jak na program za pięćset złotych to totalna porażka.
.
[ Dodano: 2011-12-17, 18:32 ]
A to już nie porażka, tylko masakra :
Step2cnc wycina kółko narysowane w Paincie ....
.
-
- Lider FORUM (min. 2000)
- Posty w temacie: 9
- Posty: 7861
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Jest taka zasada http://pl.wikipedia.org/wiki/Garbage_In,_Garbage_Out .
Dodać można, że ignorowanie błędnych danych wejściowych w przypadku frezarki CNC oznaczać może zniszczony materiał.
Jeśli program czegoś nie potrafi, to niech nie próbuje tego robić.
.
Dodać można, że ignorowanie błędnych danych wejściowych w przypadku frezarki CNC oznaczać może zniszczony materiał.
Jeśli program czegoś nie potrafi, to niech nie próbuje tego robić.
.
-
- Lider FORUM (min. 2000)
- Posty w temacie: 6
- Posty: 2173
- Rejestracja: 29 lip 2005, 15:07
- Lokalizacja: Warszawa
- Kontakt:
Uuuuu...... chyba rzeczywiście kol. tuxcnc nie lubi mnie i mojego programu. Ale cóż - wolno mu. Do rzeczy:
Popatrzmy na kod:
G0 X10
G1 Y10
G2 R5
G3 X0Y0I10J10
G3 A1B2C3D4E5F6G7H8
G3 Z20
Niestety kol. tuxcnc - nie masz racji. Program stara się być niepodatny na "garbage" - śmieci, jak je nazywasz. Tyle, że między śmieciami są polecenia g-kodów należące do standardu. Tak więc po odfiltrowaniu masz:
G0 X10
G1 Y10
X0Y0
Z20
i wszystko się zgadza. Kody których nie zna usunął, jeśli w linii kodu nie ma mnemonika ruchu (oznaczenia ruchu) - domyślnie program traktuje go, jako G1. W wyniku otrzymasz trójkąt, a następnie oś Z zostanie podniesiona o 20 mm. Co więcej zauważ, że i nagłówka program nie wymaga. Domyślnie pracuje w systemie danych globalnych i milimetrach.
Co do G2 i G3 - do których tak się przypiąłeś. Praktycznie żaden z programów CAM, które znam nie generuje domyślnie takich kodów. Większość wszystkie krzywe wielomianowe - także łuki - generują w postaci wieloboków. Co więcej powiem - każdy algorytm interpolacji kołowej (np. Bresenhama) jest tak naprawdę algorytmem opartym na wieloboku! Cytowany Bresenham napisał swój algorytm dla równomiernego wyświetlania obrazów rastrowych - a więc opartych na matrycy dwuwymiarowej (XY).
Moje oprogramowanie STEP2CNC jest w tej chwili numerowane już powyżej 500, a więc tylu jest jego użytkowników. Myślisz, że ktokolwiek narzeka, że nie ma poleceń G2 i G3?
Nie ma ich - bo po prostu nie ma takiej potrzeby. Większość użytkowników bazuje na plikach PLT, które są generowane przez np. CorelDraw (mój eduCAD i cncCAD także), a ten ani myśli używać poleceń AA i RA. Ergo - G2 i G3 można swobodnie pomijać.
Co do tej zupełnej porażki (masakry, jak ją nazwałeś), którą pokazujesz na zrzucie z ekranu - wystarczy przeczytać instrukcję do STEP2CNC - wersja demo ma ograniczenie do 500 wektorów. Tyle program wyświetla, dlatego nie widzisz swojego kółeczka
Popatrzmy na kod:
G0 X10
G1 Y10
G2 R5
G3 X0Y0I10J10
G3 A1B2C3D4E5F6G7H8
G3 Z20
Niestety kol. tuxcnc - nie masz racji. Program stara się być niepodatny na "garbage" - śmieci, jak je nazywasz. Tyle, że między śmieciami są polecenia g-kodów należące do standardu. Tak więc po odfiltrowaniu masz:
G0 X10
G1 Y10
X0Y0
Z20
i wszystko się zgadza. Kody których nie zna usunął, jeśli w linii kodu nie ma mnemonika ruchu (oznaczenia ruchu) - domyślnie program traktuje go, jako G1. W wyniku otrzymasz trójkąt, a następnie oś Z zostanie podniesiona o 20 mm. Co więcej zauważ, że i nagłówka program nie wymaga. Domyślnie pracuje w systemie danych globalnych i milimetrach.
Co do G2 i G3 - do których tak się przypiąłeś. Praktycznie żaden z programów CAM, które znam nie generuje domyślnie takich kodów. Większość wszystkie krzywe wielomianowe - także łuki - generują w postaci wieloboków. Co więcej powiem - każdy algorytm interpolacji kołowej (np. Bresenhama) jest tak naprawdę algorytmem opartym na wieloboku! Cytowany Bresenham napisał swój algorytm dla równomiernego wyświetlania obrazów rastrowych - a więc opartych na matrycy dwuwymiarowej (XY).
Moje oprogramowanie STEP2CNC jest w tej chwili numerowane już powyżej 500, a więc tylu jest jego użytkowników. Myślisz, że ktokolwiek narzeka, że nie ma poleceń G2 i G3?
Nie ma ich - bo po prostu nie ma takiej potrzeby. Większość użytkowników bazuje na plikach PLT, które są generowane przez np. CorelDraw (mój eduCAD i cncCAD także), a ten ani myśli używać poleceń AA i RA. Ergo - G2 i G3 można swobodnie pomijać.
Co do tej zupełnej porażki (masakry, jak ją nazwałeś), którą pokazujesz na zrzucie z ekranu - wystarczy przeczytać instrukcję do STEP2CNC - wersja demo ma ograniczenie do 500 wektorów. Tyle program wyświetla, dlatego nie widzisz swojego kółeczka
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)
-
- Lider FORUM (min. 2000)
- Posty w temacie: 9
- Posty: 7861
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Jeżeli twój program z G3 X0Y0I10J10 robi G1X0Y0 to absolutnie nic się nie zgadza.Piotr Rakowski pisze:Popatrzmy na kod:
G0 X10
G1 Y10
G2 R5
G3 X0Y0I10J10
G3 A1B2C3D4E5F6G7H8
G3 Z20
Niestety kol. tuxcnc - nie masz racji. Program stara się być niepodatny na "garbage" - śmieci, jak je nazywasz. Tyle, że między śmieciami są polecenia g-kodów należące do standardu. Tak więc po odfiltrowaniu masz:
G0 X10
G1 Y10
X0Y0
Z20
i wszystko się zgadza.
W to akurat wierzę.Piotr Rakowski pisze:Praktycznie żaden z programów CAM, które znam nie generuje domyślnie takich kodów.
Nie znasz żadnego.
No i znowu, jak nie może wyświetlić całości, to nie powinien niczego wyświetlać.Piotr Rakowski pisze:wersja demo ma ograniczenie do 500 wektorów. Tyle program wyświetla, dlatego nie widzisz swojego kółeczka
A tak poza tym, to Ci nie wierzę że to akurat o limit 500 linii chodzi, bo ja tam nawet kawałka okręgu nie widzę.
Rozumiem, że są ludzie dla których twój program jest aż nadto wystarczający i że oni chętnie zapłacą po pięć stówek i będą zadowoleni.
Tylko jeśli twoja wiedza o CAD/CAM kończy się na Corelu i eksporcie do HPGL, to się nie bierz za g-kody.
.
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 2
- Posty: 1670
- Rejestracja: 03 sty 2007, 14:27
- Lokalizacja: Wiedeń
tuxcnc pisze:Zgadza się z tym co napisał - program olał G2 i G3 a że ostatnim zrozumiałym rozkazem było G1 - "X0Y0" zostało potraktowane jako rozkaz ruchu (G1 jest zdaje się modalny i po pierwszym użyciu nie trzeba go powtarzać). Można się kłócić o czy sensowne jest realizowanie zrozumiałych strzępów programu zamiast od razu rzucić syntax error ale z jakiegoś dziwnego powodu inne programy cnc robią podobnie absurdalne rzeczy (parę miesięcy temu ktoś tutaj pytał jak w G-code definiuje się zmienne i nie chciał wierzyć kiedy mu odpowiedziano - znaku # używał do znakowania komentarzy a mach3 jakoś to łykał ).Piotr Rakowski pisze: Jeżeli twój program z G3 X0Y0I10J10 robi G1X0Y0 to absolutnie nic się nie zgadza.
.
Przykład pokazany w filmiku w pierwszym poście ewidentnie zawiera okrąg - albo program jednak rozpoznaje G2 G3 do wyświetlania ale nie dla ruchu (co byłoby absurdalne) albo okrąg był interpolowany liniami - przy ograniczeniu do 500 linii i chmm... swobodnym podejściu do tego co jest linią a co nie taki okrąg może się zamienić w cokolwiek...
-
- Lider FORUM (min. 2000)
- Posty w temacie: 9
- Posty: 7861
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Moim zdaniem to nie podlega dyskusji.grg12 pisze:Można się kłócić o czy sensowne jest realizowanie zrozumiałych strzępów programu zamiast od razu rzucić syntax error
Można sterować maszynę uproszczonym g-kodem (tylko G0 i G1), tak samo można to robić uproszczonym HPGL bez łuków, ale wtedy trzeba maszynę zabezpieczyć przed próbą uruchomienia kodu w pełnym standardzie.
W przypadku step2cnc mamy do czynienia z kompletną ignorancją.
G2/G3 nikt przecież nie używa, to można olać ...
.
-
- Lider FORUM (min. 2000)
- Posty w temacie: 6
- Posty: 2173
- Rejestracja: 29 lip 2005, 15:07
- Lokalizacja: Warszawa
- Kontakt:
Kol. tuxcnc - masz ze sobą poważny problem, polegający na potwornym zadufaniu i posiadaniu "monopolu na rację". Rozumiem, że na forum możesz pisać co Ci ślina na język przyniesie, ale daruj sobie prywatne wycieczki w moim kierunku - nie znasz mnie, nie wiesz co wiem, a czego nie. Nie chcesz - nie używaj STEP2CNC, nikt Ci nie każe.
Co do STEPa - każdy program do czegoś służy. Większość firm robiących własne sterowania i oprogramowanie do niego także tworzy interpretację tylko taki kodu, jaki maszyna jest w stanie wykonać. Ja bez problemu mogę dodać interpretację bardzo dużej liczby poleceń do interpretera kodu - tyle, że nikt (lub prawie nikt) tego używać nie będzie.
Koniec dywagacji z tuxcnc. Wątek założył inny kolega, od którego chciałbym się dowiedzieć, czy coś udało mu się zawalczyć?
Co do STEPa - każdy program do czegoś służy. Większość firm robiących własne sterowania i oprogramowanie do niego także tworzy interpretację tylko taki kodu, jaki maszyna jest w stanie wykonać. Ja bez problemu mogę dodać interpretację bardzo dużej liczby poleceń do interpretera kodu - tyle, że nikt (lub prawie nikt) tego używać nie będzie.
Koniec dywagacji z tuxcnc. Wątek założył inny kolega, od którego chciałbym się dowiedzieć, czy coś udało mu się zawalczyć?
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)
-
- Lider FORUM (min. 2000)
- Posty w temacie: 9
- Posty: 7861
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Ale ja naprawdę w to wierzę, że umiesz dodać implementację takich g-kodów jak G04 (pauza), M03/M04/M05 (włączenie/wyłaczenie wrzeciona), M06 (zmiana narzędzia) ....Piotr Rakowski pisze:Ja bez problemu mogę dodać interpretację bardzo dużej liczby poleceń do interpretera kodu - tyle, że nikt (lub prawie nikt) tego używać nie będzie.
Ja nawet podejrzewam, że z tym poradził by sobie nawet twój statystyczny klient o specyficznym IQ.
Problem nie polega na tym, że nie potrafisz, tylko na tym że w dziedzinie CNC jesteś kompletnym ignorantem.
Tu masz całkiem przyzwoity zestaw kodów, których nikt nie używa : http://www.linuxcnc.org/docview/html/gcode_main.html .
W Machu zresztą istnieje podobny zestaw kodów, których nikt nie używa.
Masz absolutną wolność pisania takich programów jakie Ci się spodoba, ale nie pisz że step2cnc obsługuje g-kody, bo to jest kłamstwo.
.