Re: [Emc-users] bldc/axis homing
On Fri, 1 Mar 2013, Todd Zuercher wrote: > Date: Fri, 1 Mar 2013 07:52:22 -0500 (EST) > From: Todd Zuercher > Reply-To: "Enhanced Machine Controller (EMC)" > > To: Klemen Dovrtel , > "Enhanced Machine Controller (EMC)" > Subject: Re: [Emc-users] bldc/axis homing > > I may be having a similar problem. I am using home to index on a ordinary > rotary servo machine and the first time I try to home after starting > Linuxcnc, one axis always seems to set a following a error, If I try to home > it a second time it will home fine? I am not using bldc, so it might be > possible that your following error on homing problem could be completely > unrelated to bldc using index to initialize. What is more odd is that I > only seem to have a problem with one axis (out of 4) doing it. I think Andy > might be on the right track with thinking it may have something to do with > the counts resetting to zero when the index is tripped for the first time. > But the question still remains, what to do about it? If you have reasonably late LinuxCNC version, the PID component has an input for index-enable which works arond the thump on index problem, heres the manual page info about this pin: pid.N.index-enable bit in On the falling edge of index-enable, pid does not update the internal command derivative estimate. On systems which use the encoder index pulse, this pin should be connected to the index- enable signal. When this is not done, and FF1 is nonzero, a step change in the input command causes a single-cycle spike in the PID output. On systems which use exactly one of the -deriv inputs, this affects the D term as well. Todd Zuercher mailto:zuerc...@embarqmail.com Peter Wallace Mesa Electronics (\__/) (='.'=) This is Bunny. Copy and paste bunny into your (")_(") signature to help him gain world domination. -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] bldc/axis homing
I may be having a similar problem. I am using home to index on a ordinary rotary servo machine and the first time I try to home after starting Linuxcnc, one axis always seems to set a following a error, If I try to home it a second time it will home fine? I am not using bldc, so it might be possible that your following error on homing problem could be completely unrelated to bldc using index to initialize. What is more odd is that I only seem to have a problem with one axis (out of 4) doing it. I think Andy might be on the right track with thinking it may have something to do with the counts resetting to zero when the index is tripped for the first time. But the question still remains, what to do about it? - Original Message - Hello everybody, I would like to somehow Home the bldc linear motor using axis GUI home button. I am using bldc in qi mode, so it has to be homed using bldc.init (separate from axis GUI). But on the other side bldc and axis has to be homed simultaneously because of index-enable signal and latching of encoder value. So i have to somehow trick the axis. Any idea how could i do that? One of my idea was to use the axis.homing -> bldc-init to start the bldc homing and at at the same time temporary change the axis.f-error-lim value (so that axis homing won't stop because of following error). But i could not find the axis.f-error-lim INPUT pin. Is there some other option to temporary change the f-error limit value? Is there any other option how to home the axis and bldc? Regards, Klemen -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Todd Zuercher mailto:zuerc...@embarqmail.com -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] bldc/axis homing
On 1 March 2013 07:04, Klemen Dovrtel wrote: > BTW, I thought the index and home is the same thing. In my case the index > switch signals the absolute position on the axis, so there is no need for > additional homing afterwards Normally the index is used as a high-precision home switch, as an adjunct to a mechanical or optical home-switch. In your case the index is both the axis home and the motor home. I think you probably need to use it twice. Note that the bldc component uses raw-counts, which does not zero when the index-enable resets, and the axis position feedback uses counts, which does reset to zero on-index. I expect that it is this unexpected reset-to-zero of the axis feedback during bldc homing that is causing the following error problem. This puzzle need input from someone with more idea than me about where in the stertup sequence f-error detection is enabled, and possibly how it is masked at the end of homing. -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] bldc/axis homing
This (mux2 and short-circuited feedback loop) is a good idea, i will try it. BTW, I thought the index and home is the same thing. In my case the index switch signals the absolute position on the axis, so there is no need for additional homing afterwards. This is why I thought it would be better to use the home button instead of e-stop + homing. Regards, Klemen From: andy pugh To: Klemen Dovrtel ; Enhanced Machine Controller (EMC) Sent: Thursday, February 28, 2013 2:16 PM Subject: Re: [Emc-users] bldc/axis homing On 28 February 2013 10:42, Klemen Dovrtel wrote: > Is there any other option how to home the axis and bldc? This quite an interesting puzzle.. One possibility might be to use a mux2 in the HAL to feed the value of axis.N.motor-pos-fb. Inputs would be axis.N.motor-pos-cmd and encoder.N.position. So, in one state the feedback loop is completely short-circuited, and in the other it works normally. The Axis "Home" button explicitly starts the homing sequence. I suspect that this could be deleted (or altered) in the .axisrc file (but I am not expert enough in Python to say how). What would be needed would be a GUI button that starts the bldc homing sequence. Then the init-done signal would start the standard homing sequence _and_ re-enable f-error checking via the mux2. This still might not work. When the mux2 switches it may well be that the f-error is big. I don't know at what point f-error checking is enabled. I thought you had the motors homing when coming out of e-stop? Much as I dislike this approach it ought to avoid the problem: e-stop off, f-error checking not yet enabled, motors initialise. machine-on, f-error enabled, command position set to actual position, so no f-error home-pressed, motors search for home index. is it possible that the real problem is the three-way debate between bldc.index-enable, encoder.index-enable and axis.index-enable? -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] bldc/axis homing
On 28 February 2013 10:42, Klemen Dovrtel wrote: > Is there any other option how to home the axis and bldc? This quite an interesting puzzle.. One possibility might be to use a mux2 in the HAL to feed the value of axis.N.motor-pos-fb. Inputs would be axis.N.motor-pos-cmd and encoder.N.position. So, in one state the feedback loop is completely short-circuited, and in the other it works normally. The Axis "Home" button explicitly starts the homing sequence. I suspect that this could be deleted (or altered) in the .axisrc file (but I am not expert enough in Python to say how). What would be needed would be a GUI button that starts the bldc homing sequence. Then the init-done signal would start the standard homing sequence _and_ re-enable f-error checking via the mux2. This still might not work. When the mux2 switches it may well be that the f-error is big. I don't know at what point f-error checking is enabled. I thought you had the motors homing when coming out of e-stop? Much as I dislike this approach it ought to avoid the problem: e-stop off, f-error checking not yet enabled, motors initialise. machine-on, f-error enabled, command position set to actual position, so no f-error home-pressed, motors search for home index. is it possible that the real problem is the three-way debate between bldc.index-enable, encoder.index-enable and axis.index-enable? -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] bldc/axis homing
Hello everybody, I would like to somehow Home the bldc linear motor using axis GUI home button. I am using bldc in qi mode, so it has to be homed using bldc.init (separate from axis GUI). But on the other side bldc and axis has to be homed simultaneously because of index-enable signal and latching of encoder value. So i have to somehow trick the axis. Any idea how could i do that? One of my idea was to use the axis.homing -> bldc-init to start the bldc homing and at at the same time temporary change the axis.f-error-lim value (so that axis homing won't stop because of following error). But i could not find the axis.f-error-lim INPUT pin. Is there some other option to temporary change the f-error limit value? Is there any other option how to home the axis and bldc? Regards, Klemen -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_feb ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users