1/21/2023
Ive convinced myself that I want to build a pick and place machine, and potentially transition into a small batch manufacturing business as a side hustle. In any case, i'm a few months in to this project which has taken a fair amount of effort. Therefore I wanted to start documenting my work in the event that it offers help to others!
I've made too much progress to document in a single post, but I will start adding notes, design files, pictures, etc. as i go. Lets start with requirements and what ive used
RequirementsCapable of populating a 16"x22" PWB panel
Facilitate enough feeders to build a modern PWB side in one pass (no reel changes)
58 lanes of 8mm tape
16 lanes of 12/16mm tape
2 lanes of 32mm tape
2 lanes of 44mm tape
1 lane of 72mm tape
10% room for expansion
Optimize Cost and Quality, sacrifice schedule - achieved via extensive use of ebay and scrap yards
Camera vision
Placement/Top
Component/Bottom
Automatic calibration (via feedback sensors and routines)
Modular - will assemble in the basement, Built for upgrades / future disassembly and relocation
Open Source SW
8-pick/place heads
HW Components------------------
Frame
Lower Frame - UniStrut cut/welded into left/right/middle bolt-together sections
Gantry - Heavy Extruded 6061T6 Aluminum, 80mmx120mmx83", discovered at metal scrap yard years prior
PlastiChain 4210-series flexible wire-routing chain
Loads of surplus milspec STP/shielded twisted pair; 18awg + single braided shield
------
X-Axis
Two Bosch/Rexroth 65-series bearing blocks (roughly 48mmx108mmx30mm) on a 82" Bosch linear guide rail (roughly 20mmx25mm)
One NSK 20973 ballscrew, 20mm pitch 84" and 71.75" stroke
One IMS/Schneider MDM-series Mdrive45+microstepping stepper motor + integrated controller
One US-Digital H6S-2000 (2000 CPR/cycles per revolution - 8000 quadratures per rev, SE-output) optical encoder on right side
Two Turck BI5-S18-AN6X inductive sensors (one for max + and one for min - movement on right and left sides, respectively)
------
Y-Axis
Two THK KR-46 (20mm pitch, 480mm stroke, 740mm outer rail length, 840mm overall length, precision grade 1440mm/s)
Two IMS/Schneider MDM-series Mdrive23+microstepping stepper motor + integrated controller (I modified, adding a not populated programming connector)
One US-Digital H6S-2000 (2000 CPR/cycles per revolution - 8000 quadratures per rev, SE-output) optical encoder on right side, modified to directly mate to stepper motor
Three Turck BI5-S18-AN6X inductive sensors (one for max + movement on left side, one for max + and one for min - movement on right side, helps square the gantry)
------
Head - 8-needle MyData Hydra head from a dismantled MyData Pick and Place machine. This includes:
MyData Logic CCA
Z-axis Maxon DC-Brushed motor
A-axis Maxon DC-Brushed motor
8 PnP needles with solenoids
Vacuum and position sensors on each needle
Hengstler RI36 optical encoders (i believe 900 counts / 3600 quadratures per rev) for both Z-Axis and A-Axis
(i added) One Turck BI3-Q06-AP6X2 inductive sensor to sense when the needle actuator was in a "safe" position
(i added) Two GeckoDrive G320X DC Motor Drivers (accepts step/dir inputs and optical encoder inputs)
(i replaced the ZiLog microcontroller on the Logic CCA with a) PWB i cut; has an Atmel ATmega32A + burned Arduino bootloader
------
Feeders
Qty 23 (Siemens / SiPlace / Schultz) 00131098-02 3-lane x 8mm tape, 2mm/4mm feed capable
Three Siemens "Trolleys" - disassembled for the Feeder mounting plates and the Lemo-connector interface boxes
Three home-grown PWBs to replace Siemens control with Arduino
Three Arduino Nano Every (ATmega4809 processors)
Gore USB bulk wire
------
Control Cabinet
One IBM/Lenovo M710s (i7-6700 + 16G DDR4 + Two Dell 2xUSB3.0 PCIe cards)
One PV PVS-USOPTL4 Isolated RS422/485 USB Adapter
One DynoMotion KFLOP
One DynoMotion Konnect
One home-grown PWB to interface KFLOP with system IOs
One IMS ISP300-7 125Vin 68 VDC Switching UnRegulated power supply (for the Mdrive34 on X-Axis)
One MeanWell SP-200-48 48VDC Switching Regulated power supply (for the Mdrive23's on Y-Axis, amd GeckoDrives for Z-Axis and A-Axis)
One MeanWell SP-200-24 24VDC Switching Regulated power supply (turned up to 28VDC, for the feeder banks which want 30V)
One MeanWell MDR-100-24 24VDC Switching Regulated power supply (for inductive sensors and MyData Hydra solenoids)
One MeanWell MDR-06-05 5VDC Switching Regulated power supply (for DynoMotion and MyData Hydra digital systems and optical encoders)
Three Amphenol CPC Series 1 circular plastic connectors (23-shell size, 37-contacts)
Three Neutrik XLR connectors for 30VDC to each of the three feeder banks
------
Camera + Lighting
One Banner LEDWRV62X62M white ring light (top)
One PointGrey/Flir Flea2 USB3 camera (top)
One MegaPixel 4-12mm 1:1.4 Aspherical cctv lense (top)
One Banner LED 80X80mm red ring light (bottom)
One iDS UI149xLE-C USB2.0 camera (bottom)
One (unknown) cctv lense (bottom)
------
Softwares
OpenPNP (
https://openpnp.org/)
Dynomotion KMotion (
https://www.dynomotion.com/)
NotePad++ (
https://notepad-plus-plus.org/)
IMS SEM SPI (programming Mdrive motors + MD-CC300-000 USB to SPI cable) (
https://imshome.com/downloads/discontinued_products.html)
Arduino IDE (
https://www.arduino.cc/)
------
References
https://github.com/openpnp/openpnp/wiki/SchultzFeeder-and-SlotSchultzFeeder https://groups.google.com/g/openpnp/c/zPgehj7d0r0 https://github.com/bilsef/SchultzController https://youtu.be/_snAjJtib24------
(thats enough for tonight - i will start adding design notes pics etc over the next days)