NX How to output a feed rate immediately after every rapid motion with Turbo Mode on

2023-05-30T11:12:47Z
NX for Manufacturing

Summary


Details

Heidenhain controlled CNC has a requirement where the next non-rapid move following an FMAX move must output a feed rate, otherwise the machine tries to continue in rapid mode and locks up.  For example, lines 26, 35, and 45 below illustrate feed rate word output needs:

23 L X-2.478200 Y-2.809300 FMAX

24 L Z2.468500 FMAX

25 L Z1.958500 FMAX M8

26 L X-2.460900 Y-2.710900 RL F450.

27 L Y-2.460900

28 L Y2.460900

29 L X2.460900

30 L Y-2.460900

31 L X-2.460900

32 L X-2.710900

33 L X-2.809300 Y-2.478200 R0

34 L X-2.112400 Y-2.484200 Z1.948500 FMAX

35 L X-2.210900 Y-2.466800 RL F450.

36 L X-2.460900

37 L X-2.466800

38 L Y2.466800

39 L X2.466800

40 L Y-2.466800

41 L X-2.460900

42 L X-2.710900

43 L X-2.809300 Y-2.484200 R0

44 L X-2.112400 Y-2.485900 Z1.938500 FMAX

45 L X-2.210900 Y-2.468500 RL F450.

46 L X-2.460900

The Feed word can be output as needed if we either turn off turbo mode in the post and use standard tcl logic to force the address, or we leave turbo mode on and make the F address nonmodal.  Neither of these are good solutions, however.

Solution

You can force the feed word if you are using the 'advanced' turbo mode in the post.  


To force F address in advance turbo mode, use the command MOM_set_adv_turbo_callback.  Below is an example of the required logic to be added to a tcl layer:

proc output_feed_rate {} {

   if {$::mom_motion_event =="rapid_move"} {

      MOM_force once F

   }

}

LIB_GE_command_buffer_edit_append MOM_start_of_path_LIB MOM_start_of_path_LIB_ENTRY_start {

MOM_set_adv_turbo_callback -observer mom_motion_event output_feed_rate

} _ForceFAddress

LIB_GE_command_buffer_edit_append MOM_end_of_path_LIB MOM_end_of_path_LIB_ENTRY_start {

MOM_set_adv_turbo_callback -observer

} _ForceFAddressUnset

KB Article ID# PL8719466

Contents

SummaryDetails

Associated Components

Manufacturing Post Configurator