Support for Reverse Engineering of PCBs

W skrócie

Inżynieria odwrotna płytki PCB na podstawie plików CAM w Altium Designer wymaga czegoś więcej niż tylko importu danych. W tym artykule omówiono przygotowania niezbędne do przeniesienia projektu do edytora PCB, w tym przypisanie warstw, konfigurację stosu warstw płytki, zestawy wierceń, wyodrębnianie listy połączeń oraz obsługę obrysu płytki i poligonów. Czytaj dalej, aby poznać kroki, które pomogą Ci przygotować dane CAM do eksportu do PCB.

- Dowiedz się, jak importować dane ODB++, Gerber i NC Drill oraz sprawdzać typy warstw, ich fizyczną kolejność i zestawy wierceń.
- Poznaj sposób wyodrębniania połączeń i wykorzystania listy połączeń IPC-D-356 do przywracania nazw sieci oraz porównywania list połączeń.
- Zapoznaj się z wymaganiami dotyczącymi zamkniętych obrysów płytki i dzielonych płaszczyzn oraz z opcjami eksportu poligonów.
Zagłęb się w temat dzięki AI:

Po zaimportowaniu danych CAM do dokumentu CAM zauważysz, że opcja Export to PCB jest wyszarzona, niezależnie od bieżącego trybu edytora CAM (CAM lub NC). Polecenie to umożliwia odtworzenie projektu PCB bezpośrednio z plików CAM. Proces ten nie polega na standardowym eksporcie i imporcie, lecz na wczytaniu danych bezpośrednio do edytora PCB.

W kolejnych sekcjach opisano kroki niezbędne do odtworzenia projektu PCB z danych CAM: od początkowego importu do dokumentu CAM, przez wymagane przygotowania przed eksportem, aż po eksport danych projektu do edytora PCB.

Import danych

Okno dialogowe Preferences Okno dialogowe Preferences

Punktem wyjścia całego procesu jest wczytanie plików ODB++ lub plików Gerber i NC Drill do nowego dokumentu CAM. Jeśli masz listę połączeń IPC, zaimportuj ją również podczas importowania danych Gerber i NC Drill. W przypadku importowania ODB++ plik IPC należy importować tylko wtedy, gdy lista połączeń nie znajduje się w katalogu ODB++. Lista połączeń IPC umożliwi przywrócenie oryginalnych nazw wyodrębnionych sieci oraz rozróżnienie przelotek przelotowych i swobodnych pól lutowniczych nieprzypisanych do komponentów.

Wszystkie polecenia podmenu File » Import wyszukują w danym folderze pliki o określonych rozszerzeniach. Na przykład podczas importowania plików wierceń w wybranym katalogu odfiltrowywane są wszystkie pliki poza tymi o rozszerzeniach .DR*, .ROU, .RTE, *.NC* i *.TX* . Jeśli otrzymujesz pliki wierceń o innych rozszerzeniach, możesz rozszerzyć tę listę na stronie CAM Editor - Miscellaneous w oknie dialogowym Preferences. W tym miejscu możesz także zmienić domyślne listy rozszerzeń dla plików Gerber, Aperture, HPGL i Netlist.

Okno dialogowe Preferences Okno dialogowe Preferences

Strona CAM Editor - Import/Export w oknie dialogowym Preferences umożliwia zmianę domyślnych ustawień importu i eksportu plików Gerber. Jeśli na przykład regularnie otrzymujesz dane CAM wygenerowane w programie P-CAD, warto rozważyć zmianę formatu precyzji współrzędnych z 2:3 (ustawienie domyślne w Altium Designer) na 4:4 (ustawienie domyślne w P-CAD). Jeśli tego nie zrobisz, nadal będzie można zmienić te ustawienia domyślne przy każdym importowaniu zadania.

Przypisywanie typów warstw

Okno dialogowe  Layer Table Detection TemplateOkno dialogowe Layer Table Detection Template

Poszczególne pliki Gerber i pliki wierceń są przypisywane do osobnych warstw. Ponadto podczas importowania edytor CAM analizuje ich nazwy i próbuje przypisać każdej warstwie odpowiedni typ. W tym celu korzysta z informacji zawartych w oknie dialogowym Layer Types Detection Template, dostępnym po wybraniu polecenia Tables » Layer Type Detection z menu głównego. To w pełni konfigurowalne okno dialogowe zawiera fragmenty nazw plików (rozszerzenia, słowa kluczowe lub oba te elementy), które pozwalają rozpoznać typy warstw poszczególnych plików, takie jak warstwy sygnałowe, negatywowe warstwy płaszczyzn, obrysu, wierceń oraz tymczasowe (mechaniczne).

Na przykład edytor PCB w Altium Designer rozróżnia warstwy Gerber na podstawie ich rozszerzeń, takich jak .gtl dla warstwy górnej i .gbl dla dolnej. Inne narzędzia projektowe mogą eksportować plik .top dla warstwy górnej i plik .sol dla warstwy dolnej (lutowania). Niektóre z tych narzędzi, na przykład P-CAD, umożliwiają użytkownikom samodzielne określenie nazw wyjściowych plików Gerber.

Po zaimportowaniu dowolnej grupy plików CAM możesz otworzyć okno dialogowe Layers Table i sprawdzić automatycznie przypisane typy. Możesz rozwinąć listę typów i zmienić dowolne przypisanie. Na przykład zauważysz, że wszystkim plikom wierceń automatycznie przypisywany jest typ Drill Top. Na tym etapie możesz rozróżnić zestawy wierceń górnych, dolnych i wewnętrznych. Nie jest to jednak wymagane.

Okno dialogowe  Layer Table Okno dialogowe Layer Table

Jeśli często otrzymujesz pliki Gerber lub pliki wierceń, którym nie jest automatycznie przypisywany prawidłowy typ warstwy, sprawdź, czy ich nazwy zawierają charakterystyczne elementy, na podstawie których CAM Editor może je rozpoznać, i dodaj te elementy do okna dialogowego Layer Types Detection Template. W przypadku ODB++ nie ma potrzeby korzystania z okna dialogowego Layer Types Detection Template, ponieważ wszystkie informacje niezbędne do identyfikacji poszczególnych warstw są zapisane w pliku macierzy. Dobrą praktyką jest jednak sprawdzenie przypisanych typów warstw po zakończeniu wczytywania.

Stos warstw płytki i zestawy wierceń

Okno dialogowe Create/Update Layers Order Okno dialogowe Create/Update Layers Order

Warstwy, którym przypisano typ sygnałowy (górna, dolna lub wewnętrzna) albo typ płaszczyzny, pojawią się teraz w oknie dialogowym Create/Update Layers Order, dostępnym po wybraniu polecenia Tables » Layers Order z menu głównego. W większości przypadków CAM Editor będzie w stanie określić stos warstw na podstawie dostarczonych danych CAM, ale czasami dostępna będzie jedynie kolejność logiczna (kolejność, w jakiej zaimportowano warstwy). Najlepiej upewnić się, że informacje w kolumnie Layer Physical Order są prawidłowe, przy czym numer jeden oznacza warstwę górną. Uważaj, aby nie przypisać tego samego numeru kolejności różnym warstwom. Po określeniu prawidłowego stosu warstw kolumna kolejności fizycznej będzie miała pierwszeństwo przed listą logiczną przy ponownym otwarciu tego okna dialogowego, a warstwy zostaną wyświetlone zgodnie z proponowanym stosem.

Ta sama kolejność fizyczna zostanie odzwierciedlona w oknie dialogowym Create/Update Layers Sets, dostępnym po wybraniu polecenia Tables » Layers Sets z menu głównego, w którym przyporządkowuje się pliki wierceń do zestawów warstw. Rozważmy płytkę 6-warstwową (cztery warstwy sygnałowe i dwie warstwy płaszczyzn) z przelotkami ślepymi i zagrzebanymi. Projekt może zawierać cztery osobne pliki wierceń:

  • jeden dla pary Top-Bottom (otwory przelotowe)
  • jeden dla pary Top-InternalPlane1
  • jeden dla pary MidLayer1-MidLayer2
  • jeden dla pary Bottom-InternalPlane2.
Pamiętaj, że określasz zestaw wierceń, a nie tylko pary skrajnych warstw. W przypadku warstw wierceń ślepych i zagrzebanych zestaw musi zawierać wszystkie przewiercane warstwy. W przypadku warstw wierceń przelotowych powinny wystarczyć warstwy początkowa i końcowa.

Wyodrębnianie listy połączeń

Ten krok, uruchamiany przez wybranie polecenia Tools » Netlist » Extract z menu głównego, zależy od poprawności wykonania poprzednich kroków. Nie można go wykonać, dopóki każdej warstwie płytki nie zostanie przypisany typ (warstwom mechanicznym należy przypisać typ Temporary). Po uruchomieniu polecenia zostaną wyodrębnione informacje o połączeniach, a lista sieci pojawi się na karcie Nets  panelu CAMtastic . Dla każdej sieci podana jest jej całkowita długość. Kliknięcie dowolnej pozycji sieci w panelu spowoduje jej zaznaczenie i przybliżenie w obszarze projektowym.

Edytor CAM prześledzi połączenia między warstwami, korzystając z plików wierceń NC w celu ustalenia połączeń międzywarstwowych. Z tego powodu stos warstw zdefiniowany w oknie dialogowym Create/Update Layers Order oraz pary wierceń wybrane w oknie dialogowym Create/Update Layers Sets są kluczowe dla wyodrębnienia prawidłowej listy połączeń z danych CAM.

Jeśli wraz z importowanymi plikami Gerber i NC Drill zaimportowano plik listy połączeń IPC-D-356, można przywrócić oryginalne (i znaczące) nazwy sieci, wybierając Tools » Netlist » Rename Nets z menu głównego. Po uruchomieniu polecenia sieci zostaną porównane, a sieci wyodrębnione z bieżącego dokumentu otrzymają nazwy z pliku listy połączeń IPC. Zaktualizowane nazwy pojawią się na karcie Nets panelu CAMtastic .

Chociaż informacje z listy połączeń IPC-D-356 nie są niezbędne do eksportu, warto je uwzględnić. Pomogą one edytorowi CAMtastic odróżnić pola lutownicze od przelotek, a tym samym prawidłowo utworzyć przelotki zamiast pól lutowniczych w przypadku przelotek ślepych lub zagrzebanych występujących w projekcie. Co jednak znacznie ważniejsze, lista połączeń IPC stanowi punkt odniesienia, z którym można porównać wyodrębnioną listę połączeń, wybierając Tools » Netlist » Compare z menu głównego. Po uruchomieniu polecenia zostanie przeprowadzone porównanie, a następnie wygenerowany raport Netlist-Compare.rpt, który otworzy się jako aktywny dokument w głównym oknie projektowym. Raport zawiera wykaz wszystkich sieci znalezionych w zaimportowanej liście połączeń, których brakuje na wyodrębnionej liście połączeń.

Listy połączeń w formacie Protel nie są obsługiwane. Importowana lista połączeń musi być w standardowym formacie IPC-D-356.

Jeśli lista połączeń IPC została zaimportowana prawidłowo, na liście warstw w panelu CAMtastic pojawią się dwie dodatkowe warstwy: <fabrication_testpoint_report_for_DesignName>.ipc_t i <fabrication_testpoint_report_for_DesignName>.ipc_b, zawierające informacje o połączeniach dla górnej i dolnej warstwy sygnałowej. (Trzecia warstwa, <fabrication_testpoint_report_for_DesignName>.ipc_in, pojawi się, jeśli projekt PCB zawiera wewnętrzne warstwy sygnałowe. O ile nie występują przelotki ślepe lub zagrzebane obejmujące te warstwy, trzecia warstwa będzie pusta i można ją pozostawić na liście warstw lub z niej usunąć).

W przypadku list połączeń IPC wygenerowanych w edytorze PCB funkcja porównywania edytora CAM zwykle wykrywa szereg „brakujących sieci” bez nazw. Dzieje się tak, ponieważ format IPC edytora PCB uwzględnia sieci z jednym wyprowadzeniem. Z kolei edytor CAM pomija na liście połączeń pola lutownicze bez żadnych połączeń miedzianych. Jego funkcja DRC zawiera nawet opcję usuwania nieużywanych pól lutowniczych.

Aby usunąć wszystkie sieci z bieżącego dokumentu, a tym samym wyczyścić wcześniej wyodrębnioną listę połączeń, wybierz polecenie Tools » Netlist » Clean All Nets z menu głównego. Po uruchomieniu polecenia wszystkie informacje o sieciach zostaną usunięte. Usunięcie wszystkich sieci z dokumentu CAM można sprawdzić w panelu CAMtastic . Karta Nets będzie pusta.

Obrysy i płaszczyzny

Gdy CAM Editor eksportuje plik PCB do edytora PCB, obrys płytki jest generowany automatycznie. Aby proces ten przebiegł prawidłowo, na warstwie typu Border musi znajdować się zamknięta polilinia. Jeśli na tej warstwie nie zostaną znalezione zamknięte polilinie lub jeśli w oknie dialogowym Layers Table jako obrys wskazano wiele warstw, uzyskany kształt płytki prawdopodobnie nie będzie zgodny z oczekiwaniami.

Wszelkie podziały wewnętrznych płaszczyzn również muszą być zdefiniowane przez zamknięte polilinie. Aby ustalić, czy polilinia jest zamknięta, sprawdź jej właściwości (skrót Q). Sprawdź, czy podświetlona zostaje cała polilinia i czy na karcie Info panelu CAM jest ona opisana jako zamknięta. Jeśli nie, możesz przekształcić istniejące obiekty w zamkniętą polilinię za pomocą polecenia Join w podmenu Edit » Objects.

Sekcje dzielonych płaszczyzn mogą wymagać dodatkowej pracy, ponieważ każda sekcja musi mieć własny zamknięty obrys. O ile wyspy płaszczyzn można połączyć w sposób opisany powyżej, o tyle dzielone płaszczyzny, które współdzielą obrysy z innymi sekcjami lub z polilinią obrysu płytki, trzeba narysować ponownie. Aby narysować własną zamkniętą polilinię, kliknij prawym przyciskiem myszy po wskazaniu jej ostatniego wierzchołka, a następnie wybierz Close.

Zagnieżdżone płaszczyzny (wyspy wewnątrz dzielonych płaszczyzn) nie są obecnie obsługiwane.

Eksportowanie wielokątów

Strona CAM Editor - Import/Export okna dialogowego Preferences udostępnia dodatkowe opcje określające sposób eksportowania wielokątów z dokumentu CAM do dokumentu PCB. Wielokąty o prostokątnym kształcie można utworzyć w dokumencie PCB jako wypełnienia. W przypadku wielokątów innych niż prostokątne można utworzyć w edytorze PCB wylewki wielokątne z wypełnieniem kreskowanym lub pełnym. Dostępne są okna dialogowe opcji dla obu typów wylewek, co pozwala dokładniej kontrolować sposób obsługi wyeksportowanych wielokątów w dokumencie PCB.

Po włączeniu opcji Create Hatched Polygons narzędzie CAM Editor użyje jednego rozmiaru siatki i jednej szerokości ścieżki do wypełnienia wszystkich wielokątów w pliku. Jeśli dane CAM zawierają bardzo małe wielokąty, należy odpowiednio dostosować opcje eksportu do ich rozmiarów.

Okno dialogowe Polygon Options, otwierane kliknięciem odpowiedniego przycisku Hatched Polygon Options, umożliwia zmianę rozmiaru siatki, szerokości ścieżki i minimalnej długości obiektu podstawowego dla wielokątów. Jeśli wielokąty mają zostać całkowicie wypełnione z dużą dokładnością, wszystkie te wartości powinny mieścić się w wąskim zakresie odpowiadającym najmniejszym wymaganym wymiarom na płytce. W przeciwnym razie istnieje ryzyko powstania pustych miejsc w wielokątach, kreskowania zamiast pełnego wypełnienia, a nawet pominięcia całych wielokątów podczas eksportu.

Okno dialogowe Polygon OptionsOkno dialogowe Polygon Options

Z drugiej strony wartości te będą stosowane do wszystkich eksportowanych wielokątów, więc bardzo małe wartości zwiększą rozmiar eksportowanego pliku i utrudnią jego obsługę (na przykład spowolnią odświeżanie widoku). Z tego względu najlepiej używać jak największych wartości, które nadal zapewniają wymaganą dokładność dla wszystkich wielokątów na płytce.

Po włączeniu opcji Create Solid Polygons każdy wielokąt zostanie wypełniony jednym lub większą liczbą pełnych obszarów miedzi. Liczba użytych obszarów miedzi zależy od liczby odrębnych obszarów utworzonych wewnątrz wielokąta przez istniejące obiekty sieci, takie jak ścieżki i pola lutownicze.

Okno dialogowe Solid Polygon OptionsOkno dialogowe Solid Polygon Options

Okno dialogowe Solid Polygon Options, otwierane kliknięciem odpowiedniego przycisku Solid Polygon Options, pozwala określić sposób obsługi wysp miedzi i wąskich połączeń miedzianych, a także zachowanie wylewki przy wypełnianiu obszaru zawierającego obiekty należące do tej samej sieci co wylewka:

  • Pour Over All Same Net Objects - wybierz tę opcję, jeśli wylewka wielokątna ma automatycznie łączyć się ze wszystkimi obiektami należącymi do tej samej sieci co wylewka

  • Pour Over Same Net Polygons Only - wybierz tę opcję (domyślną), jeśli wylewka wielokątna ma automatycznie łączyć się wyłącznie z obiektami wylewek wielokątnych znajdującymi się wewnątrz jej obrysu i należącymi do tej samej sieci

  • Don't Pour Over Same Net Objects - wybierz tę opcję, jeśli wylewka wielokątna nie ma łączyć się z żadnymi innymi obiektami sieci. Jeśli wybrano jedną z dwóch pierwszych opcji, a wylewka wielokątna jest przypisana do No Net, będzie ona omijać wszystkie obiekty niezależnie od ich przypisania do sieci.

  • Po uruchomieniu polecenia Export to PCB w celu utworzenia płytki wielokąty zostaną utworzone jako obrysy — konieczne będzie ich ponowne wypełnienie. 

  • Każdy odrębny obszar wielokątny zdefiniowany w plikach CAM staje się osobnym poligonem. Użyj menedżera poligonów, aby sprawdzić, jak i gdzie zostały one zdefiniowane. Pamiętaj, że możesz zmodyfikować obrys istniejącego poligonu. Przy takim podejściu łatwiejsze może być zamknięcie dużego istniejącego poligonu tak, aby mógł zastąpić wiele mniejszych poligonów ().

Eksport do PCB

Po wyodrębnieniu listy połączeń z danych CAM polecenie File » Export » Export to PCB staje się dostępne. Wykonanie tego polecenia po przeprowadzeniu wszystkich niezbędnych kroków spowoduje utworzenie dokumentu PCB zawierającego projekt płytki bardzo zbliżony do oryginału.

Po uruchomieniu polecenia zostanie wygenerowany nowy dokument PCB (<CAMDocumentName>.PcbDoc) i otwarty jako aktywny dokument w obszarze projektowym. Przesyłanie informacji między dokumentem CAM a dokumentem PCB przebiega w następującej kolejności:

  1. Tworzony jest dokument PCB z obrysem płytki opartym na aktualnych wymiarach płytki w dokumencie CAM.

  2. W dokumencie PCB tworzone są obiekty sieci na podstawie informacji o sieciach wyodrębnionych z dokumentu CAM.

  3. Generowany jest stos warstw na podstawie fizycznej kolejności warstw zdefiniowanej w dokumencie CAM (okno dialogowe Create/Update Layers Order, dostępne za pośrednictwem Tables »  Layers Order).

  4. Sieci są przypisywane do wszystkich wewnętrznych warstw płaszczyznowych.

  5. Sieci są przypisywane do wszystkich istniejących dzielonych płaszczyzn. Mogą one być 

  6. Tworzone są reguły projektowe dotyczące odstępów, szerokości ścieżek i sposobu łączenia z płaszczyznami zasilania. Dla każdej sieci płaszczyzny tworzone są połączenia termiczne.

  7. Na podstawie danych CAM budowane są stosy pól lutowniczych (z wykorzystaniem pól na warstwach sygnałowych i płaszczyznowych w kolejności fizycznej, a następnie danych wierceń, maski lutowniczej, pasty lutowniczej itd.). Stosy pól lutowniczych są wczytywane do dokumentu PCB i definiowany jest wymagany typ stosu (prosty lub pełny).

  8. Tworzone są ścieżki PCB.

  9. Przeprowadzana jest kontrola reguł projektowych (DRC) dla całej płytki.

  • Polecenie Export to PCB przesyła dane z dokumentu CAM do dokumentu PCB za pomocą interfejsu API edytora PCB. Dzięki temu nie są generowane żadne pliki eksportu danych (w formacie Gerber ani innym), co eliminuje konieczność korzystania z importera plików Gerber w edytorze PCB.

  • Wygenerowany dokument PCB zostanie dodany do Projects panel jako dokument niezależny, w podfolderze PCBs. Dokument zostaje wygenerowany, ale początkowo nie jest zapisany.

  • Pełne odtworzenie płytki nadal będzie wymagało dodatkowej pracy, na przykład zastąpienia obiektów podstawowych komponentów footprintami (można to zrobić, kopiując i wklejając grupy obiektów podstawowych do biblioteki PCB, a następnie zastępując oryginały nowymi footprintami). Edytor PCB nie utworzy automatycznie par warstw wiercenia na podstawie informacji Layer Sets w dokumencie CAM; trzeba je ponownie zdefiniować ręcznie w Layer Stack Manager. 

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Contents
Dostępność funkcji

Dostępne funkcje zależą od tego, z którego rozwiązania Altium korzystasz – Altium Develop, Altium Agile Teams, Altium Agile Enterprise lub Altium Designer (w ramach aktywnej subskrypcji terminowej).

Jeśli opisana funkcja nie jest widoczna w Twoim oprogramowaniu, skontaktuj się z działem sprzedaży Altium, aby dowiedzieć się więcej.

Starsza dokumentacja

Dokumentacja Altium Designer nie jest już wersjonowana. Jeśli potrzebujesz dostępu do dokumentacji dla starszych wersji Altium Designer, odwiedź sekcję Starsza dokumentacja na stronie Inne instalatory.

Contents