cancel
Showing results for 
Search instead for 
Did you mean: 

Post Configurator - Force Tool Output

Siemens Genius Siemens Genius
Siemens Genius

Hi everyone

Has anybody got a solution for forcing tool change for each operation even if they use the same tool?

This is for a post configurator post.

Thanks.

Paul

 

 

5 REPLIES

Re: Post Configurator - Force Tool Output

Siemens Valued Contributor Siemens Valued Contributor
Siemens Valued Contributor

Hi Paul,

 

you can use the entry points for that, e.g. the start_of_path_LIB_entry:

 

proc MOM_start_of_path_LIB_ENTRY {arg} {

switch $arg {

"start" {

   #see Blocktemplate in def-file to force address, in this case Sinumerik controller

    MOM_force once T M

    MOM_do_template tool_change

        }

    }

}

 

But keep in mind that you have to implement retract/ homeposition moves before/after the toolchange if it is necessary.

 

Also you can use the implementation with a Buffer which make it easier when touching this the next time:

 

proc MOM_start_of_path_LIB_ENTRY {arg} {

switch $arg {

"start" {

    LIB_GE_command_buffer CST_TOOLCHANGE

        LIB_GE_command_buffer {

            MOM_force once T M

            MOM_do_template tool_change

            } @CST_Toolchange_SOP

    LIB_GE_command_buffer_output   

        }

    }

}

 

Best regards

Thomas

Re: Post Configurator - Force Tool Output

Siemens Genius Siemens Genius
Siemens Genius

Hi Thomas

Add your solution to the service layer solved my request. I also had a conflict wot the Saftey Return Position in the Addition Motions tab. Basiclly I have a safe 5 axis post without the operator having to add special retun moves for clearance. Work well and simulates perfecty.

Thanks again

Paul

 

proc MOM_start_of_path_LIB_ENTRY {arg} {

switch $arg {

"start" {

    LIB_GE_command_buffer CST_TOOLCHANGE

        LIB_GE_command_buffer {

        #see Blocktemplate in def-file to force address

            MOM_force once T M

            MOM_do_template tool_change

           

            } @CST_Toolchange_SOP

    LIB_GE_command_buffer_output

    MOM_force once G_zero

    LIB_main_origin_call

        }

    }

   

}

Re: Post Configurator - Force Tool Output

Legend
Legend

It is a pitty that PC has no event-oriented user interface, etc - like PB has. Smiley Sad

So you have to debug, find library and write several lines only for forcing one address.

Force address in PB = two clicks/ few seconds,

And also you have clear order and system in postprocesors procedures etc.

 

 

---------------------------------------------
#♫ PB, 5ax, itnc, nx, vericut ♫ #

Re: Post Configurator - Force Tool Output

Siemens Genius Siemens Genius
Siemens Genius

I want to give a follow up. I still had an issue where the forced tool change command would stop the spindle so I needed a spinde line forced also.

Here is the new code and it works fine. Tested at the machine.

 

 

proc MOM_start_of_path_LIB_ENTRY {arg} {

switch $arg {

"start" {

   LIB_GE_command_buffer CST_TOOLCHANGE

       LIB_GE_command_buffer {

           MOM_force once T M

           MOM_do_template tool_change

           } @CST_Toolchange_SOP

   LIB_GE_command_buffer_output

   MOM_force Once G_zero

   LIB_main_origin_call

   MOM_force once S M_spindle

   MOM_do_template spindle_rpm

 

 

       }

   }

}

 

Re: Post Configurator - Force Tool Output

Siemens Genius Siemens Genius
Siemens Genius

Hello Juraj,

 

we do have two mechanics in Post Configurator that allow you to work with the MOM events, like you did with Post Builder: The Command Sequences and the Entry Points. Both will allow you to attach custom Tcl code to a certain mom event, without interferring with the other layers. We went this way to modularize the post processor. This way you can change events in every layer. We are looking into offering a UI for this, but for the moment this needs to be done through Tcl in the service layer. 

 

You can still force out MOM blocks, as you did before through the Tcl command, or by using the new DEF Editor (NX11.0.2) and setting a block to non-modal. 

 

Regards, 

Florian

 

 

Learn online





Solution Information