Znaleziono 5 wyników

autor: tuxcnc
30 sie 2022, 23:40
Forum: Post Procesory
Temat: Tworzenie post procesora.
Odpowiedzi: 40
Odsłony: 4457

Re: Tworzenie post procesora.

Jak się moderatorowi nie podoba jedno zdanie, to niech moderator usunie to zdanie, a nie cała odpowiedź...
Bo tak, to na technicznym forum mamy promocję nieuctwa, ignoranctwa i jawnych herezji...
https://pl.wikipedia.org/wiki/Interpret ... mputerowy) https://pl.wikipedia.org/wiki/J%C4%99zyk_interpretowany
autor: tuxcnc
28 sie 2022, 13:12
Forum: Post Procesory
Temat: Tworzenie post procesora.
Odpowiedzi: 40
Odsłony: 4457

Re: Tworzenie post procesora.

rc666 pisze:
28 sie 2022, 13:04
Jeżeli mamy program w c albo w basic to musi być kompilator
Nie musi.
Są języki kompilowane, np. wspomniany C i są języki interpretowane, np. wspomniany Basic.
W językach interpretowanych program jest zawsze w postaci źródłowej.
autor: tuxcnc
27 sie 2022, 18:08
Forum: Post Procesory
Temat: Tworzenie post procesora.
Odpowiedzi: 40
Odsłony: 4457

Re: Tworzenie post procesora.

rc666 pisze:
27 sie 2022, 17:36
Już myślałem że przynajmniej z tobą można pogadać normalnie.
Bo można, tylko trzeba zadawać normalne pytania.
Postprocesor nigdy nie jest autonomicznym programem, zawsze jest częścią większego pakietu, zwykle zawierającym moduł CAD, żeby mieć wszystko co potrzebne.
Dlatego pytanie czy używasz Fusion360 jest jak najbardziej na miejscu.
Z twoich wypowiedzi wynika natomiast, że chcesz sobie samodzielnie napisać jakiś autonomiczny postprocesor i nie bardzo wiadomo jak i do czego używać...
Jak się do tego doda wątek o frezarce DIY, to można odnieść wrażenie, że chcesz kupić maszynę sterowaną telepatycznie - Ty sobie pomyślisz co, a ona to zrobi...
No takich czarów to nie ma.
Najpierw trzeba się nauczyć choćby podstaw g-kodu, bo inaczej nigdy nie zrozumiesz jak twoja maszyna działa i dlaczego czasem nie robi tego co byś chciał...
No może jakiś prosty ploter da się obsługiwać pluginem do Inkscape albo Corela, ale na tym koniec.
Widzisz, G-kod wymyślono w latach sześćdziesiątych ubiegłego wieku. Komputer zajmował wtedy kilkadziesiąt metrów kwadratowych, a godzina jego pracy kosztowała przeciętną wypłatę. Dlatego g-kod jest językiem programowania zrozumiałym dla człowieka, bo na początku służył do pisania programów przy pomocy suwaka logarytmicznego i na podstawie rysunków robionych tuszem na papierze.
Naprawdę żadna magia, a jak poznasz kilka podstawowych kodów, to zrozumiesz co maszyna CNC może zrobić, a czego nie jest w stanie.
Wtedy zrozumiesz też do czego jest postprocesor i przestaniesz zadawać głupie pytania.
autor: tuxcnc
27 sie 2022, 17:27
Forum: Post Procesory
Temat: Tworzenie post procesora.
Odpowiedzi: 40
Odsłony: 4457

Re: Tworzenie post procesora.

rc666 pisze:
27 sie 2022, 17:20
Pytam o cam.
Wszyscy tu wiedzą o co pytasz, tylko wygląda to tak, jakbyś Ty nie wiedział...
autor: tuxcnc
26 sie 2022, 17:56
Forum: Post Procesory
Temat: Tworzenie post procesora.
Odpowiedzi: 40
Odsłony: 4457

Re: Tworzenie post procesora.

rc666 pisze:
26 sie 2022, 14:35
Aczkolwiek, gdyby ktoś się znalazł kto ma coś ciekawego do dodanie lub podzielić się wiedzą w tym temacie to będę wdzięczny.
Dam Ci przykład wyjątkowo prosty - dxf2gcode.
Standardowy postprocesor jest napisany dla frezarki, ja potrzebowałem do lasera, który w ogóle nie ma osi Z, natomiast musi mieć sterowanie mocą lasera osobno dla każdej warstwy rysunku.
Ponieważ dxf2gcode pozwala na ustawienie innych posuwów roboczych w osiach X,Y oraz w osi Z, to byłem już w domu...
Było:

Kod: Zaznacz cały

[Program]
    # This will be done after each change between cutting in plane or cutting in depth.
    feed_change = F%feed%nl
    # This will be used for shape cutting.
    lin_mov_depth = G1 Z%ZE%nl
jest:

Kod: Zaznacz cały

[Program]
    # This will be done after each change between cutting in plane or cutting in depth.
    feed_change = ""
    # This will be used for shape cutting.
    lin_mov_depth = S%feed%nl
Rozumiesz coś z tego?

Jest to bardzo proste, program używa zmiennych feed_change, lin_mov_depth, %feed, %Z zrozumiałych tylko dla siebie, natomiast postprocesor określa jak sformatować linie z tymi zmiennymi, tak aby były czytelne dla maszyny.
Załóżmy że %feed=100 i %Z=-10.
Kiedy trzeba wykonać ruch w osi Z, to jeden postprocesor przetłumaczy to na:

Kod: Zaznacz cały

F100
G1 Z-10
a drugi na:

Kod: Zaznacz cały

S100
Jak się nietrudno domyślić, nawet bez jakiejkolwiek znajomości g-kodu, kod wynikowy jest specyficzny dla ściśle określonej maszyny i na innej nie zostanie wykonany prawidłowo, znaczy się nie da tego samego efektu.
Tylko żeby taki prosty trick zrobić, trzeba mieć sporo wiedzy, dobrze znać maszyny dla których się to robi i choćby domyślać się jak działa program CAM dla którego się pisze postprocesor, jakich wewnętrznych zmiennych używa i jakie wartości im nadaje.
Ja na przykład musiałem wiedzieć, że zmienna %feed przyjmuje inną wartość dla ruchu w osiach X,Y a inną dla ruchu w osi Z.
Znikąd nie mogłem się tego dowiedzieć, domyśliłem się, bo mam trochę doświadczenia w programowaniu.
A teraz zła wiadomość - dxf2gcode to jeden z najprostszych programów CAM, zamienia płaskie rysunki w tzw. 2,5D, czyli nigdy nie występuje ruch równocześnie we wszystkich osiach X,Y,Z. Programy obsługujące pełne 3d są o rzędy wielkości bardziej skomplikowane, a przy takich na przykład pięciu osiach, czasem sam autor ma problem zrozumieć co wcześniej napisał i jakim cudem to działa...

Wróć do „Tworzenie post procesora.”