
Witam.
Przedstawiam dzisiaj ulepszoną wersję oprogramowania które nazwałem CADICAM CNC. Oprogramowanie to w pierwszej wersji przedstawiałem na tym forum w poniższym temacie:
https://www.cnc.info.pl/topics51/cadica ... t80412.htm
Od tej pory w programie CADICAM zmieniło się sporo więc nie będę mówił o zmianach lecz opiszę po kolei funkcjonalność.
Program CADICAM CNC składa się obecnie z 4 modułów uruchamianych z zakładek.
1. Kreator rysunków DXF
2. Konwerter rysunku DXF na G-KOD
3. Konwerter BMP na DXF
4. Sterowanie Frezarką
Kreator rysunków DXF

Kreator składa się z okna roboczego i paska narzędzi/kształtów. Dodawanie kształtu odbywa się poprzez wybranie kształtu z palety i wyklikaniu jego punktów definiujących na polu roboczym.
Elementy utworzone można kopiować, przesuwać, usuwać, zaznaczać i edytować.
Powiększanie/pomniejszanie odbywa się za pomocą kółka myszy a klikając prawym klawiszem myszy na rysunku i przeciągając, pole robocze można przesunąć.
Poniżej opisane przyciski/funkcje:

Konwerter rysunku DXF na G-KOD
Ten moduł oprócz poprawek funkcjonalnych i dodaniu kilku dodatkowych funkcji nie zmienił się znacząco w porównaniu do wersji 1.0
Proces konwersji polega odpowiednio na:
1) Wczytaniu pliku DXF

2) Wyznaczeniu zera rysunku

3) Wyborze obiektów do operacji

4) Wyborze jednej z 5 operacji

5) Wyborze narzędzia

6) Ustawieniu parametrów operacji

7) Dodaniu operacji do listy zdefiniowanych operacji



9) Zapisaniu G-KODU do pliku

G-KOD wykonywalny jest przez program mach3(mm) oraz CADICAM CNC
Poniżej przykładowe efekty pracy dla każdego typu operacji:
Kontur:

Frezowanie wewnętrzne

Frezowanie zewnętrzne

Frezowanie kieszeni

Wiercenie centralne

Frezowanie kieszeni z detekcją wysp

Konwerter BMP na DXF
Konwerter ten głównie powstał w celu konwertowania obrazu ścieżek PCB na DXF.
Postanowiłem wykonać moduł umożliwiający wyfrezowanie płytki PCB z plików wyjściowych dowolnego programu do projektowania PCB.
Standardem są pliki gerber ale po próbie analizy tych plików stwierdziłem, że jak ktoś wymyślił tak pop... sposób na opis czegoś prostego to niech się sam z tym męczy. Drugim argumentem była możliwość wykonywania pcb bez posiadania plików gerber. Niektóre projekty udostępnione są w formie bitmapy lub pdf(z którego łatwo zrobić obraz rastrowy). Stąd zrodził się pomysł na tego typu konwerter.
Konwersja odbywa się w następujący sposób:
Wczytanie bliku bitmapy:

Wyborze progu binaryzacji i dokonania binaryzacji

Oczyszczeniu z drobnych wypustek i dziur

Wyborze algorytmu

Przygotowaniu obrazu

Ustawieniu parametrów i dokonaniu wektoryzacji

Zapisie pliku DXF

Z tak przygotowanego rysunku mozna wygenerować G-KOD:

Sterowanie Frezarką
Sterowanie frezarką to moduł nowy. Przed budową tego modułu zastanawiałem się jak to ugryźć. Sterowanie po porcie LPT ograniczy mnie do określonych systemów operacyjnych czy też określonych starych sprzętów - bo w nowym komputerze mało kto posiada port równoległy.
Postanowiłem więc zrobić coś więcej i tak postał Sterownik frezarki z dedykowanym interfejsem (którego nazwałem CADICAM - USB) komunikującym się z komputerem przez port USB widziany w komputerze jako port szeregowy. Opis projektu CADICAM-USB przedstawię w dalszej części.
Sterownik frezarki składa się z dwóch ekranów.
Ekran ustawień:

Tutaj konfiguruje się wejścia (jest ich 7) oraz wyjścia (jest ich

Konfiguruje się tutaj również port komunikacyjny oraz parametry/ustawienia silników.
Ekran sterowania:

Sterownik umożliwia pracę w 3 trybach:
Sterowanie prędkościowe:

W trybie tym sterujemy ruchem osi ze stałą prędkością (zadawaną w okienku prędkości) wciskając przyciski na ekranie lun klawisze strzałek oraz pageUp oraz pageDwn na klawiaturze.
Sterowanie pozycyjne:

W trybie tym zadajemy pozycję do osiągnięcia. Ruch odbywa się z zadaną prędkością.
Sterowanie G-Kodem:

W trybie tym wczytujemy G-KOD wygenerowany przez program CADICAM, uruchamiamy obróbkę i idziemy na kawę

Filmik z działania:
[youtube][/youtube]
Interfejs CADICAM-USB
Interfejs CADICAM-USB jest banalnie prosty.
Podstawowa wersja składa się z konwertera USB-UART na FT232RL oraz płytki STM32F4 Discovery.
Poniżej schemat podstawowy interfejsu CADICAM-USB:

Rozbudowa zależy od tego do czego interfejs jest podłączony.
Ja posiadam jeszcze na wyjściach konwertery logiczne 3V->5V i na wejściach 5V->3V oraz zewnętrzne diody (PD15 - dioda błędu braku danych, PD14 - dioda sygnalizacji zadziałania wejścia czułości) i zewnętrzny przycisk reset. Całość zamknięta w obudowie uniwersalnej.
W załączniku soft do interfejsu CADICAM-USB oraz demonstracyjna wersja oprogramowania CADICAM CNC.
Tym razem ograniczenia w wersji demonstracyjnej są bardzo symboliczne (bo być muszą) i polegają na:
Ograniczenie pola roboczego kreatora do -250 : 250mm (a więc efektywnie kwadrat 0.5x0.5m).
Ograniczenie maksymalnej liczbie zdefiniowanych operacji w jednej turze do 5
Ograniczenie maksymalnej liczby obiektów w konwerterze na g-kod do 10
Ograniczenie linii G-kodu do 1000[youtube][/youtube]