This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| mp:mst_dev [2023/08/10 19:32] – [CQM Posts - Future updates/improvements - Mass Updates] russell | mp: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 |
| '' | '' | ||
| Line 62: | Line 62: | ||
| {{: | {{: | ||
| - | == Revision to MU-0068 | + | == protretinc reset missing from some implementations of MU-0068 == |
| ''# | ''# | ||
| - | This MU introduced a bug. I did not reset the new variable it created in protretinc | + | This MU wasn't properly implemented in the Haas mills. The below reset was missing. Worth checking all other masters. CQMILL is correct already. |
| - | last_move_rev must be zeroed here: | + | |
| < | < | ||
| Line 75: | Line 74: | ||
| rev = zero | rev = zero | ||
| sav_rev = zero | sav_rev = zero | ||
| - | last_move_rev = zero | + | last_move_rev = zero # |
| cabs = zero | cabs = zero | ||
| csav = zero | csav = zero | ||
| Line 85: | Line 84: | ||
| ] | ] | ||
| </ | </ | ||
| - | |||
| - | MU-0068 needs a new revision, or a new MU entirely, to add the reset above.\\ | ||
| - | ''# | ||
| Line 93: | Line 89: | ||
| Turn '' | Turn '' | ||
| + | |||
| + | == Tool inspection in CQM posts == | ||
| + | |||
| + | Use '' | ||
| + | Note '' | ||
| + | |||
| + | == RAH plugin & Master == | ||
| + | |||
| + | Improvements for simultaneous 5-axis style toolpaths in Brodeur machine '' | ||
| + | |||
| + | == 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:\\ | ||
| + | |||
| + | < | ||
| + | pspindchng | ||
| + | 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, | ||
| + | ] | ||
| + | ] | ||
| + | !speed, !spdir2 | ||
| + | ] | ||
| + | </ | ||
| + | |||
| + | After:\\ | ||
| + | |||
| + | < | ||
| + | pspindchng | ||
| + | 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, | ||
| + | ] | ||
| + | ] | ||
| + | !speed, !spdir2 | ||
| + | ] | ||
| + | </ | ||
| + | |||
| + | == Shortest direction 0-360 causes infinite loop with axis subs (pcoutrev) == | ||
| + | \\ | ||
| + | |||
| + | Change found to fix: | ||
| + | |||
| + | Before: | ||
| + | |||
| + | < | ||
| + | pcoutrev | ||
| + | cdelta = csav - prv_csav | ||
| + | rev = last_move_rev | ||
| + | ... | ||
| + | ... | ||
| + | ... | ||
| + | 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 | ||
| + | ] | ||
| + | </ | ||
| + | |||
| + | After: | ||
| + | |||
| + | < | ||
| + | pcoutrev | ||
| + | cdelta = csav - prv_csav | ||
| + | rev = last_move_rev | ||
| + | ... | ||
| + | ... | ||
| + | ... | ||
| + | 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?? | ||
| + | ] | ||
| + | </ | ||
| + | |||
| ===== CQL Posts - Future updates/ | ===== CQL Posts - Future updates/ | ||
| Line 235: | Line 338: | ||
| # | # | ||
| + | </ | ||
| + | |||
| + | == MU related to above. Groove CC peck parameter change == | ||
| + | |||
| + | Groove peck amount MP documentation has wrong parameter. TESTED AND THIS WORKS.\\ | ||
| + | |||
| + | Before:\\ | ||
| + | |||
| + | < | ||
| + | fprmtbl 3 5 #Groove cut parameters | ||
| + | 13358 stepcc | ||
| + | 13138 directcc | ||
| + | 13352 dopeckcc | ||
| + | 13368 depthcc | ||
| + | 13364 clearcc | ||
| + | </ | ||
| + | |||
| + | After: | ||
| + | < | ||
| + | fprmtbl 3 5 #Groove cut parameters | ||
| + | 13358 stepcc | ||
| + | 13138 directcc | ||
| + | 13352 dopeckcc | ||
| + | 10316 depthcc | ||
| + | 13364 clearcc | ||
| </ | </ | ||
| Line 275: | Line 403: | ||
| | | ||
| + | </ | ||
| + | |||
| + | |||
| + | == 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)\\ | ||
| + | |||
| + | < | ||
| + | pread_g70 | ||
| + | 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, | ||
| + | fr_pos$ = abs(fr_pos$) | ||
| + | pfcalc | ||
| + | pbld, n$, *scclgcode, *ng70s, *ng70e, pffr, e$ <- | ||
| + | foundcc = one | ||
| + | rcc_flg$ = 7 | ||
| + | !rcc_flg$ | ||
| + | ] | ||
| + | ] | ||
| + | sav_seq = n$ | ||
| + | canneddone = two | ||
| + | continue_seq = two # | ||
| + | </ | ||
| + | |||
| + | == MU Lathe pfcout signed direction doesn' | ||
| + | |||
| + | pfcout signed direction doesn' | ||
| + | Can place '' | ||
| + | |||
| + | < | ||
| + | pfcout | ||
| + | ... | ||
| + | ... | ||
| + | ... | ||
| + | else, #Signed direction, modality on c_wnd, no incremental | ||
| + | [ | ||
| + | if fmtrnd(prv_c_wnd) <> fmtrnd(c_wnd), | ||
| + | [ | ||
| + | if not(indx_mc = 0 & rot_dir = 0) & not(indx_mc = 1 & rot_dir = 1), result = nwadrs(sc_minus, | ||
| + | else, result = nwadrs(str_cax_abs, | ||
| + | *cout_a | ||
| + | ] | ||
| + | !c_wnd, !cabs, !cinc | ||
| + | ] | ||
| </ | </ | ||