Very interesting stuff! I have some ideas for how to implement a more
EDM-appropriate reverse run mechanism based on what you describe. Here's a
short list of new features we would need to address your concerns

1) "Retract-to-setpoint-on-abort" modal code. If a retract point is set,
the machine would automatically retract to that position on abort. Abort
would also clear this set point.

Perhaps this pair of G codes could work (chosen somewhat arbitrarily):
G15 X## Y## Z## = set a retract point in local coordinates (and enable
auto-retract mode). Now, when a program is aborted early, the machine will
rapid to this position after stopping it's motion along the path.
G16 = disable auto-retract

I think we could do something like this by piggy-backing on the abort
command in task. I'd have to take a closer look at the logic surrounding
the abort process, but if we're lucky, this could happen without having to
change anything at the TP level.

2) WEDM-style "jitter" feeding via HAL velocity input of some sort.

I agree that process control is important to address. If you had to write
an EDM path velocity controller as a HAL component, what inputs / outputs
would you want? Here's my impression so far:

   - Input: desired average feed
   - Input: process data (voltage, current)
   - Optional Parameter: maximum path velocity / acceleration
   - Output: desired instantaneous velocity along cut path

It sounds like a HAL pin to directly specify target velocity along the
motion path would be useful for this. It would take a bit of plumbing in
motion to implement, but I think this is doable without major disruption.

-Rob

On Sat, Apr 11, 2015 at 11:13 AM, TJoseph Powderly <tjt...@gmail.com> wrote:

> resending, no attachment
> using url instead
>
> https://www.dropbox.com/s/xbmd0cij2ml9knn/edmGapSignal-vs-XpositionOverTime.jpg?dl=0
>
>
> -------- Original Message --------
> Subject: Re: [Emc-developers] Reverse Run
> Date: Thu, 09 Apr 2015 13:07:06 -0500
> From: TJoseph Powderly <tjt...@gmail.com>
> To: EMC developers <emc-developers@lists.sourceforge.net>
>
> Robert
> thanks for looking into this
>
> I'd like you to look at a real EDM cut
> I've included a plot, but if you could actually watch the motor
> during a real cut you would observe important info.
>
> You may find that the adaptive feedrate idea is very wrong for edm.
>
> The velocity is constantly changing sign during a real cut.
> I include a plot of a real cut , and it is an extremely stable cut.
> Its a sinker EDM plunging a .025x.375 rib into hastalloy.
>
> notice the position proceeds in a single direction
> but at any one servo update period, the direction is fwd or reverse
> according the the process. The directional change is the jiggle of the
> line.
> The direction of the last period has nothing to do with the value of the
> next period.
>
> so, imo the adaptive feed is incorrect
> imo adaptive feed reduces the velocity to below the potential velocity
> (the efficient target point of the control loop)
> and thus forces inefficiency.
>
> Adaptive feed ignores the process and 'works' by timidly staying way
> behind any efficient/aggressive seeking of the control point.
>
> Yes i know i saw the edm maple leaf cut once, ask the author how it
> compared to the other machines in his edm repair shop.
>
> But even with this reduction, the work you've done is very interesting.
>
> Please remember there are 2 different EDM retracts/reversals
> short term and long term
>
> the immediate reversals are constant and of small dimension
> see the picture, the jiggly advance is _necessary_ for the process.
>
> The short term are controlled by the small fluctuations of the process
> the efficiency of the cut is determined by following the process closely.
>
> The long term reversals are after near fatal errors,
> these attempt to clear the gap when the process control
> has failed badly.
>
> ( the better the process control, the lower the need for
> long term reversals )
>
> I'd also suggest that there are 4 common forms of edm
> Examining them shows their different TP strategies.
>
> They are graduated in difficulty of control as follows
> 1) easiest, HOLE DRILLING, moves in 1 axis between 2 limits
> this can be done in hal w/o tp changes
>
> 2) middle difficulty, SINK EROSION, including orbiting. this requires
> a 'sky blue' safe position to retreat to.
>
> During a roughing operation ( creates the net shape )
> the tool simply can retract to the point where edm power was turned on.
> IF the toll achieves the end of roughing,
> i call its position ( duh ) the 'roughing point'.
> All finishing operation move FROM the roughing point
> and return TO the roughing point.
>
> Several excursions (orbits) occur,
> each with slightly lower power,
> and slightly larger excursions
> ( the range of motion is 0 to 0.5mm in my experience )
>
> Each excursion begins and ends at the roughing point
> During each excursion the tool expands the eroded volume according to
> a prescribed pattern.
> DURING the excursion, the tool can retreat towards
> the roughing point. ( think retreats to high ground )
>
> Example: a 'circular orbit' is really a trace over a conical surface
> the tip of the cone is the roughing point. The tool follows the
> slope of the cone towards its base, then travels around the base.
> IF there is a problem, the retract is towards the cone tip NOT
> along the previous path. ( sky blue remember? )
>
> theres more to this, i've written corner picking, square ,circular ,
> spherical, barrel and other orbits but they all follow the sky blue rules.
>
> 3) WEDM this is the only EDM that needs to retrace the old path.
> And the progress is still true EDM, not
> adaptive-slowed-down-slower-than-the-process-wants strategy. So the
> short term is constantly changing. The long term allows for retracting
> thru previous geometric commands.
>
> BTW, once this ( retract thru prev geometry) is needed, the process is
> pretty much out of control and the action is NOT a strategy to make the
> cut better.
>
> 4) EDM Grinding
> i've only worked on a few edm grinders, and they really fall into
> category 1. they really dont have a long term backup, as they have
> pretty perfect flushing. I just never saw one back up far.
> Yes they could use hal for stepover and drop,
> like the hydro-mechanical trips and levers common on any wet grinder.
>
> anyway
> please look at the picture
>
> the top trace is the immediate gap error value
>    ( summary, its 0-5V with 2.5V= null velocity)
>
>
> > Ok, based on what everyone has said, I'm imagining the following
> interface:
> > * a HAL pin to allow / disallow reverse run
>
> the hal pin would need to be on the servo thread
> and expect it to get banged a lot
>
> > * a HAL pin to command reverse /forward direction (with safe state change
> > handled by TP)
>
> my elox agie and heidenhain used M3 or similar
> Some used the 'spindle' to turn on the cutting power
> Some had delay till the power was sensed before allowing 'edm motion'
>
> If the power was turned on while the machine was shorted, the current
> simply shunts thru the work ( no damage usually and a noobie mistake)
> and the system see it has already backed up to the start point, and
> stops ( it began there and didnt have to move to get to fatal condition)
>
>
> > * adaptive feeds of -1.0 to 0 trigger reverse run at the scaled feed rate
> > (with safe state change handled by TP)
>
> i disagree with adaptive feed and will move on
>
> the velocity can be fed into a 'velocity curve' comp.
>
> with the error signal as input, two simple curves meet at
> the 0 velocity point ( no error = no motion )
> the 2 curves are infeed and outfeed
>
> as the error moves away from the null point there can be
> a 'dont care zone' with minimal velocity changes.
> the dampens an overactive system
>
> further away there are 'pay attention' zones.
>
> I set mine up to run away fast
> and to approach cautiously.
>
>
> > * motion commands to switch direction (as implemented now)
> >
> > Am I missing anything?
> >
>
> i hope you best of luck in this work
>
> i hope you dont work a lot on the TP side
> without considering the process control side.
>
> because driving down the street should not
> be primarily avoiding the telephone poles.
>
> that works but it aint good driving.
>
> regards TomP tjtr33
>
>
>
>
>
> ------------------------------------------------------------------------------
> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
> Develop your own process in accordance with the BPMN 2 standard
> Learn Process modeling best practices with Bonita BPM through live
> exercises
> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual-
> event?utm_
> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
> _______________________________________________
> Emc-developers mailing list
> Emc-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to