FirePick Delta is an affordable, open-source electronics manufacturing system that sits on your desktop. It's capable of building complex electronic circuit assemblies, like Arduino and Raspberry Pi accessories. It is also able to 3D print plastic parts, just like a standard 3D printer. It assembles circuit boards just like a conventional pick-and-place machine, by using a vacuum nozzle and camera with computer vision to pick up surface-mount parts from component feeders, and precisely place them down on the circuit board. Our machine has an auto-tool changer, and we're working on designing other tools besides the SMT vacuum tip and the 3D print hotend. The system is capable of holding up to four tools and interchanging between them automatically. This also makes it one of the most versatile 3D printers out there, because it can print in four colors of plastic (or in four separate types of plastic, which would allow a single model to have a mixture of PLA, ABS, nylon, and NinjaFlex, for example).
Pick and place machines are used around the world to assemble electronic circuit assemblies, however they usually sell for $50,000 to $500,000. Our machine has a price point of $300 to $5000, depending on modules installed. We should be able to hit that price point by leveraging the open-source technology of the RepRap 3D printer movement. The FirePick Delta is designed to almost completely self-replicate. It is capable of 3d printing its own parts out of PLA or ESD-sensitive ABS plastic. It will also be capable of assembling its own electronic circuit boards. We plan to be the first successful, commercially available RepRap 3d printer to have the power of electronics self-replication. We envision a future where anyone can design (or download existing) electronic projects, and manufacture them in their own home, rather than outsourcing to a traditional factory. This approach saves time and money, and is a much more sustainable solution. FirePick Delta will enable a new wave of small businesses and entrepreneurs to provide unique, bespoke, niche items to the general public, that would be unprofitable for a large conglomerate corporation to manufacture. If you've ever had an electronic project that involved soldering surface-mount electronics, this machine is an incredibly cheap and fun way to do it. If you've ever wanted to sell an electronic board that you've created, and need a way to make lots of them, this machine is for you.
Important Documents and Links
Bill of Materials
Note: Our BOM will eventually be in our custom FireBOM system, but we’re still in the process of getting that populated (Note: the official hackaday.io “Components” page links there). We have written some clever python scripts to get this data transferred over to the new system, but in the meantime, it’s spread across a few sources:
- Bill of Materials [Hackaday.io]
- Bill of Materials, FireBOM (auto-generated BOM) [github.com]
- Bill of Materials, spreadsheet [Google Docs]
- Bill of Materials, XML [Google Docs]
- Bill of Materials, Electronic Circuit Board Assemblies [Google Docs]
Project Logs and Other Hackaday.io Pages:
- Introduction (this page)
- Project Log - 1st Project Log / Intro & Overview
- Project Log - Delta Mechanism Design and Frame Construction
- Project Log - Delta Mechanism Simulation and Accuracy Determination
- Project Log - Camera and Computer Vision
- Project Log - FirePick Delta System Design Document and Youtube Video
- Project Log - ESD Mitigation Strategy
- Project Log - SMT Component Feeders
NOTE: The Hackaday.io CMS is kind of wonky at the moment), use the links below if the Youtube previews aren't showing up...
HaD Video #1 (Quarterfinals, July 20, 2014):
HaD Video #2 (Semifinals, September 28, 2014):
Youtube Playlist for other FirePick Delta related videos :-)
Features / Specs
- Prototyping and small runs of PCB’s (under 100 per run). Not intended to be used for mass production.
- Hobbyists, Makerspaces, high school and college students, entrepreneurs, small businesses.
- Great for those with poor eyesight, shaky hands, or those that just don’t have the skills to solder on small SMT parts. We occasionally remind those that scoff at our project to check their privileges and remember that not everyone has guru SMT soldering skills or access to a full lab with hot air rework.
Cost: We would eventually like to cover three basic demographics:
- Hacker and Developer Version: Open framework to go crazy with. Purchased with retail parts from US or foreign distributors. Est. Cost: ~$400-$500.
- Maker / Student Version: Base machine in kit form for ~$300-400 is desired. That would not include any tools or feeders, or RasPi or camera. These things are modular and could be purchased at the time of sale or later on. Requires assembly, and support woudl be via internet forum / IRC / mailing list, etc.. The $300 figure is likely more of a BOM cost than final sale price with packaging, shipping, etc.
- Professional version: For the tech startups, businesses, etc. Machine would likely retail for $5,000 to $10,000 for a fully assembled machine, with tech support and warranty, and all the other things that a business would look for, before buying a
- Note that the Hackaday project is built around the Hacker / Developer version as a prototype, and we hope to offer the second (maker / student version) after the prototypes are built, and crowdfunding is secured. Version 3 ($5000-$10000) will be much later on, possibly 1-2 years from now.
- Overall dimensions: 600mm H x 460mm W x 460mm D
- Frame dimensions: 520mm H x 300mm W x 300mm D
- Max PCB size / 3D print volume: 80mm H x 214mm W x 214mm D
Camera and Computer Vision:
- Camera: Raspberry Pi 5MP. 3.6mm focal length with f/2.9 aperture. Full control of shutter time, hardware flash, ISO, etc via custom FirePiCam software
- Downward looking vision: Currently supported.
- Upward looking vision: Planned feature. Will be implemented in the coming weeks. Our software chain fully supports it, it’s just a matter of making the 3d printed fixtures and trying it out.
- Flying vision: Not yet, but it would be super cool. No timeline to speak of. Forget I even mentioned it.
- Computer Vision Software: FireSight (high-level abstraction layer on top of OpenCV), via FireFUSE and FireREST
- CV Operations implemented: absdiff, backgroundSubtractor, blur, calcHist, calcOffset, Canny, cvtColor, dft (Discrete Fourier Transform), dftSpectrum, drawKeypoints, drawRects, FireSight, HoleRecognizer, HoughCircles, imread, imwrite, matchTemplate, minAreaRect, MSER, morph, normalize, Points2Resolution, PSNR Compare, putText, QRDecode, resize, SimpleBlobDetector, stageImage, threshold, transparent, warpAffine, warpPerspective, warpRing
- OpenPnP - Is a project to create the plans, prototype and software for a completely Open Source SMT pick and place machine that anyone can afford. This is the GUI, and the program that handles all of the feeder, camera, and general machien setup, and also the job creation and processing.
- FireSight - A high-level computer vision framework designed for Pick and Place machines, powered by OpenCV. No programming experience required - A pipeline of image operations is specified with a JSON structure. The results of the operations are returned as a JSON structure.
- FireFUSE - FireFuse is theFUSE driver for all FirePick machines. FireFuse maps all hardware input/output functions for FirePick to individual files in the /dev/firefuse virtual file system. For example, the current camera view of the FirePick camera is presented as /dev/firefuse/cam.jpg. Presenting the camera output this way simplifies and generalizes access to the camera, since "it's just a file."
- FireBOM - Similar to ThingDoc, FireBOM will auto-generate BOMs, documentation, real-time pricing and distributerer info, and keeps track of approved vendors and SMT part footprints.
- FireMOTE - A web-based frontend for OpenPnP.
- FireREST - FireREST is an open-sourceREST protocol for automated manufacturing. With FireREST, you can connect smart camera nodes, CNC application nodes, CNC machines and browser GUIs in a flexible, extensible manufacturing network. For the non-web gurus, this basically allows us to use raw http as a protocol between various systems in a robotics manufacturing network.
- Arduino - Needs no introduction :) We will be designing an Arduino-compatible motion controller with modified RepRap Marlin firmware.
- Raspberry Pi - Not 100% open-source, but their heart is in the right place. We plan on using the new Raspberry PI Compute Module, and the Raspberry Pi camera, to run OpenPnP and the other bits of software.
- OpenCV - is alibrary of programming functions mainly aimed at real-timecomputer vision. Written in optimized C/C++. Thankfully, a lot of work has been done to get it working on the Raspberry Pi.
- Linux - Too many crappy Pick and Place machines, only running on Teh Windows :-(
- RepRap - An initiative to develop a self-replicating 3D printer.
- Marlin firmware - The RepRap firmware is a mashup betweenSprinter,grbl and many original parts. It runs on an Arduino and handles the very timing-sensitive job of sending STEP and DIRECTION signals to the stepper motor drivers, controls temperature and extrusion. We'll be modifying it to double as a Pick and Place motion controller.
- Greg's Wade Reloaded Extruder - Bulletproof extruder design
- RAMPS v1.4 - Our custom board will be roughly based off the Ramps, but with the added stuff necessary for pick and place.
- StepStick - Allegro A4988 16x microstepping motor driver
- Slic3r - The world's best slicing program for 3d printing
- Printrun - Pure Python 3d printing host software
Component size / Placement Accuracy: (Note many of these are not practical to place, until we get our feeders and vision 100% working)
- Passives down to 0402
- Diodes: SMC, SMB, SMA, SOD128, SOD80, SOD323, MicroMELF
- QFN, DFN, QFP, SOIC, TSOP, BGA to ~0.4mm pitch
- SOT23-3, SOT23-5, SOT23-6, SOT223, SOT89, SC70, DPAK, D2PAK
- IC’s and large/wide components to ~50mm wide
- Aluminum capacitors and tall components <= 15mm H
Modular Auto/Rapid Tool Changing System
- Holds up to four (4) tools in the machine at the same time
- System will recognize tools upon insertion. EEPROM in each tool keeps track of SMT nozzle size, and 3D printing parameters like thermistor tables, etc.
- Tools are hot swappable
- Average cost of materials per modular tool: $10 - $500, depending on tool.
- Current tools offered: SMT vacuum nozzle, solder paste dispense, 3D Print hotend.
- Future tools offered: Professional shot-meter style fluid dispense system for scientific laboratory or solder paste / glue dispense.Pen plotter, laser sensitizer (not big enough to cut stuff with), pogo-pin based flying-probe (for voltage testing, etc), Atmel AVR flying-probe programer. Hot air rework station for minor rework. Note that we intend for other members of the open-source community to help us bring these tools into existence, as the need arises.
Modular SMT Component Feeder System
- ESD-safe via conductive ABS plastic 3D printing filament.
- Average cost of materials per feeder: $5-10
- Auto-recognized by OpenPnP via QR code labels affixed to feeders
- Tape feeders: 8mm, 12mm, 16mm, 24mm, 32mm, 44mm. Drag-feed with (and without) cover-tape winding, and full-auto advancing version for 8mm
- Tray feeders: Non-JEDEC. Holds a few small loose parts. Supports pause/reload prompts.
- Tube feeders: NOTE: We’ve not started these yet, but see them as minimum risk. We started the tape parts first, since they’re more desirable. Will have a vibratory source (DC motor w/counterweight). Will be easy to customize and print custom tube feeders for weird non-standard chokes and coils, etc.
Above: "Productized" shot of the FirePick Delta system
We chose a Delta robot configuration over a more conventional Cartesian design. This allows us more speed, less BOM cost going bearings and linear slides, and easier build / configuration. This will be covered in more detail in a future post.
I've taken the RepRap philosophy to heart. There are no swiss-machined parts and crazy Japanese bearings in this machine. I've spent weeks pulling my hair out trying to figure out the cheapest way to build a PnP machine without sacrificing quality. The original RepRaps used 608 bearings and LM8UU linear bearings because they're the cheapest, most-available type out there. They built their machines around these parts, rather than designing the machine first, only to be pigeon-holed into a weird bearing size. The best part is that the popularity of the RepRap movement has brought down the prices of these parts even further.
I've designed FirePick Delta around the following parts:
- Roller bearings: Use primarily 608 for anything load-heavy. Available for $0.30 each online. Use 623's for anything tiny.
- Timing belts: GT2 belts and pulleys. Zero backlash, super cheap and available.
- Motors: Use NEMA 17 stepper motors whenever possible, because they're the most common. Available for $6.80 online.
- Custom parts, brackets, etc.: 3D print them. Design them without overhangs so they they can be printed without support. Since this is a Pick and Place machine, we can print with ESD-safe conductive ABS plastic :)
- Limit switches: Vishay TCST2103 optical endstops are quite common in the RepRap community, and can be extremely accurate.
- Frame: Misumi HFS5-series extrusion with select CO2 laser-cut acrylic pieces.
Accuracy and Speed
SMT parts are getting smaller and smaller every year. If we made a crappy machine, it would be outdated by the time we'd finish it. We've taken the proactive approach, and created a set of simulations that test various configurations for accuracy and speed, that uses monte-carlo trials and evolutionary algorithms to "find" a correct delta geometry that fits our needs. We are attempting a design that *should* be able to place 0201 components! Although we'll be happy if it places 0402's and QFN's.