NGCGUI - toczenie, mocno rozbudowana procedura

Dyskusje dotyczące działania obsługi programu LinuxCNC
Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#221

Post napisał: MlKl » 09 gru 2012, 02:25

Obrazek

Procedura wzbogaciła się o podcięcia za czopem, na razie tylko według norm a i b.



Tagi:

Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#222

Post napisał: MlKl » 10 gru 2012, 03:47

Doszły podcięcia według norm C i D

Obrazek

Aktualny obrazek do procedury i sama procedura w załączniku do wczorajszego komentarza.

Obrazek

Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#223

Post napisał: MlKl » 11 gru 2012, 05:41

[youtube][/youtube]

Odpaliłem sobie oprogramowanie do nagrywania tego co się dzieje na ekranie wraz z komentarzem mówionym do mikrofonu podłączonego do komputera. Wadą jest czas, jaki komputer zużywa po nagraniu do przetworzenia zapisanych surowych danych, ale w efekcie otrzymuję stosunkowo mały plik, który bezpośrednio i szybko wysyłam na YouTube.

Próby z aparatem fotograficznym w roli kamery nagrywającej to, co się dzieje na ekranie były technicznie kiepskie, obiektyw nie radził sobie z wyraźnym pokazaniem szczegółów.

Tu jeszcze z jakością nie jest idealnie, ale to pierwsza próba, muszę powalczyć z ustawieniem parametrów nagrania, i będzie można nagrać cykl wykładów o użytkowaniu programu LinuxCNC od samych podstaw aż do zaawansowanej obsługi i pisania G-code i własnych zakadek NGCGUI.


dziabi3
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 24
Posty: 874
Rejestracja: 13 sie 2009, 16:15
Lokalizacja: xxx

#224

Post napisał: dziabi3 » 11 gru 2012, 17:58

widzę że się pochwaliłeś swoim dziełem , fajnie to wyszło wszystko masz pojęcie lecz

- w machu można się bawić dokładnie tak samo w budowę takich kreatorów
- do mnie taki kreatorki nie przemawiają bo kolejność obróbki jest z góry narzucona mało można zakombinować i wolałbym pisać z palca niż być niewolnikiem własnego dzieła
- do prawdziwego toczenia i prawdziwych zabaw na tokarce to niema racji bytu
- a co z bardziej skomplikowanym kształtami gdzie musisz mieć pewność że nie uwalisz detalu bo cośik żle wpisałeś , nie masz możliwości przemierzyć szkicu nic totalnie nic walisz w ciemno
- a co jak musisz wykonać 2 pasujące części idealnie do siebie , np słup i kielich formy albo mała foram do odcisku gumy na gorąco , jak sobie złożysz te 2 detale w pamięci ?
- co gdy chcesz toczyć nożem do przecinania z erami lub kulką lub robić głębokie podcięcia
- i co z kompensacją promienia narzędzia
Mach3 + CSMIO = :-) :-) :-)


kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 99
Posty: 16285
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

#225

Post napisał: kamar » 11 gru 2012, 18:53

Nie bardzo mogę bronić Mikiego bo też mi sie taka kobyła nie podoba ale..
dziabi3 pisze: - w machu można się bawić dokładnie tak samo w budowę takich kreatorów
Wiele słyszę nic nie widzę :)
dziabi3 pisze: - do prawdziwego toczenia i prawdziwych zabaw na tokarce to niema racji bytu
Trzeba to jeszcze umieć wykorzystać.

Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#226

Post napisał: MlKl » 11 gru 2012, 19:24

Toć wiem, że w Machu można, ino jeden drobiazg - tam trzeba znać VB, i trzeba budować taki kreator od podstaw. W LinuxCNC to samo i tak samo można robić w języku Python.

NGCGUI dla LinuxCNC jest gotowym kreatorem, do którego jedynie pisze się procedury tym samym kodem, jakim się go karmi bez kreatora. NGCGUI samo zajmuje się utworzeniem tabelki do wpisywania zmiennych, i potem te wpisane zmienne przetwarza na wynikowy G-code dla maszyny.

Wolne oprogramowanie tak się rozwija - ktoś pisze kawałek kodu, ktoś inny uzupełnia, inny poprawia, czy rozszerza. Kamar ze mną walczy, że zbytnio komplikuję - on woli detal składać z bardzo prościutkich podprocedur, albo robić go etapami, również prostymi procedurami typu walec czy stożek.

Ty zwracasz uwagę, że rzecz całą należy jeszcze bardziej skomplikować :) Sam sobie z tego zdawałem sprawę, ale na razie nie tykałem, bo do skończenia tego, co zacząłem jeszcze droga daleka.

Na skomplikowaną formę to ja sobie wygeneruję ścieżkę, i napiszę do niej dwie procedury tworzące połowki matrycy, a nie będę tego składał z klocuszków. Na razie klienci drzwiami i oknami z takimi matrycami się nie pchają :)

Co do kolejności nie masz racji. Ten kreator służy do toczenia czopów na wale - podstawową procedurą jest toczenie walca. Reszta jest opcjonalna, można też pominąć ową procedurę główną, i wykonać pojedynczo jedną z podprocedur jako główną. To już działa - mogę se zaprogramować jako osobną operację fazkę, czy podcięcie bez żadnych kombinacji.

Kształty noży wpisuje się w tabeli narzędzi. Do włączania kompensacji tego kształtu w kodzie jeszcze nie doszedłem - ale przyjdzie pora na zmierzenie się z tym problemem.


Problem z mierzeniem detalu nie istnieje - skomplikowany detal tworzy się etapami, wywołując dla kolejnego etapu kolejną instancję kreatora. Wał ma trzy czopy - trzy instancje kreatora, w każdym wpisuję dane odnośnie jednego czopa. Z wykonaniem fazek, podcięć czy stożków co tam wyniknie z rysunku. W dowolnym momencie mogę sobie obejrzeć podgląd jednej, kilku razem, czy wszystkich zaprogramowanych operacji. Będę widział, czy mi się to składa w całość, czy rozjeżdża.

[ Dodano: 2012-12-11, 22:52 ]
dziabi3 - Krótka piłka - pokaż mi, jak zaprogramujesz w demo macha - czyli w programie adekwatnym cenowo do LinuxCNC, taki detal:

Obrazek

Wałek fi 60 mm, wysunięty z uchwytu na 130 mm, długość gotowego detalu 106 mm, toczenie od prawej do lewej i od lewej do prawej, czopy, fazki, podcięcie, gwint i odcięcie gotowego detalu - wszystko jednym naciśnięciem R, zmiany noża w Multifixie ilekroć zajdzie potrzeba - zachodzi kilkanaście razy. Ustawienie ścieżki pustych przebiegów, żeby nie spowodowały kolizji z materiałem. Ustawienie wejścia noża w materiał od strony uchwytu przy toczeniu od lewej do prawej by wchodził łagodnie po skosie.

A wszystko to robię dla LinuxCNC w sześciu linijkach kodu wynikowego dla programu. Czyli jak demo Macha przyjmuje do 500 linii, masz jeszcze sporo miejsca do manewru jakby co :)

[ Dodano: 2012-12-11, 23:23 ]
Obrazek

To, co na zrzucie, jest efektem zaprogramowania czterech zakładek NGCGUI, czyli czterech instancji mojej procedury.

To się wyśle w rzeczywistości na maszynę:


Kod: Zaznacz cały

o<toczenie> call [60][120][2][0][0][0][57][39][0][-55][2][0][0][1][1][0][0][1][0][0][0][0][1][0][0][1][99][0][0][0][0][0][0][0.25][0.5][6][7][2][0][0][400][1000][800][1][54][0][0][720][1500] 

o<toczenie> call [0][0][0][0][0][0][39][36][0][-31][2][0][1][0][0][0][0][0][1][1][0][0][0][0][0][99][58][0][0][0][0][0][0][0.25][0.5][6][0][2][2][0][400][1000][800][1][54][0][0][720][1500] 

o<toczenie> call [0][0][0][0][0][0][57][44][-120][-75][2][0][0][1][1][0][0][0][0][0][0][0][0][-1.5][0][99][99][0][0][0][0][0][0][0][0.5][6][0][1][0][1][400][1000][800][1][54][0][0][720][1500] 

o<toczenie> call [0][0][0][0][0][0][44][40][-110][-88][2][0][0][1][1][0][0][0][1][1][0][0][0][-2][0][99][61][0][0][0][0][0][0][0.25][0.5][6][0][1][1][1][400][1000][800][1][54][0][0][720][1500] 
LinuxCNC cztery razy wywoła moją procedurę z takimi parametrami, i z surowego wałka będzie gotowy walec z czopami z rysunku. Pozostało zaprogramować jeszcze dwie zakładki - gwint do wykonania gwintu na jednym z czopów, i seger, który oprócz rowków segera świetnie nadaje się do odcinania elementów - wystarczy podać, że dno rowka jest na zerze w X, a szerokość noża jest równa szerokości rowka.

W realu wygląda to tak: biorę rysunek w rękę, podchodzę do maszyny, i w jakieś 5-10 minut ustawiam tych kilka zakładek z jakimiś naddatkami. Puszczam to sobie na sucho, żeby wyłapać ewentualne kolizje, czy babole, i jak jest ok, zakładam wałek i jadę z koksem. Bez odcinania i gwintowania na razie - sam kształt. Maszyna kończy, mierzę co wyszło, wpisuję poprawki, i puszczam raz jeszcze. Znowu mierzę - jak jest jeszcze coś do poprawki, znowu poprawiam, jak nie - jadę gwint i odcięcie. Wpisuję sobie w okienku MIDI g0 x10 z2 i wysyłam nóż w tą pozycję. Przesuwam materiał w uchwycie do czubka noża, naciskam R i już tylko czekam na kolejną gotową sztukę.


dziabi3
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 24
Posty: 874
Rejestracja: 13 sie 2009, 16:15
Lokalizacja: xxx

#227

Post napisał: dziabi3 » 12 gru 2012, 00:11

Ale dolałem benzyny do ognia :mrgreen:

Rozumiem twój zapał i upór , chęć przekonania ludzi do tego co robisz zgadzam się z tobą w 99% , lecz nie możesz karzdemu proponować kreatora bo wszędzie się nie nadają , no chyba że zrobisz mini cam.

Kod: Zaznacz cały

 Toć wiem, że w Machu można, ino jeden drobiazg - tam trzeba znać VB, i trzeba budować taki kreator od podstaw. W LinuxCNC to samo i tak samo można robić w języku Python.
z tego co widzę to Python i VB są tak samo skomplikowane a jak znasz trochę VB to w machu możesz robić takie cudeńka bajery.

Kod: Zaznacz cały

Co do kolejności nie masz racji. Ten kreator służy do toczenia czopów na wale - podstawową procedurą jest toczenie walca. Reszta jest opcjonalna, można też pominąć ową procedurę główną, i wykonać pojedynczo jedną z podprocedur jako główną. To już działa - mogę se zaprogramować jako osobną operację fazkę, czy podcięcie bez żadnych kombinacji. 
Naprawdę nie masz władzy nad trasą narzędzia , nie możesz dodać stylu wejścia w materiał, konta wejścia , długości wejścia , co najlepsze zmienić kierunku obróbki


Kod: Zaznacz cały

Kształty noży wpisuje się w tabeli narzędzi. Do włączania kompensacji tego kształtu w kodzie jeszcze nie doszedłem - ale przyjdzie pora na zmierzenie się z tym problemem. 
jak to zrobisz to szacun dla ciebie , wtedy 1 2 kroki do mini cama

Kod: Zaznacz cały

 Problem z mierzeniem detalu nie istnieje - skomplikowany detal tworzy się etapami, wywołując dla kolejnego etapu kolejną instancję kreatora. Wał ma trzy czopy - trzy instancje kreatora, w każdym wpisuję dane odnośnie jednego czopa. Z wykonaniem fazek, podcięć czy stożków co tam wyniknie z rysunku. W dowolnym momencie mogę sobie obejrzeć podgląd jednej, kilku razem, czy wszystkich zaprogramowanych operacji. Będę widział, czy mi się to składa w całość, czy rozjeżdża. 
Mozolna zabawa

Kod: Zaznacz cały

dziabi3 - Krótka piłka - pokaż mi, jak zaprogramujesz w demo macha - czyli w programie adekwatnym cenowo do LinuxCNC, taki detal: 
Odpalam MASTERCAMA i wio 20 minut od dostania detalu lub szkicu z narysowaniem tego , ułożeniem operacji na bogato i sensownie tak aby detal wyszedł miodzio podchodzę do maszyny i jadę

Tylko ty do tych 20 minut musisz doliczyć czas napisania kreatora a nie wszyscy mają tyle czasu w życiu aby się w to wtajemniczać.




Pamiętaj że to co robisz doceniam i podziwiam ale ja się stykam z ludźmi którzy chcą gotowych rozwiązań takich jak gotowe camy.

Rozwiń działalność ludzie zaczną uderzać do ciebie to zobaczymy czy będzie ci się chciało bawić w takie kreatorki.
Mach3 + CSMIO = :-) :-) :-)

Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#228

Post napisał: MlKl » 12 gru 2012, 00:32

Kąt wejścia i długość wejścia to ja se już mogę ustawiać bez żadnego problemu, podobnie jest z kierunkiem - toczę od lewej do prawej i od prawej do lewej.

Zapomnij o tym, że masz wybajerzoną wersję Macha po lanie i CAM-a za dziesięć tysięcy do dyspozycji.

Przerobiłeś swoją tokarkę na CNC, za ostatnie grosze kupiłeś Multifixa, i teraz masz do wyboru demo Macha, albo LinuxCNC, bo na nic więcej cię nie stać. A chcesz toczyć...

Większość użytkowników tutaj kombinuje, jak swoją maszynkę uruchomić przy znikomym budżecie.

Ja jestem takim użytkownikiem - i z myślą o podobnych do mnie to piszę.

Dlatego pytam ciebie, jak to, co pokazałem, ma zaprogramować dumny posiadacz Macha w wersji demo. Bez możliwości zakupienia dodatkowego oprogramowania, i nie kradnący oprogramowania komercyjnego.

A procedurę, czy jak to chcesz nazywać, kreatora piszę dla wszystkich, jest dostępna za darmo, wystarczy ją sobie zapisać na dysku w odpowiednim katalogu, i można używać. IMHO daje już sporo swobody, i nie kosztuje ani złotówki.

[ Dodano: 2012-12-12, 01:18 ]
Ogólnie - każdy głos w tej dyskusji wnosi coś nowego do pisanej procedury. Dlatego cieszy mnie wszelka krytyka - dzięki niej dostrzegam aspekty wcześniej nie dostrzegane, i mogę je uwzględnić.

Dziś to:

Obrazek

robię w dwóch zakładkach po "kamarowemu", czyli od prawej do lewej ile się da, zamiast plastrami co czop w trzech zakładkach.

Nie pracowałem w życiu na zaawansowanym CAM-ie, i nawet nie wiem, co dokładnie umożliwia.

LinuxCNC wykona kod z CAM-a, choć pewnie trzeba by najpierw napisać postprocesor, żeby to zrobił dobrze. Ale tutaj chodzi o takie rozwinięcie możliwości samego programu, żeby CAM był zbędny.


kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 99
Posty: 16285
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

#229

Post napisał: kamar » 12 gru 2012, 05:40

MlKl pisze:
robię w dwóch zakładkach po "kamarowemu", .
Nie " po kamarowemu " tylko zgodnie ze sztuką :) Choć praktycznie to to samo :)

Awatar użytkownika

Autor tematu
MlKl
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 143
Posty: 3705
Rejestracja: 15 sie 2010, 13:44
Lokalizacja: Błonie
Kontakt:

#230

Post napisał: MlKl » 12 gru 2012, 10:20

Problem na styku programista/użytkownik programu polega na tym, że programista myśli kategoriami zupełnie odmiennymi, niż rozmaite "sztuki" sobie wypracowały w praktyce. Czasem takie łamanie stereotypu ma sens, ale nie może być wprowadzane na siłę, dlatego programista powinien konsultować z użytkownikiem swoje dzieło, i dopasowywać je w miarę możliwości do jego przyzwyczajeń i reguł.

Ja jestem najpierw programistą, tokarzem jestem z przypadku i od niedawna. Zresztą i programista to nie jest mój wyuczony zawód, ale wykonuję go od dwunastu lat, toczę niecałe dwa. Z czego na CNC dopiero pół roku. O toczeniu wiem tyle, ile tu na forum przeczytałem, i podpatrzyłem u znajomych tokarzy, gdy coś u nich zlecałem, i polowałem na moment, aż będą mieli chwilkę, żeby moje zamówienie wykonać.

Dlatego takie głosy jak twój są mi bardzo pomocne, i nie przeszkadza mi wcale, że sama idea ci nie pasuje. Wystarczy, że wytykasz jej błędy, a ja mogę je poprawiać w kolejnych wersjach softu.

W NGCGUI najbardziej brakuje mechanizmu dziedziczenia wartości między zakładkami potomnymi, i możliwości wywołania konkretnej procedury z parametrami wpisanymi tylko dla niej.

Powinno być tak, że kliknięcie na "Nowa" w zakładce "Toczenie" wywołuje pustą zakładkę, ale kilknięcie na "Nowa" na zakładce potomnej wywołuje zakładkę już wypełnioną częściowo - ze średnicą końcową zakładki nadrzednej wpisaną jako średnica początkowa podrzędnej.

Z kolei powinna być możliwość utworzenia zakładek, które nie biorą udziału bezpośrednio w składaniu procedury, czyli ich się nie zaznacza do utworzenia, ale do których można się odwołać w zaznaczanych zakładkach.

Czyli mogę sobie utworzyć kilka zakładek "Podcięcie", czy "Fazka" w których sobie sparametryzuję wszystkie występujące w detalu podcięcia, albo fazki, wtedy mogę je sobie dowolnie zmodyfikować, np poglębiając, czy skracając w stosunku do normy. Tworząc zakładkę "Toczenie" ona powinna sama w siebie wciągać te zakładki "Podcięcie" jako rozwijaną listę wyboru. Wtedy moje możliwości manewru zwiększają się wielokrotnie bez konieczności mnożenia ilości zmiennych w jednej zakładce.

Ale takiej możliwości nie ma, i nie wiadomo, czy kiedykolwiek będzie, a moje możliwości jako programisty na dziś nie pozwalają tak zmodyfikować NGCGUI - prędzej zdolny do tego byłby Artur. Dlatego działam w zakresie, w którym mogę zrobić cokolwiek sam. Czyli w zakresie wyznaczanym przez samo NGCGUI.

[ Dodano: 2012-12-12, 17:13 ]
[youtube][/youtube]

Na filmiku zmieściło się tylko zgrubne zaprojektowanie czterech zakładek - YouTube akceptuje tylko do 15 minut filmu. Nie zdążyłem do końca dopieścić wejścia noża w materiał przy toczeniu od lewej do prawej, poprawić końcowych odjazdów między zakładkami, i pokazać jak to się odbędzie na symulacji.

Ale widać, że detal składa się jak z klocków Lego, bez zbytniego kombinowania, większość wymiarów wpisuje się wprost z rysunku. Czasem trochę trzeba pokombinować, ale procedura właśnie po to powstała, żeby pokombinować można było w razie potrzeby.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”