The
CAM View module provides features for displaying Gerber data ("Gerber View"), Sieb&Meier and/or Excellon drilling data and Excellon milling data in order to check CAM data validity and to estimate the efficiency of tool usage.
CAM View features multiple input, selective data set movement and sorted output with variable offsets, optional mirroring and adjustable aperture tables, thus supporting panelization.
CAM View also provides a powerful function for translating Gerber data to BAE layout design data, i.e., with
CAM View the user is able to import Gerber data produced by foreign PCB layout systems.
4.8.1 Starting the CAM View Module
It is recommended to start the
Bartels AutoEngineer from the directory where the design files should be generated since this considerably simplifies job file access. If you intend to process the examples provided with this manual it is recommended to move to the BAE examples directory installed with the BAE software. The
CAM View module can be called from the
Bartels AutoEngineer main shell. Start the BAE shell by typing the following command to the operating system prompt:
> bae
Move the menu cursor to the
CAM View menu item and confirm this choice by pressing the left mouse button:
CAM View | |
The
CAM View program module is loaded and the
CAM View menu is activated. If this fails to happen then check your BAE software installation (see the
Bartels AutoEngineer® Installation Guide for details on how to perform a correct installation).
4.8.2 CAM View Main Menu
The
CAM View standard/sidemenu user interface provides a menu area on the right side, consisting of the main menu on top and the currently active menu below that main menu. After entering
CAM View, the
menu is active and the menu cursor points to the
function.
The Windows and Motif versions of the
CAM View module can optionally be operated with a pull-down menu user interface providing a horizontally arranged main menu bar on top. The
WINMENUMODE command of the
bsetup utility program is used to switch between
SIDEMENU and
PULLDOWN Windows/Motif menu configurations. See
chapter 7.2 for more details.
The following main menu is always available whilst processing CAM data with
CAM View:
Display
The
or
menu can either be activated by selecting the corresponding main menu item or by pressing the middle mouse button. The
or
menu provides useful functions for changing display options such as zoom window, zoom scale, input and display grid, color settings, drawing mode, coordinate display mode, etc.
Files
The
menu provides functions for loading, moving and writing Gerber, drilling or milling data sets, for generating layouts from Gerber data and for deleting the currently loaded CAM data from main memory.
Parameter
The
menu provides functions for setting input offsets and mirror modes for subsequent data load processes, defining the via D-Code for generating layouts from Gerber data, selecting the Gerber format, the circle mode, the coordinate format, and activating and/or deactivating Extended Gerber format or Gerber optimization when loading and/or writing Gerber data.
Utilities
The
menu provides functions for exiting BAE, returning to the BAE main shell, sorting drill data, reporting aperture usage and listing DDB file contents.
4.8.3 Customized CAM View User Interface
Menu Assignments and Key Bindings
The BAE software comes with User Language programs for activating a modified
CAM View user interface with many additional functions (startups, toolbars, menu assignments, key bindings, etc.). The
bae_st User Language program is automatically started when entering the
CAM View module.
bae_st calls the
uifsetup User Language program which activates predefined
CAM View menu assignments and key bindings. Menu assignments and key bindings can be changed by modifiying and re-compiling the
uifsetup source code. The
hlpkeys User Language program is used to list the current key bindings. With the predefined menu assignments of
uifsetup activated,
hlpkeys can be called from the
function of the
menu. Menu assignments and key bindings can be listed with the
uifdump User Language program. The
uifreset User Language program can be used to reset all currently defined menu assignments and key bindings.
uifsetup,
uifdump and
uifreset can also be called from the menu of the
keyprog User Language program which provides additional facilities for online key programming and
User Language program help info management.
Cascading Windows/Motif Pulldown Menus
The Windows and Motif pulldown menu user interfaces of the
CAM View module provide facilities for cascading submenu definitions. I.e., submenus can be attached to other menu items. The
uifsetup User Language program configures cascading submenus for the pulldown menu interfaces of the Windows/Motif
CAM View modules. This allows for easy submenu function location (and activation) without having to activate (and probably cancel) submenus. The function repeat facility provided through the right mouse button supports cascading menus to simplify repeated submenu function calls.
Windows/Motif Parameter Setup Dialogs
The following Windows/Motif parameter setup dialogs are implemented for the
CAM View module:
- - : General CAM View Parameters
- - : Display Parameters
The
uifsetup User Language program replaces the parameter setup functions of the Windows and Motif pulldown menus with the above menu functions for activating the corresponding parameter setup dialogs.
Windows/Motif Pulldown Menu Konfiguration
When using pulldown menus under Windows and Motif, the
uifsetup User Language program configures the following modified
CAM View main menu with a series of additional functions and features:
4.8.4 In-built CAM View System Features
User Language
The
Bartels User Language Interpreter is integrated to the
CAM View module, i.e.,
User Language programs can be called from
CAM View. It is possible to implement any user-specific
CAM View function required such as status display, parameter setup, reports and test functions, customer-specific batch procedures, etc.
CAM View provides both explicit and implicit
User Language program call facilities.
User Language programs can be started with explicit program name specification using the
function from the
menu (empty string or question-mark
(? ) input to the program name query activates a
User Language program selection menu).
User Language programs can also be called by simply pressing special keys of the keyboard. This method of implicit
User Language call is supported at any time unless another interactive keyboard input request is currently pending. The name of the
User Language program to be called is automatically derived from the pressed key, i.e. pressing a standard and/or function key triggers the activation of a
User Language program with a corresponding name such as
cv_1 for digit key
1,
cv_r for standard key
r,
cv_# for standard key
#,
cv_f1 for function key
F1,
cv_f2 for function key
F2, etc.
The
CAM View
User Language Interpreter environment also features event-driven
User Language program calls, where
User Language programs with predefined names are automatically started at certain events and/or operations such as
cv_st at CAM View module startup,
cv_tool when selecting a toolbar item and
cv_zoom when changing the zoom factor. The module startup
User Language program call method is most useful for automatic system parameter setup as well as for key programming and menu assignments. The toolbar selection event must be used to start
User Language programs which are linked to toolbar elements. The zoom event can be used to apply an update request to a design view management feature.
Bartels User Language also provides system functions for performing key programming, changing menu assignments and defining toolbars. These powerful features can be applied for user interface modifications. Please note that a large number of additional functions included with the
CAM View menu are implemented through the
User Language programs supplied with the BAE software.
See the
Bartels User Language Programmer's Guide for a detailed description of the
Bartels User Language (chapter 4.2 lists all
User Language programs provided with the BAE software).
4.8.5 Processing Gerber Data
General Parameters
The
,
,
,
,
,
,
and
functions from the
menu are used to set global parameters for loading and/or writing Gerber and/or drilling/milling data sets.
The input offset is added to the input coordinates when loading CAM data. Different input offsets can be specified to load the same layout at different positions, and, subsequently, the whole data can be written to Gerber and/or drill data output files to support panelization.
CAM View can hold Gerber data from different layers and drill data in main memory at the same time. I.e., only one input offset specification is required for each panel element. The
function from the
menu can be used to delete previously loaded CAM data from memory before loading new CAM data for panelization.
The
function from the
menu is used to specify the Gerber format for loading and/or writing Gerber data. The default option
selects 1/1000 inch integer units. Option
selects 1/10000 inch integer units. With option
the user is prompted for the length of one plotter unit, thus supporting arbitrary Gerber format specifications.
The
function from the
menu is used to select the mode of processing arc segments when loading Gerber data. With the
default option, arbitrary arc definitions can be loaded without modification. This is valid for the Gerber data generated by the BAE
CAM Processor and most of the known foreign systems. Some foreign systems can only generate arcs of up to 90 degrees where the length of the arc center point vector is also specified. In this case, the
option of the
function is only furnished for correct Gerber data processing.
The
function from the
menu is used for optionally mirroring the input data set(s) to be subsequently loaded. The mirror modes provided with the
function are
(default),
,
and
, respectively. Note that input data mirroring is always done before any input data offset specification applies.
The
function from the
menu is used to specify whether Gerber coordinate specifications are to be interpreted with trailing and/or leading zeros suppressed. On default, the
mode for expecting trailing zeros and suppressing leading zeros is used. The
mode for suppressing trailing zeros and expecting leading zeros is only valid with
Gerber Format 2.3 and
Gerber Format 2.4, i.e., any other Gerber format specification defaults to the
mode.
The
function can be used for optionally generating RS-274-X format Gerber output (Extended Gerber with Embedded Apertures). On input, RS-274-X Gerber format is automatically recognized by
CAM View.
The
function can be used for optionally generating optimized Gerber output with redundant D01 ("light off") plotter control commands eliminated, thus significantly reducing the amount of Gerber output plot data. On input, optimized Gerber data is automatically recognized by
CAM View.
The
function can be used to select the coordinate input mode for Gerber and/or Excellon data load operations. With the
option, input coordinates are assumed to be absolute, whilst with option
, input coordinates are assumed to be relative and/or incremental.
Aperture Tables
For correctly loading and displaying Gerber data the same aperture table is required as was used when generating the Gerber plot. Both the
CAM Processor and the
CAM View module provide functions for the definition and administration of Gerber aperture tables. Aperture tables are stored to the
cam.dat system file in the BAE programs directory. The aperture table named
standard is loaded automatically when starting
CAM View. The
function from the
menu can be used to load any other aperture table available in
cam.dat . The
function from the
menu can be used to change aperture definitions in the currently loaded aperture table. The
and
functions can also be used after loading Gerber data, which would cause a Gerber data display update according to changed aperture definitions. The
function from the
menu can be used to save the currently loaded aperture table with a selectable name to the
cam.dat system file.
Use the following commands to define a round line aperture with 0.3mm diameter and D-Code 10 at aperture table index 1:
Edit Aperture Table | |
Gerber Aperture Table Index (1..900,+,-) ? | 1 |
Aperture (R)ound/S(Q)uare/(T)hermal/(S)pecial/(A)rea/(-) ? | r |
Aperture Diameter/Side Length (0.127mm) ? | 0.3 |
Drawing Mode (A)ll/(F)lash/(L)ine ? | l |
Gerber D-Code Number (10-999) ? | 10 |
Gerber Aperture Table Index (1..900,+,-) ? | |
Loading Gerber Data
The
function from the
menu is used to load Gerber photoplot data files. The user is prompted for the Gerber plot file name after specifying layers for line drawn structures and flashed structures, respectively. The line draw and flash layer assignment is required by the features for decoding Gerber data to BAE layout data (see below). Gerber input layer assignments can also be utilized for panelization where Gerber data from different layers must be written to separate data files.
Layer assignments can also be used for comparing different Gerber file versions of the same layout. When loading different Gerber files versions to different layers, then the common structures are displayed with mixed colors resulting from the colors assigned to the input layers (if the
option is selected with the
function from the
menu).
Use the following commands to select Gerber format 2.4, and load the Gerber plot file
demo_l2.ger which has been generated in
chapter 4.7.11 (select layer 2 for both the line drawn and the flashed structures):
Settings | |
Gerber Format | |
Gerber 2.4 Format | |
File | |
Load Gerber Data | |
Layer 2 | |
Layer 2 | |
Plot File Name ? | demo_l2.ger |
Use the following commands to repeat the Gerber load from above with an input offset of 3.2 inch in X direction:
Settings | |
Input Offset | |
X-Offset (0.000 mm) ? | 3.2" |
Y-Offset (0.000 mm) ? | 0 |
File | |
Load Gerber Data | |
Layer 2 | |
Layer 2 | |
Plot File Name ? | demo_l2.ger |
View, Display
The
menu provides functions for changing general display options such as zoom window, zoom scale, display grid, color settings, etc.
The
function is used to select the mode for displaying Gerber data. The
default option displays structures as pure areas. Option
also displays aperture outlines, thus providing most information about how areas have been filled.
The
function is used to select the mode of color assignment. With default option
colors can be assigned to D-Codes and aperture drawing modes. With option
colors can be assigned to layers.
The
function operates according to the current
. With
, the
function provides a layer selection menu. With
, the
function prompts for a D-Code number and a drawing mode, where
f (Flash) selects flashed structures,
l (Line) selects line drawn structures and
b (Border) selects drawing area outlines. The default D-Code color setup is light gray for flashed structures, gray for line drawn structures and red for border lines.
Use the following commands to select the yellow color for the line drawn structures which have been generated using D-Code 10:
View | |
Color Assignment | |
D-Code Assignment | |
Change Colors | |
Gerber D-Code Number (10-999) ? | 10 |
Mode (f)lash/(l)ine/(b)order ? | l |
Move to Desired Color,yellow | |
Black color assignments can be used to suppress the display of selected elements.
Report
The
function from the
menu provides a statistical report on what apertures and/or D-Codes are how often used for what kind of structures.
Use the following commands to activate the
function:
Utilities | |
Report | |
After activating the command above the following listing should appear in the graphic workarea:
D10 0.30 mm Rnd. :
Lines : 58
D11 0.25 mm Rnd. :
Lines : 454
D16 1.52 mm Rnd. :
Flashed : 64
D18 2.54 mm Rnd. :
Flashed : 16
Lines : 4
D29 1.40 mm Sqr. :
Flashed : 20 ...
Structures reported with a
Lines of length zero mode are unexposed Gerber coordinates.
Moving Gerber Data
The
function from the
menu can be used for moving previously loaded Gerber data sets. The data to be moved can be selected from a popup menu where available data sets are listed according to the load sequence. Each data set entry of the popup menu displays the layer(s), the offset to origin, the mirror mode and the input data file name. After selecting the desired data set, the user must specify the movement vector by selecting the start and end point of the movement. During these selections, the input grid corresponds with the current display grid settings. Pressing the right mouse button during data set movement activates a context menu with functions for performing absolute and/or relative jumps.
Writing Gerber Data
The
function from the
menu is used to write currently loaded Gerber data of a selectable layer to a named file.
Use the following commands to select Gerber format 2.3, and write the Gerber data currently loaded to layer 2 to a Gerber file named
demo_l2.g25 :
Settings | |
Gerber Format | |
Gerber 2.3 Format | |
File | |
Save Gerber Data | |
Layer 2 | |
Plot File Name ? | demo_l2.g25 |
The
function from the
menu is used to delete the currently loaded data from memory and to re-initialize the display to prepare for loading other data. Use the following commands to clear the memory:
File | |
Clear Memory | |
4.8.6 Processing Drilling and Milling Data
Loading Drilling/Milling Data
The
function from the
menu is used to load drilling and/or milling data. The
function for loading a drill tool table must be applied before loading Sieb&Meier drill data; otherwise the
function issues a
No tool table loaded! error. Take care that the tool table corresponds with the drill data to ensure complete and correct drill data management. Note that the
function deletes previously loaded drill data from memory.
The
function allows for the selection of either Sieb&Meier or Excellon format. Both input units and processing of trailing and/or leading spaces are automatically derived from the input data file. The current Gerber input parameter and/or format specifications are automatically used for input data not providing corresponding format commands. Excellon input Inch unit specifications are processed using the currently selected Gerber format
(Gerber Format 2.3,
Gerber Format 2.4, etc.).
The function for loading Excellon data features automatic milling data recognition, i.e., Excellon milling data is automatically recognized and/or processed. With Excellon output function the output data type (i.e., either drilling data or milling data) must be specified since each drill class can contain both milling and drilling data.
The drilling and/or milling data sets are loaded and saved with drill class specification, respectively. It is possible to load drilling and/or milling data sets with different drill classes and to generate drilling and/or milling data output with selectable drill classes. With milling data the drill class can be used to differ between plated and non-plated. Drill holes and milling puncture points not assigned to the standard
(- ) drill class are indicated with the corresponding drill class letter
(A ,
B , ...,
Z ).
The
function automatically activates the color table entry for the drilling data display. This color table entry is set to white if it is still undefined (i.e., black and/or invisible). This ensures that drilling data load operations can be visually monitored.
Use the following commands to load the Sieb&Meier drill data file
demo.drl to drill class
- using the corresponding drill tool table
demo.tol (see also
chapter 4.7.12, where these files have been generated):
File | |
Load Tool Table | |
Tool Table File Name ? | demo.tol |
Load Drill Data | |
Drill Data File Name ? | demo.drl |
New drill class (-,A..Z) (-) ? | - |
Sieb & Meier | |
View, Display
Currently loaded drilling and/or milling data can be displayed using the layer color assignment with a non-black color (e.g., white) selected for the drill holes, as in:
View | |
Color Assignment | |
Layer Assignment | |
Change Colors | |
Drill Holes | |
Move to Desired Color,white | |
Exit | |
Moving Drilling/Milling Data
The
function from the
menu can be used for moving previously loaded drilling and/or milling data sets. The data to be moved can be selected from a popup menu where available data sets are listed according to the load sequence. Each data set entry of the popup menu displays the layer(s), the offset to origin, the mirror mode and the input data file name. After selecting the desired data set the user must specify the movement vector by selecting the start and end point of the movement. During these selections, the input grid corresponds with the current display grid settings. Pressing the right mouse button during data set movement activates a context menu with functions for performing absolute and/or relative jumps.
Writing Drilling/Milling Data
The
function from the
menu is used to write currently loaded drilling and/or milling data to a named file.
Use the following commands to write the currently loaded drilling data in Excellon format with drill class
- to output file
demo.exc :
File | |
Save Drill Data | |
Drill Data File Name ? | demo.exc |
New drill class (-,A..Z) (-) ? | - |
Excellon | |
Drill Data | |
Sorting Drill Data
The
function from the
menu is used to activate an algorithm for sorting the currently loaded drill data to minimize the distances between subsequent drill holes. Note that
performs separate sorting on each of the currently loaded drilling data sets. Overall sort on multiple drill data sets can be applied by loading all data sets, save them as single data set, clear the memory, reload the single data set and run the
function on the reloaded data set. Note also that the complexity of the drill sort algorithm grows quadratically with the number of drillings per tool, thus raising CPU time requirements enormously when working on large layouts and/or panels (>1000 drill holes).
Use the following commands to sort the currently loaded drill data, and write the sorted drill data to a file named
demosort.drl :
Utilities | |
Sort Drill Data | |
File | |
Save Drill Data | |
Drill Data File Name ? | demosort.drl |
4.8.7 Retrieving Layouts from Gerber Data
Loading Gerber Data
All of the required Gerber data must be loaded to the
CAM View module before generating a layout from that Gerber data. When loading Gerber data for layout generation, the line drawn structures should be loaded to their respective layers whilst the flashed structures can be loaded to either signal layers or documentary layers. In most cases it is advisable to load the flashed structures onto documentary layers since flashed structures usually represent pads which, when placed on signal layers, would create redundant copper at the layout pin positions once the corresponding parts are loaded. Pad info retrieved from the flashed structures should rather serve as an aid for placing the parts on the layout. It is a good idea to select a special documentary layer such as
for loading flashed structures. Certain documentary Gerber plots such as the
can also be loaded to the corresponding BAE documentary layer to support subsequent part placement procedures.
Creating a Layout
After loading all Gerber data to
CAM View, the
function from the
menu can be used to generate a layout from that Gerber data. With the
function first a via D-Code must be specified. Use the
function and/or appropriate D-Code color assignments to find out which D-Code is used for vias. Flashed structures generated with the specified via D-Code are translated to via definitions. Automatic via translation is only carried out for the first Gerber data input file to avoid multiple via placement at the same coordinates. The
function automatically generates a via padstack using an all layer pad with the size of the selected via aperture and a drill hole with half that aperture size.
After specifying the via D-Code, the
function prompts for the file and element name where the layout should be written to. Note that
overwrites previously existing layout elements (nevertheless, you can use the
Layout Editor group functions to mix different layouts retrieved from Gerber data).
Further Layout Processing
The sequence of the following operations is crucial for the creation of valid layout data.
After successfully running the
function from the
CAM View
menu, you should return to the BAE main menu (use function
from the
menu) and start the
Layout Editor. Within the
Layout Editor you should load the layout and place all of the required parts (use the
function from the
menu). Note that
User Language programs can be used for automatic placement instead of interactive placement if placement data ASCII files are available with appropriate formats. After completing the placement the layout should be saved, and then the
function from the
menu should be used to generate a net list with the same file and element names as were specified when creating the layout.
generates a net list from the copper placed on the currently loaded layout. However,
works only on DDB file level, i.e., it won't change the currently loaded net list. You should re-load the layout immediately after running
(refrain from activating any function which could store the still empty net list currently held in main memory). A connectivity generation is automatically carried out after re-loading the layout, and then the layout is ready for processing by the
Bartels AutoEngineer.
CAM View © 1985-2024 Oliver Bartels F+E • Updated: 11 October 2010, 10:32 [UTC]
|