very exciting, I was thinking to make a small pick and place and even have the full x,y & Z bed but am not sure how to workout the vision part. I have built my own dedicated CNC controllers as a hobby and am even selling them, was thinking to make a vision system that can give feedback to my controller for the visual alignment part. Can you please guide me on how should I start with the vision part, maybe openCV or just start making an embedded system and connect a camera to a microcontroller and do vision from there.
Vision isn't a 100% requirement, though for error correction, it is important. It will highly depend on what architecture you will run the controlling software. I think you're better of using a microcontroller to do the driving of all hardware. And let it interface with a PC (this may also be a Raspberry Pi). The PC would tell the microcontroller to go to different positions, in the meantime your PC will receive feedback through the camera. If a part is angled wrong (as seen by camera), the PC can then instruct the microcontroller to rotate a given amount of steps.
I have made my own CNC controller running entirely on a micro with windows like GUI, so GUI is not a problem for me and I can easily add interface for the pick and place part. Actually I have built CNC controllers for lathes and mills and wanted to have a version for pick and place, I have enough I/O's that will be required to operate the entire machine, its just the vision senor part, maybe its better that I spend a bit more time on making the camera system on micro too and then write up the code to detect the corners and angles of the parts and send the data to my existing controller through serial. My problem is that I dont have any experience with pick and place as to the functional specs such as what data is required for each part and heights of each component etc and if someone could guide me in defining the scope then I can easily modify my controller to work as pick and place. and thanks for relying back
My point was, that it can be much easier to do the video processing on the computer. I wouldn't bother trying to run "OpenCV" on a microcontroller, plus it would have significant impact on the performance of the microcontroller. Functionally seen, a pick and place machine is a machine that takes trays and/or reels of components and places them on a board. Basically, that's all there is to it. Basically you would insert some reels (and configure them) and insert a file containing the locations of each component. Since the "GUI" knows which reels of components are at which position, and where the component should land, it can instuct the microcontroller to move to those positions. Usually the machine has some type of suction head which can lift the components and drop them at the position. So it's very much like a CNC machine, but instead of using a tool to carve, you have a tool that picks up and drops components. For the parts, I think it's quite difficult to align a part that's square, since it's basically the same if you rotate it 90 degrees. Though, they should all be oriented in the same way on the reel, so basically, alignment of parts is done by checking the sides of it and making sure they are "straight". OpenCV is a very good library for this, but it will require some programming. Though, an awfull lot of tutorials/blogs can be found on openCV.
@@MassoCNCAustralia if you haven't done it yet, I wouldn't bother reinventing the wheel, and just use the software that already does the job and is opensource (unless the license doesn't permit it.) you can use the opensource part as a plugin to a proprietary software on most opensource licenses.
Hmm, video cuts out early.
very exciting, I was thinking to make a small pick and place and even have the full x,y & Z bed but am not sure how to workout the vision part. I have built my own dedicated CNC controllers as a hobby and am even selling them, was thinking to make a vision system that can give feedback to my controller for the visual alignment part.
Can you please guide me on how should I start with the vision part, maybe openCV or just start making an embedded system and connect a camera to a microcontroller and do vision from there.
Vision isn't a 100% requirement, though for error correction, it is important.
It will highly depend on what architecture you will run the controlling software.
I think you're better of using a microcontroller to do the driving of all hardware.
And let it interface with a PC (this may also be a Raspberry Pi).
The PC would tell the microcontroller to go to different positions, in the meantime your PC will receive feedback through the camera. If a part is angled wrong (as seen by camera), the PC can then instruct the microcontroller to rotate a given amount of steps.
I have made my own CNC controller running entirely on a micro with windows like GUI, so GUI is not a problem for me and I can easily add interface for the pick and place part.
Actually I have built CNC controllers for lathes and mills and wanted to have a version for pick and place, I have enough I/O's that will be required to operate the entire machine, its just the vision senor part, maybe its better that I spend a bit more time on making the camera system on micro too and then write up the code to detect the corners and angles of the parts and send the data to my existing controller through serial.
My problem is that I dont have any experience with pick and place as to the functional specs such as what data is required for each part and heights of each component etc and if someone could guide me in defining the scope then I can easily modify my controller to work as pick and place.
and thanks for relying back
My point was, that it can be much easier to do the video processing on the computer.
I wouldn't bother trying to run "OpenCV" on a microcontroller, plus it would have significant impact on the performance of the microcontroller.
Functionally seen, a pick and place machine is a machine that takes trays and/or reels of components and places them on a board.
Basically, that's all there is to it.
Basically you would insert some reels (and configure them) and insert a file containing the locations of each component.
Since the "GUI" knows which reels of components are at which position, and where the component should land, it can instuct the microcontroller to move to those positions.
Usually the machine has some type of suction head which can lift the components and drop them at the position.
So it's very much like a CNC machine, but instead of using a tool to carve, you have a tool that picks up and drops components.
For the parts, I think it's quite difficult to align a part that's square, since it's basically the same if you rotate it 90 degrees. Though, they should all be oriented in the same way on the reel, so basically, alignment of parts is done by checking the sides of it and making sure they are "straight".
OpenCV is a very good library for this, but it will require some programming. Though, an awfull lot of tutorials/blogs can be found on openCV.
@@MassoCNCAustralia if you haven't done it yet, I wouldn't bother reinventing the wheel, and just use the software that already does the job and is opensource (unless the license doesn't permit it.) you can use the opensource part as a plugin to a proprietary software on most opensource licenses.
Good work
Wondering why Jon changed from the Samsung pickup heads and the Juki heads in the video?
selam yazılım ve kontrol kart hakkında yardımcı olurmusunuz ?
Price of mechine
9:10
...