Software progress

A project log for Pick and place machine

A pick and place machine optimized for small runs of different boards. Up/down looking cameras. Large number of feeders. Fast. Web interface

ZeptoBitZeptoBit 06/15/2014 at 08:150 Comments

I'v been working on the software and have made some progress. I have decided to run the software on two micrcontrollers instead of one, that way I can separate the timing critical step generation for the stepper drivers from everything else. The MCU controlling the steppers is a Cortex M0+, for prototyping I'm using a FRDM-KL25Z board. The stepper controller is about 50% finished. My Salea logic analyzer turned out to be very useful for this, I use it to check the timing of the signals from the MCU to the stepper drivers.

Support for Ethernet on the K64F by the mbed libraries has turned out to be unfinished/buggy. Because of this I'm going with an LPC1768 MCU on a Seed Studio Arch-Pro board. This MCU has some disadvantages, such as lower frequency, no FPU and less RAM, but I think the advantage of stable libraries outweighs this. For this project only the smaller RAM matters as it can't hold a complete picture from the camera in memory at once. My algorithm for finding the location of components in the images doesn't require the whole image to be in memory so this is not critical but more memory would be nice. I may switch back to the K64F if and when mbed support improves.