CNC z plexi i serw modelarskich
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 25
- Posty: 319
- Rejestracja: 15 lis 2014, 20:21
- Lokalizacja: Gliwice
CNC z plexi i serw modelarskich
Zbudowałem CNC z plexi i serw modelarskich.
Wykorzystałem prowadnice z drukarek, śrubę trapezową, serwa modelarskie(6kg/cm), Encodery.
Jako elektronikę wykorzystałem Arduino Mega2560.
Wykonałem własne oprogramowanie na PC/Arduino do obsługi i realizacji G-Code(tylko pozycje bez poleceń specjalnych). Komunikacja odbywa się po porcie com(USB).
Program wczytuje G-Code i optymalizuje go by skrócić czas wykonania.
Encodery mają 400 impulsów na obrót(są na jednym przerwaniu co daje 800 pozycji na obrót).
Czyli teoretycznie dokładność to 0,005 milimetra.
Realna ok: 0,5 milimetra.
Jedno serwo mi się spaliło dlatego musiałem obniżyć, prosty błąd programu do jechało do końca, coś musiało pęknąć, jako ze nic się nie podało to zębatka padła a potem silnik(po wymieniałem, inny silnik już był lekko walnięty).
Planuje kupić 13Kg serwa z metalowymi zębatkami.
Zdjęcia:
Pierwszy rysunek zrobiony z encoderami anime:
Filmik:
[youtube][/youtube]
Pole robocze to mniej więcej 220x180mm, wystarczy na spore pcb.
Rysunek ma mnie więcej 80x80mm.
Wykorzystałem prowadnice z drukarek, śrubę trapezową, serwa modelarskie(6kg/cm), Encodery.
Jako elektronikę wykorzystałem Arduino Mega2560.
Wykonałem własne oprogramowanie na PC/Arduino do obsługi i realizacji G-Code(tylko pozycje bez poleceń specjalnych). Komunikacja odbywa się po porcie com(USB).
Program wczytuje G-Code i optymalizuje go by skrócić czas wykonania.
Encodery mają 400 impulsów na obrót(są na jednym przerwaniu co daje 800 pozycji na obrót).
Czyli teoretycznie dokładność to 0,005 milimetra.
Realna ok: 0,5 milimetra.
Jedno serwo mi się spaliło dlatego musiałem obniżyć, prosty błąd programu do jechało do końca, coś musiało pęknąć, jako ze nic się nie podało to zębatka padła a potem silnik(po wymieniałem, inny silnik już był lekko walnięty).
Planuje kupić 13Kg serwa z metalowymi zębatkami.
Zdjęcia:
Pierwszy rysunek zrobiony z encoderami anime:
Filmik:
[youtube][/youtube]
Pole robocze to mniej więcej 220x180mm, wystarczy na spore pcb.
Rysunek ma mnie więcej 80x80mm.
Tagi:
-
- Specjalista poziom 2 (min. 300)
- Posty w temacie: 2
- Posty: 390
- Rejestracja: 15 lut 2011, 19:07
- Lokalizacja: Zielona Góra
-
- Specjalista poziom 2 (min. 300)
- Posty w temacie: 2
- Posty: 390
- Rejestracja: 15 lut 2011, 19:07
- Lokalizacja: Zielona Góra
-
Autor tematu - Specjalista poziom 2 (min. 300)
- Posty w temacie: 25
- Posty: 319
- Rejestracja: 15 lis 2014, 20:21
- Lokalizacja: Gliwice
Dalszy plan to pozbyć się tego luzu i dać mini laser do grawerowania(drewno), zamówiłem taki 250mW. Również musze zamówić lepsze serwa z metalowymi zębatkami. A pożnie może jakąś mini frezarkę(planuje max aluminium żadnej stali). Liczyłem na pcb ale trochę brakuje dokładności. Dostałem dzisiaj 10x arduino pro mini więc już takich dokładnych płytek nie potrzebuje.
-
- Lider FORUM (min. 2000)
- Posty w temacie: 5
- Posty: 2788
- Rejestracja: 15 sty 2006, 18:34
- Lokalizacja: Wrocław
W moim ploterze kreślącym (fabrycznym DMP60) też pracują serwa które są zabezpieczone przed przeciążeniem lub zupełnym zablokowaniem. Na przykład po uruchomieniu ploter posuwa karetką z pisakiem od bandy do bandy (szerokość papieru ustalana jest przestawnymi mechanicznymi zderzakami) Nie ma żadnych elektronicznych krańcówek kontrolujących dopuszczalny obszar ruchu czyli odbywa się to po stronie sterowania serwa. Możliwe są z grubsza dwie opcje- albo jest badany czas reakcji ze strony enkodera (zbyt długi czas znaczy opór mechaniczny) albo mierzony jest prąd zasilający silnik. Obstawiam tę drugą wersję. Normalnie sterownik stara się popędzać silnik z prędkością dopasowaną do zadeklarowanej w programie częstotliwości impulsów z enkodera. Jeżeli częstotliwość maleje to reaguje zwiększeniem prądu. Kiedy karetka trafia na zdecydowany opór to prąd przekracza dopuszczalny. Podczas inicjacji plotera po uruchomieniu, jest to sygnał dla programu o ustawionej szerokości papieru i przechodzi on bezboleśnie do następnych operacji. Jeżeli takie nadmierne zwiększenie prądu zdarzy się podczas drukowania (jakieś zabrudzenie na prowadnicach na przykład) to program zatrzymuje wydruk i sygnalizuje błąd. Zauważyłem że sam mogę taki stan zatrzymania wywołać kiedy palcem hamuję karetkę podczas jazdy. Proponuję zatem taką pętlę kontroli prądu silnika dodać do programu w Arduino. Uchroni to zabawkę przed uszkodzeniami.
Laser 250W to maleństwo które wymaga wolniutkich i w miarę płynnych posuwów. Musisz więc faktycznie powalczyć z luzami żeby głowica nie wykonywała niekontrolowanych ruchów i nagłych przeskoków w wyniku zgromadzonych naprężeń w mechanizmach.
Laser 250W to maleństwo które wymaga wolniutkich i w miarę płynnych posuwów. Musisz więc faktycznie powalczyć z luzami żeby głowica nie wykonywała niekontrolowanych ruchów i nagłych przeskoków w wyniku zgromadzonych naprężeń w mechanizmach.
-
- Lider FORUM (min. 2000)
- Posty w temacie: 5
- Posty: 2788
- Rejestracja: 15 sty 2006, 18:34
- Lokalizacja: Wrocław
Jakoś mnie to nie dziwi przy takiej konstrukcji osi z. Na pewno większą precyzję uzyskałbyś gdybyś zamiast tego serwa modelarskiego i prowadnic z pleksi zamontował tam zespół przesuwający głowicę w napędzie dyskietek 3.5 cala. W takim napędzie, gdy mu się wnikliwie przyjrzysz oprócz precyzyjnych prowadnic jest też silniczek krokowy który posuwa głowicę w zakresie wystarczającym do obecnych zastosowań a także na płytce z elektroniką jest sterownik tego silnika. Wystarczy dać standardowe sygnały Step, Dir i Enable oraz oczywiście zasilanie 5VDC oraz 12VDC a silniczek ożyje. W internecie znajdziesz rozpiskę złącza sygnałowego takiego napędu FDD. W znanym serwisie aukcyjnym znajdziesz takie napędy za grosze. Jeżeli zdecydujesz się na taki manewr to nie rozwalaj od razu napędu na czynniki pierwsze tylko spróbuj go ożywić w całości, obejrzeć jak to działa a na koniec zdecydujesz które organy wykorzystać w ploterze.