Znaleziono 4 wyniki

autor: PiRo_man
05 paź 2014, 19:32
Forum: G-CODE - programowanie
Temat: Jak wyciąć taki kształt. To chyba ewolwenta
Odpowiedzi: 17
Odsłony: 3908

pitsa coś Cię boli? Rozumiem po Twojej wypowiedzi, że mam podać gotowy kod. Wykonać usługę za darmo? Żeby ktoś na tym zarobił? :D Żartujesz... I tak już dużo podpowiedziałem.

Oczywiście że będę sobie rysował, jak również twierdził. Twoje marne docinki tego nie zmienią.

Tak na marginesie częścią tematu było również podejście autora do problemu, który chciał utworzyć ewolwentę, zamiast oprzeć się na bardziej optymalnych łukach. Tego właśnie dotyczyły moje posty, aby w pełni wyczerpać temat, oraz aby nie pozostało nic niezrozumiałego.

Poza tym podałem gotowe wzory wraz z dowodami twierdzeń. Teraz wystarczy tylko poprawny zapis tego wzoru na maszynie. Skoro znasz G-kody, to po prostu wprowadź moje wypociny do programu i problem rozwiązany. Ja nie mam na to czasu aby komuś za darmo tworzyć programy. Inne projekty (płatne) czekają w kolejce więc wybacz, ale zrezygnuję z Twojego zlecenia. :)

inż. Mateusz
autor: PiRo_man
05 paź 2014, 13:00
Forum: G-CODE - programowanie
Temat: Jak wyciąć taki kształt. To chyba ewolwenta
Odpowiedzi: 17
Odsłony: 3908

Segitarius nawet w przypadku, można powiedzieć, nałożenia się na siebie dwóch okręgów o różnych średnicach mają tylko jeden punkt styczny. Przykład poniżej:
Obrazek
Więc punkty przechodzenia z jednego promienia do drugiego będą punktami styczności (inaczej - koniec pierwszego z początkiem drugiego).
Tam gdzie jest napisane "Przecięcie" znajduje się punkt (jeden jedyny!) w którym oba okręgi mają wspólny punkt. W ten właśnie sposób przechodzi się stycznie (płynnie) z mniejszego promienia do większego.

pitsa oczywiście żaden problem zbudować krzywą ewolwentową z łuków. Moim zdaniem jest to nawet wskazane. Tak jak pisałem traci się wtedy na dokładności krzywej, ale ta utrata nie jest na tyle duża żeby rezygnować z takiego rozwiązania. To wygląda tak jak z kompresją bitmapy do jpg. W skompresowanym obrazie różnicy gołym okiem nie zauważymy, a rozmiar pliku jest znacznie mniejszy.

Poniżej masz przykład zastąpienia ewolwenty zbudowanej z krzywej Beziera (po prawej) na łuki (po lewej):
Obrazek
Widać że łuków jest więcej niż punktów z krzywej Beziera, powodem jest pociągnięcie ewolwenty od jej środka, co przy tolerancji do 0.01 mm łuki stają się bardzo krótkie, aby w jak najlepszym stopniu odwzorować oryginalną krzywą. Jak pewnie zauważyłeś przy większych promieniach już tego problemu nie ma, dlatego właśnie twierdzę, że jest to wskazane, aby taką krzywą przybliżyć łukami.

inż. Mateusz
autor: PiRo_man
05 paź 2014, 08:49
Forum: G-CODE - programowanie
Temat: Jak wyciąć taki kształt. To chyba ewolwenta
Odpowiedzi: 17
Odsłony: 3908

Minus jest taki, że jeżeli chcesz stworzyć dokładną krzywą ewolwentową, to nie stworzysz jej za pomocą łuków, tylko będzie się ona składała z krótkich odcinków prostych (tak samo jak krzywa Beziera). Im więcej punktów tym dokładniejsza krzywa, ale za to krótsze odcinki. Pytanie na ile szybko sterownik maszyny jest w stanie odczytać punkty i wykonać ruch narzędzia (żeby szła płynnie, bez szarpnięć). W przypadku szarpnięć można taką krzywą przybliżyć łukami. Jej dokładność ulegnie pogorszeniu, jednak w przypadku wolniejszych sterowników taka zamiana na łuki może być na wagę złota. W zależności od dokładności przybliżenia łuki będą dłuższe bądź krótsze.

Pamiętaj że każdy okrąg ma tylko jeden (wyłącznie jeden) punkt styczny do jakiejkolwiek innego obiektu geometrycznego, czy to linia, czy łuk, czy krzywa. Zwróć również uwagę na to, że linia pociągnięta od tego punktu stycznego do środka okręgu zawsze pada prostopadle do obiektu stycznego. Na tej podstawie jesteś w stanie wykonać stycznie łuki o zmiennym promieniu imitując krzywą ewolwentową. Poniżej masz zrzut z przykładem:
Obrazek

Każdy łuk zaznaczyłem innym kolorem.

Moim zdaniem krzywa z rysunku który przedstawiłeś nie jest krzywą ewolwentową, tylko krzywą zbudowaną z łuków (tak jak ja to przedstawiłem na powyższym zrzucie).

inż. Mateusz
autor: PiRo_man
04 paź 2014, 21:40
Forum: G-CODE - programowanie
Temat: Jak wyciąć taki kształt. To chyba ewolwenta
Odpowiedzi: 17
Odsłony: 3908

Kolega widzę daleki od geometrii, ale nie przejmuj się. Każdy jakoś zaczynał, a każdy tak samo kończy. W każdym okręgu jest tylko jeden jedyny punkt stycznej. Problem jest tylko taki, gdzie jest ten punkt. Jeżeli promienie są do siebie zbliżone, jesteś w stanie wyznaczyć promień styczny do poprzedniego, z dowolnym promieniem. Czyli bez problemu można przejść z promienia 65 od razu do 78. Wcale nie musi mieć to nic wspólnego z ewolwentą. Poćwicz trochę na jakimkolwiek CADzie, na pewno każdy Ci na to pozwoli, i będziesz wiedział jak to wygląda w praktyce.

inż. Mateusz

Wróć do „Jak wyciąć taki kształt. To chyba ewolwenta”