Tytan (pół)automatyczny
Sterownik "cnc" na bazie arduino.
-
Autor tematu - Lider FORUM (min. 2000)
- Posty w temacie: 8
- Posty: 2364
- Rejestracja: 29 lis 2015, 00:38
- Lokalizacja: Bielsko-Biała
Tytan (pół)automatyczny
Witam,
jakiś czas temu zamarzyło mi się, żeby przestać kręcić korbkami w nutoolu i coś z tym trzeba było zrobić. Sama przeróbka nutoola nie zostanie tutaj pokazana, bo nie ma w tym niczego interesującego, za to nie uśmiechało mi się stawiać komputera z monitorem (wszystko trzeba by kupić) obok maszyny, więc trzeba było pójść w innym kierunku. Nie uśmiechał mi się też Mach, nie wiedziałem też, jak fajnym programem jest Fusion360 więc postanowiłem zrobić wszystko samemu. Ogólnie rzecz biorąc pewnie lepiej było iść standardową drogą, ale co się nauczyłem po drodze, to moje
Konstrukcja
Sterownik jest na bazie arduino mega, do tego ekranik dotykowy 5" o rozdzielczości 480x272. W zestawie obudowa wycięta laserowo, płytka PCB żeby ładnie powyprowadzać wszystkie złącza i 4 przyciski wandaloodporne.
Funkcje - ekran główny
- sterowanie osiami za pomocą przycisków w trybie ciągłym(continuous) i w trybie krokowym(step) z możliwością wykonywania ruchów o rozdzielczości 0.01mm, 0.1mm, 1mm i 10mm.
- tryb ruchu szybkiego (move) i standardowego (turn).
- blokada dla każdej z osi (lock).
- DRO.
Funkcje - opcje
- ustawienie posuwu dla każdej z osi osobno (feed ).
- załączany enkoder (czasem wyłączam żeby przetestować coś bez zabezpieczenia, które wyłącza posuw przy braku obrotów wrzeciona) do gwintowania i zabezpieczenia.
- automatyczne kasowanie luzu dla każdej z osi (backlash).
- rpmy do wyboru jak na tokarce, na ich podstawie wyliczna jest prędkość silnika dla danego posuwu.
- średnica to pozostałość po usuniętej opcji.
Funkcje - półautomat
- automatyczne przetaczanie czoła (średnica i ilość materiału do przetoczenia).
- automatyczne przetaczanie z jednej średnicy na drugą na podanej długości.
- automatyczne gwintowanie dla skoków 0.5, 0.75, 1 i 1.5mm domyślnie (po zmianie mikrokroku do 6mm).
Funkcje - automat
- pełne toczenie kształtowe z podanym posuwem. Pliki wczytywane z karty uSD.
Realizacja funkcji
1. Kasowanie luzów - przy zmianie kierunku dla którejkolwiek z osi silnik wykonuje dodatkowo zadaną liczbę kroków z maksymalną prędkością (w końcu nic mu nie stawie oporu wtedy). Na zdjęciu wyżej widać dość spory luz na X, ale to dlatego, że chyba rozjechała mi się nakrętka z kasacją luzu i nie chciało mi się jej poprawiać. Nie zauważyłem różnicy między podaniem tutaj luzu 0.05mm a 0.3mm. Dla osi z nie ma kasacji bo jej nie potrzebuję, w trakcie toczenia oś z porusza się zawsze w tym samym kierunku, a przy nawrocie robi dodatkowe kilka mm żeby skasować luz i tyle. Ale opcja jest, jakby było ważne nawracanie w miejscu. Zwykle też luz ustawiam delikatnie mniejszy, niż w rzeczywistości, bo jeżeli się przesadzi, to widać na detalu szarpnięcie, więc lepiej skasować o 0.01mm za mało, niż za dużo.
2. Gwintowanie - kroki silnika są sprzężone bezpośrednio z impulsami enkodera, stąd tylko kilka różnych skoków. Głębokość oblicza się sama korzystając ze stałej dla gwintów metrycznych. Mikrokrok można zmniejszyć i wtedy powiększy się zakres gwintów.
3. Toczenie automatyczne - sterownik przyjmuje plik, który zawiera bezpośrednie instrukcje dla każdego silnika, tzn. każdy bajt posiada bit kierunku i wykonania kroku dla każdej z osi (4 bity) oraz pozostałe 4 bity na ewentualne komunikaty dla sterownika (jak np. włączenie szybszego przesuwu). Taki podejście praktycznie nie obciąża procesora, natomiast ma dość oczywisty minus, którego pewnie nie ma w profesjonalnych systemach - w przypadku, gdy poruszają się obie osie jednocześnie, prędkość posuwu wzrasta o maksymalnie 41% (kiedy wykonywany jest ruch pod kątem 45st i obie osie się poruszają) co wynika z prostej trygonometrii. Noo i trzeba dobry plik podać, bo gkodów nie przyjmuje
Czego nie ma
Pewnie wielu rzeczy, ale pierwszą, która mi się nasuwa to brak przyspieszeń - silnik albo się porusza, albo nie. Szczerze mówiąc nie zauważyłem w praktyce minusów tego rozwiązania (albo raczej jego braku), ale pewnie nie bez przyczyny ktoś to wymyślił. Druga to taka, że z punktu widzenia toczenia w pełnym automacie wykorzystywane są tylko G0 i G1, chociaż dodanie innych funkcjonalności nie byłoby raczej specjalnie skomplikowane, natomiast nie są mi potrzebne, więc póki co nie marnuję więcej czasu.
Wrażenia
Ogólnie muszę powiedzieć, że jestem bardzo zadowolony. Wszystko działa mi płynnie i elegancko, jest dopasowane do mnie, a jak czegoś brakuje to sobie dopiszę i tyle Dokładność jest całkiem niezła, np. toczenie półautomatyczne dla pojedynczych detali, albo jak coś jest zbyt skomplikowane na moje cnc (np wymaga zmiany narzędzi) wykonuję w ten sposób, że przetaczam sobie delikatnie naddatek, mierzę suwmiarką, wpisuję obecną średnicę, zadaną i efekt mieści się w 0.01 - 0.03mm. A korzystam z oryginalnych podzespołów nutoola, żadnych bajerów typu śruby kulowe, czy coś. Zamiast korbek silniki i tyle.
Krótki filmik z responsywności sterownika (biorąc pod uwagę, że to arduino, jestem zachwycony - wszystko dzięki FT800).
W zestawie do sterownika napisałem też własnego CAD/CAMa, którego wykorzystuję do generowania ścieżek, ale to przedstawię chyba w innym temacie i pewnie innym dziale.
Zajęło mi to pewnie dużo więcej czasu, niż powinno i ogólnie rzecz biorąc jakiś mach zapewne byłby szybszy, ale przynajmniej miałem okazję trochę pokodzić, pokombinować i teoretycznie wyszło znacznie taniej (chociaż w praktyce wydałem 2 razy więcej, niż trzeba było na pomyłki, próby i zapasowe części). No ale korzystanie z tokarki stało się przyjemnością
W przyszłości, gdybym miał za dużo wolnego czasu i pieniędzy pewnie napisałbym wszystko jeszcze raz na innym procesorze (np. xmega), zrobił cały układzik elektroniczny dedykowany dla tego zastosowania i wszystko odpicował, ale chyba będzie trzeba się obejść bez tego, bo nie zanosi się
jakiś czas temu zamarzyło mi się, żeby przestać kręcić korbkami w nutoolu i coś z tym trzeba było zrobić. Sama przeróbka nutoola nie zostanie tutaj pokazana, bo nie ma w tym niczego interesującego, za to nie uśmiechało mi się stawiać komputera z monitorem (wszystko trzeba by kupić) obok maszyny, więc trzeba było pójść w innym kierunku. Nie uśmiechał mi się też Mach, nie wiedziałem też, jak fajnym programem jest Fusion360 więc postanowiłem zrobić wszystko samemu. Ogólnie rzecz biorąc pewnie lepiej było iść standardową drogą, ale co się nauczyłem po drodze, to moje
Konstrukcja
Sterownik jest na bazie arduino mega, do tego ekranik dotykowy 5" o rozdzielczości 480x272. W zestawie obudowa wycięta laserowo, płytka PCB żeby ładnie powyprowadzać wszystkie złącza i 4 przyciski wandaloodporne.
Funkcje - ekran główny
- sterowanie osiami za pomocą przycisków w trybie ciągłym(continuous) i w trybie krokowym(step) z możliwością wykonywania ruchów o rozdzielczości 0.01mm, 0.1mm, 1mm i 10mm.
- tryb ruchu szybkiego (move) i standardowego (turn).
- blokada dla każdej z osi (lock).
- DRO.
Funkcje - opcje
- ustawienie posuwu dla każdej z osi osobno (feed ).
- załączany enkoder (czasem wyłączam żeby przetestować coś bez zabezpieczenia, które wyłącza posuw przy braku obrotów wrzeciona) do gwintowania i zabezpieczenia.
- automatyczne kasowanie luzu dla każdej z osi (backlash).
- rpmy do wyboru jak na tokarce, na ich podstawie wyliczna jest prędkość silnika dla danego posuwu.
- średnica to pozostałość po usuniętej opcji.
Funkcje - półautomat
- automatyczne przetaczanie czoła (średnica i ilość materiału do przetoczenia).
- automatyczne przetaczanie z jednej średnicy na drugą na podanej długości.
- automatyczne gwintowanie dla skoków 0.5, 0.75, 1 i 1.5mm domyślnie (po zmianie mikrokroku do 6mm).
Funkcje - automat
- pełne toczenie kształtowe z podanym posuwem. Pliki wczytywane z karty uSD.
Realizacja funkcji
1. Kasowanie luzów - przy zmianie kierunku dla którejkolwiek z osi silnik wykonuje dodatkowo zadaną liczbę kroków z maksymalną prędkością (w końcu nic mu nie stawie oporu wtedy). Na zdjęciu wyżej widać dość spory luz na X, ale to dlatego, że chyba rozjechała mi się nakrętka z kasacją luzu i nie chciało mi się jej poprawiać. Nie zauważyłem różnicy między podaniem tutaj luzu 0.05mm a 0.3mm. Dla osi z nie ma kasacji bo jej nie potrzebuję, w trakcie toczenia oś z porusza się zawsze w tym samym kierunku, a przy nawrocie robi dodatkowe kilka mm żeby skasować luz i tyle. Ale opcja jest, jakby było ważne nawracanie w miejscu. Zwykle też luz ustawiam delikatnie mniejszy, niż w rzeczywistości, bo jeżeli się przesadzi, to widać na detalu szarpnięcie, więc lepiej skasować o 0.01mm za mało, niż za dużo.
2. Gwintowanie - kroki silnika są sprzężone bezpośrednio z impulsami enkodera, stąd tylko kilka różnych skoków. Głębokość oblicza się sama korzystając ze stałej dla gwintów metrycznych. Mikrokrok można zmniejszyć i wtedy powiększy się zakres gwintów.
3. Toczenie automatyczne - sterownik przyjmuje plik, który zawiera bezpośrednie instrukcje dla każdego silnika, tzn. każdy bajt posiada bit kierunku i wykonania kroku dla każdej z osi (4 bity) oraz pozostałe 4 bity na ewentualne komunikaty dla sterownika (jak np. włączenie szybszego przesuwu). Taki podejście praktycznie nie obciąża procesora, natomiast ma dość oczywisty minus, którego pewnie nie ma w profesjonalnych systemach - w przypadku, gdy poruszają się obie osie jednocześnie, prędkość posuwu wzrasta o maksymalnie 41% (kiedy wykonywany jest ruch pod kątem 45st i obie osie się poruszają) co wynika z prostej trygonometrii. Noo i trzeba dobry plik podać, bo gkodów nie przyjmuje
Czego nie ma
Pewnie wielu rzeczy, ale pierwszą, która mi się nasuwa to brak przyspieszeń - silnik albo się porusza, albo nie. Szczerze mówiąc nie zauważyłem w praktyce minusów tego rozwiązania (albo raczej jego braku), ale pewnie nie bez przyczyny ktoś to wymyślił. Druga to taka, że z punktu widzenia toczenia w pełnym automacie wykorzystywane są tylko G0 i G1, chociaż dodanie innych funkcjonalności nie byłoby raczej specjalnie skomplikowane, natomiast nie są mi potrzebne, więc póki co nie marnuję więcej czasu.
Wrażenia
Ogólnie muszę powiedzieć, że jestem bardzo zadowolony. Wszystko działa mi płynnie i elegancko, jest dopasowane do mnie, a jak czegoś brakuje to sobie dopiszę i tyle Dokładność jest całkiem niezła, np. toczenie półautomatyczne dla pojedynczych detali, albo jak coś jest zbyt skomplikowane na moje cnc (np wymaga zmiany narzędzi) wykonuję w ten sposób, że przetaczam sobie delikatnie naddatek, mierzę suwmiarką, wpisuję obecną średnicę, zadaną i efekt mieści się w 0.01 - 0.03mm. A korzystam z oryginalnych podzespołów nutoola, żadnych bajerów typu śruby kulowe, czy coś. Zamiast korbek silniki i tyle.
Krótki filmik z responsywności sterownika (biorąc pod uwagę, że to arduino, jestem zachwycony - wszystko dzięki FT800).
W zestawie do sterownika napisałem też własnego CAD/CAMa, którego wykorzystuję do generowania ścieżek, ale to przedstawię chyba w innym temacie i pewnie innym dziale.
Zajęło mi to pewnie dużo więcej czasu, niż powinno i ogólnie rzecz biorąc jakiś mach zapewne byłby szybszy, ale przynajmniej miałem okazję trochę pokodzić, pokombinować i teoretycznie wyszło znacznie taniej (chociaż w praktyce wydałem 2 razy więcej, niż trzeba było na pomyłki, próby i zapasowe części). No ale korzystanie z tokarki stało się przyjemnością
W przyszłości, gdybym miał za dużo wolnego czasu i pieniędzy pewnie napisałbym wszystko jeszcze raz na innym procesorze (np. xmega), zrobił cały układzik elektroniczny dedykowany dla tego zastosowania i wszystko odpicował, ale chyba będzie trzeba się obejść bez tego, bo nie zanosi się
-
- Lider FORUM (min. 2000)
- Posty w temacie: 1
- Posty: 7608
- Rejestracja: 23 lis 2004, 22:41
- Lokalizacja: kraków
Re: Tytan (pół)automatyczny
Hej.
Bardzo fajne urządzenie - gratuluję .
Teraz tylko przygotować pliki - zamówić pcb - lutować i sprzedawać.
Będzie kasa na inne pomysły
pzd.
Bardzo fajne urządzenie - gratuluję .
Teraz tylko przygotować pliki - zamówić pcb - lutować i sprzedawać.
Będzie kasa na inne pomysły
pzd.
Mane Tekel Fares
-
- Lider FORUM (min. 2000)
- Posty w temacie: 1
- Posty: 4419
- Rejestracja: 31 mar 2017, 19:47
- Lokalizacja: Warszawa
Re: Tytan (pół)automatyczny
Z tym brakiem komputera to przesadzasz, Jest mnóstwo komputerów poleasingowych po 300-400zł, i to takie maszynki że hoho produkcji np HP. Gorzej z monitorem ale też da się wyrwać za małe pieniądze jakiś nieuszkodzony
Ale maszynka i tak ekstra, a dokładność super.
Ale maszynka i tak ekstra, a dokładność super.
-
Autor tematu - Lider FORUM (min. 2000)
- Posty w temacie: 8
- Posty: 2364
- Rejestracja: 29 lis 2015, 00:38
- Lokalizacja: Bielsko-Biała
Re: Tytan (pół)automatyczny
Dziękuję za dobre słowo
Ehh, żeby to było takie proste... Tak, czy owak, żeby do tego podejść trzeba by na start kapitału, którego obecnie nie mam - więc trochę błędne koło .
Bardziej niż o koszty chodziło mi nawet o miejsce, wszystkie kable i mało estetyczny efekt. No i coś sobie ubzdurałem, że sam zrobię dokładnie to, co potrzebuję i poszedłem właśnie w nieco innym kierunku.
Dzięki, chociaż w dokładności niewielka moja ręka - jedynie niczego nie zepsułem po drodze
A tutaj część druga, tzn. własny CAD/CAM.
pukury pisze:Teraz tylko przygotować pliki - zamówić pcb - lutować i sprzedawać.
Ehh, żeby to było takie proste... Tak, czy owak, żeby do tego podejść trzeba by na start kapitału, którego obecnie nie mam - więc trochę błędne koło .
strikexp pisze:Z tym brakiem komputera to przesadzasz, Jest mnóstwo komputerów poleasingowych po 300-400zł, i to takie maszynki że hoho produkcji np HP. Gorzej z monitorem ale też da się wyrwać za małe pieniądze jakiś nieuszkodzony
Bardziej niż o koszty chodziło mi nawet o miejsce, wszystkie kable i mało estetyczny efekt. No i coś sobie ubzdurałem, że sam zrobię dokładnie to, co potrzebuję i poszedłem właśnie w nieco innym kierunku.
strikexp pisze:Ale maszynka i tak ekstra, a dokładność super.
Dzięki, chociaż w dokładności niewielka moja ręka - jedynie niczego nie zepsułem po drodze
A tutaj część druga, tzn. własny CAD/CAM.
-
- Czytelnik forum poziom 2 (min. 20)
- Posty w temacie: 1
- Posty: 23
- Rejestracja: 21 lut 2017, 19:00
- Lokalizacja: Piła
Re: Tytan (pół)automatyczny
bardzo mi się spodobało Twoje rozwiązanie, a i wykonanie też OK . GRATULUJĘ
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 1
- Posty: 1113
- Rejestracja: 15 sie 2017, 08:03
- Lokalizacja: Podkarpacie
Re: Tytan (pół)automatyczny
Pełen szacun, bardzo fajne urządzenie. Czy ten sterownik posiada wyjście np. na falownik 0-10V? Wtedy byś miał tokarkę pełną parą.
Pozdrawiam.
Pozdrawiam.
-
Autor tematu - Lider FORUM (min. 2000)
- Posty w temacie: 8
- Posty: 2364
- Rejestracja: 29 lis 2015, 00:38
- Lokalizacja: Bielsko-Biała
Re: Tytan (pół)automatyczny
w chwili obecnej wyjścia to sygnały dir/step i gnd do sterownika krokowców oraz enkoder. Jest jedna krańcówka, która zabezpiecza przed wjazdem w uchwyt, ale to jest taka krańcówka bezpieczeństwa, odłącza silniki bezpośrednio na ich sterowniku (póki co na szczęście nie była konieczna) z pominięciem mojego sterownika. Docelowo chciałem zrobić to w formie bardziej mobilnego pilota, ale i tak praktycznie w jednym miejscu ciągle leży, bo enkoder podpięty z jednej strony tokarki, szafa z zasilaczem i sterownikami krokowców w drugiej, więc może w przyszłości przerobię na zupełnie stacjonarną wersję i dodam pozostałe wyjścia/wejścia.Robert_K pisze:Czy ten sterownik posiada wyjście np. na falownik 0-10V?
Oczywiście można by dodać krańcówki na osi x, ale nie widzę na razie takiej potrzeby, w najgorszym wypadku zatrzymuje się silnik, do katastrofy nie dojdzie. A w osi z to zmieniam czasem położenie sanek (są równolegle do łoża, bo czasem mi przeszkadzał konik w toczeniu i trzeba było całe sanki przesuwać to w jedną to w drugą stronę) i nie wiem nawet, gdzie bym je umieścił.
Co do sygnału 0-10V dla falownika, to go nie ma, bo nie posiadam falownika, a po drugie chyba trzeba by jakiś układzik zrobić, żeby arduinowe 0-5V pwm zamienić na 0-10V, a elektronik ze mnie słaby. Wtedy można by fajnie zrobić , nawet mi to przemknęło przez myśl, no ale na razie nie ma falownika a ja muszę się innymi rzeczami zajmować, więc póki co tokarki nie ruszam.
Niestety mój sterownik ma jeszcze jedną wadę o której zapomniałem wspomnieć - jest zasilany z powerbanka, bo zasilanie zasilaczem podpiętym do sieci powodowało mi czasem reset całego układu. Mimo magicznych właściwości jeśli chodzi o prędkość działania, mam wrażenie, że komunikacja SPI do sterownika ekranu dotykowego FT800 jest strasznie wrażliwa na jakiekolwiek zakłócenia i to powodowało zwiechy. Odkąd przerzuciłem się na powerbank nie ma tego problemu. Powerbank ma 10000mAh (nie chiński ) i wystarcza na jakieś 16-20h ciągłej pracy, więc nie jest specjalnie uciążliwy, ale to już trzeci przewód odchodzący od sterownika w trzecim kierunku.
-
- Specjalista poziom 2 (min. 300)
- Posty w temacie: 1
- Posty: 523
- Rejestracja: 15 sie 2004, 23:24
- Lokalizacja: Poznań
Re: Tytan (pół)automatyczny
Kawał bardzo dobrej roboty. Gratulacje.
Apeluje o wpisywanie lokalizacji w profil! Czasem okazuje się że mieszkamy po sąsiedzku. Jako pasjonaci, hobbyści możemy sobie pomóc nie tylko anonimowo przez forum....
-
- Specjalista poziom 2 (min. 300)
- Posty w temacie: 1
- Posty: 309
- Rejestracja: 20 cze 2014, 15:02
- Lokalizacja: Bielawa
Re: Tytan (pół)automatyczny
bubels pisze:zasilanie zasilaczem podpiętym do sieci powodowało mi czasem reset całego układu.
Stawiał bym na wine zasilacza, słabe filtry ma albo przewód od zasilacza do sterownika był długi i łapał zakłócenia. Wystarczyło by wpiąć na zasilaniu sterownika dużą pojemność a za nią dorzucić stabilizator na 5V. A na przewodzie wejściowym wpiąć dławik ferrytowy.
Są też takie gotowe układy:
I ferrycik