User Tools

Site Tools


mp:mst_dev

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mp:mst_dev [2023/08/10 19:32] – [CQM Posts - Future updates/improvements - Mass Updates] russellmp:mst_dev [2024/06/03 16:55] (current) – [CQM Posts - Future updates/improvements - Mass Updates] russell
Line 1: Line 1:
-===== All posts - Future updates/improvements - Mass Updates =====+===== All posts - Future engine updates improvements - Mass Updates =====
  
 ''round_opt$'' initialization possible change. Note ticket# in title: ''round_opt$'' initialization possible change. Note ticket# in title:
Line 62: Line 62:
 {{:mp:cd_subs_before.png?600|}} {{:mp:cd_subs_before.png?600|}}
  
-== Revision to MU-0068 or protretinc does not work ==+== protretinc reset missing from some implementations of MU-0068 ==
  
 ''# CQI 11/24/20  -  MU-0068, pcoutrev duplicate call calc correction, rjj'' ''# CQI 11/24/20  -  MU-0068, pcoutrev duplicate call calc correction, rjj''
  
-This MU introduced a bugI did not reset the new variable it created in protretinc +This MU wasn't properly implemented in the Haas millsThe below reset was missing. Worth checking all other masters. CQMILL is correct already.
-last_move_rev must be zeroed here:+
  
 <code> <code>
Line 75: Line 74:
         rev = zero         rev = zero
         sav_rev = zero         sav_rev = zero
-        last_move_rev = zero+        last_move_rev = zero  #MU-0068 - Reset
         cabs = zero         cabs = zero
         csav = zero         csav = zero
Line 85: Line 84:
         ]         ]
 </code> </code>
- 
-MU-0068 needs a new revision, or a new MU entirely, to add the reset above.\\ 
-''# CQI 08/10/23  -  MU-0068b, protretinc reset of last_move_rev, rjj''\\ 
  
  
Line 93: Line 89:
  
 Turn ''CQM_LUCAS_30DCS108_HMC_DYNAPATH_3X'' for Longwall Assc into a DynaPath conversational master post. (Ancient format) Turn ''CQM_LUCAS_30DCS108_HMC_DYNAPATH_3X'' for Longwall Assc into a DynaPath conversational master post. (Ancient format)
 +
 +== Tool inspection in CQM posts ==
 +
 +Use ''CQM_HAAS_EC_4X'' under ''Northrop Grumman Corp (Baltimore - Airport)'' [ #57083 ] to build proper tool inspection for CQM masters.\\
 +Note ''pretract_insp'' and ''pretract_cool_off_insp'' and ''pcool_on_insp''. This was built for X-style coolant. Test V9 style coolant.\\
 +
 +== RAH plugin & Master ==
 +
 +Improvements for simultaneous 5-axis style toolpaths in Brodeur machine ''YCM AGG A ABOUT Z'' post to move into RAH plugin and Master. Around 4/30/2024\\
 +
 +== Okuma Macro Mult added to VMC masters ==
 +
 +Also refine HMC version based on changes to JLG Industries COM_OKUMA_GENOS_4X delivered 5-9-2024 #32765\\
 +
 +== prevent spindle stop if already stopped at change of spindle ==
 +
 +pspindchng prevent spindle stop if already stopped at change of spindle.\\
 +
 +Before:\\
 +
 +<code>
 +pspindchng      #Spindle speed change
 +      if prv_spdir2 <> spdir2 & prv_speed <> zero, pbld, n$, *sm05, e$
 +      if not(canned_tap = 1),  #spind switch only on move line for LH tap - MU-0044
 +        [
 +        if prv_speed <> speed | prv_spdir2 <> spdir2,
 +          [
 +          if speed,
 +            [
 +            pbld, n$, pgear, e$
 +            pbld, n$, pfspindle_out, e$
 +            ]
 +          ]
 +        !speed, !spdir2
 +        ]
 +</code>
 +
 +After:\\
 +
 +<code>
 +pspindchng      #Spindle speed change
 +      if prv_spdir2 <> spdir2 & prv_spdir2 <> 1 & prv_speed <> zero, pbld, n$, *sm05, e$
 +      if not(canned_tap = 1),  #spind switch only on move line for LH tap - MU-0044
 +        [
 +        if prv_speed <> speed | prv_spdir2 <> spdir2,
 +          [
 +          if speed,
 +            [
 +            pbld, n$, pgear, e$
 +            pbld, n$, pfspindle_out, e$
 +            ]
 +          ]
 +        !speed, !spdir2
 +        ]
 +</code>
 +
 +== Shortest direction 0-360 causes infinite loop with axis subs (pcoutrev) ==
 +\\
 +
 +Change found to fix:
 +
 +Before:
 +
 +<code>
 +pcoutrev        #Rotary axis revolution calculation (Modify for wind-up)
 +      cdelta = csav - prv_csav
 +      rev    = last_move_rev    #Reset rev  - MU-0068, rjj
 +      ...
 +      ...
 +      ...
 +      if index <> 1 & (rot_type > 0 | (one_rev & gcode$ = zero & (cuttype <> one | opcode$ = 3 | opcode$ = 16))),
 +        [
 +        while fmtrnd(cabs) >= 360,
 +          [
 +          cabs = cabs - 360
 +          rev = rev - 1
 +          ]
 +        while fmtrnd(cabs) < 0,
 +          [
 +          cabs = cabs + 360
 +          rev = rev + 1
 +          ]
 +</code>
 +
 +After:
 +
 +<code>
 +pcoutrev        #Rotary axis revolution calculation (Modify for wind-up)
 +      cdelta = csav - prv_csav
 +      rev    = last_move_rev    #Reset rev  - MU-0068, rjj
 +      ...
 +      ...
 +      ...
 +      if index <> 1 & (rot_type > 0 | (one_rev & gcode$ = zero & (cuttype <> one | opcode$ = 3 | opcode$ = 16))),
 +        [
 +        while fmtrnd(cabs) >= 360,
 +          [
 +          cabs = cabs - 360
 +          if cuttype <> one, rev = rev - 1   #MU??
 +          ]
 +        while fmtrnd(cabs) < 0,
 +          [
 +          cabs = cabs + 360
 +          if cuttype <> one, rev = rev + 1   #MU??
 +          ]
 +</code>
 +
 ===== CQL Posts - Future updates/improvements - Mass Updates ===== ===== CQL Posts - Future updates/improvements - Mass Updates =====
  
Line 235: Line 338:
 #       Param   Variable to load value into #       Param   Variable to load value into
  
 +</code>
 +
 +== MU related to above. Groove CC peck parameter change ==
 +
 +Groove peck amount MP documentation has wrong parameter. TESTED AND THIS WORKS.\\
 +
 +Before:\\
 +
 +<code>
 +fprmtbl 3 5 #Groove cut parameters
 +        13358 stepcc
 +        13138 directcc
 +        13352 dopeckcc
 +        13368 depthcc  #01/07/2013-was 10316 - MU-0009, rjj
 +        13364 clearcc
 +</code>
 +
 +After:
 +<code>
 +fprmtbl 3 5 #Groove cut parameters
 +        13358 stepcc
 +        13138 directcc
 +        13352 dopeckcc
 +        10316 depthcc  #01/07/2013-was 10316 - MU-0009, rjj
 +        13364 clearcc
 </code> </code>
  
Line 275: Line 403:
          *thdrdlt, pffr, e$ #SLK rem *thdrdlt, 9/4/15   #ADDED thdrdlt here####          *thdrdlt, pffr, e$ #SLK rem *thdrdlt, 9/4/15   #ADDED thdrdlt here####
  
 +</code>
 +
 +
 +== MU Lathe canned cycles do not always output ref points at start and end ==
 +
 +Source: Latest MPLFAN has a swiss cheese of random additions to the lathe canned cycle area that are required. Will take some work to pin down how it differs from our master and add in the additions.\\
 +\\
 +
 +== MU Lathe canned finish programmed feedrate output on G70 line ==
 +
 +Update to add feed rate entered on G70 canned finish line in lathe canned cycles.\\
 +starts at the fr_pos$ lines and ends after the output line.(4 lines)\\
 +
 +<code>
 +pread_g70       #Read G70 recall buffer
 +      foundcc = zero
 +      size2 = rbuf (two, zero)
 +      wc2 = one
 +      while wc2 <= size2 & foundcc = zero,
 +        [
 +        fcc_subid = rbuf (two, wc2)
 +        if fcc_subid = sub_op_id$,
 +          [
 +          gcodecc = zero
 +          ng70s = fcc_ng70s
 +          ng70e = fcc_ng70e
 +          fr_pos$ = opinfo(10030,0)   <-
 +          fr_pos$ = abs(fr_pos$)      <-
 +          pfcalc          #Feedrate calculations, gcode 0 does not evaluate    <-
 +          pbld, n$, *scclgcode, *ng70s, *ng70e, pffr, e$   <-
 +          foundcc = one
 +          rcc_flg$ = 7
 +          !rcc_flg$
 +          ]
 +        ]
 +      sav_seq = n$
 +      canneddone = two
 +      continue_seq = two  #10/30/2012-add MU-0002, rjj
 +</code>
 +
 +== MU Lathe pfcout signed direction doesn't have a C0 on first live tool op ==
 +
 +pfcout signed direction doesn't have a C0 on first live tool op.\\
 +Can place ''prv_c_wnd = c9k'' in ''pheader_out'' as a band aid fix that shouldn't affect anything else.\\
 +
 +<code>
 +pfcout
 +...
 +...
 +...
 +        else, #Signed direction, modality on c_wnd, no incremental
 +          [
 +          if fmtrnd(prv_c_wnd) <> fmtrnd(c_wnd),     #THIS CONDITION PREVENTS C0 at STARTUP if 1ST POSITION IS C0
 +            [
 +            if not(indx_mc = 0 & rot_dir = 0) & not(indx_mc = 1 & rot_dir = 1), result = nwadrs(sc_minus, cout_a)  #MU-0045 - Incl rot_dir, rjj
 +            else, result = nwadrs(str_cax_abs, cout_a)
 +            *cout_a
 +            ]
 +          !c_wnd, !cabs, !cinc
 +          ]
 </code> </code>
  
mp/mst_dev.1691695924.txt.gz · Last modified: 2023/08/10 19:32 by russell