Open Source PnP Project Can Place and Solder with a $450 BOM Cost
Stephen Hawes' Index machine features support for up to 32 feeders.
Pick and place machines make the work of mounting components onto circuit boards much less arduous, but unless you’re doing it professionally, these tools have long been outside any home shop budget. However, a new project being developed by Stephen Hawes is no more than the cost of many home shop projects at a $450 BOM. It’s not just investing in a shop tool. It’s building an open source pick and place machine yourself.
Hawes' design consists of two major parts: an X/Y/Z machine tool and the feeders that reel out components to be placed. The full BOM for what he's calling the Index is available online, and all of the work and testing has been documented in a video series that began in January 2020.
The latest update showcased in his videos is proof of concept for automatic soldering. Until this point, the pick and place has been able to put down solder paste and place the components on the board but was missing the ability to reflow the paste and actually solder the components. In order to keep all necessary processes self-contained, a heat gun is mounted onto the head of the pick and place. This will allow the single head of the X/Y/Z tool to complete all three steps in one self-contained system. Since this addition required a complete reconfiguration of the head, it also provided an opportunity to alter the design to include a camera, which is critical to the accurate placement of components. This will be the first time a vision system has been implemented, although the Index is being driven by OpenPnP, which already has vision support.
Implementation of the heat gun involved a lot of trial and error and is not yet finalized — right now, it requires it’s own power supply and control, but ideally, it will be possible to control everything off the same supply. For now, however, the test was able to validate that the proof of concept works and that the Index is able to reflow components. The heating component can be controlled via a G-code file that is able to programmatically turn it on and off, and, using a Python app, a position file with component locations can be imported and used to send the correct tool paths to the machine.
There is still a lot of work to be done — settling on a heating component, configuring the G-code to allow reflow of different kinds of components, reworking the Python code for intelligent path-finding, and more. For the project as a whole, Hawes would also like to improve the performance of the feeder design and flesh out several features more fully. You can always follow along with the project on YouTube, where Hawes welcomes suggestions and feedback on his design steps.