Author Topic: Pick and place build, openpnp  (Read 38381 times)

0 Members and 1 Guest are viewing this topic.

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Pick and place build, openpnp
« on: September 13, 2019, 08:45:27 am »
Hi all,
I will share here my project progress, a pick and place machine. It is not designed with 'cheap' in mind, it is designed for performance. Initially I was thinking to buy a production line, but after analyzing all pros and cons, I decided to build one. It's more fun :)
Some of my goals are 1,5x1m dimensions, somewhere around 24 placing heads.
Basic components are purchased ready made (rails, servo motors, servo controllers). Mechanical parts used to join them will be built at 3d printer just to check dimensions and how they fit. After that, they will be built from aluminium at mill.
Here is one of the first tests which involves movement. In the movie is the y axis, 1 meter.

le: It is not driven to max speed (only about 2/3), nor at maximum acceleration, because the rail is not yet fixed to the table and some components are 3d printed PLA.

« Last Edit: September 13, 2019, 09:05:44 am by pisoiu »
 
The following users thanked this post: TJ232, Koen

Online tom66

  • Super Contributor
  • ***
  • Posts: 6984
  • Country: gb
  • Electronics Hobbyist & FPGA/Embedded Systems EE
Re: Pick and place build, openpnp
« Reply #1 on: September 13, 2019, 05:44:08 pm »
I'm curious what you'll use for the feeders.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #2 on: September 13, 2019, 06:00:31 pm »
Interesting will follow with utmost interest.
I also want to build one in the future, already collected a lot of 2nd hand parts for it.

So the used ballscrewspindle what is the feed somhow many mm travels per rotation.
For P&P you see a lot of 20mm feeds so very fast travel.

Do you use a stepper or servo?

24 heads, serious? Are you going too place leds or some components with the same value?
What is your thought there I wonder also since they take up a lot of space?

The linear guide looks self made, ehy not use standard wide linear rails ?
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #3 on: September 13, 2019, 07:38:32 pm »
Outside area can accommodate up to ~80 yamaha cl feeders. Inside area will keep the rest, whatever openpnp supports. Tray, cut tape, etc.
Ballscrew is TBI 2550, 25mm diameter, 50mm travel per rotation.
Motors are panasonic servo, minas a6, 400w high inertia. Steppers are not even close to this design's requirements. What you see in the above movie is travel at 2000rpm and 100ms acceleration time.
Head numbers is due to the fact that I want to avoid nozzle change (I am thinking at juki now), therefore I must have a combination of all sizes required by most designs. They will not be all in line, rather a matrix of 6x4 spaced at 30mm.
Linear guide is not self made, it is ISEL LFS series. It is bigger than common rails used in pnp machines but I prefer that part a bit oversized for now since the entire machine is quite big.
Everything is mounted on a 20mm thick aluminium plate.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #4 on: September 13, 2019, 08:41:31 pm »
Very impressive hardware  :-+
50mm per rotation, that is a lot. How many pulses per rotation does your servo-encoder provide, or put differently what is the resulting positioning resolution?
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #5 on: September 13, 2019, 09:08:49 pm »
Encoder for minas a6 series has 23 bits, so positioning resolution in my case is 50mm/2^23...enough. In practice, positioning is worsened by ballscrew, it is a C7 precision class, this one was expensive enough. I didn't wanted to go to C5 or better, those have astronomical prices.
For now I am using motor's encoder but if during tests I will notice significant positioning deviations due to ballscrew heating (which cannot be compensated by motor's encoder), I will use external linear encoder, most probably magnetic type.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #6 on: September 13, 2019, 09:29:38 pm »
An external linear encoder came to my mind also. I am however unsure how to connect that to openPnP. OpenPnP just sends G codes with absolute coordinates to move to right? So then you need to build a circuit with a microcontroller that reads the external linear encoder for the current position and returns that to OpenPnp, or it has to solve the delta on its own and sent extra pulses or 0-10V output to the servo driver. I am unsure how that exactly works with OpenPnP.
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #7 on: September 13, 2019, 09:36:28 pm »
External linear encoder connects directly into the servo driver and it's its job to deal with it. Positioning commands are taken from gcodes sent by openpnp by my driver board (which I have to build) and this one connects to x/y drivers on RS485 bus. Changes to support external encoder instead of motor built in encoder are made in the configuration parameters of the servo driver.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #8 on: September 13, 2019, 09:39:32 pm »
Thanks, that makes sense. I use cheaper closed loop steppers but they don't have that option.
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #9 on: September 13, 2019, 09:46:34 pm »
Those servo drivers are monsters. They have around 500 parameters listed in the configuration windows. Of course, not all of them must be touched, but still, gives you an idea about the flexibility of the damn thing....and the possibilities to mess everything up....
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #10 on: September 13, 2019, 09:50:19 pm »
Uh yes that is what kind of scared me away of servos  :)
Mostly you have to tune the PID control using external software after the system is complete.
That can be quite an elaborate task what I have heard.
Luckily with a p&p machine it is not bad to have a little under or overshoot in contrast with for instance a cnc mill where your piece of work is then ruined.
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #11 on: September 13, 2019, 09:59:01 pm »
From what I read in the manuals, they don't under or overshoot. They measure the mechanical parameters, resonance frequency, etc. and somehow adjust the commands to the motor, to avoid oscillation around destination position. How is it doing this, it's beyond my knowledge. I think they call it 'automatic damping filter'.
 

Offline rx8pilot

  • Super Contributor
  • ***
  • Posts: 3644
  • Country: us
  • If you want more money, be more valuable.
Re: Pick and place build, openpnp
« Reply #12 on: September 13, 2019, 11:49:53 pm »
This looks fun.....following.
Factory400 - the worlds smallest factory. https://www.youtube.com/c/Factory400
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #13 on: September 14, 2019, 08:29:22 am »
That is some sort of autotune, if it works that is excellent. It might take some time to adjust.
If you want to know a bit more about servos control loops , the s-curve, the three pids: position, velocity, torque, this was an interesting read for me:
http://www.techtrends.ru/docs/delta/servoprivody_asda_ecma_dmcnet/ASD-M/Tuning_ASDA_Series_Servo_Systems.pdf
 
The following users thanked this post: pisoiu

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #14 on: October 03, 2019, 09:57:18 am »
Any updates ?  :)
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #15 on: October 03, 2019, 10:08:43 am »
Not much, I have 3D printed some more pieces and made some tests with X axis. They are at very low speed (500rpm I think) and very low accelerations, because they are held in plastic mounts. In the next days I will install also X ballscrew and make some tests again.
I also received the mill which will be used to build the final aluminium pieces.


 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #16 on: October 03, 2019, 11:59:13 am »
With my CNC I am running into alignment problems.
I am currently busy hours to align with a 0,001mm resolution clock.
You have used toolingplate which is much better than the aluminium profiles I use, still I can advise you before running high speeds, to check the exact alignment between linear rails and ballscrew, you can easily see it at the movement of the ballscrew it should not oscillate.
Also the noise of the balls inside the ballscrew and linear rails are good indicators.
Probably your setup is better and more stable, it looks very nice.

 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #17 on: October 03, 2019, 12:34:03 pm »
Alignment is taken into consideration very carefully, there are adjustments methods available for all pieces. Alignment is measured both mechanically and with the servo's software, I have plots with measured torque for movement. It should be constant for all the axis length. Currently it is not, I have small random variations due to inconsistent deposition of lubricant and I also have a small oscillation due to incorrect alignment of the motor shaft with ballscrew end. 3d printed piece :).
But alignment and tuning for high speed will be done only after all interconnecting pieces will be made from metal. I use 3d printed parts only as proof of concept, to see if all fits nice and to check the manufacturability of parts within milling machine constraints.
With 3d printed parts I do not dare to go further than 1000rpm and 4-500ms acceleration/deceelration time. They are quite far from my goal, 3000rpm and under 100ms. What I do not know yet is the behavior of the other end of X axis (not the driver end), it will oscillate a little at stop. I hope I can compensate that from servo parameters and/or to ignore oscillation, hoping it will damp itself until the head arrives in pick/place position. I have a high speed camera (1000fps) camera to analyze this phenomenon.
« Last Edit: October 03, 2019, 12:43:29 pm by pisoiu »
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #18 on: October 03, 2019, 12:53:42 pm »
I am currently busy hours to align with a 0,001mm resolution clock.

Do you need that high resolution? I am currently working down to 10 microns, I have no way to measure or machine better than this value.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #19 on: October 03, 2019, 02:31:41 pm »
Well my goal is also 10 microns so the measurement equipment should be at least a factor three better in repetitiveness. So that is about 0,003mm and that is the repetitiveness of my 0,001mm clock.
The problem I face is that I do not have a reference plate as you have. My cnc is mounted on a wooden hardboard which is absolutely not suitable as reference.
So I am thinking about upgrading to a stone (granite) plate , if I can find a good one for a good price that is.
The alignment I currently do is squareness of the bridge (with me the Y axis for you the X axis) relative to the X axis.
This takes a lot of time and I have lent a 4um/m squared block of steel for that purpose. I wanted to buy such a block but it costs thousands of €  :scared:
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #20 on: October 03, 2019, 07:32:54 pm »
If I understood correctly, you also plan to use openpnp. Why bother to mechanically obtain squarness when it can be compensated in sw?
 

Offline jadew

  • Frequent Contributor
  • **
  • Posts: 472
  • Country: ro
Re: Pick and place build, openpnp
« Reply #21 on: October 03, 2019, 08:22:33 pm »
@pisoiu, nice project, will follow. I've been meaning to make a PnP myself, but it's rather low priority atm.

How much did the mill set you back? I've been looking for a similar one myself, but I gave up for now because my shop is not on the ground floor. I needed 10 um precision and was told that I can't get that without spending 6k+ (also, the recommended mill was a lot bigger than that).
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #22 on: October 03, 2019, 08:23:04 pm »
If I understood correctly, you also plan to use openpnp. Why bother to mechanically obtain squarness when it can be compensated in sw?
Ah yes that might be unclear, sorry,  my current machine is a CNC mill not a p&p  ;)
When the mill is finished I want to use it to build a P&P.  :)
I have two ballscrews on the two X axis and although I can correct the squareness with tandem homing it is not good to have to large offsets between the axis since this gives many forces on the rails and ballscrew spindles.
 

Offline pisoiuTopic starter

  • Regular Contributor
  • *
  • Posts: 185
  • Country: ro
Re: Pick and place build, openpnp
« Reply #23 on: October 03, 2019, 08:45:03 pm »
My mill plus some accessories (machine vice, boring head, etc) was around 2k. Mill is orion 2.0, damatomacchine. Italian company, but it is actually made in China. Expect to spend few hundreds more on measuring tools: interior/exterior micrometers, calipers, center finder, granite table, DRO, etc. Mill is manual, not CNC. Most extras are from aliexpress. Not top quality of course, but good enough.
Then you'll have to discover the machinist inside you, otherwise you'll spend many more $ paying another trained person for that. But youtube is your friend here, as it was mine. Then you have to practice until you get some practical skills and hopefully you'll brake as few things as possible. I am at practice right now and today's lesson was that steel chips coming from mill are damn hot.
I do not have experience, but from what I saw from more experienced guys working on manual mills, 10microns are achievable with proper techniques and good understanding of tools and procedure's limits. Just copying what you see is not enough. A bigger (and more expensive) mill will certainly make your life easier (and your pockets emptier) but this not necesairly mean that you can't achieve results on cheaper machines.
Kjelt , much clearer now :). At a moment during the initial design of my pnp I thought at 2 ballscrews for Y axis, considering the relatively lengthy X axis (1.5 meters), but my brain locked when tried to imagine how to synchronize the servos for both. So I dropped the idea.
 

Offline Kjelt

  • Super Contributor
  • ***
  • Posts: 6572
  • Country: nl
Re: Pick and place build, openpnp
« Reply #24 on: October 03, 2019, 08:51:24 pm »
Yes synchronizing servos would require synchronised communication and identically tuned servoloops I guess. My mill uses closed loop steppers and the drivers are more easily commanded by the step/dir interface. The Eding CNC controllerboard does support dual axis and tandem homing which makes it much easier.
Since a P&P does not have the large counterforces that a CNC does have, one ballscrew should be sufficient as many pro designs already have proven this in the past. So for my future p&p machine I also think of using a single ballscrew which makes it easier.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf