frezowanie łuków - błędny promień!

Dyskusje dotyczące działania obsługi programu LinuxCNC

Autor tematu
lukas*
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 2
Posty: 5
Rejestracja: 20 kwie 2012, 10:42
Lokalizacja: Głogów - Radwanice
Kontakt:

frezowanie łuków - błędny promień!

#1

Post napisał: lukas* » 20 kwie 2012, 12:01

Witam.

Od +/- 4 lat programuje i obsługuje 4xOś frezarkę do drewna MAKA HC55 ( rok produkcji 1994). Używame tylko 3 osie bo mam uszkodzoną jedną część.

Wykorzystuje do tego:
- Ubuntu 10.04
- qCAD 2.2.2.0 #Do niewielkich zmian, poprawek bo rysunki dostaje już gotowe.
- DXF2 G-code #Do eksportowania współrzędnych. Nie mam teraz czasu na naukę Pythona i napisanie programu takiego jaki jest mi potrzebny.
- własnego programu do programowania CNC, który konwertuje g-code pochodzący z DXF2 G-code.

Problem jest tego typu:
1. g-code z programu DXF2 G-code na mojej maszynie nie pójdzie m.in. przez wartości IJ, które z niewiadomego mi powodu nie podobają się jej (wywala komunikat, błąd). O dziwo w dokumentacji- która niestety jest po niemiecku (sic!), w przykładowym g-code są, więc to musi działać.
2. mój program przelicza wartości IJ na promienie wykorzystując wzór R=Sqrt[I^2+J^2] tylko, że promień często różni się o jedną tyś. np. powinno być R16.3333, a po przeliczeniu jest R16.332 i maszyna wywala poniższy błąd.

Obrazek

Pytanie do osób doświadczonych- jakaś porada? Dodam tylko, że gdy mam w ciągu dnia wyciąć dwa komplety schodów drewnianych gdzie jest +/- 60 elementów i sprawdzać każdy łuk, to.. sami wiecie ;)

Ostatni mój projekt
Obrazek

Program działa:

Kod: Zaznacz cały

P1
N2 ( e ) 
N4 M81 M10
N6 G17
N8 M28.102
N10 G54
N12 G0 X102.529 Y52.000
N14 G1 Z20
N16 G1 G41 X102.529 Y72.000
N18 G1 Z5
N20 G1 X102.529 Y88.667
N22 G2 X135.196 Y88.667 R16.333 (poprawiane ręcznie, qCAD pokazuje 16.3333) 
N24 G1 X135.196 Y79.000
N26 G1 X108.529 Y79.000
N28 G1 X108.529 Y72.000
N30 G3 X115.529 Y65.000 R7.000
N32 G1 X135.196 Y65.000
N34 G1 X135.196 Y59.000
N36 G1 X115.529 Y59.000
N38 G2 X102.529 Y72.000 R13.000
N40 G1 Z40
N42 G1 G40 X102.529 Y52.000
N44 M28.99
N46 M28.98
N48 G92 X0.00 Y0.00 Z0.00
N50 M81 M11
N52 M53 M54
N54 M80 M5
N56 M81 M5
N58 M30
Program nie działa

Kod: Zaznacz cały

P1
N2 ( e ) 
N4 M81 M10
N6 G17
N8 M28.102
N10 G54
N12 G0 X102.529 Y52.000
N14 G1 Z20
N16 G1 G41 X102.529 Y72.000
N18 G1 Z5
N20 G1 X102.529 Y88.667
N22 G2 X135.196 Y88.667 R16.332 ( błąd widać na obrazku, linia N22, qCAD pokazuje 16.3333) 
N24 G1 X135.196 Y79.000
N26 G1 X108.529 Y79.000
N28 G1 X108.529 Y72.000
N30 G3 X115.529 Y65.000 R7.000
N32 G1 X135.196 Y65.000
N34 G1 X135.196 Y59.000
N36 G1 X115.529 Y59.000
N38 G2 X102.529 Y72.000 R13.000
N40 G1 Z40
N42 G1 G40 X102.529 Y52.000
N44 M28.99
N46 M28.98
N48 G92 X0.00 Y0.00 Z0.00
N50 M81 M11
N52 M53 M54
N54 M80 M5
N56 M81 M5
N58 M30
Edit
Pomogła zmiana w kodzie programu komputerowego, żeby zaokrąglał do 4 miejsc po przecinku. R16.3329 maszyna czyta jako R16.333

Ale mam też inny problem, a chcę uniknąć tego w przyszłości. Gdy programuje maszynę bez interpolacji kołowej, to nie przeszkadza jej, że przed Z nie ma G1. Podobnie w programie wyżej pierwsze Z20 i Z5 bez G1 też jej nie przeszkadza, ale już po G2 musi być G1 Z20. Inaczej wywala mi błąd programu...



Tagi:


GumiRobot
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 685
Rejestracja: 21 mar 2005, 18:51
Lokalizacja: Trójmiasto

#2

Post napisał: GumiRobot » 20 kwie 2012, 13:50

jest to "normalne" zachowanie się większości sterowań wywołana ostatnio funkcja ruchu ustawczego lub roboczego jest domyślną dla następnej linii programu


Autor tematu
lukas*
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 2
Posty: 5
Rejestracja: 20 kwie 2012, 10:42
Lokalizacja: Głogów - Radwanice
Kontakt:

#3

Post napisał: lukas* » 20 kwie 2012, 14:21

jest to "normalne" zachowanie się większości sterowań wywołana ostatnio funkcja ruchu ustawczego lub roboczego jest domyślną dla następnej linii programu
Tak też myślałem. Doszedłem do tego metodą prób i błędów. Domyślam się też, że mogłaby pomóc zmiana płaszczyzny na G18 lub G19.

Edit:
Widziałem na forum dwa tematy związane z tą maszyną bez odpowiedzi, więc umieszczam film jak to wygląda, pracuje itd. Może się kiedyś komuś przyda.

Link do mojej prywatnej strony: ospulse.pl

Może pod koniec roku udostępnię program napisany w Pythonie do programowania tej maszyny. Coś podobnego do DXF2 G-Code. Napisany z myślą o produkcji schodów drewnianych...

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”