Getting started with image processing and Linuxcnc
28 Nov 2012 16:44 #27035
by Storken
Getting started with image processing and Linuxcnc was created by Storken
Hello, I'm a last year electronics student - next year I'll start my master within instrumentation (sensor techniques).
Recently I've built myself a 5W laser soldering station. I want to CNC controll this. Together with it - I want the machiene to pick up the component, to be soldered, and place it on the PCB. I'm therefore looking at a 'Pick and Place' + soldering machiene.
I'm knowledgeable within general microcontrollers, worked a lot with Atmels AVR's series. I've done some motor controll, data transmission and programming (everything in c++, some assembly). What I'm missing is knowledge within camera software processing and how to setup a cnc (but there's good manuals for that )
As for hardware, this is what I picture.
- 350mm x 400mm Pcb work area.
- Component 'presenter' will fetch the next component to be placed - placing the component for camera scanning.
- Solder-paste dispenser or solid core solder (being presented to the laser beam nearly instantly melts it).
- Temperature controller, so that the laser overheat stuff.
The plan is quite a huge project, the gantry will feature three different workheads; Pick and placer, laser solderer and the camera module. Making everything work together will be a huge undertaking, so the first goal is to make the laser solderer work alone.
Any resources and general tips will be appreciated.
Recently I've built myself a 5W laser soldering station. I want to CNC controll this. Together with it - I want the machiene to pick up the component, to be soldered, and place it on the PCB. I'm therefore looking at a 'Pick and Place' + soldering machiene.
I'm knowledgeable within general microcontrollers, worked a lot with Atmels AVR's series. I've done some motor controll, data transmission and programming (everything in c++, some assembly). What I'm missing is knowledge within camera software processing and how to setup a cnc (but there's good manuals for that )
As for hardware, this is what I picture.
- 350mm x 400mm Pcb work area.
- Component 'presenter' will fetch the next component to be placed - placing the component for camera scanning.
- Solder-paste dispenser or solid core solder (being presented to the laser beam nearly instantly melts it).
- Temperature controller, so that the laser overheat stuff.
The plan is quite a huge project, the gantry will feature three different workheads; Pick and placer, laser solderer and the camera module. Making everything work together will be a huge undertaking, so the first goal is to make the laser solderer work alone.
Any resources and general tips will be appreciated.
Please Log in or Create an account to join the conversation.
28 Nov 2012 21:06 #27042
by andypugh
Replied by andypugh on topic Getting started with image processing and Linuxcnc
Is the camera intended to locate the board and align to it, or to locate the pads too?
Most of your project sounds straightforward other than the vision part. I suggest starting there and seeing if you can find a way to convert image data into HAL pins.
Most of your project sounds straightforward other than the vision part. I suggest starting there and seeing if you can find a way to convert image data into HAL pins.
The following user(s) said Thank You: Storken
Please Log in or Create an account to join the conversation.
28 Nov 2012 21:10 #27044
by ArcEye
Replied by ArcEye on topic Getting started with image processing and Linuxcnc
Hi
Sounds a interesting project
For starters have a look at
www.linuxcnc.org/index.php/english/forum...amera-locations-vcps
linuxcnc.org/index.php/italian/forum/10-...ion-with-emclinuxcnc
www.linuxcnc.org/index.php/english/forum...704-soldering-robot-
www.linuxcnc.org/index.php/english/forum...-webcam?limitstart=0
may give you some ideas as to what others have done thus far
Use the left hand side search line edit on the forum and it will search all the wikis etc as well as the forum
regards
Sounds a interesting project
For starters have a look at
www.linuxcnc.org/index.php/english/forum...amera-locations-vcps
linuxcnc.org/index.php/italian/forum/10-...ion-with-emclinuxcnc
www.linuxcnc.org/index.php/english/forum...704-soldering-robot-
www.linuxcnc.org/index.php/english/forum...-webcam?limitstart=0
may give you some ideas as to what others have done thus far
Use the left hand side search line edit on the forum and it will search all the wikis etc as well as the forum
regards
The following user(s) said Thank You: Storken
Please Log in or Create an account to join the conversation.
28 Nov 2012 21:12 #27045
by cncbasher
Replied by cncbasher on topic Getting started with image processing and Linuxcnc
take a look at openpnp , a good vison library is opencv
The following user(s) said Thank You: Storken
Please Log in or Create an account to join the conversation.
29 Nov 2012 21:43 #27078
by Storken
Thanks for the resources, I had a look at some of them earlier
Hmm, if I incorporate fiducials I should be able to pull the 'paste pad' list from the gerber files. So basically align the virtual and real pcb; then solder all pads.
For the pick and place part I think I'll make my own robot capable of presenting and scanning parts. A 'top level' program must be created to synchronize all the different operations to be done. I'm not sure if the machiene will need programming or if it can run from exported files from the PCB straight away. If there is 400 pads in the design, there will be 400 pads to be soldered - image processing, vision processing and machine action is completely new to me.
Paste dispenser is another challenge.
I've looked at openpnp, certainly a interesting start - but I think my plans differ too much from theirs.
I'm concidering splitting the actions up into separate parts though, as this starts to become very complex
Replied by Storken on topic Getting started with image processing and Linuxcnc
Hi
Sounds a interesting project
*snip*
regards
Thanks for the resources, I had a look at some of them earlier
Is the camera intended to locate the board and align to it, or to locate the pads too?
Most of your project sounds straightforward other than the vision part. I suggest starting there and seeing if you can find a way to convert image data into HAL pins.
Hmm, if I incorporate fiducials I should be able to pull the 'paste pad' list from the gerber files. So basically align the virtual and real pcb; then solder all pads.
For the pick and place part I think I'll make my own robot capable of presenting and scanning parts. A 'top level' program must be created to synchronize all the different operations to be done. I'm not sure if the machiene will need programming or if it can run from exported files from the PCB straight away. If there is 400 pads in the design, there will be 400 pads to be soldered - image processing, vision processing and machine action is completely new to me.
Paste dispenser is another challenge.
take a look at openpnp , a good vison library is opencv
I've looked at openpnp, certainly a interesting start - but I think my plans differ too much from theirs.
I'm concidering splitting the actions up into separate parts though, as this starts to become very complex
Please Log in or Create an account to join the conversation.
29 Nov 2012 22:33 #27081
by cncbasher
Replied by cncbasher on topic Getting started with image processing and Linuxcnc
how does openpnp differ from your ideas ? , i'd be curious to know .
how do you envison to solder the parts , if indeed that's your intention , how will you cope with leadless components ,
the major way it is done is to align the part to the pcb pads using the vision component , once it's picked .
linuxcnc has been used for basic pick and place.
how do you envison to solder the parts , if indeed that's your intention , how will you cope with leadless components ,
the major way it is done is to align the part to the pcb pads using the vision component , once it's picked .
linuxcnc has been used for basic pick and place.
Please Log in or Create an account to join the conversation.
29 Nov 2012 22:41 #27083
by andypugh
Replied by andypugh on topic Getting started with image processing and Linuxcnc
There might be some interesting stuff on solder dispensing hereL
thread.gmane.org/gmane.linux.distributio...er/38491/focus=38626
The thread is not very well laid out..
thread.gmane.org/gmane.linux.distributio...er/38491/focus=38626
The thread is not very well laid out..
Please Log in or Create an account to join the conversation.
30 Nov 2012 00:16 #27090
by Storken
Openpnp uses one 'head' for everything. I do not have time for tape advancing - I'll let a microcontroller control a small stepper for that. Therefore my system will have two 'heads'; one for sorting and checking components, and the other for placing solder, placing the component and soldering it.
The sort and check robot will place the component on a glass plate, under it a camera (looking up) will make sure it has the correct rotation and size (and that it is centered).
Leadless components are very hard to solder, some can maybe be done by heating nearby copper traces, but BGA's can certainly not be done like this. I've theorized about using the laser from the bottom side for these components - but buried vias sabotages this. This application isn't suited for BGA's .
I could do everything vision based - then I could also use brushless motors for closed loop controll. Faster and cheaper (I could steer away from expencive lead screws and the like. If using steppers, I'll rely on their accuracy - that what I was planning on, since closed loop controll hasn't got much documentation behind it. But maybe I should take the plunge and try, it's not like I'm experienced with open-loop control yet
That's the problem with creativity, you allways find a different way to do things - instead of just doing it
Nice, definitely some gems inbetween much blabber there
Replied by Storken on topic Getting started with image processing and Linuxcnc
how does openpnp differ from your ideas ? , i'd be curious to know .
how do you envison to solder the parts , if indeed that's your intention , how will you cope with leadless components ,
the major way it is done is to align the part to the pcb pads using the vision component , once it's picked .
linuxcnc has been used for basic pick and place.
Openpnp uses one 'head' for everything. I do not have time for tape advancing - I'll let a microcontroller control a small stepper for that. Therefore my system will have two 'heads'; one for sorting and checking components, and the other for placing solder, placing the component and soldering it.
The sort and check robot will place the component on a glass plate, under it a camera (looking up) will make sure it has the correct rotation and size (and that it is centered).
Leadless components are very hard to solder, some can maybe be done by heating nearby copper traces, but BGA's can certainly not be done like this. I've theorized about using the laser from the bottom side for these components - but buried vias sabotages this. This application isn't suited for BGA's .
I could do everything vision based - then I could also use brushless motors for closed loop controll. Faster and cheaper (I could steer away from expencive lead screws and the like. If using steppers, I'll rely on their accuracy - that what I was planning on, since closed loop controll hasn't got much documentation behind it. But maybe I should take the plunge and try, it's not like I'm experienced with open-loop control yet
That's the problem with creativity, you allways find a different way to do things - instead of just doing it
There might be some interesting stuff on solder dispensing here
*snip*
Nice, definitely some gems inbetween much blabber there
Please Log in or Create an account to join the conversation.
Time to create page: 0.078 seconds