PCB laserem albo kieszeniowanie slicerem.

Dyskusje dotyczące programowania G-Code
Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 3274
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

PCB laserem albo kieszeniowanie slicerem.

#1

Post napisał: tuxcnc » 30 lis 2019, 14:48

Wstęp :
Ludzie z zasady kupują drogie oprogramowanie, a potem się wściekają, że to oprogramowanie robi to co robi, a nie to czego by oczekiwali ...
Można też inaczej, mianowicie wykorzystać łańcuch prostych i darmowych narzędzi.
Jest taka metoda robienia płytek drukowanych, polegająca na tym że miedziowany laminat pokrywa się lakierem, potem ten lakier wypala się laserem z tych miejsc które mają zostać wytrawione, a potem się czyści, trawi, czyści, wierci, przycina itd.
Nie będę się rozpisywał, bo opisy, a nawet filmy można znaleźć w necie.
Z rzeczy ważnych zauważę tylko, że ludziom się udaje nie tylko laserami CO2 40W, co dziwić nie powinno, ale także niebieskimi laserami o mocy kilku watów.
Szczerze mówiąc nie wypróbowałem tej metody, chociaż laser mam, z dwóch powodów, braku czasu co tutaj jest nieistotne i braku odpowiedniego oprogramowania, o czym zasadniczo jest ten temat.

Wymagania :
Potrzebny będzie komputer z Linuksem i kilka darmowych programów na licencji GPL.
Miłośnikom Windowsów też powinno się udać, ale na tym systemie się nie znam i nie pomogę.
Wymagane programy :
1. KiCad
2. Librecad
3. Openscad
4.Slic3r
5 sed i prosty skrypt powłoki

Opis :
Pomysł jest zasadniczo wariacki, ale nie widzę powodów dla których miałby nie być użyteczny.
Otóż zacząłem od takiej konstatacji, że drukarka 3d jest w istocie ploterem, który zamalowuje określone powierzchnie stopionym plastikiem. Rzecz niby oczywista, ale jakoś umyka uwadze.
Cóż, jeśli drukarka 3d zamalowuje, to po drobnej korekcie g-kodu laser będzie wypalał.
Wariactwo pomysłu polega zasadniczo na tym, żeby wykonać model w stl-u tego, co zamierzamy z płytki usunąć ...
No to po kolei.
Najpierw robimy projekt w KiCad, czego opisywał nie będę.
Potem eksportujemy rysunek płytki do formatu dxf. Sprawa jest prosta, w menu wybieramy "rysuj" i ustawiamy jako format wyjściowy dxf.
Następny etap to edycja pliku dxf w librecad. Po pierwsze należy dodać warstwę obrysu płytki, po drugie warstwom nadać odpowiednie nazwy. U mnie to są warstwy "outlines" i "vias", ale jak się komuś nie podoba, to może wyedytować skrypty i to zmienić. Plik należy zapisać jako pcb.dxf.
Następnie otwieramy plik pcb.scad w OpenScad, renderujemy i eksportujemy do formatu stl.
Plik stl otwieramy w Slic3r i eksportujemy g-kod.
Program Slic3r wybrałem przypadkowo, po prostu wyglądał na wystarczająco skomplikowany by mieć potrzebne funkcje i wystarczająco prosty by się w tych funkcjach nie pogubić. Nawiasem mówiąc AppImage nie chciał się uruchomić, ale ściągnąłem archiwum tar, które zainstalowałem i uruchomiłem bez problemu. Okazało się że to był strzał w dziesiątkę. Co prawda na domyślnych ustawieniach program tworzył takie cuda, że nie wiedziałem o co mu chodzi, ale po odpowiednim skonfigurowaniu wszystko zaczęło działać jak oczekiwałem. W skrócie, należy zamiast "default" podać konkretne wartości, a jako format wyjściowy wybrać mach3. Nie będę tutaj opisywał w szczegółach, w załączniku jest plik konfiguracji, którym można nadpisać ten tworzony przez Slic3r.
Z rzeczy ważnych, to parametr nozzle_diameter odpowiada za odległość pomiędzy kolejnymi ścieżkami, dla lasera 0.2mm powinno być ok. Parametrów max_layer_height i min_layer_height nie należy zmieniać, OpenScad jest tak ustawiony by tworzyć obiekt o wysokości 0.2mm, co się mieści w widełkach i w efekcie Slic3r tworzy tylko jedną warstwę.
Po wyeksportowaniu g-kodu zauważamy rzeczy następujące :
1. Wszystkie linie NIE zaczynające się od "G" są niepotrzebne i należy je usunąć.
2. Linia zawierająca "Z" musi zostać usunięta, bo laser nie ma osi Z.
3. Z każdej linii trzeba usunąć parametr Axx.xxxx, bo to informacja dla ekstrudera, którego laser nie ma.
4. Istnieje taka zależność, że prędkość F7800 oznacza ruchy ustawcze, a prędkość F1800 oznacza ruchy robocze. Tak więc przed linią zawierającą F7800 trzeba narzędzie wyłączyć, czyli dopisać M05 S0, a przed linią zawierającą F1800 trzeba narzędzie włączyć, czyli dopisać M03 S300. Wartości parametrów F i S mogą być u Ciebie inne, ale chodzi o zasadę.
Edytowanie długiego pliku w edytorze tekstu może być wyjątkowo uciążliwe, więc z pomocą przychodzi program sed i skrypt basha który go uruchamia z odpowiednimi parametrami.
Wyedytowany g-kod nadaje się do uruchomienia na laserze, po ewentualnej zmianie parametrów F, ale to już można zrobić w edytorze tekstu (znajdź i zamień wszystkie). Można oczywiście ustawić właściwe prędkości w Slic3r, ale wtedy trzeba wyedytować skrypt pcb.sed.

Czego nie zrobiłem :
Nie odbiłem płytki w lustrze. Trzeba o tym pamiętać, ale tutaj jest to bez znaczenia.
Nie sprawdziłem na maszynie.
Nie wiem czy któryś program nie przeskalowuje projektu, co się zdarza przy złym ustawieniu parametrów importu/eksportu.
Do tej pory nie interesowało mnie ustawienie płytki w określonym miejscu.Trzeba załapać co robić żeby skala i położenie były zgodne z oczekiwaniami.

Użytkownicy Windows :
Z tego co się orientuję, to wszystkie potrzebne programy są wieloplatformowe i dostępne także miłośnikom najlepszego systemu operacyjnego jaki kiedykolwiek wymyślono.
Ja jednak od lat na Windows nie pracuję, więc nie pomogę.

Kieszeniowanie :
Jest oczywiste, że można tak zmienić skrypty, żeby zamiast M03 S300 wpisywał do pliku np. M03 G1 Z-2 F100, albo zamiast M05 S0 np. M05 G0 Z2 ...
Krótko mówiąc na frezarce też da się w ten sposób pracować.

Pliki :
Przykładowy projekt w KiCad, skrypty, plik konfiguracyjny Slic3r. Brakuje pliku utworzonego przez Slic3r, bo został nadpisany przez skrypt, ale można go sobie wygenerować.

pcb-laser.tar.bz2
(246.67 KiB) Pobrany 2 razy

Galeria :
Obrazek
Obrazek
Obrazek
Obrazek
Obrazek
Obrazek




Jans
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 1
Posty: 44
Rejestracja: 11 gru 2005, 13:29
Lokalizacja: Jarosław

Re: PCB laserem albo kieszeniowanie slicerem.

#2

Post napisał: Jans » 30 lis 2019, 15:41

Prościej będzie darmową wersją Eagle. Ma możliwośč wygenerowania gcodòw do frezowania płytek akceptowanych przez Macha. Pozostaje zastąpienie freza laserem . Pozdrawiam. JS.

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 3274
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: PCB laserem albo kieszeniowanie slicerem.

#3

Post napisał: tuxcnc » 30 lis 2019, 16:41

Jans pisze:
30 lis 2019, 15:41
Prościej będzie darmową wersją Eagle.
Nie mam nic przeciwko temu, żeby ktoś sobie kupił komercyjne oprogramowanie, ale na dyskusje o użyteczności wersji trial na ograniczonej licencji, najzwyczajniej szkoda czasu

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „G-CODE - programowanie”