58
Unrestricted © Siemens AG 2015 Realize innovation. Post Configurator Enablement Training Hands-On Training on the new Post Configurator Day 2 & 3

Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Embed Size (px)

Citation preview

Page 1: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015 Realize innovation.

Post Configurator Enablement TrainingHands-On Training on the new Post Configurator – Day 2 & 3

Page 2: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 2 Siemens PLM Software

Agenda

Topic

Tcl Modifications - Basic Changing the NC Output – Creating the UI for the Tooling Information”

Debugging the Post Processor Changing the NC Output – Outputting the Tooling Information”

Tcl Modifications - Advanced Changing the Access Level of an Object Adding a new Level to the Sourcing UDE Handling Add new Levels to the Library Add new Levels to the Library

Q&A

Page 3: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 3 Siemens PLM Software

Welcome

Page 4: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 4 Siemens PLM Software

Presenters

Florian WeisseMTE - Post Configurator

Siemens PLM, Berlin, Germany

[email protected]

+49 (30) 467-775-52

Thomas JenenschMTE - Post Configurator

Siemens PLM, Berlin, Germany

[email protected]

+49 (30) 467-775-35

Page 5: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 5 Siemens PLM Software

Changing the NC Output – Creating the UI for

the Tooling Information”

Page 6: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 6 Siemens PLM Software

What is TCL?

The name Tcl is derived from "Tool Command Language" and is pronounced "tickle". Tcl is a radically

simple open-source interpreted programming language that provides common facilities such as

variables, procedures, and control structures as well as many useful features that are not found in

any other major language.

You’ll find all kind of manuals about TCL on the web. One possible starting point could be :

http://en.wikibooks.org/wiki/Tcl_Programming/Introduction

NX Postprcessors are TCL based (MOM environemnt is a TCL environement)

PostConfigurator post processors are based on the existing MOM architecture

Page 7: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 7 Siemens PLM Software

Configuration Objects / Properties

2. Configuration Property

1. Configuration Objects (Property groups)

1 2

Page 8: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 8 Siemens PLM Software

Define a Configuration Object

use Intellisense from Tcl-Editor for fast creating of new objects

rename the object and the UI-name/ tooltip

Page 9: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 9 Siemens PLM Software

Define a Property within an Object 1/4

Create a new INT- property within the Tcl-editor

define, rename and set access level

optional define a DropDown menu for the UI

Page 10: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 10 Siemens PLM Software

Define a Property within an Object 2/4

TCL Code Description

set id "output_tool_dimension" Unique identifyier of property

set $id 0 Default value

set options($id) {NO|YES} Option list to display in DropDown menu

set option_ids($id) {0|1} Return values assigned to menu options

set datatype($id) INT Datatype of the property

set access($id) 222 Define access rights for property

set dialog($id) {{Output Tool Dimension}} Property name shown in UI

set descr($id) {{Turn the output of the

tool dimension on or off}}

ToolTip for UI

set ui_parent($id) Define in which group this property will be

shown

Optional, Only needed for DropDown menu

Page 11: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 11 Siemens PLM Software

Define a Property within an Object 3/4

to put the property in an existing group turn the Show element ID‘s ON

all Node-ID‘s and Group-ID‘s are shown in the UI

Page 12: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 12 Siemens PLM Software

Define a Property within an Object 4/4

Set the ui_parent for the property to

get it in the group

Page 13: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 13 Siemens PLM Software

LIB_GE_CREATE_obj CONF_CUSTOM_tool_dimension {} {

LIB_GE_property_ui_name "Define Tool Dimension Output"

LIB_GE_property_ui_tooltip "Define if and how Tool Dimension should be output"

set id "output_tool_dimension"

set $id 0

set options($id) {NO|YES}

set options_ids($id) {0|1}

set datatype($id) INT

set access($id) 222

set dialog($id) {{Output Tool Dimension}}

set descr($id) {{Turns the output of the tool dimension on or off}}

Set ui_parent($id) “@CUI_ToolChangeGroup”

}

ConfigurationProperty

Fully defined Configuration Object

ConfigurationObject

Page 14: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 14 Siemens PLM Software

Customize Grouping 1/3

dialog($id)

LIB_GE_property_ui_tooltip

LIB_GE_prop

erty_ui_nam

e (Group)

$id / options($id)

descr($id)

Page 15: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 15 Siemens PLM Software

Customize Grouping –Create a new group 2/3

for the UI there are templates, e.g. for Nodes, Groups

there is a special datatype for groups

the ui_parent can set to existing nodes or

groups

for create a new Main group use „root“

Page 16: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 16 Siemens PLM Software

Customize Grouping – add the property to a new group 3/3

groups only visible if they contain a

property

propertys must be created in an own

object

id of the group is the ui_parent for the

property

Page 17: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 17 Siemens PLM Software

Property Datatypes

set datatype($id) INT

set datatype($id) DOUBLE / REAL

set datatype($id) STRING

set datatype($id) Vector (Vector of 3 doubles)

set datatype($id) Point

set datatype($id) GROUP (for propertys)

set datatype($id) NODE (need for own groups in the tree)

Set datatype($id) COMMANDBLOCK (for tcl Code or Block templates)

Page 18: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 18 Siemens PLM Software

Setting the access level

Access Code Basic License Advanced License Full License

222 Read / Write Read / Write Read / Write

122 Read Read / Write Read / Write

022 Hidden Read / Write Read / Write

012 Hidden Read Read / Write

002 Hidden Hidden Read / Write

001 Hidden Hidden Read

000 Hidden Hidden Hidden

set access($id) 2 22

- Access level is coded by number:

Hidden

0

Read Access

1

Read & Write

2

Page 19: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 19 Siemens PLM Software

Cheat Sheet

Page 20: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 20 Siemens PLM Software

Example – Create 2nd property

LIB_GE_CREATE_obj CONF_CUSTOM_tool_dimension {} {

LIB_GE_property_ui_name "Define Tool Dimension Output"

LIB_GE_property_ui_tooltip "Define if and how Tool Dimension should be output"

set id "output_tool_dimension"

set $id 0

set options($id) {NO|YES}

set options_ids($id) {0|1}

set datatype($id) INT

set access($id) 222

set dialog($id) {{Output Tool Dimension}}

set descr($id) {{Turns the output of the tool dimension on or off}}

set id "output_mode_tool_dimension"

set $id 1

set options($id) {Radius|Diameter}

set options_ids($id) {2|1}

set datatype($id) INT

set access($id) 222

set dialog($id) {{Output as}}

set descr($id) {{Define whether dimension should be output as diameter or radius}}

}

Page 21: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 21 Siemens PLM Software

Example – Create 2nd property

Configuration Object Tool Change

Property Auto change template

Value Tool change

N190 SUPA X=_X_HOME Y=_Y_HOME B=_A_HOME

A=_C_HOME D1

N200 ;Tool Change

N210 T1 M6

N220 CYCLE832(_camtolerance,1,1)

Value Tool change name

N190 SUPA X=_X_HOME Y=_Y_HOME B=_A_HOME

A=_C_HOME D1

N200 ;Tool Change

N210 T="UGT0202_001" M6

N220 CYCLE832(_camtolerance,1,1)

Value Define Procedure

Page 22: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 22 Siemens PLM Software

Adding code to ‘custom procedure’ property

‘Define procedure’ option opens a window to add

your procedure body

Page 23: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 23 Siemens PLM Software

How to deal with properties in TCL

Getting the current value of a property

*object_name* *property_name*

e.g.

set current_value [CONF_CUSTOM_tool_dimension output_tool_dimension]

Changing the value of a property in TCL

*object_name* set *property_name* value

e.g.

CONF_CUSTOM_tool_dimension set output_tool_dimension 1

Page 24: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 24 Siemens PLM Software

Option 1: Outputting it with the tool change

Page 25: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 25 Siemens PLM Software

Debugging the Post Processor

Page 26: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 26 Siemens PLM Software

- Standard NX Review Tool still works

- Some review output will be suppressed if the Turbo Mode is

On

- Overview of MOM Events and MOM Variables

- New debug functionality „Show where output comes from“ (UI)

- Helps to identify what is creating certain output lines

Debugging the Post Processor

Page 27: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 27 Siemens PLM Software

NX Review Tool – Turbo Mode ON

1. Turbo Mode is ON (See Day 02)

2. Post Process the required Operation with Review Tool ON

3. Turn Turbo Mode OFF (See Day 02)

4. Post Process the required Operation with Review Tool ON

Note: Using the review tool will dramatically increase the post processing time.

Page 28: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 28 Siemens PLM Software

Using Review Tool with VARIABLE_STREAMLINE

Turbo Mode ON Turbo Mode OFF

Page 29: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 29 Siemens PLM Software

New functionallity for Post Configurator posts to list

Which MOM Event generated this line

Which Library function generated that line

Buffer and Sequence Information of the Line

Show where output comes from

Page 30: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 30 Siemens PLM Software

Show where output comes from

1. Turn „Show where output comes from“ ON

2. Post Process an Operation

Page 31: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 31 Siemens PLM Software

START BUFFER: Buffer Name TAG_INFO: Line Tag Name

MOM Events, MOM Templates

Complete Buffer Sequence Command

Page 32: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 32 Siemens PLM Software

Option 2: Using the sequences

What is the OutputBuffer:

• Within a buffer sequence tags are asssigned to NC-lines

• Output can be reordered within the same buffer

• Additional output can be added to the buffer sequence

• Output can be suppressed from buffer sequence

• A template of the command to manipulate the buffer will be displayed if „Show where output comes from“ is activated

• LIB_GE_command_buffer_seqLIB_SPF_operation_header_comment HEADER_COMMENT {@NEWLINE1 @INFOLINE

@NEWLINE2}

Page 33: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 33 Siemens PLM Software

Add Tool Information output to operation header buffer

Create a procedure containing the code to output Tool information

Add this proc to the output buffer

LIB_GE_command_buffer_seq MOM_tool_change_LIB TOOL_CHANGE {Custom_Tool_Information @TOOL_CHANGE}

Page 34: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 34 Siemens PLM Software

Extending existing MOM Events

Page 35: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 35 Siemens PLM Software

If it possible to react to certain MOM events to modify them, or extend

them

It is possible to execute Tcl code before or after certain MOM events

Note: Not every MOM event can be extended (List in the next slides)

Extending existing MOM Events

Page 36: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 36 Siemens PLM Software

Available MOM Events

MOM_auxfun_ENTRY {args} {}

MOM_before_motion_ENTRY {args} {}

MOM_before_output_LIB_ENTRY {args} {}

MOM_bore_back_move_LIB_ENTRY {args} {}

MOM_bore_drag_move_LIB_ENTRY {args} {}

MOM_bore_dwell_move_LIB_ENTRY {args} {}

MOM_bore_manual_dwell_move_LIB_ENTRY {args} {}

MOM_bore_manual_move_LIB_ENTRY {args} {}

MOM_bore_move_LIB_ENTRY {args} {}

MOM_bore_no_drag_move_LIB_ENTRY {args} {}

MOM_circular_move_LIB_ENTRY {args} {}

MOM_coolant_off_ENTRY {args} {}

MOM_coolant_on_ENTRY {args} {}

MOM_delay_ENTRY {args} {}

MOM_drill_break_chip_move_LIB_ENTRY {args} {}

MOM_drill_deep_move_LIB_ENTRY {args} {}

MOM_drill_dwell_move_LIB_ENTRY {args} {}

MOM_drill_move_LIB_ENTRY {args} {}

MOM_drill_text_move_LIB_ENTRY {args} {}

MOM_end_of_path_LIB_ENTRY {args} {}

MOM_end_of_program_LIB_ENTRY {args} {}

MOM_end_of_subop_path_LIB_ENTRY {args} {}

MOM_first_move_LIB_ENTRY {args} {}

MOM_first_tool_LIB_ENTRY {args} {}

MOM_from_move_LIB_ENTRY {args} {}

MOM_gohome_move_LIB_ENTRY {args} {}

MOM_helix_move_LIB_ENTRY {args} {}

MOM_linear_move_LIB_ENTRY {args} {}

MOM_machine_mode_LIB_ENTRY {args} {}

MOM_nurbs_move_LIB_ENTRY {args} {}

MOM_operator_message_ENTRY {args} {}

MOM_opstop_ENTRY {args} {}

MOM_prefun_ENTRY {args} {}

MOM_rapid_move_LIB_ENTRY {args} {}

MOM_start_of_path_LIB_ENTRY {args} {}

MOM_start_of_program_LIB_ENTRY {position} {

MOM_start_of_subop_path_LIB_ENTRY {args} {}

MOM_stop_ENTRY {args} {}

MOM_tap_move_LIB_ENTRY {args} {}

MOM_tool_change_LIB_ENTRY {args} {}

LIB_RETURN_move_LIB_ENTRY {args} {}

LIB_ROTARY_positionning_init_ENTRY {args} {}

LIB_ROTARY_simultaneous_init_ENTRY {args} {}

LIB_SPF_KINEMATICS_set_plane_output_kin_ENTRY {args} {}

LIB_SPF_KINEMATICS_set_simultanous_kin_ENTRY {args} {}

LIB_SPF_KINEMATICS_set_turn_kin_ENTRY {args} {}

LIB_SPF_default_initial_setting_ENTRY {args} {}

LIB_SPF_polar_cart_ENTRY {args} {}

LIB_SPF_spindle_direction_ENTRY {args} {}

LIB_SPF_spindle_max_min_ENTRY {args} {}

LIB_SPF_spindle_set_ENTRY {args} {}

LIB_SPF_program_header_comment_LIB_ENTRY {args} {}

LIB_SPF_operation_header_comment_LIB_ENTRY {args} {}

LIB_CTRL_cut_move_LIB_ENTRY {args} {}

LIB_CTRL_rapid_move_LIB_ENTRY {args} {}

LIB_CTRL_engage_move_LIB_ENTRY {args} {}

LIB_CTRL_retract_move_LIB_ENTRY {args} {}

LIB_CTRL_firstcut_move_LIB_ENTRY {args} {}

LIB_CTRL_approach_move_LIB_ENTRY {args} {}

LIB_CTRL_stepover_move_LIB_ENTRY {args} {}

LIB_CTRL_departure_move_LIB_ENTRY {args} {}

LIB_CTRL_return_move_LIB_ENTRY {args} {}

LIB_CTRL_traversal_move_LIB_ENTRY {args} {}

LIB_CTRL_sidecut_move_LIB_ENTRY {args} {}

LIB_CTRL_from_move_LIB_ENTRY {args} {}

LIB_CTRL_gohome_move_LIB_ENTRY {args} {}

LIB_CTRL_gohome_default_move_LIB_ENTRY {args} {}

LIB_CTRL_cycle_move_LIB_ENTRY {args} {}

LIB_CTRL_lift_move_LIB_ENTRY {args} {}

LIB_CTRL_undefined_move_LIB_ENTRY {args} {}

Page 37: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 37 Siemens PLM Software

Extending of a MOM Event

Code Snippet:

proc MOM_end_of_program_LIB_ENTRY {position} {

switch -- $position {

"start"

{

#Your code before the event goes here

}

"end"

{

#Your code after the event goes here

}

}

}

Page 38: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 38 Siemens PLM Software

Adding a new Level to the Sourcing

Page 39: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 39 Siemens PLM Software

Adding a new Level to the Sourcing

- The sourcing is handled in the main Post Configurator entry file (file ending .psc)

- .psc file is an XML file

- To add a new layer add a new entry to the sourcing sequence

- Levels will be loaded in the order of the sourcing

- The sourcing will automatically check if there is a Tcl or PCE file (Tcl will be prefered in the case both exist)

<Sourcing>

<Sequence>

<Filename Name="ctrl_fanuc_base" Processing="true"/>

<Filename Name="PostConfiguratorTest1_mtb" Processing="true"/>

<Filename Name="oem_ootb_5ax_fanuc" Processing="true"/>

<Filename Name="machine_ootb_5ax_fanuc" Processing="true"/>

<Filename Name=„new_level_file" Processing="true"/>

<Filename Name="PostConfiguratorTest1_service_fanuc" Processing="true"/>

</Sequence>

</Sourcing>

Page 40: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 40 Siemens PLM Software

Add new Levels to the Library

Page 41: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 41 Siemens PLM Software

Add new Machine Level to the library

- Post Processor template library is stored under:

NX\mach\resource\post_configurator\post_template\post_registry.xml

- XML based, and can be extended

- Any PCE or Tcl file can be added as a new standard template level

Syntax for new Machine Level:<MACHINE>

<Name>*name*</Name>

<Path>${UGII_CAM_RESOURCE_DIR}post_configurator\post_template\controller\*controller*\machine\*new_machine_level file_name.pce*</Path>

<Base_CTRL>*controller*</Base_CTRL>

</MACHINE>

name The name for the new Machine Level. Fanuc Sample Machine Level

controller The name of the Controller it fits to. Fanuc

new_machine_level file_name The file name of the new Machine level. machine_ootb_5ax_fanuc.pce

Page 42: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 42 Siemens PLM Software

Add new Manufacturer Level to the library

Syntax for new Manufacturer Level:<MANUFACTURER>

<Name>*name*</Name>

<Path>${UGII_CAM_RESOURCE_DIR}post_configurator\post_template\controller\*controller*\manufacturer\new_file_name_1.pce</Path>

<Path>${UGII_CAM_RESOURCE_DIR}post_configurator\post_template\controller\*controller*\manufacturer\new_file_name_1.def</Path>

<Path>${UGII_CAM_RESOURCE_DIR}post_configurator\post_template\controller\*controller*\manufacturer\new_file_name_1.cdl</Path>

<Base_CTRL>controller</Base_CTRL>

</MANUFACTURER>

name The name for the new Machine Level. Fanuc Sample Machine Level

controller The name of the Controller it fits to. Fanuc

new_file_name_1 The file name of the new Manufacturer level. oem_ootb_5ax_sinumerik

Page 43: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 43 Siemens PLM Software

Changing the Access Level of an Object

Page 44: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 44 Siemens PLM Software

Changing the Access level for existing Objects

It is possible to decrease the Access level of a predefined object

The corresponding and required names can be found in the documentation

Note: It is not possible to raise a access level again, it is only possible to lower it.

Page 45: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 45 Siemens PLM Software

Syntax:

LIB_GE_CONF_set_property_access *Object_name* *Properties* “*Access_Levels*" *Option*

Samples:

LIB_GE_CONF_set_property_access CONF_FANUC_controller all "BASIC ADVANCED" HIDE

LIB_GE_CONF_set_property_access CONF_FANUC_G68 "rotate_before rotate_after" BASIC READONLY

Object_name The name of the parent object

Properties A list of properties the access level need to be lowered. Also possible to change all.

"rotate_before rotate_after"

all

Access_Levels A list of license level for which the access code will be changed. "BASIC ADVANCED FULL"

Option The new access option HIDE

READONLY

Page 46: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 46 Siemens PLM Software

UDE Handling

Page 47: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 47 Siemens PLM Software

UDE Handling

Standard MOM Tcl code can be used in the Levels

Example for existing clamping command:

proc MOM_clamp {} {

MOM_output_literal "CLAMP!"

}

Can be added to the service level, or into a new level

Page 48: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015 Realize innovation.

PostConfigurator – Tech TipsUse customized simulation_ini – file

Page 49: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 49 Siemens PLM Software

Background

for reuse of any tcl-code in PostConfigurator

extend existing commands

give the possibility to use „old“ Postbuilderstuff or any other tcl-code which is used

in other post

In this Tech Tip an existing simulation_ini.tcl is embedded in a new Post create with

Postbuilder

Page 50: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 50 Siemens PLM Software

1 Step – source the *.tcl file

Copy simulation_ini.tcl to your Postfolder

Open the *.psc file and add entry like below

Page 51: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 51 Siemens PLM Software

2 Step – Extend MOM events

use entry point for exisiting MOM events to call you custom code, e.g. the

MOM_start_of_program_LIB_ENTRY

write this in your service layer

Start means at begin of the event, if $arg1==„end“ then this is run at the end of the event

Call your custom commands in it, e.g. for the simulation_ini.tcl

Page 52: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 52 Siemens PLM Software

3 Step – Remove Code from *.tcl-file (optional)

is Code in the file which isn‘t in a proc this maybe is executed automatically when sourcing the file

So it‘s recommend to remove this code or put this in an extra proc

Page 53: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 53 Siemens PLM Software

4 Step – Run Post and get to_ini.ini file

turn off the create CSE INI-File in the UI of PostConfigurator if it‘s enabled

Run the post

A file is created in a subfolder for Sinumerik controller for simulation

DONE!

Page 54: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015 Realize innovation.

PostConfigurator – Tech TipsAdd variables to pretreatment

Page 55: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 55 Siemens PLM Software

Adding variables

for collecting information before the output, define variables which should be collected

therefore you can use the LIB_SPF_pt_additional_variables_service

Page 56: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 56 Siemens PLM Software

Custom Command - create Toollist

collect the information in a list and format the output

Page 57: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 57 Siemens PLM Software

Control the output

3 possibilities for output:

1) Work with an LIB_ENTRY, e.g. MOM_start_of_program_LIB_ENTRY

2) Work with an GE_command_buffer

3) use an UDE and call it in the event handler

Page 58: Post Configurator Enablement Training - Siemens PLM …community.plm.automation.siemens.com/siemensplm/attachments/... · Post Configurator Enablement Training ... Changing the NC

Unrestricted © Siemens AG 2015

20XX-XX-XXPage 58 Siemens PLM Software

Q&A