Re: [Emc-users] Carousel Motion
Hi Kirk, That is a nice overview of the setup. Can use that for the wiki or manuals? Thanks John On 10/15/2011 12:30 AM, Kirk Wallace wrote: On Fri, 2011-10-14 at 15:43 -0400, Dave wrote: ... snip The limit3 function is a very useful function. I have it running 3 axis on one machine at high speeds. I got it to work. http://www.wallacecompany.com/machine_shop/Shizuoka/Carousel_Overview-1a.png -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On 10/14/2011 10:30 PM, Kirk Wallace wrote: Homing will need to be worked out, or I could rig up an absolute encoder. I found that if I setp encoder.0.reset 1, the carousel starts rotating until I get it set back to 0, and of course the home position is then lost. I suppose the procedure is to move the carousel to the home position, disable the PWM output, then set and reset encoder.0.reset, ensure the position command is 0, then enable the PWM output. I seem to need to figure this stuff out the hard way. Congratulations on getting this going. This procedure sounds right to me, to avoid having the PID component getting out of whack. Karl -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Sat, 2011-10-15 at 06:37 -0700, Karl Cunningham wrote: On 10/14/2011 10:30 PM, Kirk Wallace wrote: Homing will need to be worked out, or I could rig up an absolute encoder. I found that if I setp encoder.0.reset 1, the carousel starts rotating until I get it set back to 0, and of course the home position is then lost. I suppose the procedure is to move the carousel to the home position, disable the PWM output, then set and reset encoder.0.reset, ensure the position command is 0, then enable the PWM output. I seem to need to figure this stuff out the hard way. Congratulations on getting this going. This procedure sounds right to me, to avoid having the PID component getting out of whack. Karl I haven't included the home switch (on the chain) yet, but the procedure should be the same. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On 14 October 2011 16:15, Kirk Wallace kwall...@wallacecompany.com wrote: As is, the straight PID works okay, but if I increase the maximum carousel speed (very likely), the start/stop jerk may become a problem. Any pointers on how to attack this problem would be appreciated. If you pass the command position to the PID through a limit3 block you should be able to control the accel-decel. -- atp Torque wrenches are for the obedience of fools and the guidance of wise men -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, Oct 14, 2011 at 08:15:52AM -0700, Kirk Wallace wrote: As is, the straight PID works okay, but if I increase the maximum carousel speed (very likely), the start/stop jerk may become a problem. Any pointers on how to attack this problem would be appreciated. Consider using a limit3 block. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
Kirk Wallace wrote: I now have an encoder mounted to my tool carousel. I linked the encoder to a PID and found that each pocket is 720 counts apart. I can travel in either way to get to a pocket, but there is no motion control, so the start and stop is pretty abrupt. I am starting to consider implementing some sort of motion planning to control the acceleration on each side of the move, but now that I actually need to create the solution it becomes more complicated. Finding the closest path to the target pocket should be easy. The next step is to feed position commands to the PID to control the trajectory. A couple of issues are that the carousel will not be an axis and the motion component is not available during a tool change, also position overshoot (but eventually corrected) is acceptable. As is, the straight PID works okay, but if I increase the maximum carousel speed (very likely), the start/stop jerk may become a problem. Any pointers on how to attack this problem would be appreciated. You cold build a stupid trajectory planner as a hal component. It would take a couple parameters such as max speed and acceleration, and a pin for final position. It would accelerate to max speed and then compute the point at which it needs to start decelerating. I did one of these in an FPGA driving a stepper where we wanted rapid movement to the final point without the risk of stalling the stepper. It was all done with just adds and subtracts, although all constants were hard-coded. I wouldn't think this would take more than a dozen lines of C code. You can still use the PID and whatever servo driver and drive would be used, just like it was an axis. Jon -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, Oct 14, 2011 at 10:50:54AM -0500, Jon Elson wrote: You cold build a stupid trajectory planner as a hal component. It would take a couple parameters such as max speed and acceleration, and a pin for final position. This is what limit3 does. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, Oct 14, 2011 at 10:15 AM, Kirk Wallace kwall...@wallacecompany.com wrote: I now have an encoder mounted to my tool carousel. I linked the encoder to a PID and found that each pocket is 720 counts apart. I can travel in either way to get to a pocket, but there is no motion control, so the start and stop is pretty abrupt. I am starting to consider implementing some sort of motion planning to control the acceleration on each side of the move, but now that I actually need to create the solution it becomes more complicated. Finding the closest path to the target pocket should be easy. The next step is to feed position commands to the PID to control the trajectory. A couple of issues are that the carousel will not be an axis and the motion component is not available during a tool change, also position overshoot (but eventually corrected) is acceptable. As is, the straight PID works okay, but if I increase the maximum carousel speed (very likely), the start/stop jerk may become a problem. Any pointers on how to attack this problem would be appreciated. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users dang its like an airpot! limit3 examples in http://www.linuxcnc.org/docview/html/hal_hal-examples.html hth tomp -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, 2011-10-14 at 10:58 -0500, Chris Radek wrote: On Fri, Oct 14, 2011 at 10:50:54AM -0500, Jon Elson wrote: You cold build a stupid trajectory planner as a hal component. It would take a couple parameters such as max speed and acceleration, and a pin for final position. This is what limit3 does. Thanks Andy, Chris, Jon. I considered limit3 but I thought it would not limit the deceleration until the endpoint was reached and the PID starts to call for it. This would draw out an overshoot, which technically, is okay, but not very elegant. I suppose I could try two endpoints. One to start the deceleration, the other the final stop point. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, 2011-10-14 at 11:08 -0500, Thomas Powderly wrote: ... snip dang its like an airpot! limit3 examples in http://www.linuxcnc.org/docview/html/hal_hal-examples.html hth tomp Thanks for the link. I haven't seen that one yet. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, Oct 14, 2011 at 09:22:00AM -0700, Kirk Wallace wrote: On Fri, 2011-10-14 at 10:58 -0500, Chris Radek wrote: On Fri, Oct 14, 2011 at 10:50:54AM -0500, Jon Elson wrote: You cold build a stupid trajectory planner as a hal component. It would take a couple parameters such as max speed and acceleration, and a pin for final position. This is what limit3 does. Thanks Andy, Chris, Jon. I considered limit3 but I thought it would not limit the deceleration until the endpoint was reached and the PID starts to call for it. This would draw out an overshoot, which technically, is okay, but not very elegant. No, on the contrary, it does exactly what you want. It will stop exactly at the destination endpoint without violating the given constraints of position and derivatives. This of course means it has to start decelerating before reaching the endpoint. limit3 - Limit the output signal to fall between min and max, limit its slew rate to less than maxv per second, and limit its second derivative to less than maxa per second squared. When the signal is a position, this means that the position, velocity, and acceleration are limited. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, 2011-10-14 at 11:47 -0500, Chris Radek wrote: ... snip No, on the contrary, it does exactly what you want. ... snip Great, thanks. I'm on my way to the shop to try it out. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On 14 October 2011 16:15, Kirk Wallace kwall...@wallacecompany.com wrote: the start/stop jerk may become a problem. Actually, this is possibly a case where you do want jerk-limited (rate of change of acceleration) limiting, and that would require the as-yet-unwritten limit4 HAL function. jerk-limited motion ought to rattle the tools round in the carousel less. -- atp Torque wrenches are for the obedience of fools and the guidance of wise men -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, 2011-10-14 at 18:22 +0100, andy pugh wrote: On 14 October 2011 16:15, Kirk Wallace kwall...@wallacecompany.com wrote: the start/stop jerk may become a problem. Actually, this is possibly a case where you do want jerk-limited (rate of change of acceleration) limiting, and that would require the as-yet-unwritten limit4 HAL function. jerk-limited motion ought to rattle the tools round in the carousel less. The original carousel used a Geneva drive: http://www.wallacecompany.com/machine_shop/Shizuoka/atc_manual/bandit_changer-0067.png which would start/stop for each pocket and move in one direction. If one wanted to go from T1 to T24, it would rattle the tools 24 times. It wasn't too bad and I suppose the tools would usually be in sequence, but I think the upgrade will be worth it. I went to the shop to install limit3, but got called away. Just in case anyone is interested, I did take a few of pictures before I left: http://www.wallacecompany.com/machine_shop/Shizuoka/100_1127-1a.JPG http://www.wallacecompany.com/machine_shop/Shizuoka/100_1131-1a.JPG http://www.wallacecompany.com/machine_shop/Shizuoka/100_1133-1a.JPG I tried to get a shot of the gear motor, but it is black and in a shadow, so I need to get more light. Now, I'm going back out to the shop, again. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On 10/14/2011 3:27 PM, Kirk Wallace wrote: On Fri, 2011-10-14 at 18:22 +0100, andy pugh wrote: On 14 October 2011 16:15, Kirk Wallacekwall...@wallacecompany.com wrote: the start/stop jerk may become a problem. Actually, this is possibly a case where you do want jerk-limited (rate of change of acceleration) limiting, and that would require the as-yet-unwritten limit4 HAL function. jerk-limited motion ought to rattle the tools round in the carousel less. The original carousel used a Geneva drive: http://www.wallacecompany.com/machine_shop/Shizuoka/atc_manual/bandit_changer-0067.png which would start/stop for each pocket and move in one direction. If one wanted to go from T1 to T24, it would rattle the tools 24 times. It wasn't too bad and I suppose the tools would usually be in sequence, but I think the upgrade will be worth it. I went to the shop to install limit3, but got called away. Just in case anyone is interested, I did take a few of pictures before I left: http://www.wallacecompany.com/machine_shop/Shizuoka/100_1127-1a.JPG http://www.wallacecompany.com/machine_shop/Shizuoka/100_1131-1a.JPG http://www.wallacecompany.com/machine_shop/Shizuoka/100_1133-1a.JPG I tried to get a shot of the gear motor, but it is black and in a shadow, so I need to get more light. Now, I'm going back out to the shop, again. The limit3 function is a very useful function. I have it running 3 axis on one machine at high speeds. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
Chris Radek wrote: On Fri, Oct 14, 2011 at 10:50:54AM -0500, Jon Elson wrote: You cold build a stupid trajectory planner as a hal component. It would take a couple parameters such as max speed and acceleration, and a pin for final position. This is what limit3 does. Yes, now that you point it out, it does exactly what is needed! I hadn't realized it would do all THREE parts of the problem. Jon -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Carousel Motion
On Fri, 2011-10-14 at 15:43 -0400, Dave wrote: ... snip The limit3 function is a very useful function. I have it running 3 axis on one machine at high speeds. I got it to work. http://www.wallacecompany.com/machine_shop/Shizuoka/Carousel_Overview-1a.png limit3 doesn't really work the way I would think a limit function would work, but it supplies just what I need very well. It took me way too many hours of tuning to figure out just what HALscope was showing me, that being the motor coupler was loose. After tightening it, it worked much better. I was expecting to need a hardware PWM generator, but the software generator works well. I have a Pluto-P PWM servo channel running my spindle, so I'll probably use another for the carousel as other things get sorted out. My encoder is from a broken Epson C80 printer. It has 4320 pulses per revolution but no index. I don't always need an index, so I should look for more C80's in my pile out back before it rains again. Free is good. Homing will need to be worked out, or I could rig up an absolute encoder. I found that if I setp encoder.0.reset 1, the carousel starts rotating until I get it set back to 0, and of course the home position is then lost. I suppose the procedure is to move the carousel to the home position, disable the PWM output, then set and reset encoder.0.reset, ensure the position command is 0, then enable the PWM output. I seem to need to figure this stuff out the hard way. I need to work more on parameters for setting gain and scales to make sure I don't saturate or not leave any bandwidth unused from each element in the chain (limit3, PID, PWMgen). Next I'll need to get the T numbers mapped to the encoder positions and get the gripper to work. Thanks everyone for the help. I'll get a video of the carousel when I get the camera figured out. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users