Udostępniam program STEP2CNC BETA2 szerokiemu ogółowi

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

Autor tematu
Piotr Rakowski
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2173
Rejestracja: 29 lip 2005, 15:07
Lokalizacja: Warszawa
Kontakt:

#11

Post napisał: Piotr Rakowski » 23 lis 2006, 16:20

Czyli może być tak, jak pisali poprzednicy, że coś jest z przestawianiem portu w tryb oszczędnościowy. Sprawdzę co znajdę na ten temat.

Podglądu G-kodu nie będzie nigdy dlatego, że ja dla maksymalnego przyspieszenia wykonywania programu (np. heliksy złożone z linii) prekompiluję wstępnie cały g-kod do tablicy wektorów przesunięć (zobacz -> pliki *.XYZ).

Ma Pan natomiast podgląd 3D, w którym wykonany krok jest zaznaczany na czerwono. Poza tym nawet w trakcie działania programu można dowolniw wybrać i powiększyć fragment rysunku dla dokładnego zobrazowania.

W przyszłości natomiast będzie tak, jak w KCamie - krzyżyk pokazujący pozycję głowicy w 3D.

Co Pańskiego kodu: w moim programie nie jest właściwe pisane poleceń F bez linii G (prosiłem o przeczytanie pomoc.html). Do właściwego zadziałania powinien Pan zmienić swój kod na:

G0 X40 Y40 Z1 F200
; od tego momentu wszystkie ruchy jałowe przyjmują wartość 200 mm/min
G1 X40 Y40 Z-2 F100
; od tego momentu wszystkie ruchy pracy przyjmują wartość 100 mm/min
G1 X80 Y40 Z-2
G1 X80 Y80 Z-2
G1 X40 Y80 Z-2
G1 X40 Y40 Z-2
G1 X40 Y40 Z2


Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)

Tagi:

Awatar użytkownika

bartuss1
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 8458
Rejestracja: 05 kwie 2006, 17:37
Lokalizacja: Kędzierzyn - Koźle
Kontakt:

#12

Post napisał: bartuss1 » 23 lis 2006, 18:23

co wy za dziwny kod stosujecie ?
jak raz napiszę g1x80 to na tej pozycji zostanie tak długo aż zmienię coś w osi x, a reszta linijek w Y
a tu widze kolejne linijki x80 i x80 i x80 to samo z Zetem no chyba że jedziemy pod G91 to co innego
https://www.etsy.com/pl/shop/soltysdesign

Awatar użytkownika

Autor tematu
Piotr Rakowski
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2173
Rejestracja: 29 lip 2005, 15:07
Lokalizacja: Warszawa
Kontakt:

#13

Post napisał: Piotr Rakowski » 23 lis 2006, 21:17

Bartuss, przecież nie ma to żadnego znaczenia! Chcesz to piszesz, nie chcesz nie piszesz.
I tak nic się nie wydarzy, bo przecież nie ma przesunięcia wektora tej osi. Kod możesz pisać jak chcesz, a sprawą programu jest by go właściwie interpretować. W moim programie jeśli nie wpiszesz o jakie wymiarowanie ci chodzi zawsze domyślne jest G90 (absolutne).
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)


PETERS
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 4
Posty: 249
Rejestracja: 21 lut 2005, 12:12
Lokalizacja: CNC

#14

Post napisał: PETERS » 24 lis 2006, 01:06

Piotr Rakowski, Tak wiem. W twoim programie posów jałowy i roboczy ustawia się tymi suwakami... co uważam za wielki +. Ale mimo tego program (i prędkości) działały normalnie. Tylko z tym enable... no, ale jak pisałem wcześniej dało się to przeskoczyć.

bartuss1, Ten kod skonstruował sam generator z macha... ja go nawet nie zmieniałem, także...

Awatar użytkownika

Autor tematu
Piotr Rakowski
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2173
Rejestracja: 29 lip 2005, 15:07
Lokalizacja: Warszawa
Kontakt:

#15

Post napisał: Piotr Rakowski » 24 lis 2006, 08:45

PETERS pisze:Piotr Rakowski, Tak wiem. W twoim programie posów jałowy i roboczy ustawia się tymi suwakami... co uważam za wielki +. Ale mimo tego program (i prędkości) działały normalnie. Tylko z tym enable... no, ale jak pisałem wcześniej dało się to przeskoczyć.
Suwaki oczywiście można przestawiać ręcznie, ale zauważ także, że z kodu - w zależności od tego gdzie dany znak [F] jest umieszczony - zmieniana wartość posuwu będzie dotyczyła tego konkretnego rodzaju ruchu.

Tak więc:

G0 F150 ;będzie dotyczyło suwaka ruchu jałowego (ruch pracy pozostaje niezmieniony),
G1 F300 ;będzie dotyczyło suwaka ruchu pracy (ruch jałowy pozostaje niezmieniony).
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)


olo_3
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1249
Rejestracja: 31 sie 2004, 22:25
Lokalizacja: EU

#16

Post napisał: olo_3 » 31 gru 2006, 02:57

Witam Kolegę :)

Po Nowym Roku zamierzam po testować trochę przedmiotowy program, w tym celu zapoznałem się i plikiem pomocy. Nie rozpisując się szczególnie nad jego niewątpliwymi zaletami ;)

Na podstawie tej lektury ma kilka pytań/uwag.

Czy m04 H... - będzie w przyszłości rozszerzony o większy czas i czy zostanie tam parametr H ? Przy parametrze “0” co powoduje wznowienie pracy ?

Czy m30 powoduje powrót do 1 linii ?

Od czego zaczyna sie program ?

Czy działają inne komendy gkodu ISO takie jak: podprogramy, wywołanie podprogramu na końcu linii, odwołanie wywołania, skok bezwarunkowy (itd) -czy tylko wymienione w pliku pomocy ?

Jak maksymalna ilość (częstotliwość) impulsów generuje w chwil obecnej program ?

Rozumiem ze odwołaniem dla M03 jest M3 ((itd), czy nie można by przyszłościowo rozszerzyć komend i dopasować ich do ISO) ?

Jak wartość liczbowa (3 miejsca-wg help) program przyjmuje po przecinku (np X1,1111) i jak sie zachowa w takim wpadku ?

Nie doczytałem nic na temat interpolacji kołowej (ale może cos przeoczyłem), czy program jest odcinkowy ?

Czy program przekracza limit 2,5m/min (w kodzie G)? Czy tyczy to tylko sterowania ręcznego ?

W jaki sposób program ma obsługiwać inne urządzenia zewnętrze na przykład falownik (od ster. wrzeciona)?
Zwątpienie jest oznaką, że podążasz w dobrym kierunku.

Awatar użytkownika

Autor tematu
Piotr Rakowski
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2173
Rejestracja: 29 lip 2005, 15:07
Lokalizacja: Warszawa
Kontakt:

#17

Post napisał: Piotr Rakowski » 31 gru 2006, 11:09

Witam również!
olo_3 pisze: Na podstawie tej lektury ma kilka pytań/uwag. Czy m04 H... - będzie w przyszłości rozszerzony o większy czas i czy zostanie tam parametr H ? Przy parametrze “0” co powoduje wznowienie pracy?
Oczywiście może być rozszerzony o dowolny czas. Nie sądziłem poprostu, że czas większy niż 9 sekund będzie komukolwiek potrzebny. Jaka ma być ta wartość? Chcę także rozserzyć go o czasy mniejsze niż 1 sekunda. Wznowienie pracy - przycisk [Wznów] lub klawiszami [Ctrl] + [Enter].
olo_3 pisze: Czy m30 powoduje powrót do 1 linii ?
Pośrednio tak, bo powoduje zatrzymanie wykonywania programu i ponowne uruchomienie następuje od linii nr 1.
olo_3 pisze: Od czego zaczyna sie program ?
Zawsze interpretowany jest od początku.
olo_3 pisze: Czy działają inne komendy gkodu ISO takie jak: podprogramy, wywołanie podprogramu na końcu linii, odwołanie wywołania, skok bezwarunkowy (itd) -czy tylko wymienione w pliku pomocy?
Tylko te opisane w pomocy. Moją ideą nie jest zrobienie pełnej interpretacji standardu ISO, a jedynie to, co jest niezbędne do codziennej pracy. Oczywiście z czasem będę kody uzupełniał o inne polecenia, jakie będą Wam potrzebne.
olo_3 pisze: Jak maksymalna ilość (częstotliwość) impulsów generuje w chwil obecnej program ?
Na Celeronie 1.5GHz jestem w stanie obsłużyć 30000 impulsów na sekundę. Pozostaje tylko jeszcze mieć nadzeję, że port LPT jest w stanie właściwie na nie zareagować.
olo_3 pisze: Rozumiem ze odwołaniem dla M03 jest M3 ((itd), czy nie można by przyszłościowo rozszerzyć komend i dopasować ich do ISO)?
Oczywiście, że można. Staram się większość poleceń robić uniwersalnie - dlatego teraz ją skrutowce w rodzaju M3, M5 itd. Z resztą niektóre programy generują takie właśnie "skrócone" polecenia - stąd moje podejście.
olo_3 pisze: Jak wartość liczbowa (3 miejsca-wg help) program przyjmuje po przecinku (np X1,1111) i jak sie zachowa w takim wpadku ?
Zaokrągli do wartości kroku minimalnego. Dla moich ustawień (mojej maszyny) zaokrąglenie wyniesie 1/400, a więc 0,0025 mm.
olo_3 pisze: Nie doczytałem nic na temat interpolacji kołowej (ale może cos przeoczyłem), czy program jest odcinkowy ?
Program jest odcinkowy z conajmniej 2 powodów. Znam conajmniej kilka programów CAM generujących G-kody - wielokrotnie generowałem w nich pliki i nigdy (powtarzam nigdy) nie udało mi się ich zmusić do wygenerowania kodu G02 i G03. Dzieje się tak dlatego, że interpolacja kołowa może się różnić w zależności od użytego algorytmu, a więc dawać trochę inne rezultaty od zamierzonych. Dlatego właśnie programy CAM (VisualMill, MasterCam, EdgeCAMm - te testowałem) same generują pliki zinterpolowane.
Drugim powodem jest to, że nominalnie STEP2CNC ma współpracować z mój pogramem eduCAD (w następnej wersji cncCAD) - a ja także interpolację robię na poziomie eduCADa.
olo_3 pisze: Czy program przekracza limit 2,5m/min (w kodzie G)? Czy tyczy to tylko sterowania ręcznego ?
W tej chwili przygotowuję wersję beta3, która dochodzi do 4500 mm/min.
olo_3 pisze: W jaki sposób program ma obsługiwać inne urządzenia zewnętrze na przykład falownik (od ster. wrzeciona)?
Falownik w wersji ON/OFF - bez problemu jednym z relay'ów (przekaźników). Falownik w wersji sterowania prędkością obrotową z poziomu programu - niewykonalne bez przetwornika A/C podpiętego pod mkroprocesor. To już będziemy omawiać w naszym wspólnym projekcie sterownika niestandardowego.

Dziękuję za wnikliwe uwagi. Ciekawe, dlaczego dotychczasowi beta-testerzy ich mi nie zadali? Czyżby jednak go nie testowali?
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)


olo_3
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1249
Rejestracja: 31 sie 2004, 22:25
Lokalizacja: EU

#18

Post napisał: olo_3 » 01 sty 2007, 18:23

Witam w Nowym Roku

myślę sobie - choć wyjątkowo ciężko to dzisiaj idzie ;).

jeśli program ma odnieść sukces komercyjny musiałby składać się z 2 pakietów, powiedzmy wersja ecko i wersja profi.

wersja ecko - byłaby bardzo ekonomiczna, tania i zawierała najpotrzebniejsze funkcje (często czytam wypowiedzi kolegów którzy twierdza ze inne programy są za bogate (skomplikowane) - wniosek z tego taki, ze ci ludzie wykorzystują swoje maszyny do jakiś tam prostych żądań na przykład: wygrawerować wizytówkę na drzwi, wyciąć sztukaterie na sufit )



natomiast profi musiałby być lepszy od konkurencji.
myślę sobie ze b.dobrym pomysłem jest sprzedawanie programu, z płyta główną zapewniająca szereg możliwości, podłączeń (sterowani urządzeń zwe), może nawet mnożnik kroku, obsługę 2 sprzężeń zwrotnych (itd.)- zdaje sobie sprawę ze nie jest to łatwe i tanie, ale jak dotąd nie widziałem na rynku takiego rozwiązania (p_j akurat takie kończy do serw), idealnie było by aby ów płyta wykonywała jeszcze interpolacje na podstawie (opcja) odczytów z urządzeń pomiarowych (min. 1-encoder). taka płyta gwarantuje jeszcze bezużyteczność programu w wypadku jej nie stosowania (na przykład. zabezpieczenia szyfrowanym hasłem w programie i płycie (kroczącym), hardlock...) ale jej cena musi tez być stonowana, wszak dalej będzie to produkt na rynek “domowy”

jeszcze jedna sprawa odnośnie korekcji narzędzia, było by bardzo dobrze aby program posiadał tak możliwość (3D - tez :)), jednak wykonując jakąś większą serie łatwiej jest dopisać korekcje (kilka setek) niż generować nowa ścieżkę

a no i jeszcze kwestia tokarki - traktowanej trochę po macoszemu właściwie jej użytkownicy są skazani tylko na macha
Piotr Rakowski pisze:Nie sądziłem poprostu, że czas większy niż 9 sekund będzie komukolwiek potrzebny. Jaka ma być ta wartość?
no czasami jest potrzebny w przypadku, włączenia jakiegoś podajnika/odbiornika, w przypadku gdy maszyna współpracuję na przykład z dozownikiem do polimeru itd...

Piotr Rakowski pisze:stanie obsłużyć 30000 impulsów na sekundę.
nie- to jutro przemyślę ;)
Piotr Rakowski pisze:olo_3 napisał/a:

Rozumiem ze odwołaniem dla M03 jest M3 ((itd), czy nie można by przyszłościowo rozszerzyć komend i dopasować ich do ISO)?

Oczywiście, że można. Staram się większość poleceń robić uniwersalnie - dlatego teraz ją skrutowce w rodzaju M3, M5 itd. Z resztą niektóre programy generują takie właśnie "skrócone" polecenia - stąd moje podejście.
tak zgadzam się i nie ma nic przeciwko skróconym zapisa M03=M3 ale chodzi o to ze wylanie funkcji to M03 a jej odwołanie to M3 - chyba ze źle doczytałem ? (normalnie jest M05 wyłącz wrzeciono)

jednak zbliżał bym się mocno do ISO, powodów jest kilka najważniejsze: integralność z napisanymi już programami (dla innych sterowań), w wypadku posiadania kilku maszyn trzeba tworzyć nowe stanowisko do programowania, zależy jak kto wykorzystuje maszynę - jeśli generujemy ścieżkę w CAM to ok., ale w przypadku kiedy obróbka jest wielo godzinna (i nie z tego powodu ze maszyna jedzie F10) wymagająca skomplikowanych wzorów, użycia cykli (wiercenie, fazowanie, gwintowanie itp.) bardzo ułatwiają różne komendy z ISO przebieg obróbki (zresztą po to są)

Piotr Rakowski pisze:Drugim powodem jest to, że nominalnie STEP2CNC ma współpracować z mój pogramem eduCAD (w następnej wersji cncCAD) - a ja także interpolację robię na poziomie eduCADa.
właściwe tak, ale jeśli mamy skomplikowana ścieżkę i narysowana w CAD, jeśli nie to prościej napisać 5 linek kodu z głowy niż rysować i generować.
Zwątpienie jest oznaką, że podążasz w dobrym kierunku.

Awatar użytkownika

Autor tematu
Piotr Rakowski
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2173
Rejestracja: 29 lip 2005, 15:07
Lokalizacja: Warszawa
Kontakt:

#19

Post napisał: Piotr Rakowski » 02 sty 2007, 08:48

Tak, myślę o zrobieniu dwóch wersji - tej drugiej ze sterownikiem dedykowanym - tzw. profesjonalnym. Czy będzie w nim interpolacja kołowa - raczej wątpię, bo nie podejmuję się interpolacji w procesorze 8 bitowym, a na takich się znam (jako tako).

W tej kwestii będę musiał z resztą z kimś współpracować, ale powstanie takiego tandemu (program+sterownik) to spowoduje niestety to, że komplet będzie kosztował już powyżej 1000 zł dla klienta końcowego. Boenigk sprzedaje swoje komplety za około 500 Euro, więc niby nie taniej, ale on jest już dawno na rynku, ma spore doświadczenie i zdaje się, że jego sterownik sprawdza się dość dobrze. Piotrjub je używa w swoich maszynach.

Stonowanie ceny więc może niestety nie wyjść w tym przypadku. Na razie jeszcze nic nie wiem o zbieraniu informacji z enkoderów. Więc na początku powstanie produkt mikroprocesorowy do sterowania w postaci impulsowania w standardzie takt+kierunek. Na wyścia będzie można podłączyć wszystko, co takie impulsy obsłuży, czy to będzie sterownik od silnika krokowego, czy od serwa - nie będzie miało znaczenia.

Oczywiście będzie obsługiwało wiele krańcówek i urządzeń zewnętrznych. Zamierzam do tego celu użyć następny mikroporocesor. Dodatkowo chcę zrobić panel sterowania ręcznego i współpracę z pamięcią zewnętrzną (np. MMC), tak można było często wykonywane prace robić niezależnie od podłączenia do komputera.

Z korekcją narzędzia narazie dam sobie spokój, bo niestety analiza wektorów i och offset to strasznie dużo liczenia.
tak zgadzam się i nie ma nic przeciwko skróconym zapisa M03=M3 ale chodzi o to ze wylanie funkcji to M03 a jej odwołanie to M3 - chyba ze źle doczytałem ? (normalnie jest M05 wyłącz wrzeciono)
Nie - przeczytaj raz jeszcze plik pomocy: M03/M05 i M08/M09 to pary włączania/wyłączania przekaźników PK1 i PK2. Zgodnie z DIN. Oczywiście postaram się maksymalnie zbliżyć do DIN, ale nie zawsze się to uda. Np. powiedzmy mamy dość rozbudowany system CNC i chcemy włączać powiedzmy 8 przekaźników. Wg DIN tego się nie da zrobić. Trzeba będzie zastosować jakiś wybieg.
właściwe tak, ale jeśli mamy skomplikowana ścieżkę i narysowana w CAD, jeśli nie to prościej napisać 5 linek kodu z głowy niż rysować i generować.
I tak i nie. Trzeba odróżnić profesjonalistę - programstę maszyn CNC, który zna G-kody od profesjonalisty - użytkownika CNC, który znakomicie zna się na swojej robocie a nie bardzo na programowaniu. Temu drugiemu (gatunek HOMO CNCUS - spotykany znacznie częściej wśród nas :lol: ) na pewno łatwiej będzie narysować kółko w eduCADdzie, niż piszać 2 linie kodu CNC z G02 i G03 (które z resztą i dla innych nie wiele znaczą).
jednak zbliżał bym się mocno do ISO, powodów jest kilka najważniejsze: integralność z napisanymi już programami (dla innych sterowań), w wypadku posiadania kilku maszyn trzeba tworzyć nowe stanowisko do programowania, zależy jak kto wykorzystuje maszynę - jeśli generujemy ścieżkę w CAM to ok., ale w przypadku kiedy obróbka jest wielo godzinna (i nie z tego powodu ze maszyna jedzie F10) wymagająca skomplikowanych wzorów, użycia cykli (wiercenie, fazowanie, gwintowanie itp.) bardzo ułatwiają różne komendy z ISO przebieg obróbki (zresztą po to są)
Zgadzam się absolutnie - tylko boję się, że SAM mogę nie podołać takiemu wyzwaniu...
Maszyny i oprogramowanie CNC: eduCAD, STEP2CNC, LynxCUT, Styro3D, Tapper, cncCAD, Image2CAM, Turn3D, TERMCUT, LynxNEST (Nesting)

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „STEP2CNC”