How do I export/generate an pick & place file for my board in CadSoft Eagle?
Is there a standard (like gerber) for pick & place machine files?
There is no standard. You want your file to be in a certain format which can be read by a particular pick-n-place machine. Machines all want to know the position where to place the center of the part (the centroid); however, the format of the pick position and part rotation (some heads rotate 0-360 degrees, others -180 - +180, and yet others can only rotate 90 deg and if you want to place a certain part at any degree you'd have to have two pick positions and your script must know how to pick from the correct one) are machine-specific and you need to know this to generate proper job file. Another factor is simultaneous pick if your machine has more than one head.
To give you a better idea of what's involved I suggest checking TM220 resource page at Dangerous prototypes. This machine is popular among makers, consequently the ULP script has been created and made available to produce job files for it from Eagle. You can run this script to see what it looks like; also, the source code can be used as a base to write scripts for other machines.
You can run
You can access it on the layout view, File > run ULP
it will generate
.mnt (mount top) and
.mnb (mount bottom). It is a text file that stores coordinates of origin of a component
the file name of ULP in Eagle is "centroid-screamingcircuits-smd" IF you don't have the file maybe you can download i here
As mentioned by Oleg there are many possible formats. So ask your manufacturer for the format they want and try editing a copy of
mountsmd.ulp (thats the name in Eagle 6) to make it in that format. Since Eagle's ULP format is similar to C it shouldn't be hard.
You can try the ULP that comes with VisualPlace.
Which is worth having as a tool anyways for prototype runs.