Re: [Emc-users] bldc/axis homing

2013-03-02 Thread Peter C. Wallace
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

2013-03-02 Thread Todd Zuercher
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

2013-03-01 Thread andy pugh
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

2013-03-01 Thread Klemen Dovrtel
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

2013-02-28 Thread andy pugh
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

2013-02-28 Thread Klemen Dovrtel
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