Posts tagged with 'Components'

BOM

To import the BOM, you can use the CSV Component Import.

This works for all excel or CSV files with References and X/Y positions. If you have only BOM Information you have to use the Part Matcher

 

To view the BOM, use the Component Manager (see Working With Components or here).

 

To export and print the BOM, use the "Export" tab.

If you want to transfer the components to an other design, you can use the Component List Export and on the other side the CSV Import (see above). But this is only working if you store your package/part definition in an library.

Introduction

The plugin Component Analysis can be found under the grid "Analysis" respectively "Assembly".

Here you will find two tab pages available for performing the Component Analysis: "Component Distance Analysis" and "Component Placement Analysis". These single analysis functions are described below.

Component Distance Analysis

The "Component Distance Analysis" option allows you to check the distance between components and between components and the board outline. This analysis is important to ensure e.g. the manufacturability during the placement and soldering process.

In the first block (1) you can define the different check values:

  • "Outline to Outline": Min. needed distance between component bodies
  • "Pad to Outline": Min. needed distance between the copper pads of one component to the body of the neighbour components
  • "Pad to Pad": Min. needed distance between the copper pads of one component to the copper pads of the neighbour components
  • "Outline to Board Outline": Min. needed distance between component bodies and the board outline

Here you also have the possibility, to ignore unplaced components (by ignoring components with a ".comp_ignore' attribute).

In the second block (2), you can define "Special Distances acc. Property". That means, you can define the same set of rules as in (1) but with different values for sub groups of components.  The Filter is matching a literal string, but wildcards like " * " can be used to make more broad filter settings e.g. 0602*. The sub groups are build by a given component property. Examples are:

  • if your design has a property with package groups per component, you can set different check values for e.g. SOTs or ICs
  • if your design has a property with detailed component descriptions, you can set different check values for e.g. ceramic capacitors or mosfets

The results of the analysis are displayed in the window on the bottom (3). You can also view the analysis results directly in the tool. Critical errors can also be marked for later use (e.g. in the 'Extended Design Report').

With the buttons on the top right side of the window you can export the previously defined settings so that you can reuse them for later analyses. Already saved settings can be imported via the "Import Settings" button. 

The last result can be saved and reloaded with the buttons on the lower left side (4). This stored result is also used in the 'Extended Design Report'.

Clicking on the question mark on the top right of the window opens the corresponding page of our online manual.


Following picture shows an example error of this analysis:

The copper pad of the X1-1 is too close the the component body of C36.

Component Placement Analysis

The "Component Placement Analysis" option allows you to check, if the MPN Package of a component fits the CAD Package.
A MPN Package (MPN = Material Part Number) is the real component outline of a part. This outline is often much smaller than the corresponding CAD package body. The MPN Package can also contain the contact surface of the pin. In this analysis, this contact surface of the pins is analyzed. You can define, where the contact surface has to be situated inside the copper pad.

A standard design has no MPN Package definitions included. EasyLogix offers the 'EasyLogix Part Library' (EPL) to add detailed part information like datasheets, MPN packages, 3D step files, ... to your design.

In the first block (1), you can define the different check values:

  • "Outer Distance": The minimum distance of the pins contact surface to the outer edge of the copper pad in % of the pad's width
  • "Inner Distance": The minimum distance of the pins contact surface to the inner edge of the copper pad in % of the pad's width
  • "Side Distance": The minimum distance of the pins contact surface to the side edges of the copper pad in % of the pad's height
  • "Center Distance": The minimum distance of the pins contact surface to all edges of the copper pad in % of the pad's min. size - only for pins that are located under its component body

In the second block (2), you can define filters to ignore unplaced components (by ignoring components with a ".comp_ignore' attribute) and components without MPN package definitions.

In the third block (3), you can define "Special Distances acc. Property". That means, you can define the same set of rules as in (1) but with different values for sub groups of components. The Filter is matching a literal string, but wildcards like " * " can be used to make more broad filter settings e.g. 0602*. The sub groups are build by a given component property. Examples are:

  • if your design has a property with package groups per component, you can set different check values for e.g. SOTs or ICs
  • if your design has a property with detailed component descriptions, you can set different check values for e.g. ceramic capacitors or mosfets

The results of the analysis are displayed in the window on the bottom (4). You can also view the analysis results directly in the tool. Critical errors can also be marked for later use (e.g. in the 'Extended Design Report').

With the buttons on the top right side of the window you can export the previously defined settings so that you can reuse them for later analyses. Already saved settings can be imported via the "Import Settings" button. 

The last result can be saved and reloaded with the buttons on the lower left side (5). This stored result is also used in the 'Extended Design Report'.

Clicking on the question mark on the top right of the window opens the corresponding page of our online manual.


Following picture shows an example error of this analysis:

The contact surface of the pin 2 of the MPN Package for D30 is not matching the "inner distance" rule. That means in this case, the pin's contact surface is partly outside the copper pad. A reason could be, that the choosen part (MPN) does not fit to the CAD data. Soldering issues and failures are likely.

OIB Server Manager

When you open the "SIPLACE OIB Connector" (in the 'Machine Export' menu) the first time, you have to first enter your OIB server settings by clicking on the gear button (1)


Following dialog will open:

In this server manager, you can organize multiple OIB servers. To create a new one, please press on the little green "+" button and enter a name.
Afterwards you'll have to specify the OIB server adress by entering an IP/Hostname + Port, or directly enter the 'net.tcp://...' adress (1).

When this is done, you'll have to specify two server directories by clicking on the small browse button (2):

  • "Component Main Path": This is the OIB directory, where your part library is located. Parts in this directory are only read, but never written or changed.
  • "Component User Path": This is the OIB directory, where parts, that do not exist in the main path yet, are created by PCB-Investigator. The user has to complete the information of those parts in the SIPLACE Software and can then move them to the main path later.

Click "Save" and close the dialog to preceeed.

Placement List Creator

To start, please select a server and click "Connect" (1).

With the "Placement List Creator" tab, you can create placement list elements for each component side on the OIB server.


To start, you have to do a few settings in block (2):

  • 'Current Step': Select the board step, for which placement lists should be created
  • 'Group Components by': Choose whether to use the internal 'Part Number' or any other Property in your CAD data to get the list of part numbers. These part numbers are the 'key' to search for parts on the OIB server.
  • 'Component Type Filter': You can filter components by the '.comp_mount_type' attribute, e.g. to get only SMT components

Always when you change settings in (2), you will have to 'Refresh' the list and 'Match Parts via OIB' again (3).

When the matching process is done, you will see all your filtered parts in the list (4), including an overlay of the matching OIB part definition on the selected server. Found OIB parts are centered on the CAD package center. Details of the found OIB part and the fitting state are listed on the bottom side (5).
The 'Status' column indicates, whether a OIB part was found or not, and if the found part fits onto the CAD package. The condition for fitting is, that the pin definition of the OIB part must at least partly overlap the CAD package pin.

If the found part does not fit, you have the possibility to shift its position or to rotate it until it fits (6). With the two buttons in this block on the right, you can open the property dialog of the CAD component or zoom to it.

If the OIB part has a polarity definition, this polarity marker is visualized in red. The fitting alorithm then also uses the polarity information, to recognize if the component is correctly rotated (CAD polarity pin is same as OIB polarity pin).

Example of the fitting process (6) (by rotating 90° clockwise):

=>

 

When clicking the 'Create Placement List via OIB' button (7), you are asked to select a folder on the OIB server and enter the name for the placement list(s) for top and/or bottom side. Afterwards, the placement lists are created via OIB. Missing parts, that where not found during the matching process, are automatically created in the 'Component User Path' (see 'OIB Server Manager'). Those created parts are dummy parts without any real outlines or pin definitions. Their information must be completed by the user in the SIPLACE Software afterwards. Components that have the ".comp_ignore" attribute are marked as 'omitted' in the placement list.

Here is a screenshot of the result in the SIPLACE Software:

Board Creator

After having created the placement list of the single board(s), you can create the panel data with the "Board Creator" tab.


To start, you have to select the panel step that should be created (1). It is also possible to create panels in panels (recursive), when the most outer panel is selected.

For the given panel, the included single board(s) is/are listed unter (2). Here an already existing placement list on the OIB server must be selected per board and side. If the placement lists where created before in this session with the "Placement List Creator", the information is already prefilled. If not, you can click the small browse button and select the right placement list.

In the block (3), there are different options available:

  • "Export Board Outline": if checked, the complex board outline of the CAD data is exported. This may need some time. If not checked, the bounding box is used
  • "Export Fiducials": if you want to export objects with ".pad_usage=gfiducial/lfiducial", please check this box and select a fiducial type from the OIB server by clicking on the little browse button
  • "Export Inkspots": if you want to export objects with ".board_mark=bbm" (Bad Board Marker), please check this box and select a fiducial type from the OIB server by clicking on the little browse button
  • "Requires trace information": This field on the OIB server can be set or not here
  • "Requires PCB barcode verification": This field on the OIB server can be set or not here
  • "Default processing orientation": 0/90/180/270° for Top or Bot (sets the corresponding fields on the OIB server)

In the block (4), you can choose which CAD layers should be exported and imported in OIB for this board per side. It is mainly thought for paste/mask layers.

When clicking the 'Create Board via OIB' button (5), you are asked to select a folder on the OIB server and enter the name for the board entry. Afterwards, the board is created via OIB.

Here is a screenshot of the result in the SIPLACE Software:

 

 

SIPLACE QD Exporter

With the "SIPLACE QD Exporter" tool, you can create '.qd' files including placement lists and board information for ASM machines.


To start, you have to do a few settings in block (1):

  • 'Current Step': Select the board or panel step, that should be exported
  • 'Group Components by': Choose whether to use the internal 'Part Number' or any other Property in your CAD data to get the list of part numbers. These part numbers are the 'key' to search for parts in SIPLACE.
  • 'Component Type Filter': You can filter components by the '.comp_mount_type' attribute, e.g. to get only SMT components

Always when you change settings in (1), you will have to click at 'Refresh' to update the list. In the list (2), you will see all packages and the corresponding parts for each step or sub-step of your selected (panel) step.

It is then important so select list entry by list entry to check the rotation correction. If a entry is selected, you'll see the package drawing on the right side. You have to rotate this package to be displayed in exactly the same way, as it is defined on the ASM machine ('make it ASM conform'). You can confirm this by checking the "User Confirmed" checkbox in the list's last column. The rotation can be done by using the buttons in (3). Here, the rotation can also be reset and with the two buttons in this block on the right, you can open the property dialog of the CAD component or zoom to it.

In the block (4), you can choose which CAD layers should be exported as gerber files next to the '.qd' file. These gerbers can then be also imported in SIPLACE. The mirroring/translation of the bottom gerber is already done in the gerber itself, so that you do not need to transform the layers in SIPLACE.

In the block (5), there are different options available:

  • "Export Fiducials": if you want to export objects with ".pad_usage=gfiducial/lfiducial", please check this box and enter the fiducial path/name that is defined in SIPLACE.
  • "PCB Height": here you can enter the height of the PCB in the given unit.
  • "Project name": this name of your project, will be exported also to the '.qd' file
  • "Export Top Side": if checked, you'll get a '.qd' file for the top side of your PCB
  • "Export Bottom Side": if checked, you'll get a '.qd' file for the bottom side of your PCB

When clicking the 'Export QD File(s)' button (6), you are asked to select a folder where the files are exported to.

 

Here are some screenshots of the result in the SIPLACE Software:

 

 

Component Report

The Component Report in PCB-Investigator is a useful tool to get a summary of all components used in the PCB. This can be very helpful to make sure that all required components are present on the board and to make sure that they are placed and wired correctly.

 

component_report

     1. The path of the currently loaded job is displayed here

     2. The window is for customizing temporary field contents of the layout.
      All items of the layout type "Custom" are listed here. The changes are
      only temporary.

     3. With this button you can choose your printer

     4. With this button you can see the print preview

     5. At "Layout Options" you can set the options for creating the layout.
      More about this in the following paragraph.

     6. The Last Button is for printing your Component Report

 

 

 

 

Layout Options


1. Tablepartitioning sets which attributes/properties of the CMP should be listed and which attribute/property should be used for coloring (Component with same attribute value get same color)

2. Layer options gives you the possibility to display different layers during printing

3. Drawing Options can be used to change the color or thickness if you like

4. Layout of the side is used to create your own page layout and can be extended as you wish.

Pagetype: Image or Table
  • Image => Used for the pages where the image of the component is visible and for the preview page.
  • Table => Used for the pages where only the table is visible (only important if 0 was previously selected for Row per Page)
Layout Item: Predefined layout items.
  • Layername: Layer name
  • Date: Date
  • Page_Number: Numbering of the page (related image and table pages have the same number here)
  • Custom: Custom value, which will be displayed on the main dialog as well

Custom Value: Will only be filled if the item was set to Custom before. Values filled here will be saved in the layout.

Alignment: Used to determine where on the page this element should be placed. Same alignments lead to the fact that these are arranged afterwards under each other.
  • Top_Left
  • Top_Center 
  • Top_Right
  • Bottom_Left
  • Bottom_Center
  • Bottom_Right

5. Page Options gives you the options in which paper format to print. In addition, you can select how many lines of the table should be displayed on one page (0 means that the table will have its own page). Furthermore you can sort the table by attributes and choose between predefined page layouts like:

  • HeaderFooter - Simple layout with a header and a footer.
  • TopLeft - All important information is placed at the top left of the preview image
  • Custom - Completely own layout

all three layouttypes are shown in the print preview at the end of this page.

Page Arrangement is Important only for Rows per page = 0 (table on extra page)

  • Image then Table: First all images of the colored components are listed, then all tables
  • First the image with the colored components and directly afterwards the corresponding table.

It is possible to ignore components with different options to hide them or crossout them.

Analyse Interfaces

All Plugins have the following two Interfaces for direct calls from the outside.

///<summary
  /// Analysis interface for scripts and plugins.
 ///</summary

→ The Header from the first Interface.

public interface IPCBIAnalysis {
   ///<summary
  /// The name of this analysis to identify it with the settings.
  ///</summary
  string Name { get; }

///<summary
  /// The readable name of this analysis
  ///</summary
  string Title { get; }

///<summary
  /// The path to the results directory of this analysis relative to the job path
  ///</summary
  string ResultsFolderName { get; }

///<summary
  /// The preview icon for this analysis
  ///</summary
  Icon PreviewIcon { get; }

///<summary
  /// Set if the file preview should show if results are available
  ///</summary
 Set if the file preview should show if results are available

///<summary
  /// Create a instance of rules to define the default standard rules.
 ///</summary
 PCBI.Automation.Rules.RulesContainer GetStandardRules();
 // void AddToUpdateProgress(PCB_Investigator.PCBIWindows.PCBIWorkingDialog working, int minValue, int maxValue);
 // bool Execute(string ResultFilePath);

 
For more comfort there is the IPluginAnalysis, which provides even more functions:

public interface IPluginAnalysis: IPlugin, IPCBIAnalysis{

 ///<summary
   /// 
  ///</summary
  ///
void AddToUpdateProgress(PCB_Investigator.PCBIWindows.PCBIWorkingDialog working, int minValue, int maxValue);


bool Execute(IAnalysisParams analysisParams);
bool Execute(string resultFilePath); }

The script is allowed to increment

values between minValue and maxValue.

Print Preview

Custom Layout

Custom Layout

 

HeaderFooter Layout

HeaderFooter Layout

 

 

 

 

 

 

 

Crossout of Ignore Components

Example Report for crossout of ignore components

TopLeft Layout

HeaderFooter Layout

Configure View

You can configure the view that you see on the right (2) by selecting the wanted attributes and properties on the left side (1)

The Left Side is called the Property List while the right side is called the Component List

The properties selected on the left side will then show up on the right side. The order of the columns is determined by the order in which you have selected the properties in the listview on the right. If you want to change the order you can also drag and drop the different columns to the position you want. Important to note is that columns like id, reference and the SumUp Column will be moved back to the front after you reopen the Component Manager. Sum Up will add the different rows together and aggregate the rows based on the selected values.

The different icons inside of the Property List define what kind of attribute it is, while the dot besides the component in the Component List shows the change status of the component. The legend for the different icons is as follows.

 

Predefined Views

You can select multiple different settings to adjust the view quickly. 

 

From left to right they to the following.

  • Display components on both sides of the PCB-Designs.
  • Display only the components that are on the Top layer of the design
  • Display only the components that are on the Bot layer of the design
  • Display the BOM (displays the same columns that our BOM Export uses)
  • Display the Component Report (displays the same columns that our component report displays)
  • Display the Pick and Place of the Design (displays the same columns that our pick and place export displays)
  • Activate the relevant Attrribute. For example if you deactviate the "C" you will no longer see any standard component values like "Part Name","Package" or "Height" inside of the Property List.

By right clicking the component list you can export the current view to and Excel or HTML file.

Change Properties

Items selected inside of the Component List can be edited inside of the property grid on the right side.



Any changes to the component will lead to the green dot turning orange. You can save the changes by either clicking the button above the property grid and saving or pressing the save option in "File" in the top row. Until then there are no changes that are actually saved and applied to the real components. If you select multiple components at the same time, or use the Sum Up which leads to a row representing more than one component, the property grid will show you only the values that are the same between all components. Any changes inside of the property grid will then edit all objects at the same time. Properties shown are not necessarly present in all components selected. If one component has the property then the property will be shown. If a value is then edited, the components that do not have the property will be given the property.

Component Statistics

There are multiple statistics about the design that can be easily viewed in the lower right hand corner. 

In total there are 6 different statistics that can easily be accessed inside of the different tabs. 

The first tab shows the amount of top and bottom components that populate the board as well as the amount of pins on the board. Furthermore you can see the statistics also divided depending on the mounting type of the component.


The next tab shows the different packages that are used and how often they are used. Starting from this statistic you can choose between a bar chart or a pie chart with the radio buttons below the chart.

 

The next tab does the exact same just sorted by the Part Name instead of the Package. 

The height tab looks at the different Heihgts that are present in the design and displays them.

The tab called "Has Value" inspects how many components have a certain property. You are able to select the different properties and find out if for example all components have a "MPN" property.

The Sum up Tab does the exact same as the sum up function inside of the Property List, but in the form of a bar or pie chart.

 

BOM Expert

Connect Library information with your AVL File, with individual importer it can read csv, excel and other files.

Check all components with vidual fitting helper and maybe transform wrong locations or rotations with the simple user interface:

Depending on the MPN and Manufacturer the BOM Expert search for library information and connect them with the open design, this can include properties and step files. You can automatically set no_pop/comp_ignore attributes and use custom actions with an post script to do special actions depending on the imported data.

 

BOM Expert Settings

The Settings containing a list of importers, Searchend Properties and settings to handle not found components. It also has options to add missing entries in an intermediate library and an post script (found by GUID in your favorites).

 

Status Message

Unknown => It is not possible to give more details
ReferenceNotInDesign => The reference in imported data is not available in the design
ReferenceNotInAVL => The component in the design has no entry in imported file
NoPartAvailable => The part list do not contain results in the selected library
NoPartSelected => No part selected mean the user has to select one
NotFoundInLib => The library do not contain a fitting item
SelectedPartDoesNotMatch => There is a maybe wrong part selected, please check the selected part
OK => Part is OK
OKUnverified => The pin matiching is not checked but the part is marked as OK