Reconstruction of layout components from graphic import
| Graphic imports and
Reconstruct from graphics are two features of
Fabrication Manager allowing for reverse engineering of
printed circuit boards from artworks in Gerber ASCII
formats. This kind of reverse engineering in EDWinXP is
divided into two basic stages. Firstly, the graphic elements
in the artworks are imported and distributed in relevant
categories. For example graphic elements that constitute pads
are imported to Padstack categories and those that constitute
traces are imported to Trace Master category. Actual
reconstruction is the second stage that may commence only when
all necessary elements have been imported. Reconstruction
consists of several steps that have to be executed in
prescribed sequence.For example, it is impossible to
reconstruct connections before reconstructing board outlines
and components first. It depends very much on completeness
of imported graphics, but in most cases all reconstruction
steps with exception of component reconstruction may be
executed automatically just by clicking on appropriate
tool. Component reconstruction is basically a manual process, which is aided by several
semi-automatic support features. |
| Two
methods for reconstruction |
|
There are two methods for
reconstructing components in projects that are reverse
engineered from imported graphics in Gerber ASCII format:
- The graphic elements in certain
imported categories may be used as a template for placing
components already created in Layout Editor. This method
assumes that user knows what parts were used in reverse
engineered board and that those parts are defined in System
Libraries. This method allows not only to re-create PCB
layout but also schematics– in other words a complete
EDWinXP project. It is therefore worthwhile to check in
advance whether needed parts are present in the System
Library and eventually add those that are missing.
- Components (electronic parts)
are graphically represented on the PCB by packages that are
fetched from the System Library. Newly introduced features
in EDWinXP 1.50 allow recreating complete packages from
graphics and subsequently the components referencing them.
The parts are also recreated. However, since no information
about their schematic view and structure may be derived from
imported graphics, only PCB part of the project may be
recreated in this way. Recreating component from recreated
packages is faster and in case that the schematic diagram of
the board is needed, there are options to recreate this part
of project later.
Both methods
may be of course combined and there are also ways for speeding
up this process through applying certain other features of
EDWinXP. In this document we shall focus on the first of above
mentioned methods.
| | Co-ordinates of footprints |
The basic
elements that constitute the template for component placement
are so called “pad positions”. These are
nothing else but co-ordinates of Gerber D03* (flash) commands
detected in artwork files. Most of the pads are plotted by
selecting a proper aperture and
“flashing” its shape (usually round or
rectangular) at co-ordinates corresponding with component
footprint positions. Those positions may be imported to
following categories: Thrupads Positions, SMD Pads
Positions for Component Side and SMD Pads Positions for Solder
Side. It is impossible for the program to decide
which pad position is which and user has to apply filters to
direct import to proper category or transfer pad position from
one category to another using editing tools. Some
footprints may not be flashed but plotted as lines or polygons
and in such a case there is no way for detecting a pad
position automatically. There is an option to add missing
position in proper places to fill up the gaps if the import is
ambiguous. Having footprint pattern defined in form of pad
positions is mandatory as they are used for snapping
components into their proper positions and rotations. Import
of silkscreen is helpful as it usually contains readable text
with component name and other graphics that inform about
component locations on the board and which footprints may
belong to which component. Import of pad stacks is not
required since we would be using library packages. Nevertheless,
this graphics may be useful as help for distinguishing between PMD and SMD pads as well as
in deciding whether imported pad position is for via hole. Another thing worth remembering with
import is alignment of pads to some grid – metric or imperial – by
applying proper offset to artwork file. |
| Creating components |
When pad
positions are imported, the next stage would be creating
components in Layout Editor. This is done by just selecting
them from library and throwing them somewhere on the board.
Actual placement is done in Fabrication Manager afterwards.
Depending on number of components in reconstructed board, it
may be a tedious task. Sometimes it may be easier to edit list
of component in Notepad and import it with help of wire list
import. (See Project Netlist/Wirelist Export&Import
in Project Explorermenu). Such list has
following format: (PATH,boardname(MAINHIER) (COMPONENTS componentname,librarypartname .
. . . ) ) The import of this
component list will be successful if all required parts are
found in the library. If not found, it will provide
information which parts are missing and have to be
added. Whatever method for creating components would be
applied, it is always convenient to have them pre-placed
outside board boundaries. This may be simply accomplished by
using tool Place components in bins from Layout Editor
Autoplace toolbar. With all components neatly arranged
outside the board and their desired pad position imported and
in proper places, the actual placement process may begin. For
this task select tool Reconstruct Component
in Fabrication Manager Reconstruct from
graphics toolbar and subsequently option tool
Place selected existing components (F3). The
display on the screen will present placement template in form
of imported pad position and imported silkscreen elements (if
any) and the components to place.
|
| Fitting to pattern |
The principle
of operation is simple. Selected pad of the component is
matched to its desired position on board marked by imported
pad positions. With this information the program will attempt
to rotate the component around selected pad to find best match
for remaining pads in surrounding pattern of pad positions.
There are two other options connected to this tool (F4 and F5)
– one for ordering this rotation to take place in 90 degrees
steps and the other for using steps specified by value in
Angle Snap box. This function operates in two modes. The
simplest is to click on the pad position that
corresponds with desired location of pin number 1 of the
component we want to places. This component is then selected
from the list that pops up after clicking on pad position. The
other mode is reverse. Clicking on pad in existing component
starts its relocation. It should be then moved in such way
that this pad hovers over corresponding pad position.
Subsequent click anchors the component and the program
continues matching rotation automatically. This procedure has to be repeated for all components in the board. |
|
| |