element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Autodesk EAGLE
  • Products
  • More
Autodesk EAGLE
EAGLE User Support (English) Exporting pad data for Phoenix X-ray machine
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Autodesk EAGLE to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 3 replies
  • Subscribers 188 subscribers
  • Views 1164 views
  • Users 0 members are here
Related

Exporting pad data for Phoenix X-ray machine

autodeskguest
autodeskguest over 12 years ago

Hi all, we have Phoenix Micromex 180 x-ray machine for PCB inspection at

my workplace. Its software can greatly automate creation of new

inspection programs for boards, but as an input, it requires data with

component and pad coordinates. Two separate files are needed: 1. one

which lists all components, their names, package type and coordinates.

2. one which lists pad shapes and coordinates (relative to package's

origin mark) for all package types used on a board. Here are shortened

examples of needed file contents:

 

Component file:

  1. Board dimensions: X size, Y size, layer height

DIMENSIONS: 130 90 1.6

  1. RefDes    PackageID    X-shift    Y-shift    ROT    PinCount   

Side    MountType

C7               27    30    50    0    2    TOP       THROUGH  

R7               26    121    51    0    2    TOP       THROUGH  

V18             19    23    40    0    3    TOP       SMD      

C58             14    99    7    90    2    TOP       SMD      

V30             16    6    63    0    2    TOP       SMD      

V15             19    23    20    0    3    TOP       SMD      

C8               27    30    45    0    2    TOP       THROUGH  

C43             13    104    77    0    2    TOP       SMD      

 

Pad coordinates file:

PackageID    label    X-shift    Y-shift    Rotation    Width   

Height    Shape

6    1    -0.65    0    0    0.9    0.7    RECTANGLE

6    2    0.65    0    0    0.9    0.7    RECTANGLE

15    A    -1.7    0    90    1.8    1.4    OBLONG

15    K    1.7    0    90    1.8    1.4    OBLONG

22    A1    -12.06    12.06    0    0.6    0    ROUND

22    A10    -0.63    12.06    0    0.6    0    ROUND

22    A11    0.63    12.06    0    0.6    0    ROUND

22    A12    1.9    12.06    0    0.6    0    ROUND

22    A13    3.17    12.06    0    0.6    0    ROUND

27    1    -1.25    0    0    1.3    0    ROUND

27    2    1.25    0    0    1.3    0    ROUND

 

Obviously, the most "clean" solution would be to write my own ULP to

generate the files. But that would be very time-consuming, so I want to

try some alternative solutions before I do that. I figured the component

file could be easily obtained by editing the standard Eagle partlist,

for example by a relatively simple MS Excel macro. But I found no way

how to obtain the pad data, or at least not in the format needed. I know

there is export-ict-netlist-pad-coordinates.ulp, but this one exports

the pad coordinates relative to the entire board, not relative to

package's origin mark. And the information about pad shape is missing

completely in it.

 

So my question is: *is there some existing ULP which can produce such

pad data*?

 

Just in case you were interested, here is some info about our x-ray

machine:

http://www.ge-mcs.com/en/radiography-x-ray/micro-and-nanofocus/micromex-dxr-hd.html

 

--

To view any images and attachments in this post, visit:

http://www.element14.com/community/message/93087#93087

 

  • Sign in to reply
  • Cancel
Parents
  • autodeskguest
    autodeskguest over 12 years ago

    On 30/10/2013 4:50 a.m., Caleb Dead wrote:

    Hi all, we have Phoenix Micromex 180 x-ray machine for PCB inspection at

    my workplace. Its software can greatly automate creation of new

    inspection programs for boards, but as an input, it requires data with

    component and pad coordinates. Two separate files are needed: 1. one

    which lists all components, their names, package type and coordinates.

    2. one which lists pad shapes and coordinates (relative to package's

    origin mark) for all package types used on a board. Here are shortened

    examples of needed file contents:

     

    Component file:

    1. Board dimensions: X size, Y size, layer height

    DIMENSIONS: 130 90 1.6

    1. RefDes    PackageID    X-shift    Y-shift    ROT    PinCount

    Side    MountType

    C7               27    30    50    0    2    TOP       THROUGH

    R7               26    121    51    0    2    TOP       THROUGH

    V18             19    23    40    0    3    TOP       SMD

    C58             14    99    7    90    2    TOP       SMD

    V30             16    6    63    0    2    TOP       SMD

    V15             19    23    20    0    3    TOP       SMD

    C8               27    30    45    0    2    TOP       THROUGH

    C43             13    104    77    0    2    TOP       SMD

     

    Pad coordinates file:

    PackageID    label    X-shift    Y-shift    Rotation    Width

    Height    Shape

    6    1    -0.65    0    0    0.9    0.7    RECTANGLE

    6    2    0.65    0    0    0.9    0.7    RECTANGLE

    15    A    -1.7    0    90    1.8    1.4    OBLONG

    15    K    1.7    0    90    1.8    1.4    OBLONG

    22    A1    -12.06    12.06    0    0.6    0    ROUND

    22    A10    -0.63    12.06    0    0.6    0    ROUND

    22    A11    0.63    12.06    0    0.6    0    ROUND

    22    A12    1.9    12.06    0    0.6    0    ROUND

    22    A13    3.17    12.06    0    0.6    0    ROUND

    27    1    -1.25    0    0    1.3    0    ROUND

    27    2    1.25    0    0    1.3    0    ROUND

     

    Obviously, the most "clean" solution would be to write my own ULP to

    generate the files. But that would be very time-consuming, so I want to

    try some alternative solutions before I do that. I figured the component

    file could be easily obtained by editing the standard Eagle partlist,

    for example by a relatively simple MS Excel macro. But I found no way

    how to obtain the pad data, or at least not in the format needed. I know

    there is export-ict-netlist-pad-coordinates.ulp, but this one exports

    the pad coordinates relative to the entire board, not relative to

    package's origin mark. And the information about pad shape is missing

    completely in it.

     

    So my question is: *is there some existing ULP which can produce such

     

    Hi Caleb

     

    This is outwardly an easy ULP but challanges arise when producing files

    with the classifications used in your examples.

     

    Do you have the file specifications you can post here?

    Can you post real data files?

     

    Some of the questions that need answering, for clarification, are:

    What is the difference between rectangle and oblong?

    Is the measurement always millimeter or can that change?

    Is the width of the ROUND pad its diameter?

    If a device has both SMD pads and through hole mounting should it be a

    MountType SMD or THROUGH?

    Does Phoenix expect PackageID to be numeric?

    Is the file Tab delimited or comma delimited or something else?

    How does Phoenix handle odd shaped pads when the pin does not align with

    a SMD pad that seeds the odd shape? It contacts the associated polygon

    or wire. Does it even matter?

    Are the dimensions a rectangle( with thickness) the board fits into no

    matter what the board shape?

    Are the 'Side' options TOP and BOTTOM?

     

    In Eagle an SMD pad is a rectangle with  a portion of rounding. 100%

    rounding makes a square pad round. So each pad needs evaluating to

    determine which Phoenix classification it resides in. Eagle has

    elongation for Pads.  Elongation is only valid for shapes

    PAD_SHAPE_LONG and PAD_SHAPE_OFFSET and defines how many percent the

    long side of such a pad is longer than its small side.

     

    So the ULP needs to produce a file in Phoenix speak.

     

    I was able to create the data for the component file today but the Pad

    coordinates file needs the above questions answered to progress to that

     

    Warren

     

     

     

     

     

     

     

     

     

     

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • autodeskguest
    autodeskguest over 12 years ago

    On 30/10/2013 4:50 a.m., Caleb Dead wrote:

    Hi all, we have Phoenix Micromex 180 x-ray machine for PCB inspection at

    my workplace. Its software can greatly automate creation of new

    inspection programs for boards, but as an input, it requires data with

    component and pad coordinates. Two separate files are needed: 1. one

    which lists all components, their names, package type and coordinates.

    2. one which lists pad shapes and coordinates (relative to package's

    origin mark) for all package types used on a board. Here are shortened

    examples of needed file contents:

     

    Component file:

    1. Board dimensions: X size, Y size, layer height

    DIMENSIONS: 130 90 1.6

    1. RefDes    PackageID    X-shift    Y-shift    ROT    PinCount

    Side    MountType

    C7               27    30    50    0    2    TOP       THROUGH

    R7               26    121    51    0    2    TOP       THROUGH

    V18             19    23    40    0    3    TOP       SMD

    C58             14    99    7    90    2    TOP       SMD

    V30             16    6    63    0    2    TOP       SMD

    V15             19    23    20    0    3    TOP       SMD

    C8               27    30    45    0    2    TOP       THROUGH

    C43             13    104    77    0    2    TOP       SMD

     

    Pad coordinates file:

    PackageID    label    X-shift    Y-shift    Rotation    Width

    Height    Shape

    6    1    -0.65    0    0    0.9    0.7    RECTANGLE

    6    2    0.65    0    0    0.9    0.7    RECTANGLE

    15    A    -1.7    0    90    1.8    1.4    OBLONG

    15    K    1.7    0    90    1.8    1.4    OBLONG

    22    A1    -12.06    12.06    0    0.6    0    ROUND

    22    A10    -0.63    12.06    0    0.6    0    ROUND

    22    A11    0.63    12.06    0    0.6    0    ROUND

    22    A12    1.9    12.06    0    0.6    0    ROUND

    22    A13    3.17    12.06    0    0.6    0    ROUND

    27    1    -1.25    0    0    1.3    0    ROUND

    27    2    1.25    0    0    1.3    0    ROUND

     

    Obviously, the most "clean" solution would be to write my own ULP to

    generate the files. But that would be very time-consuming, so I want to

    try some alternative solutions before I do that. I figured the component

    file could be easily obtained by editing the standard Eagle partlist,

    for example by a relatively simple MS Excel macro. But I found no way

    how to obtain the pad data, or at least not in the format needed. I know

    there is export-ict-netlist-pad-coordinates.ulp, but this one exports

    the pad coordinates relative to the entire board, not relative to

    package's origin mark. And the information about pad shape is missing

    completely in it.

     

    So my question is: *is there some existing ULP which can produce such

     

    Hi Caleb

     

    This is outwardly an easy ULP but challanges arise when producing files

    with the classifications used in your examples.

     

    Do you have the file specifications you can post here?

    Can you post real data files?

     

    Some of the questions that need answering, for clarification, are:

    What is the difference between rectangle and oblong?

    Is the measurement always millimeter or can that change?

    Is the width of the ROUND pad its diameter?

    If a device has both SMD pads and through hole mounting should it be a

    MountType SMD or THROUGH?

    Does Phoenix expect PackageID to be numeric?

    Is the file Tab delimited or comma delimited or something else?

    How does Phoenix handle odd shaped pads when the pin does not align with

    a SMD pad that seeds the odd shape? It contacts the associated polygon

    or wire. Does it even matter?

    Are the dimensions a rectangle( with thickness) the board fits into no

    matter what the board shape?

    Are the 'Side' options TOP and BOTTOM?

     

    In Eagle an SMD pad is a rectangle with  a portion of rounding. 100%

    rounding makes a square pad round. So each pad needs evaluating to

    determine which Phoenix classification it resides in. Eagle has

    elongation for Pads.  Elongation is only valid for shapes

    PAD_SHAPE_LONG and PAD_SHAPE_OFFSET and defines how many percent the

    long side of such a pad is longer than its small side.

     

    So the ULP needs to produce a file in Phoenix speak.

     

    I was able to create the data for the component file today but the Pad

    coordinates file needs the above questions answered to progress to that

     

    Warren

     

     

     

     

     

     

     

     

     

     

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
No Data
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube