PikoCNC Sterownik maszyny CNC via USB

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

prokopcio
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 13
Posty: 1138
Rejestracja: 11 sty 2005, 13:03
Lokalizacja: Grodków
Kontakt:

#21

Post napisał: prokopcio » 22 kwie 2010, 21:46

1.
cosimo pisze:Przyznasz, że program gdzie wszystkie wektory mają 0,01mm to sytuacja ekstremalna
Tak, przyznam wręcz, że to sytuacja nienormalna :) ale krótkie "serie" się zdarzają - przynajmniej moim klientom. poza tym to nie było moje założenie, tylko Twoje :
cosimo pisze:ale na dziś u mnie jest tak: zakładając, że wykonujemy same wektory 0,01mm .........
2.
cosimo pisze:Cytat:
przy 0,01 było by 20kHz ze względu na ograniczoną prędkość transmisji

Prokopcio możesz objaśnić jak na podstawie powyższego zdania można u Ciebie określić tą zależność (wektory/ sekundę) – gdyż wydaje mi się to niemożliwe. (a w próbach obliczeń wychodzą kosmiczne cyfry).
No u mnie jest prędkość transmisji dynamicznie dobierana i wygląda to tak, że właśnie przy ekstremalnych warunkach jakie opisałeś układ usart pracuje z taktowaniem 1Mb/s i ramki zawierają tylko współrzędne + crc co daje przesył maks. 1MHz (taktowanie układu usart ) / 46 bitów w ramce = około 20 tysięcy wektorów na sekundę co przy moim wewnętrznym przeliczaniu taktowania na 0,01mm przy założeniu śruby 4mm i podziału kroku 400 daje równy podział 1 krok na 0,01mm - przy innych skokach śruby oraz innych podziałach kroku zmieniają się prędkości i rozdzielczości ale częstotliwość maksymalna to nadal jest 20 tyś wektorów na sekundę.

[ Dodano: 2010-04-22, 21:49 ]
ale zakręciłem :) teraz czytam to ja wiem o co chodzi ale nie jestem pewien czy ktoś mnie zrozumiał :P



Tagi:

Awatar użytkownika

Autor tematu
cosimo
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 253
Posty: 631
Rejestracja: 21 maja 2008, 10:02
Lokalizacja: Damasławek

#22

Post napisał: cosimo » 23 kwie 2010, 10:58

No u mnie jest prędkość transmisji dynamicznie dobierana i wygląda to tak, że właśnie przy ekstremalnych warunkach jakie opisałeś układ usart pracuje z taktowaniem 1Mb/s i ramki zawierają tylko współrzędne + crc co daje przesył maks. 1MHz (taktowanie układu usart ) / 46 bitów w ramce = około 20 tysięcy wektorów na sekundę
Czyli według mojego liczenia 12000mm/min – Piotrjub ze swoją elektroniką wysiada ;-)

A serio... Hmmm... Przecież jednak nie możesz wysłać do sterownika 20000 wektorów ciurkiem. Musisz to zrobić do jakigoś bufora, który w końcu się zapełni – trzeba wysłać o tym jakąś informację zwrotną, informację o aktualnym położeniu osi i całą masę innych informacji a taki dialog z PC-tem w dwie strony (z winy pc-ta) trochę czasu zajmuje. Sama prędkość transmisji jest u mnie podobna.
Być może zwiększę jeszcze transfer do 900 w/s będzie wtedy można przy odcinkach 0,01 jechać 540mm/min. Oczywiście mówimy tutaj o sytuacji gdy wektorów 0,01 jest bardzo, dużo (szybciej bufor pustoszeje niż się napełnia) te wykonywane z bufora (64 wektory) mogą oczywiście iść z prędkością maksymalną.

----------------------------


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 50
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#23

Post napisał: jarekk » 23 kwie 2010, 11:10

cosimo pisze: Przecież jednak nie możesz wysłać do sterownika 20000 wektorów ciurkiem.
No wiesz ja dałem 8Mx16 SDRAM i mogę - właśnie dlatego aby jak ktoś robi płaskorzeźbę to sterownik nie musi zwalniać


prokopcio
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 13
Posty: 1138
Rejestracja: 11 sty 2005, 13:03
Lokalizacja: Grodków
Kontakt:

#24

Post napisał: prokopcio » 23 kwie 2010, 11:29

jarekk pisze:
cosimo pisze: Przecież jednak nie możesz wysłać do sterownika 20000 wektorów ciurkiem.
No wiesz ja dałem 8Mx16 SDRAM i mogę - właśnie dlatego aby jak ktoś robi płaskorzeźbę to sterownik nie musi zwalniać
przy tak dużej pamięci nie potrzeba aż tak dużych prędkośći transmisji - wystarczy przesłać całość a później odtworzyć - z dowolną prędkością. Ja też mam malusieńki bufor który jednak jeszcze nie przysporzył mi problemu przy transmisji "ciurkiem"... on ma jedynie zabezpieczyć przed przerwami ułamków sekund które się w windowsie zdarzają nagminnie. transmisja jest oczywiście 1M dwustronna fullduplex więc korekcja ewentualnych błędów przebiega praktycznie natychmiastowo...


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 50
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#25

Post napisał: jarekk » 23 kwie 2010, 11:46

prokopcio pisze: przy tak dużej pamięci nie potrzeba aż tak dużych prędkośći transmisji - wystarczy przesłać całość a później odtworzyć - z dowolną prędkością.
Tyle że jest kicha z programami sterującymi. Step2Cnc tak pracuje. Ale EMC i Mach - już nie.
Dlatego pełna prędkość będzie pod Stepem, Mach będzie pluł przez Ethernet ( 4s bufor max)

[ Dodano: 2010-04-23, 11:48 ]
prokopcio pisze:błędów przebiega praktycznie natychmiastowo...
Na tyle na ile da radę depnąć Windows - odbiór danych z portu ma rozrzut rzędu kilku/kilkunastu milisekund. Dlatego przy obecnym sterowniku pakiety danych po USB mają u mnie 4..8kB

Awatar użytkownika

Autor tematu
cosimo
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 253
Posty: 631
Rejestracja: 21 maja 2008, 10:02
Lokalizacja: Damasławek

#26

Post napisał: cosimo » 23 kwie 2010, 12:11

Prokopcio mam coraz więcej pewności, że żyjesz w nie świadomości ;-) - to „praktycznie natychmiastowo” to 1/60s i zapewne takim (lub większym) przedziałem czasu są oddzielone wszystkie ramki jakie wysyłasz do sterownika.


------------------

[ Dodano: 2010-05-07, 10:23 ]
Wieści z frontu c.d.

Wracając jeszcze do tematu powyżej - Jest już 1000 wektorów/sek.
Powstał już system aktualizacji firmware sterownika.
Zmieniono nieco GUI na ładniejsze ;-) (na zdjęciu)
Jest już gustowna obudowa ;-) (na zdjęciu)

Poruszę jeszcze temat dwóch wolnych wejść jakie posiada sterownik- nie wiem jak je spożytkować (wejścia,wyjścia czy ADC-pomiarowe). Jeżeli ktoś ma coś na ten temat do powiedzenia niech się wypowie.


Jarekk:
Mogę jednak dać taką radę - zamienić procka na ARMa ( Cortexa M3) ze 120MHz zegarem i 64..96kB pamięci wewnętrznej
Posłuchałem rady i następna wersja (o ile będzie) będzie na Cortexie - ale bez dodatkowej pamięci czy FPGA. (myślę, że 200Khz step bez niczego wyciągnie)
Załączniki
piko_obudowa_m.jpg
piko_obudowa_m.jpg (47.2 KiB) Przejrzano 3280 razy
Piko_ekran.rar
(247.41 KiB) Pobrany 570 razy


bakprint
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 211
Rejestracja: 18 wrz 2007, 12:02
Lokalizacja: Trzebinia, Limanowa
Kontakt:

Re: PikoCNC Sterownik maszyny CNC via USB

#27

Post napisał: bakprint » 13 maja 2010, 16:57

cosimo pisze:...Czekam na wstępne opinie, wrażenia, spostrzeżenia...
Jak dla mnie bomba. :lol: W Machu3 brak HPGL i USB, u Prokopcia G-kodu. Tu jest wszystko.

Z uwag: W oknie Program/RUN - nie widać w oknie całych linijek wykonywanego programu.
Często zagląda się w to okno i analizuje "tuż przed odpaleniem" czy wszystko OK.
Przydałoby się widzeć całe linie programowe, a nie obcięty ich fragment.

Edyta: sorki - cały kod widać w górnym lewym rogu głównego podglądu, poniżej pozycji kursora myszy. :oops:

Awatar użytkownika

Autor tematu
cosimo
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 253
Posty: 631
Rejestracja: 21 maja 2008, 10:02
Lokalizacja: Damasławek

#28

Post napisał: cosimo » 10 cze 2010, 14:36

Witam

W pierwszym poście kolejny raz zmieniłem wersję programu. Zapraszam do testowania ;-)

* Wprowadziłem następujące zmiany:
Dodano import plików DXF. Program importuje następujące elementy pliku DXF: ARC, CIRCLE, ELLIPSE, LINE, LWPOLYLINE, POINT, POLYLINE, SPLINE.

* Dodano opcję optymalizacji ścieżki narzędzia dla plików HPGL. Jak wiadomo normalnie plik HPGL jest wykonywany w kolejności rysowania elementów (od ostatniego do pierwszego) co niekiedy jest bardzo uciążliwe. Dla przykładu proszę wczytać sobie przykład „board”. I przetestować tą opcję. W okienku „informacje o programie” widać jak zmienia się długość przejazdów.

* Klikając na jakiś wektor na ekranie zostanie on podświetlony, podświetlona też zostaje linia w programie, która za ten wektor odpowiada.

* Dodano elegancki zoom za pomocą kółka myszki. Dodatkowo przytrzymując prawy klawisz myszy możemy wyznaczyć obszar do powiększenia.

* W panelu „Widok” dodałem ptaszka umożliwiającego wyłączenie „krzyżyków” czyli zmian w osi „Z”
Jak dla mnie bomba. :lol: W Machu3 brak HPGL i USB, u Prokopcia G-kodu. Tu jest wszystko.
Dzięki za bobre słowo ;-) I jeszcze raz zapraszam do testowania nowej wersji.


*******************************************************************
Witam ponownie...

W pierwszym poście kolejny raz zmieniłem wersję programu. Tym razem dodałem możliwość pewnej obróbki programu tzn. można:
* usuwać fragmenty programu.
* przesuwać fragmenty programu (o zadany offset lub absolutnie)
* Obracać o dowolny kąt
* Klonować z zadanym offsetem i zadaną ilość razy.
* Zmieniać kolejność obróbki.
* Undo – jednopoziomowe – można cofnąć ostatni ruch.
* Dodałem też możliwość zapisania wygenerowanego G-kodu (z ograniczeniem do 1000 linii).
Aby zaznaczyć interesujący nas fragment programu należy trzymając klawisz Ctrl kliknąć na ekranie dojazd G0 zaczynający dany fragment a następnie na G0 znajdujący się na końcu.(w kolejności dowolnej) Przy odrobinie szczęścia fragment ten zostanie podświetlony .

Aby zmienić kolejność obróbki jakiegoś fragmentu programu należy postępować jak wyżej następnie kliknąć na „Wytnij” – fragment zniknie. Po czym wskazać na ekranie wektor (G0), który ma zostać przecięty i kliknąć „Wstaw”.

Podświetlony fragment programu można przesuwać za pomocą myszki. (należy wtedy trzymać klawisz Shift)

Wszystkie przyciski do edycji programy znajdują się w panelu Program/Run/Edit. Stają się aktywne tylko wtedy gdy prawidłowo wskazują blok programu tzn. od G0(xy) do G0(xy).

Przykłady (pliki Demo_X) został w całości przetworzone przez PikoCNC.

Mam nadzieję, ze ktoś coś zrozumiał ale piszę to bo „manual” nie nadąża za programem.

-------------
18.06.2010
Dodałem mały obrazkowy przewodnik z przykładem jak można zmienić kolejność obróbki.


*********************************************************************
2010-07-04

Witam

Program cały czas się rozwija. Najnowsze zmiany to:

* Widok 3D (mobilny - można obracać myszką)
* Dodano import obrazów BMP. Z (między innymi) następującymi możliwościami

- Dowolny wymiar docelowego programu (niezależny od rozdzielczości czy średnicy freza)
- Korekcja średnicy freza. (W tej chwili tylko dla freza palcowego ale chyba będzie też dla stożka i kuli)
- Frezowanie w wielu przejściach.

Tym razem nie zamieszczam nowej wersji tylko archiwum z kilkoma zdjęciami. Program zamieszczę o ile ktoś odświeży temat ;-).
Załączniki
Zdjęcia.rar
(1.27 MiB) Pobrany 550 razy
Zmiana_kolejności.pdf
(779.78 KiB) Pobrany 497 razy


prokopcio
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 13
Posty: 1138
Rejestracja: 11 sty 2005, 13:03
Lokalizacja: Grodków
Kontakt:

#29

Post napisał: prokopcio » 06 lip 2010, 16:55

pomogę Ci troszeczkę, ponieważ jak dodajesz opisy to niestety nikt nie dostaje powiadomień :) Teraz dostaną wszyscy zainteresowani a widzę, że projekcik nieźle się rozwinął. Gratuluję i życzę wiele sukcesów.

pozdrawiam.


jarekk
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 50
Posty: 1701
Rejestracja: 17 mar 2006, 08:57
Lokalizacja: Gdańsk

#30

Post napisał: jarekk » 07 lip 2010, 09:22

cosimo pisze:Dodano import plików DXF
Ktoś kiedyś twierdził że jest około 10 różnych wersji DXF'a - niestety trzeb będzie uważać z którego programu wersji pochodzi ten DXF

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „PikoCNC”